mirror of
https://gitlab.com/lunovox/minertrade.git
synced 2025-03-15 05:31:20 +00:00
[fix] Fixed the new method to config then dispensing machine to trade.
ALERTER: https://qoto.org/@reinaldo/112832090438550688
This commit is contained in:
parent
83dac770b0
commit
79d3eb0682
1 changed files with 27 additions and 8 deletions
|
@ -4,9 +4,9 @@ modMinerTrade.dispensing = {
|
|||
modMinerTrade.dispensing.formspec = {
|
||||
customer = function(pos)
|
||||
local list_name = "nodemeta:"..pos.x..','..pos.y..','..pos.z
|
||||
local formspec = "size[8,11]"
|
||||
local formspec = "size[8,10.25]"
|
||||
--.."bgcolor[#00880033;false]"
|
||||
.."background[-0.25,-0.25;8.50,11.50;dispensador_traz.png]"
|
||||
.."background[-0.25,-0.25;8.50,11.00;dispensador_traz.png]"
|
||||
--listcolors[slot_bg_normal;slot_bg_hover;slot_border;tooltip_bgcolor;tooltip_fontcolor]
|
||||
.."listcolors[#004400EE;#008800;#00FF00;#CCCC00;#FFFFFF]"
|
||||
|
||||
|
@ -20,6 +20,7 @@ modMinerTrade.dispensing.formspec = {
|
|||
.."list[current_player;customer_gets;0,4.0;3,2;]"
|
||||
|
||||
.."button[3,2.0;2,1;exchange;"..minetest.formspec_escape(modMinerTrade.translate("ACCEPT")).."]"
|
||||
.."button[3,3.0;2,1;btnRefill;"..minetest.formspec_escape(modMinerTrade.translate("REFILL")).."]"
|
||||
|
||||
.."label[0,6.0;"..minetest.formspec_escape(modMinerTrade.translate("Current customer inventory"))..":]"
|
||||
.."list[current_player;main;0,6.5;8,4;]"
|
||||
|
@ -29,7 +30,7 @@ modMinerTrade.dispensing.formspec = {
|
|||
|
||||
.."label[5,3.5;"..minetest.formspec_escape(modMinerTrade.translate("The Machine Offer"))..":]"
|
||||
.."list["..list_name..";owner_gives;5,4.0;3,2;]"
|
||||
.."label[0,10.75;("..minetest.formspec_escape(modMinerTrade.translate("Ctrl + RMB → Owner Interface"))..")]"
|
||||
--.."label[0,10.75;("..minetest.formspec_escape(modMinerTrade.translate("Ctrl + RMB → Owner Interface"))..")]"
|
||||
|
||||
--.."listcolors[#00000000;#00000022;#00000000;#00000033;#FFFFFFFF]"
|
||||
--.."listcolors[#00000000;#00000033]"
|
||||
|
@ -38,9 +39,9 @@ modMinerTrade.dispensing.formspec = {
|
|||
end,
|
||||
owner = function(pos)
|
||||
local list_name = "nodemeta:"..pos.x..','..pos.y..','..pos.z
|
||||
local formspec = "size[8,11]"
|
||||
local formspec = "size[8,10.50]"
|
||||
--.."bgcolor[#00880033;false]"
|
||||
.."background[-0.25,-0.25;8.50,11.50;dispensador_traz.png]"
|
||||
.."background[-0.25,-0.25;8.50,11.25;dispensador_traz.png]"
|
||||
--listcolors[slot_bg_normal;slot_bg_hover;slot_border;tooltip_bgcolor;tooltip_fontcolor]
|
||||
.."listcolors[#004400EE;#008800;#00FF00;#CCCC00;#FFFFFF]"
|
||||
.."label[0,0;"..minetest.formspec_escape(modMinerTrade.translate("Received (Your Profit)"))..":]"
|
||||
|
@ -106,6 +107,7 @@ modMinerTrade.dispensing.canOpen = function(pos, playername)
|
|||
local meta = minetest.get_meta(pos)
|
||||
if
|
||||
meta:get_string("owner")==playername
|
||||
or minetest.get_player_privs(playername).protection_bypass
|
||||
or (
|
||||
minetest.get_modpath("tradelands")
|
||||
and modTradeLands.getOwnerName(pos)~=""
|
||||
|
@ -168,11 +170,14 @@ minetest.register_node("minertrade:dispensingmachine", {
|
|||
modMinerTrade.dispensing.loja_atual[clicker:get_player_name()] = pos
|
||||
local meta = minetest.get_meta(pos)
|
||||
local clickername = clicker:get_player_name()
|
||||
minetest.show_formspec(clickername,"modMinerTrade.balcaodeloja_formspec",modMinerTrade.dispensing.formspec.customer(pos))
|
||||
--[[
|
||||
if modMinerTrade.dispensing.canOpen(pos, clickername) and not clicker:get_player_control().aux1 then
|
||||
minetest.show_formspec(clickername,"modMinerTrade.balcaodeloja_formspec",modMinerTrade.dispensing.formspec.customer(pos))
|
||||
else
|
||||
minetest.show_formspec(clickername,"modMinerTrade.balcaodeloja_formspec",modMinerTrade.dispensing.formspec.owner(pos))
|
||||
else
|
||||
minetest.show_formspec(clickername,"modMinerTrade.balcaodeloja_formspec",modMinerTrade.dispensing.formspec.customer(pos))
|
||||
end
|
||||
--]]
|
||||
--return itemstack
|
||||
end,
|
||||
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
|
||||
|
@ -218,14 +223,28 @@ minetest.register_on_player_receive_fields(function(sender, formname, fields)
|
|||
|
||||
--minetest.chat_send_player(sendername,"ownername('"..ownername.."') == sendername('"..sendername.."')")
|
||||
|
||||
if fields.btnRefill then
|
||||
if modMinerTrade.dispensing.canOpen(pos, sendername) then
|
||||
minetest.show_formspec(sendername,"modMinerTrade.balcaodeloja_formspec",modMinerTrade.dispensing.formspec.owner(pos))
|
||||
else
|
||||
minetest.chat_send_player(sendername,
|
||||
core.colorize("#ff0000", "["..modMinerTrade.translate("DISPENSING MACHINE").."]: ")
|
||||
..modMinerTrade.translate("You cannot fill the dispensing machine if you are not the owner!")
|
||||
)
|
||||
minetest.sound_play("sfx_alert", {object=sender, max_hear_distance=5.0,})
|
||||
end
|
||||
return
|
||||
end
|
||||
|
||||
if modMinerTrade.dispensing.canOpen(pos, sendername) and sender:get_player_control().aux1 then
|
||||
minetest.chat_send_player(sendername,
|
||||
core.colorize("#00ff00", "["..modMinerTrade.translate("DISPENSING MACHINE").."]: ")
|
||||
core.colorize("#ff0000", "["..modMinerTrade.translate("DISPENSING MACHINE").."]: ")
|
||||
..modMinerTrade.translate("You can not change your own machine!")
|
||||
)
|
||||
minetest.sound_play("sfx_alert", {object=sender, max_hear_distance=5.0,})
|
||||
return
|
||||
else
|
||||
|
||||
--minetest.chat_send_player(sendername,"fields="..dump(fields))
|
||||
if fields.txtOffer ~= nil then
|
||||
if fields.txtOffer ~= "" then
|
||||
|
|
Loading…
Add table
Reference in a new issue