InventoryTrading: type: world constants: 0: li@1|2|3|4|10|11|12|13|19|20|21|22|28|29|30|31|37|38|39|40|46|47|48 1: li@6|7|8|9|15|16|17|18|24|25|26|27|33|34|35|36|42|43|44|45|52|53|54 events: on player right clicks player: - if run local path:Initiate def: else if run local path:Initiated def: else if flag "InventoryTrading.InitAccepting" duration:2s else flag "InventoryTrading.Initiating" duration:2s on player clicks in inventory: - if == "<&b>Player Trading GUI" { - if == "Confirm" inventory open d:in@InventoryTradingInvConfirm else if == "Decline" inventory open d:in@InventoryTradingInvDecline else if ]> && !].as_list.contains[]> determine cancelled } else if == "Accept Trade Offer" { - if == "Exit" run local path:ConfirmConfirm else if == "Decline" run local path:ExitDecline } else if == "Decline Trade Offer" { - if == "Exit" run local path:DeclineConfirm else if == "Decline" run local path:ExitDecline } Initiate: - if narrate target:%1% "<&b> has sent you a trade request. Right-click them twice to accept." - flag player:%1% "InventoryTrading.InitPending" Initiated: - note in@InventoryTradingInvMain as:Trade_%1%_ - flag player "InventoryTrading.WithPlayer:%1%" - flag player "InventoryTrading.CurrSide:1" - inventory open d:in@Trade_%1%_ - flag player:%1% "InventoryTrading.CurrSide:0" - define old_player - flag player:%1% "InventoryTrading.WithPlayer:%old_player%" - inventory player:%1% open d:in@Trade__%old_player% ConfirmConfirm: - inventory close "Test<&co> Trade confirmed." DeclineConfirm: - inventory close "Test<&co> Trade declined." ExitDecline: - if == 0 inventory open :in@Trade__ else if == 1 inventory open :in@Trade__ InventoryTradingInvMain: type: inventory size: 54 title: <&b>Player Trading GUI definitions: accept: i@lime_wool[display_name=Confirm;lore=You are done adding items.] decline: i@red_wool[display_name=Decline;lore=You want to cancel the trade.] divider: i@rails slots: - "[] [] [] [] [divider] [] [] [] []" - "[] [] [] [] [divider] [] [] [] []" - "[] [] [] [] [divider] [] [] [] []" - "[] [] [] [] [divider] [] [] [] []" - "[] [] [] [] [divider] [] [] [] []" - "[] [] [] [accept] [divider] [decline] [] [] []" InventoryTradingInvConfirm: type: inventory size: 9 title: Accept Trade Offer definitions: accept: i@lime_wool[display_name=Exit;lore=You are REALLY done adding items.] decline: i@red_wool[display_name=Decline;lore=You're not quite done adding items.] slots: - "[] [] [] [accept] [] [decline] [] [] []" InventoryTradingInvDecline: type: inventory size: 9 title: Decline Trade Offer definitions: accept: i@lime_wool[display_name=Exit;lore=You REALLY want to cancel this trade.] decline: i@red_wool[display_name=Decline;lore=You don't want to cancel the trade.] slots: - "[] [] [] [accept] [] [decline] [] [] []"