Renew trading formspec for formspec version 7
This commit is contained in:
parent
268fa056cf
commit
0b1cbe15a8
@ -1,5 +1,5 @@
|
||||
--
|
||||
-- Gold and NPC Trading
|
||||
-- Gold and trading
|
||||
--
|
||||
local S = minetest.get_translator("rp_gold")
|
||||
|
||||
@ -44,7 +44,8 @@ gold.trades = {}
|
||||
|
||||
gold.trade_names = {}
|
||||
|
||||
local TRADE_FORMSPEC_OFFSET = 2.5
|
||||
local TRADE_FORMSPEC_OFFSET_X = 4
|
||||
local TRADE_FORMSPEC_OFFSET_Y = 1.0
|
||||
|
||||
if minetest.get_modpath("rp_mobs") ~= nil then
|
||||
gold.trades["farmer"] = {
|
||||
@ -219,22 +220,22 @@ form_trading = form_trading .. rp_formspec.get_page("rp_formspec:2part")
|
||||
|
||||
form_trading = form_trading .. rp_formspec.default.player_inventory
|
||||
|
||||
form_trading = form_trading .. "container["..TRADE_FORMSPEC_OFFSET..",0]"
|
||||
form_trading = form_trading .. rp_formspec.get_hotbar_itemslot_bg(4.75, 2.25, 1, 1)
|
||||
form_trading = form_trading .. "list[current_player;gold_trade_out;4.75,2.25;1,1;]"
|
||||
form_trading = form_trading .. "container["..TRADE_FORMSPEC_OFFSET_X..","..TRADE_FORMSPEC_OFFSET_Y.."]"
|
||||
form_trading = form_trading .. rp_formspec.get_hotbar_itemslot_bg(5, 1.25, 1, 1)
|
||||
form_trading = form_trading .. "list[current_player;gold_trade_out;5,1.25;1,1;]"
|
||||
|
||||
form_trading = form_trading .. rp_formspec.get_itemslot_bg(1.25, 2.25, 2, 1)
|
||||
form_trading = form_trading .. "list[current_player;gold_trade_in;1.25,2.25;2,1;]"
|
||||
form_trading = form_trading .. rp_formspec.get_itemslot_bg(1.25, 1.25, 2, 1)
|
||||
form_trading = form_trading .. "list[current_player;gold_trade_in;1.25,1.25;2,1;]"
|
||||
|
||||
form_trading = form_trading .. "listring[current_player;main]"
|
||||
form_trading = form_trading .. "listring[current_player;gold_trade_in]"
|
||||
form_trading = form_trading .. "listring[current_player;main]"
|
||||
form_trading = form_trading .. "listring[current_player;gold_trade_out]"
|
||||
|
||||
form_trading = form_trading .. "image[3.5,1.25;1,1;ui_arrow_bg.png^[transformR270]"
|
||||
form_trading = form_trading .. "image[3.5,2.25;1,1;ui_arrow.png^[transformR270]"
|
||||
form_trading = form_trading .. "image[3.75,0;1,1;ui_arrow_bg.png^[transformR270]"
|
||||
form_trading = form_trading .. "image[3.75,1.25;1,1;ui_arrow.png^[transformR270]"
|
||||
|
||||
form_trading = form_trading .. rp_formspec.button(1.25, 3.25, 2, 1, "trade", S("Trade"))
|
||||
form_trading = form_trading .. rp_formspec.button(1.25, 2.5, 2, 1, "trade", S("Trade"))
|
||||
form_trading = form_trading .. "container_end[]"
|
||||
|
||||
rp_formspec.register_page("rp_gold:trading_book", form_trading)
|
||||
@ -247,7 +248,7 @@ end
|
||||
-- Remember with which traders the players trade
|
||||
local active_tradings = {}
|
||||
|
||||
-- Open the trading formspec that allows players to trade with NPCs.
|
||||
-- Open the trading formspec that allows players to trade with traders.
|
||||
-- * trade: Single trade table from gold.trades table
|
||||
-- * trade_type: Trader type name
|
||||
-- * player: Player object of player who trades
|
||||
@ -284,7 +285,7 @@ function gold.trade(trade, trade_type, player, trader, trade_index, all_trades)
|
||||
local trade_wanted2 = inv:get_stack("gold_trade_wanted", 2)
|
||||
|
||||
local form = rp_formspec.get_page("rp_gold:trading_book")
|
||||
form = form .. "label[0.25,0.25;"..minetest.formspec_escape(label).."]"
|
||||
form = form .. "label[0.3,0.6;"..minetest.formspec_escape(label).."]"
|
||||
|
||||
local trades_listed = {}
|
||||
local print_item = function(itemstring)
|
||||
@ -322,17 +323,17 @@ function gold.trade(trade, trade_type, player, trader, trade_index, all_trades)
|
||||
end
|
||||
local trades_listed_str = table.concat(trades_listed, ",")
|
||||
form = form .. "tablecolumns[text]"
|
||||
form = form .. "table[0.15,1.25;3.5,2.5;tradelist;"..trades_listed_str..";"..trade_index.."]"
|
||||
form = form .. "table[0.3,"..TRADE_FORMSPEC_OFFSET_Y..";4.75,3.5;tradelist;"..trades_listed_str..";"..trade_index.."]"
|
||||
|
||||
form = form .. "container["..TRADE_FORMSPEC_OFFSET..",0]"
|
||||
form = form .. "container["..TRADE_FORMSPEC_OFFSET_X..","..TRADE_FORMSPEC_OFFSET_Y.."]"
|
||||
if is_repair_trade(trade) then
|
||||
-- Display repairable tool as damaged so the purpose of
|
||||
-- repair trades is more obvious
|
||||
trade_wanted2:set_wear(58982) -- ca. 90% wear
|
||||
end
|
||||
form = form .. rp_formspec.fake_itemstack(1.25, 1.25, trade_wanted1)
|
||||
form = form .. rp_formspec.fake_itemstack(2.25, 1.25, trade_wanted2)
|
||||
form = form .. rp_formspec.fake_itemstack(4.75, 1.25, ItemStack(trade[3]))
|
||||
form = form .. rp_formspec.fake_itemstack(1.25, 0, trade_wanted1)
|
||||
form = form .. rp_formspec.fake_itemstack(2.5, 0, trade_wanted2)
|
||||
form = form .. rp_formspec.fake_itemstack(5, 0, ItemStack(trade[3]))
|
||||
form = form .. "container_end[]"
|
||||
|
||||
minetest.show_formspec(name, "rp_gold:trading_book", form)
|
||||
|
Loading…
x
Reference in New Issue
Block a user