Correção de bug no painel de Transferência (ainda Incompleto)

This commit is contained in:
Lunovox 2022-06-03 00:57:09 -03:00
parent 971b6a12c9
commit cd8c75e3e2
2 changed files with 111 additions and 65 deletions

View file

@ -51,9 +51,10 @@ end
modMinerTrade.canInteract = function(playername)
--local clickername = clicker:get_player_name()
if minetest.get_player_privs(clickername).mayor then
if minetest.get_player_privs(playername).mayor then
return true
end
return false
end
modMinerTrade.isExistAcount = function(playername)
@ -180,9 +181,24 @@ modMinerTrade.getValueStack = function(stack)
return 0
end
modMinerTrade.showAtm = {
modMinerTrade.showAccountBank = {
--modMinerTrade.showAccountBank.inAtm(playername, accountname)
inAtm = function(playername, accountname)
modMinerTrade.bank.player[playername].focused_accountname = accountname
modMinerTrade.bank.player[playername].focused_accountmode = "atm"
modMinerTrade.doSoundPlayer(playername, "sfx_atm", 5)
modMinerTrade.showAccountBank.frmMain(playername)
end,
--modMinerTrade.showAccountBank.inCreditCard(playername, accountname)
inCreditCard = function(playername, accountname)
modMinerTrade.bank.player[playername].focused_accountname = accountname
modMinerTrade.bank.player[playername].focused_accountmode = "online"
modMinerTrade.doSoundPlayer(playername, "sfx_atm", 5)
modMinerTrade.showAccountBank.frmMain(playername)
end,
frmMain = function(playername) --FORMULÁRIO: PRINCIPAL / RAIZ
local accountname = modMinerTrade.bank.player[playername].focused_accountname
local accountmode = modMinerTrade.bank.player[playername].focused_accountmode
local formspec = "size[16,10]"
.."bgcolor[#636D7688;false]"
--.."bgcolor[#636D76FF;false]"
@ -194,30 +210,40 @@ modMinerTrade.showAtm = {
.. "box[0.00,0.10;5.50,9.5;#000000]"
.. "button[0.25,0.50;5.00,0.5;btnBalance;"..minetest.formspec_escape(core.colorize("#FFFFFF", modMinerTrade.translate("BALANCE"))).."]"
.. "button[0.25,1.25;5.00,0.5;btnStatement;"..minetest.formspec_escape(core.colorize("#FFFFFF", modMinerTrade.translate("STATEMENT"))).."]"
.. "button[0.25,2.00;5.00,0.5;btnDeposits;"..minetest.formspec_escape(core.colorize("#FFFFF", modMinerTrade.translate("DEPOSITS"))).."]"
.. "button[0.25,2.75;5.00,0.5;btnWithdrawals;"..minetest.formspec_escape(core.colorize("#FFFFF", modMinerTrade.translate("WITHDRAWALS"))).."]" -- [DINHEIRO E CHECK]
.. "button[0.25,3.50;5.00,0.5;btnTransfers;"..minetest.formspec_escape(core.colorize("#888888", modMinerTrade.translate("TRANSFERS"))).."]"
.. "button[0.25,4.25;5.00,0.5;btnLoans;"..minetest.formspec_escape(core.colorize("#888888", modMinerTrade.translate("LOANS"))).."]" --Emprestimos
.. "button[0.25,5.00;5.00,0.5;btnCreditCard;"..minetest.formspec_escape(core.colorize("#888888", modMinerTrade.translate("CREDIT CARD"))).."]" -- [EXPEDIR E MUDAR SENHA]
.. "button[0.25,5.75;5.00,0.5;btnSetings;"..minetest.formspec_escape(core.colorize("#888888", modMinerTrade.translate("SETTINGS"))).."]" --Se quer ou não uma senha, se quer receber uma carta quando houver uma nova movimentacao.
if
accountmode~=nil
and type(accountmode) == "string"
and accountmode == "atm"
then
formspec = formspec
.. "button[0.25,2.00;5.00,0.5;btnDeposits;"..minetest.formspec_escape(core.colorize("#FFFFF", modMinerTrade.translate("DEPOSITS"))).."]"
.. "button[0.25,2.75;5.00,0.5;btnWithdrawals;"..minetest.formspec_escape(core.colorize("#FFFFF", modMinerTrade.translate("WITHDRAWALS"))).."]" -- [DINHEIRO E CHECK]
if minetest.get_player_privs(playername).developer then
formspec = formspec
.. "button[0.25,3.50;5.00,0.5;btnTransfers;"..minetest.formspec_escape(core.colorize("#FFFFFF", modMinerTrade.translate("TRANSFERS"))).."]"
.. "button[0.25,5.00;5.00,0.5;btnCreditCard;"..minetest.formspec_escape(core.colorize("#888888", modMinerTrade.translate("CREDIT CARD"))).."]" -- [EXPEDIR E MUDAR SENHA]
.. "button[0.25,4.25;5.00,0.5;btnLoans;"..minetest.formspec_escape(core.colorize("#888888", modMinerTrade.translate("LOANS"))).."]" --Emprestimos
.. "button[0.25,5.75;5.00,0.5;btnSetings;"..minetest.formspec_escape(core.colorize("#888888", modMinerTrade.translate("SETTINGS"))).."]" --Se quer ou não uma senha, se quer receber uma carta quando houver uma nova movimentacao.
end
end
formspec = formspec
.."button_exit[0.25,6.50;5.00,0.5;;"..minetest.formspec_escape(core.colorize("#FFFFFF", modMinerTrade.translate("EXIT"))).."]"
--.. "box[6.0,0.25;9.5,9.5;#000000]"
.."background[6.0,0.25;9.5,9.5;text_atm_front.png]"
minetest.show_formspec(playername, "frmAtmMain", formspec)
end,
frmBalance = function(playername) --FORMULÁRIO: SALDO
local accountname = modMinerTrade.bank.player[playername].focused_accountname
local msgBalance = ""
if modMinerTrade.isExistAcount(playername) then
msgBalance = modMinerTrade.translate("You have %02d minercash."):format(modMinerTrade.getBalance(playername))
if modMinerTrade.isExistAcount(accountname) then
msgBalance = modMinerTrade.translate("You have %02d minercash."):format(modMinerTrade.getBalance(accountname))
else
msgBalance = modMinerTrade.translate("Player '%s' is not an account holder of this bank."):format(playername)
msgBalance = modMinerTrade.translate("Player '%s' is not an account holder of this bank."):format(accountname)
end
--local tblStatements = modMinerTrade.getStatement(playername)
local totalTransactions = modMinerTrade.getTotalTransactions(playername)
--local tblStatements = modMinerTrade.getStatement(accountname)
local totalTransactions = modMinerTrade.getTotalTransactions(accountname)
local formspec = "size[16,10]"
.."bgcolor[#636D7688;false]"
@ -233,9 +259,9 @@ modMinerTrade.showAtm = {
.. "box[6.0,0.25;9.5,9.5;#00000088]"
.."background[6.0,0.25;9.5,9.5;text_atm_front.png]"
.. "textarea[6.75,1.00;9.0,9.0;;"..minetest.formspec_escape(core.colorize("#00FFFF", modMinerTrade.translate("NAME OF BANKING ACCOUNT HOLDER")..":"))..";"..minetest.formspec_escape(core.colorize("#00FFFF", playername:upper())).."]"
.. "textarea[6.75,1.00;9.0,9.0;;"..minetest.formspec_escape(core.colorize("#00FFFF", modMinerTrade.translate("NAME OF BANKING ACCOUNT HOLDER")..":"))..";"..minetest.formspec_escape(core.colorize("#00FFFF", accountname:upper())).."]"
.. "textarea[6.75,2.50;9.0,9.0;;"..minetest.formspec_escape(core.colorize("#00FFFF", modMinerTrade.translate("ACCOUNT CREATED")..":"))..";"..minetest.formspec_escape(core.colorize("#00FFFF", modMinerTrade.bank.player[playername].account_created)).."]"
.. "textarea[6.75,2.50;9.0,9.0;;"..minetest.formspec_escape(core.colorize("#00FFFF", modMinerTrade.translate("ACCOUNT CREATED")..":"))..";"..minetest.formspec_escape(core.colorize("#00FFFF", modMinerTrade.bank.player[accountname].account_created)).."]"
.. "textarea[6.75,4.00;9.0,9.0;;"..minetest.formspec_escape(core.colorize("#00FFFF", modMinerTrade.translate("FINANCIAL TRANSACTIONS")..":"))..";"..minetest.formspec_escape(core.colorize("#00FFFF", ("%02d"):format(totalTransactions).." transactions.")).."]"
@ -249,6 +275,7 @@ modMinerTrade.showAtm = {
)
end,
frmStatement = function(playername, selStatement) --FORMULÁRIO: SALDO
local accountname = modMinerTrade.bank.player[playername].focused_accountname
local formspec = "size[16,10]"
.."bgcolor[#636D7644;false]"
--.."bgcolor[#636D76FF;false]"
@ -269,14 +296,14 @@ modMinerTrade.showAtm = {
--.."background[5.0,0.25;9.5,9.5;text_atm_front.png]"
local msgStatement = modMinerTrade.translate("Select a bank statement to view transaction details!")
local isAccount = modMinerTrade.isExistAcount(playername)
local isAccount = modMinerTrade.isExistAcount(accountname)
if isAccount then
formspec = formspec
.. "label[6.25,0.50;"..minetest.formspec_escape(core.colorize("#00FFFF", modMinerTrade.translate("STATEMENT")..":")).."]"
--.. "label[5.25,2.50;"..minetest.formspec_escape(core.colorize("#00FFFF", msgStatement)).."]"
--"textarea[5.75,1.00;9.0,9.0;;"..minetest.formspec_escape(core.colorize("#00FFFF", modMinerTrade.translate("STATEMENT")..":"))..";"..minetest.formspec_escape(core.colorize("#00FFFF", msgStatement)).."]"
local listStatement = modMinerTrade.getStatement(playername)
local listStatement = modMinerTrade.getStatement(accountname)
local plusStatement = "#888,"..modMinerTrade.translate("")..","..modMinerTrade.translate("WHEN")..","..modMinerTrade.translate("VALUE")
for i, oneStatement in ipairs(listStatement) do
@ -297,7 +324,7 @@ modMinerTrade.showAtm = {
end
end
--[[ ]]
local value = modMinerTrade.getBalance(playername)
local value = modMinerTrade.getBalance(accountname)
if value ~= nil then
local sign = ""
if value >= 1 then
@ -324,7 +351,7 @@ modMinerTrade.showAtm = {
--.."tablecolumns[cell1,opt1_a,opt2_a;cell2,opt1_b,opt2_b;type_c,opt1_c,opt2_c]"
--.."tableoptions[opt1;opt2;opt3]"
else
msgStatement = modMinerTrade.translate("Player '%s' is not an account holder of this bank."):format(playername)
msgStatement = modMinerTrade.translate("Player '%s' is not an account holder of this bank."):format(accountname)
end
formspec = formspec
@ -341,6 +368,7 @@ modMinerTrade.showAtm = {
)
end,
frmWithdrawals = function(playername) --FORMULÁRIO: SAQUE
local accountname = modMinerTrade.bank.player[playername].focused_accountname
local formspec = "size[16,10]"
.."bgcolor[#636D7688;false]"
--.."bgcolor[#636D76FF;false]"
@ -372,13 +400,14 @@ modMinerTrade.showAtm = {
minetest.show_formspec(playername, "frmAtmWithdrawals", formspec)
end,
frmGiveCash = function(playername, txtValue, msgDetails) --FORMULÁRIO: SAQUE
modMinerTrade.debug("modMinerTrade.showAtm.frmGiveCash() >>> playername = "..playername.." | txtValue = "..dump(txtValue).." | msgDetails = "..dump(msgDetails))
local accountname = modMinerTrade.bank.player[playername].focused_accountname
modMinerTrade.debug("modMinerTrade.showAccountBank.frmGiveCash() >>> playername = "..playername.." | txtValue = "..dump(txtValue).." | msgDetails = "..dump(msgDetails))
local msgBalance = ""
if modMinerTrade.isExistAcount(playername) then
msgBalance = modMinerTrade.translate("You have %02d minercash."):format(modMinerTrade.getBalance(playername))
if modMinerTrade.isExistAcount(accountname) then
msgBalance = modMinerTrade.translate("You have %02d minercash."):format(modMinerTrade.getBalance(accountname))
else
msgBalance = modMinerTrade.translate("Player '%s' is not an account holder of this bank."):format(playername)
msgBalance = modMinerTrade.translate("Player '%s' is not an account holder of this bank."):format(accountname)
end
local formspec = "size[16,10]"
.."bgcolor[#636D7688;false]"
@ -396,7 +425,7 @@ modMinerTrade.showAtm = {
.. "textarea[6.75,1.00;9.0,9.0;;"..minetest.formspec_escape(core.colorize("#00FFFF", modMinerTrade.translate("BALANCES")..":"))..";"..minetest.formspec_escape(core.colorize("#00FFFF", msgBalance)).."]"
if modMinerTrade.isExistAcount(playername) then
if modMinerTrade.isExistAcount(accountname) then
if txtValue == nil or txtValue == "" then
txtValue = "1"
end
@ -423,8 +452,9 @@ modMinerTrade.showAtm = {
minetest.show_formspec(playername, "frmAtmGiveCash", formspec)
end,
frmDeposits = function(playername) --FORMULÁRIO: SAQUE
local accountname = modMinerTrade.bank.player[playername].focused_accountname
-- playername = player:get_player_name()
local newInv = minetest.create_detached_inventory("deposits_"..playername, {
local newInv = minetest.create_detached_inventory("deposits_"..accountname, {
-- Called when a player wants to move items inside the inventory
allow_move = function(inv, from_list, from_index, to_list, to_index, count, player)
@ -459,20 +489,20 @@ modMinerTrade.showAtm = {
on_put = function(inv, listname, index, stack, player)
--modMinerTrade.setSafeInventory(playername, inv:get_list("safe"))
--minetest.log('action',modMinerTrade.translate("Player '%s' has placed %02d '%s' in his safe!"):format(playername, stack:get_count(), stack:get_name()))
local playername = player:get_player_name()
--local accountname = player:get_player_name()
if modMinerTrade.checkValidStack(stack) >= 1 then
local stackValue = modMinerTrade.getValueStack(stack)
--modMinerTrade.debug("modMinerTrade.convValueToItemList() >>> items = "..dump(items).." | newItem = "..dump(newItem))
if stackValue >= 1 then
modMinerTrade.addBalance(playername, stackValue)
modMinerTrade.addBalance(accountname, stackValue)
modMinerTrade.addStatement(
playername, stackValue,
accountname, stackValue,
modMinerTrade.translate("You deposited %02d x '%s'!"):format(stack:get_count(), stack:get_name())
)
--stack:take_item(stack:get_count())
stack:take_item()
modMinerTrade.doSoundPlayer(playername, "sfx_cash_register", 5)
modMinerTrade.showAtm.frmDeposits(playername)
modMinerTrade.showAccountBank.frmDeposits(playername)
end
else
modMinerTrade.doSoundPlayer(playername, "sfx_failure", 5)
@ -489,11 +519,11 @@ modMinerTrade.showAtm = {
newInv:set_stack("deposit", 1, nil)
local msgBalance = ""
if modMinerTrade.isExistAcount(playername) then
msgBalance = modMinerTrade.translate("You have %02d minercash."):format(modMinerTrade.getBalance(playername))
if modMinerTrade.isExistAcount(accountname) then
msgBalance = modMinerTrade.translate("You have %02d minercash."):format(modMinerTrade.getBalance(accountname))
else
msgBalance = modMinerTrade.translate("Player '%s' is not an account holder of this bank."):format(playername)
msgBalance = modMinerTrade.translate("Player '%s' is not an account holder of this bank."):format(accountname)
end
local formspec = "size[16,10]"
@ -525,7 +555,7 @@ modMinerTrade.showAtm = {
.."label[7.00,3.00;"..minetest.formspec_escape(modMinerTrade.translate("ATM entrance"))..":]"
.."image[9.00,3.35;2,2;obj_minercoin.png]"
.."image[10.50,3.75;1,1;gui_arrow.png^[transformR270]"
.."list[detached:"..minetest.formspec_escape("deposits_"..playername)..";deposit;11.50,3.75;1,1;]"
.."list[detached:"..minetest.formspec_escape("deposits_"..accountname)..";deposit;11.50,3.75;1,1;]"
--.."button[3,2.0;2,1;exchange;"..minetest.formspec_escape(modMinerTrade.translate("DEPOSIT")).."]"
@ -535,13 +565,14 @@ modMinerTrade.showAtm = {
minetest.show_formspec(playername, "frmAtmDeposits", formspec)
end,
frmTransfer = function(playername, txtBeneficiary, txtValue, msgDetails) --FORMULÁRIO: SAQUE
modMinerTrade.debug("modMinerTrade.showAtm.frmGiveCash() >>> playername = "..playername.." | txtValue = "..dump(txtValue).." | msgDetails = "..dump(msgDetails))
local accountname = modMinerTrade.bank.player[playername].focused_accountname
modMinerTrade.debug("modMinerTrade.showAccountBank.frmGiveCash() >>> playername = "..playername.." | txtValue = "..dump(txtValue).." | msgDetails = "..dump(msgDetails))
local msgBalance = ""
if modMinerTrade.isExistAcount(playername) then
msgBalance = modMinerTrade.translate("You have %02d minercash."):format(modMinerTrade.getBalance(playername))
if modMinerTrade.isExistAcount(accountname) then
msgBalance = modMinerTrade.translate("You have %02d minercash."):format(modMinerTrade.getBalance(accountname))
else
msgBalance = modMinerTrade.translate("Player '%s' is not an account holder of this bank."):format(playername)
msgBalance = modMinerTrade.translate("Player '%s' is not an account holder of this bank."):format(accountname)
end
local formspec = "size[16,10]"
.."bgcolor[#636D7688;false]"
@ -551,7 +582,7 @@ modMinerTrade.showAtm = {
--..default.gui_slots
.. "box[0.00,0.10;5.50,9.5;#000000]"
.. "button[0.25,0.50;5.00,0.5;btnWithdrawals;"..minetest.formspec_escape(core.colorize("#FFFFFF", modMinerTrade.translate("BACK"))).."]"
.. "button[0.25,0.50;5.00,0.5;btnAtmMain;"..minetest.formspec_escape(core.colorize("#FFFFFF", modMinerTrade.translate("BACK"))).."]"
.."button_exit[0.25,6.50;5.00,0.5;;"..minetest.formspec_escape(core.colorize("#FFFFFF", modMinerTrade.translate("EXIT"))).."]"
.."background[6.0,0.25;9.5,9.5;text_atm_front.png]"
@ -559,37 +590,49 @@ modMinerTrade.showAtm = {
.. "textarea[6.75,1.00;9.0,9.0;;"..minetest.formspec_escape(core.colorize("#00FFFF", modMinerTrade.translate("BALANCES")..":"))..";"..minetest.formspec_escape(core.colorize("#00FFFF", msgBalance)).."]"
if modMinerTrade.isExistAcount(playername) then
if modMinerTrade.isExistAcount(accountname) then
if txtBeneficiary == nil or type(txtBeneficiary) ~= "string" then
txtBeneficiary = ""
end
if txtValue == nil or txtValue == "" then
txtValue = "1"
end
if txtDescription == nil or type(txtDescription) ~= "string" or txtDescription:trim() == "" then
txtDescription = modMinerTrade.translate("Transfer for undeclared reason!")
end
if msgDetails == nil or msgDetails == "" then
msgDetails = modMinerTrade.translate("Write the 'beneficiary player name' and the 'value in minercash' that want to transfer!")
end
formspec = formspec
--.. "label[5.25,0.50;"..minetest.formspec_escape(core.colorize("#00FFFF", "WITHDRAWAL IN MINERCASH:")).."]"
.."field[7.00,3.50;3.00,0.50;txtBeneficiarytxtBeneficiary;"
.."field[7.00,3.50;5.00,0.50;txtBeneficiarytxtBeneficiary;"
..minetest.formspec_escape(
core.colorize(
"#00FFFF",
modMinerTrade.translate("BENEFICIARY NAME")..":"
)
)..";"
..minetest.formspec_escape(txtValue)
..minetest.formspec_escape(txtBeneficiary)
.."]"
.."field[7.00,4.50;3.00,0.50;txtValue;"
.."field[7.00,5.00;3.00,0.50;txtValue;"
..minetest.formspec_escape(
core.colorize(
"#00FFFF",
modMinerTrade.translate("VALUE IN MINERCASH")..":"
modMinerTrade.translate("VALUE")..":"
)
)..";"
..minetest.formspec_escape(txtValue)
.."]"
.. "button[9.85,3.00;4.00,1.00;btnAtmTransfer;"..minetest.formspec_escape(core.colorize("#FFFFFF", modMinerTrade.translate("TRANSFER"))).."]"
.."field[7.00,6.50;9.00,0.50;txtDescription;"
..minetest.formspec_escape(
core.colorize(
"#00FFFF",
modMinerTrade.translate("DESCRIPTION")..":"
)
)..";"
..minetest.formspec_escape(txtDescription)
.."]"
.. "button[9.85,7.50;4.00,1.00;btnAtmTransfer;"..minetest.formspec_escape(core.colorize("#FFFFFF", modMinerTrade.translate("TRANSFER"))).."]"
.."textarea[6.75,8.50;9.0,1.5;;"..minetest.formspec_escape(core.colorize("#00FFFF", modMinerTrade.translate("DETAILS")..":"))..";"
..minetest.formspec_escape(core.colorize("#00FFFF", msgDetails))
@ -651,7 +694,7 @@ modMinerTrade.onReceiveFields = function(player, formname, fields)
--modMinerTrade.debug("modMinerTrade.onReceiveFields() >>> player = "..playername.." | formname = "..formname.." | fields = "..dump(fields))
if fields.btnAtmMain ~= nil then
modMinerTrade.doSoundPlayer(playername, "sfx_atm", 5)
modMinerTrade.showAtm.frmMain(playername)
modMinerTrade.showAccountBank.frmMain(playername)
elseif fields.quit then
--são funções importantíssimas para não perder inventário do jogador e nem calça legging no servidor.
modMinerTrade.doBankSave()
@ -660,19 +703,19 @@ modMinerTrade.onReceiveFields = function(player, formname, fields)
else
if formname == "frmAtmMain" then
if fields.btnBalance ~= nil then
modMinerTrade.showAtm.frmBalance(playername)
modMinerTrade.showAccountBank.frmBalance(playername)
elseif fields.btnStatement ~= nil then
modMinerTrade.doSoundPlayer(playername, "sfx_atm", 5)
modMinerTrade.showAtm.frmStatement(playername)
modMinerTrade.showAccountBank.frmStatement(playername)
elseif fields.btnWithdrawals ~= nil then
modMinerTrade.showAtm.frmWithdrawals(playername)
modMinerTrade.showAccountBank.frmWithdrawals(playername)
elseif fields.btnDeposits ~= nil then
modMinerTrade.doSoundPlayer(playername, "sfx_atm", 5)
modMinerTrade.showAtm.frmDeposits(playername)
modMinerTrade.showAccountBank.frmDeposits(playername)
elseif fields.btnTransfers ~= nil then
if modMinerTrade.canInteract(playername) then --Em fase de teste é acessivel somente para developers.
modMinerTrade.doSoundPlayer(playername, "sfx_atm", 5)
modMinerTrade.showAtm.frmTransfer(playername)
modMinerTrade.showAccountBank.frmTransfer(playername)
end
end
elseif formname == "frmAtmStatement" then
@ -682,13 +725,13 @@ modMinerTrade.onReceiveFields = function(player, formname, fields)
local fldStatement = minetest.explode_table_event(fields.fldStatement)
if fldStatement.row ~= nil and type(fldStatement.row) == "number" and fldStatement.row >= 2 and fldStatement.row <= #tblStatement+1 then
--modMinerTrade.debug("modMinerTrade.onReceiveFields() >>> fldStatement = "..dump(fldStatement))
modMinerTrade.showAtm.frmStatement(playername, fldStatement.row)
modMinerTrade.showAccountBank.frmStatement(playername, fldStatement.row)
end
end
elseif formname == "frmAtmWithdrawals" then
if fields.btnGiveCash ~= nil then
modMinerTrade.doSoundPlayer(playername, "sfx_atm", 5)
modMinerTrade.showAtm.frmGiveCash(playername)
modMinerTrade.showAccountBank.frmGiveCash(playername)
elseif fields.btnGiveCheck ~= nil then
modMinerTrade.doSoundPlayer(playername, "sfx_failure", 5)
end
@ -696,7 +739,7 @@ modMinerTrade.onReceiveFields = function(player, formname, fields)
--modMinerTrade.debug("modMinerTrade.onReceiveFields() >>> player = "..playername.." | formname = "..formname.." | fields = "..dump(fields))
if fields.btnWithdrawals ~= nil then
modMinerTrade.doSoundPlayer(playername, "sfx_atm", 5)
modMinerTrade.showAtm.frmWithdrawals(playername)
modMinerTrade.showAccountBank.frmWithdrawals(playername)
elseif fields.btnAtmGive ~= nil
and fields.txtValue ~= nil
and tonumber(fields.txtValue) ~= nil
@ -737,10 +780,10 @@ modMinerTrade.onReceiveFields = function(player, formname, fields)
end
if delivered == tonumber(myValue) then
modMinerTrade.doSoundPlayer(playername, "sfx_cash_register", 5)
modMinerTrade.showAtm.frmMain(playername)
modMinerTrade.showAccountBank.frmMain(playername)
else
modMinerTrade.doSoundPlayer(playername, "sfx_failure", 5)
modMinerTrade.showAtm.frmGiveCash(playername,
modMinerTrade.showAccountBank.frmGiveCash(playername,
tonumber(myValue) - delivered,
modMinerTrade.translate(
"You don't have space in your inventory to withdraw so much minercash."
@ -750,7 +793,7 @@ modMinerTrade.onReceiveFields = function(player, formname, fields)
end
else
modMinerTrade.doSoundPlayer(playername, "sfx_failure", 5)
modMinerTrade.showAtm.frmGiveCash(playername,
modMinerTrade.showAccountBank.frmGiveCash(playername,
myValue,
modMinerTrade.translate(
"The maximum amount you can withdraw is: %02d minercash."
@ -764,7 +807,7 @@ modMinerTrade.onReceiveFields = function(player, formname, fields)
elseif formname == "frmTransfer" then
if fields.btnWithdrawals ~= nil then
modMinerTrade.doSoundPlayer(playername, "sfx_atm", 5)
modMinerTrade.showAtm.frmTransfer(playername)
modMinerTrade.showAccountBank.frmTransfer(playername)
elseif fields.btnAtmGive ~= nil
and fields.txtBeneficiary ~= nil
and type(fields.txtBeneficiarytxtBeneficiary) == "string"
@ -849,7 +892,7 @@ minetest.register_node("minertrade:atm", {
end
if
or modMinerTrade.canInteract(playername) --minetest.get_player_privs(playername).mayor
modMinerTrade.canInteract(playername)
or modMinerTrade.getNodesInRange(posAbove, 5, "minertrade:dispensingmachine") >= 1
then
local facedir = minetest.dir_to_facedir(placer:get_look_dir())
@ -901,8 +944,10 @@ minetest.register_node("minertrade:atm", {
modMinerTrade.translate("PUBLIC ATM - Account of '%s':"):format(clickername)
)
--]]
modMinerTrade.doSoundPlayer(clickername, "sfx_atm", 5)
modMinerTrade.showAtm.frmMain(clickername)
--modMinerTrade.doSoundPlayer(clickername, "sfx_atm", 5)
--modMinerTrade.showAccountBank.frmMain(clickername)
modMinerTrade.showAccountBank.inAtm(clickername, clickername)
else
--minetest.sound_play("sfx_failure", {object=clicker, max_hear_distance=5.0,})
modMinerTrade.doSoundPlayer(clickername, "sfx_failure", 5)

View file

@ -286,8 +286,9 @@ minetest.register_craftitem("minertrade:creditcard", {
)
--]]
local playername = player:get_player_name()
modMinerTrade.doSoundPlayer(playername, "sfx_atm", 5)
modMinerTrade.showAtm.frmMain(playername)
--modMinerTrade.doSoundPlayer(playername, "sfx_atm", 5)
--modMinerTrade.showAtm.frmMain(playername)
modMinerTrade.showAccountBank.inCreditCard(playername, playername)
--[[