mirror of
https://gitlab.com/lunovox/minertrade.git
synced 2025-03-15 05:31:20 +00:00
fazendo o formspec
This commit is contained in:
parent
2ddff423e2
commit
de41278c0b
4 changed files with 0 additions and 332 deletions
|
@ -1,165 +0,0 @@
|
|||
|
||||
|
||||
--#########################################################################################
|
||||
|
||||
minetest.register_craftitem("minertrade:minercoin", {
|
||||
description = modMinerTrade.translate("MINERCOIN\n* Basic craftable money with gold and steel."),
|
||||
inventory_image = "obj_minecoin.png",
|
||||
stack_max=9, --Acumula 9 por slot
|
||||
groups = {cash=1, trade=1},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "minertrade:minercoin",
|
||||
recipe = {
|
||||
{"default:gold_ingot","default:steel_ingot","default:gold_ingot"},
|
||||
},
|
||||
--https://github.com/minetest/minetest_game/blob/master/mods/default/craftitems.lua
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
output = "default:gold_ingot",
|
||||
recipe = "minertrade:minercoin",
|
||||
cooktime = 5,
|
||||
})
|
||||
|
||||
minetest.register_alias(
|
||||
modMinerTrade.translate("minercoin"),
|
||||
"minertrade:minercoin"
|
||||
)
|
||||
|
||||
--##########################################################################################################
|
||||
|
||||
minetest.register_craftitem("minertrade:minermoney", {
|
||||
description = modMinerTrade.translate("MINERMONEY\n* equals 09 Minercoins."),
|
||||
inventory_image = "obj_minemoney.png",
|
||||
stack_max=9, --Acumula 9 por slot
|
||||
groups = {cash=1, trade=1},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "minertrade:minermoney",
|
||||
recipe = {
|
||||
{"minertrade:minercoin", "minertrade:minercoin", "minertrade:minercoin"},
|
||||
{"minertrade:minercoin", "minertrade:minercoin", "minertrade:minercoin"},
|
||||
{"minertrade:minercoin", "minertrade:minercoin", "minertrade:minercoin"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "minertrade:minercoin 9",
|
||||
recipe = {
|
||||
{"minertrade:minermoney"},
|
||||
},
|
||||
})
|
||||
|
||||
|
||||
minetest.register_alias(
|
||||
modMinerTrade.translate("minermoney"),
|
||||
"minertrade:minermoney"
|
||||
)
|
||||
|
||||
--##########################################################################################################
|
||||
|
||||
|
||||
minetest.register_craftitem("minertrade:checkbank", {
|
||||
description = modMinerTrade.translate("CHECK BANK\n* equals 09 Minermoneys."),
|
||||
inventory_image = "obj_bank_check.png",
|
||||
stack_max=9, --Acumula 9 por slot
|
||||
groups = {cash=1, trade=1},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "minertrade:checkbank",
|
||||
recipe = {
|
||||
{"minertrade:minermoney", "minertrade:minermoney", "minertrade:minermoney"},
|
||||
{"minertrade:minermoney", "minertrade:minermoney", "minertrade:minermoney"},
|
||||
{"minertrade:minermoney", "minertrade:minermoney", "minertrade:minermoney"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "minertrade:minermoney 9",
|
||||
recipe = {
|
||||
{"minertrade:checkbank"},
|
||||
},
|
||||
})
|
||||
|
||||
|
||||
minetest.register_alias(
|
||||
modMinerTrade.translate("checkbank"),
|
||||
"minertrade:checkbank"
|
||||
)
|
||||
|
||||
--##########################################################################################################
|
||||
|
||||
minetest.register_craftitem("minertrade:creditcard", {
|
||||
description = modMinerTrade.translate("CREDIT CARD (Unowned)\n* equals 09 Check Banks.\n* Allows you to access the bank account of the credit card owner anywhere in the world."),
|
||||
inventory_image = "obj_credit_card.png",
|
||||
--stack_max=9, --Acumula 9 por slot
|
||||
groups = {cash=1, trade=1},
|
||||
on_use = function(itemstack, player)
|
||||
local playername = player:get_player_name()
|
||||
local meta = itemstack:get_meta()
|
||||
local old_data = minetest.deserialize(itemstack:get_metadata())
|
||||
if old_data then
|
||||
meta:from_table({ fields = old_data })
|
||||
end
|
||||
local tmpDatabase = meta:to_table().fields
|
||||
|
||||
if type(tmpDatabase.ownername)~="string" or tmpDatabase.ownername=="" then
|
||||
tmpDatabase.ownername = playername
|
||||
tmpDatabase.description = modMinerTrade.translate("CREDIT CARD of '%s'"):format(tmpDatabase.ownername)
|
||||
local invPlayer = player:get_inventory()
|
||||
local new_stack
|
||||
local count = itemstack:get_count()
|
||||
itemstack:set_count(count - 1)
|
||||
new_stack = ItemStack("minertrade:creditcard")
|
||||
new_stack:get_meta():from_table({ fields = tmpDatabase })
|
||||
if invPlayer:room_for_item("main", new_stack) then
|
||||
invPlayer:add_item("main", new_stack)
|
||||
else
|
||||
minetest.add_item(player:get_pos(), new_stack)
|
||||
end
|
||||
minetest.chat_send_player(playername,
|
||||
core.colorize("#00ff00", "["..modMinerTrade.translate("CREDIT CARD").."]: ")
|
||||
..modMinerTrade.translate("Your name has been saved to this credit card. Anyone using this credit card will be able to access the '%s' bank account."):format(tmpDatabase.ownername)
|
||||
)
|
||||
minetest.sound_play("sfx_alert", {object=player, max_hear_distance=5.0,})
|
||||
return itemstack
|
||||
end
|
||||
modMinerTrade.showInventory(
|
||||
player,
|
||||
tmpDatabase.ownername,
|
||||
modMinerTrade.translate("ACCOUNT BANK of '%s':"):format(tmpDatabase.ownername)
|
||||
)
|
||||
return itemstack
|
||||
end,
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "minertrade:creditcard",
|
||||
recipe = {
|
||||
{"minertrade:checkbank", "minertrade:checkbank", "minertrade:checkbank"},
|
||||
{"minertrade:checkbank", "minertrade:checkbank", "minertrade:checkbank"},
|
||||
{"minertrade:checkbank", "minertrade:checkbank", "minertrade:checkbank"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "minertrade:checkbank 9",
|
||||
recipe = {
|
||||
{"minertrade:creditcard"},
|
||||
},
|
||||
})
|
||||
|
||||
|
||||
minetest.register_alias(
|
||||
modMinerTrade.translate("creditcard"),
|
||||
"minertrade:creditcard"
|
||||
)
|
||||
|
||||
--##########################################################################################################
|
||||
|
||||
|
|
@ -1,79 +0,0 @@
|
|||
minetest.register_node("minertrade:strongbox", {
|
||||
description = modMinerTrade.translate("STRONGBOX\n* Save your money in this safe and withdraw your money at any shop that has an ATM."),
|
||||
--inventory_image = "safe_front.png",
|
||||
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
light_source = default.LIGHT_MAX,
|
||||
paramtype2 = "facedir",
|
||||
|
||||
is_ground_content = false,
|
||||
groups = {cracky=1},
|
||||
tiles = {
|
||||
"safe_side.png",
|
||||
"safe_side.png",
|
||||
"safe_side.png",
|
||||
"safe_side.png",
|
||||
"safe_side.png",
|
||||
"safe_front.png",
|
||||
},
|
||||
after_place_node = function(pos, placer)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local ownername = placer:get_player_name() or ""
|
||||
meta:set_string("owner", ownername)
|
||||
meta:set_string("infotext", modMinerTrade.translate("STRONGBOX (Property of '%s')\n* Save your money in this safe and withdraw your money at any shop that has an ATM."):format(ownername))
|
||||
local now = os.time() --Em milisegundos
|
||||
meta:set_string("opentime", now+modMinerTrade.delayConstruct)
|
||||
end,
|
||||
can_dig = function(pos,player)
|
||||
local meta = minetest.get_meta(pos);
|
||||
if modMinerTrade.isOpen(meta, player) then
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
end,
|
||||
on_rightclick = function(pos, node, clicker)
|
||||
local playername = clicker:get_player_name()
|
||||
local meta = minetest.get_meta(pos)
|
||||
local ownername = meta:get_string("owner")
|
||||
meta:set_string("infotext", modMinerTrade.translate("STRONGBOX (Property of '%s')\n* Save your money in this safe and withdraw your money at any shop that has an ATM."):format(ownername))
|
||||
if modMinerTrade.isOpen(meta, clicker) then
|
||||
local opentime = tonumber(meta:get_string("opentime")) or 0
|
||||
local now = os.time() --Em milisegundos
|
||||
if now >= opentime or minetest.get_player_privs(playername).server then
|
||||
modMinerTrade.showInventory(
|
||||
clicker,
|
||||
ownername,
|
||||
modMinerTrade.translate("STRONGBOX owned by '%s':"):format(ownername)
|
||||
)
|
||||
else
|
||||
minetest.sound_play("sfx_failure", {object=clicker, max_hear_distance=5.0,})
|
||||
minetest.chat_send_player(playername,
|
||||
core.colorize("#00ff00", "["..modMinerTrade.translate("STRONGBOX").."]: ")
|
||||
..modMinerTrade.translate("The safe is going to work %02d seconds after it is installed!"):format(opentime-now)
|
||||
)
|
||||
end
|
||||
else
|
||||
minetest.sound_play("sfx_failure", {object=clicker, max_hear_distance=5.0,})
|
||||
minetest.chat_send_player(playername,
|
||||
core.colorize("#00ff00", "["..modMinerTrade.translate("STRONGBOX").."]: ")
|
||||
..modMinerTrade.translate("You do not have access to the safe belonging to '%s'!"):format(ownername)
|
||||
)
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = 'minertrade:strongbox',
|
||||
recipe = {
|
||||
{"default:steel_ingot" ,"default:steel_ingot" ,"default:steel_ingot"},
|
||||
{"default:steel_ingot" ,"" ,"default:mese_crystal"},
|
||||
{"default:steel_ingot" ,"default:steel_ingot" ,"default:steel_ingot"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_alias(
|
||||
modMinerTrade.translate("strongbox"),
|
||||
"minertrade:strongbox"
|
||||
)
|
10
on_final.lua
10
on_final.lua
|
@ -1,10 +0,0 @@
|
|||
modMinerTrade.doLoad()
|
||||
|
||||
minetest.register_on_leaveplayer(function(player)
|
||||
modMinerTrade.doSave()
|
||||
end)
|
||||
|
||||
minetest.register_on_shutdown(function()
|
||||
modMinerTrade.doSave()
|
||||
minetest.log('action',"[STRONGBOX] "..modMinerTrade.translate("Saving strongbox from all players in the file '%s'!"):format(modMinerTrade.urlTabela))
|
||||
end)
|
78
payday.lua
78
payday.lua
|
@ -1,78 +0,0 @@
|
|||
minetest.register_privilege("salary", {
|
||||
description=modMinerTrade.translate("Only players with this privilege will receive a daily payment."),
|
||||
give_to_singleplayer=false,
|
||||
})
|
||||
|
||||
modMinerTrade.payday = {
|
||||
salary = (minetest.setting_get("minertrade.payday.salary") or "minertrade:minercoin 1"),
|
||||
interval = (tonumber(minetest.setting_get("minertrade.payday.interval")) or 60)
|
||||
}
|
||||
|
||||
minetest.after(3.5, function()
|
||||
modMinerTrade.payday.time = 0
|
||||
minetest.register_globalstep(function(dtime)
|
||||
modMinerTrade.payday.time = modMinerTrade.payday.time + dtime
|
||||
if modMinerTrade.payday.time >= modMinerTrade.payday.interval then
|
||||
modMinerTrade.payday.time = 0
|
||||
local dc = minetest.get_day_count()
|
||||
local players = minetest.get_connected_players()
|
||||
if #players >= 1 then
|
||||
for _, player in ipairs(players) do
|
||||
local lp = tonumber(player:get_meta():get_int("last_pay")) or 0
|
||||
if lp ~= dc then
|
||||
local playername = player:get_player_name()
|
||||
if minetest.get_player_privs(playername).salary then
|
||||
local nameInvList = "safe"
|
||||
local inv = modMinerTrade.getDetachedInventory(playername)
|
||||
--minetest.chat_send_player(playername, "vazio = "..dump(inv:is_empty(nameInvList)))
|
||||
local stack = ItemStack(modMinerTrade.payday.salary)
|
||||
local leftover = inv:add_item(nameInvList, stack)
|
||||
modMinerTrade.setSafeInventory(playername, inv:get_list(nameInvList))
|
||||
modMinerTrade.delSafeInventory(playername)
|
||||
if leftover:get_count() > 0 then
|
||||
minetest.chat_send_player(
|
||||
playername,
|
||||
core.colorize("#00ff00", "["..modMinerTrade.translate("CITY HALL").."]: ")
|
||||
..modMinerTrade.translate("Your Strongbox is full! %2d items weren't added in your bank account."):format(leftover:get_count())
|
||||
)
|
||||
minetest.sound_play("sfx_alert", {object=player, max_hear_distance=5.0,})
|
||||
else
|
||||
minetest.chat_send_player(
|
||||
playername,
|
||||
core.colorize("#00ff00", "["..modMinerTrade.translate("CITY HALL").."]: ")
|
||||
..modMinerTrade.translate("The city hall deposited the %2d° salary in your bank account!"):format(dc)
|
||||
)
|
||||
minetest.sound_play("sfx_cash_register", {object=player, max_hear_distance=5.0,})
|
||||
end
|
||||
end
|
||||
player:get_meta():set_int("last_pay",dc)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end)
|
||||
end)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
--[[
|
||||
minetest.after(3.5, function()
|
||||
modMinerTrade.payday = {
|
||||
interval = (60 *24) / (tonumber(minetest.setting_get("time_speed")) or 72),
|
||||
time = 0
|
||||
}
|
||||
modMinerTrade.payday.interval = 1
|
||||
minetest.register_globalstep(function(dtime)
|
||||
modMinerTrade.payday.time = modMinerTrade.payday.time + dtime
|
||||
if modMinerTrade.payday.time >= modMinerTrade.payday.interval then
|
||||
|
||||
end
|
||||
end)
|
||||
end)
|
||||
--]]
|
||||
|
||||
|
Loading…
Add table
Reference in a new issue