Trade System, Only Gold should be sent

EoW.chips

New Member
Reaction score
2
Hey, is it possible to only make Gold sendable ? So u can't sent wood.

If its not, i maybe thought about a trade system like in vampirism beast, where u sent gold with commands. I don't really know how to do such a system, can anyone give me an example ?
 

HydraRancher

Truth begins in lies
Reaction score
197
Something like:

Trigger:
  • Gold
    • Events
      • Player - Player 1 (Red) types a chat message containing -gold as A substring
    • Conditions
      • (Substring((Entered chat string), 1, 6)) Equal to -gold
    • Actions
      • For each (Integer A) from 1 to 12, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Integer((Substring((Entered chat string), 7, 7)))) Equal to (Integer A)
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Integer((Substring((Entered chat string), 8, 11)))) Greater than or equal to 0
                • Then - Actions
                  • Player - Add (Integer((Substring((Entered chat string), 8, 11)))) to (Player((Integer A))) Current gold
                  • Player - Add ((Integer((Substring((Entered chat string), 8, 11)))) x -1) to (Triggering player) Current gold
                • Else - Actions
            • Else - Actions
 

EoW.chips

New Member
Reaction score
2
Where do you check if the player has the gold ? Example: U have 300 gold and u type -gold "player" 40000, so he gets 40000 i guess. And is it possible to do it with colours ? so u type -gold blue 300 for example

Thanks for idea
 

EoW.chips

New Member
Reaction score
2
Here i tried this, its some work cuz i have to make one for each colour

Trigger:
  • Blue
    • Ereignisse
      • Spieler - Spieler 1 (Rot) types a chat message containing (-gg blue + <Leerer String>) as Ein Teil-String
      • Spieler - Spieler 3 (Blaugrau) types a chat message containing (-gg blue + <Leerer String>) as Ein Teil-String
      • Spieler - Spieler 4 (Lila) types a chat message containing (-gg blue + <Leerer String>) as Ein Teil-String
      • Spieler - Spieler 5 (Gelb) types a chat message containing (-gg blue + <Leerer String>) as Ein Teil-String
      • Spieler - Spieler 6 (Orange) types a chat message containing (-gg blue + <Leerer String>) as Ein Teil-String
      • Spieler - Spieler 7 (Grün) types a chat message containing (-gg blue + <Leerer String>) as Ein Teil-String
      • Spieler - Spieler 8 (Rosa) types a chat message containing (-gg blue + <Leerer String>) as Ein Teil-String
      • Spieler - Spieler 9 (Grau) types a chat message containing (-gg blue + <Leerer String>) as Ein Teil-String
      • Spieler - Spieler 10 (Hellblau) types a chat message containing (-gg blue + <Leerer String>) as Ein Teil-String
    • Bedingungen
      • (Integer((Substring((Entered chat string), 10, (Length of (Entered chat string)))))) Größer als 0
    • Aktionen
      • Set GoldTrade = (Integer((Substring((Entered chat string), 10, (Length of (Entered chat string))))))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • 'IF'-Bedingungen
          • And - All (Conditions) are true
            • Bedingungen
              • ((Triggering player) Aktuelles Gold) Größer gleich GoldTrade
              • (Spieler 2 (Blau) slot status) Gleich Spielt
        • 'THEN'-Aktionen
          • Spielergruppe - Add (Triggering player) to TradePlayerGroup
          • Spiel - Display to TradePlayerGroup the text: ((|cff00FFFF + ((String(GoldTrade)) + |r)) + has been sent to blue)
          • Spielergruppe - Remove all players from TradePlayerGroup
          • Spieler - Set (Triggering player) Aktuelles Gold to (((Triggering player) Aktuelles Gold) - GoldTrade)
          • Spieler - Add GoldTrade to Spieler 2 (Blau) Aktuelles Gold
          • Spiel - Display to Spielergruppe - Spieler 2 (Blau) the text: (You recived |cff00FFFF + ((String(GoldTrade)) + |r gold))
        • 'ELSE'-Aktionen


I have german world editor... Whatever if i save this, JNPG finds an error when saving
Aww any ideas ? :)
 

Parsival

Active Member
Reaction score
6
Hi.

Where do you check if the player has the gold ?
Nowhere. Shame, HydraRancher, shame! :( ;)

I modified His trigger.

Trigger:
  • Gold
    • Events
      • Player - Player 1 (Red) types a chat message containing -gold as A substring
    • Conditions
      • (Substring((Entered chat string), 1, 6)) Equal to -gold
    • Actions
      • For each (Integer A) from 1 to 12, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Integer((Substring((Entered chat string), 7, 7)))) Equal to (Integer A)
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Integer((Substring((Entered chat string), 8, 11)))) Greater than or equal to 0
                • Then - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • ((((Triggering player) Actual gold number) - (Integer((Substring((Entered chat string), 8, 11))))) Greater or equal to 0)
                    • Then - Actions
                      • Player - Add (Integer((Substring((Entered chat string), 8, 11)))) to (Player((Integer A))) Current gold
                      • Player - Add ((Integer((Substring((Entered chat string), 8, 11)))) x -1) to (Triggering player) Current gold
                    • Else - Actions
                      • Game - Display to (Player Group(Triggering Player)) the text: Lol. You wanted to send him more cash than You have. You little cheater! Naughty, naughty. :*
                • Else - Actions
            • Else - Actions


And is it possible to do it with colours ?
I see somebody already helped You.
EDIT//
Oh well, It was You... Wait a second, I'll try to help You with this problem also.
EDIT//

Here i tried this, its some work cuz i have to make one for each colour
Well, You don't have to. There are better ways, but it's very troublesome and not worth the price anyway. HydraRancher's system is very nice, pure, simple, cute and awesome. Do You really have to change player's integer ID to colour string?
 

skyblader

You're living only because it's illegal killing.
Reaction score
159
Trigger:
  • Initialization
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set PlayerColour[1] = red
      • Set PlayerColour[2] = blue
      • Set PlayerColour[3] = teal
      • Set PlayerColour[4] = purple
      • Set PlayerColour[5] = yellow
      • Set PlayerColour[6] = orange
      • Set PlayerColour[7] = green
      • Set PlayerColour[8] = pink
      • Set PlayerColour[9] = grey
      • Set PlayerColour[10] = lightblue
      • Set PlayerColour[11] = darkgreen
      • Set PlayerColour[12] = brown
      • For each (Integer A) from 1 to 12, do (Actions)
        • Loop - Actions
          • For each (Integer B) from 1 to 12, do (Actions)
            • Loop - Actions
              • Trigger - Add to System <gen> the event (Player - (Player((Integer A))) types a chat message containing (- + PlayerColour[(Integer B)]) as A substring)


Trigger:
  • System
    • Events
    • Conditions
    • Actions
      • Set ReceiverColour = (Substring((Entered chat string), 2, 3))
      • For each (Integer A) from 1 to 12, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ReceiverColour Equal to (Substring(PlayerColour[(Integer A)], 1, 2))
            • Then - Actions
              • Set AmountOfGold = (Integer((Substring((Entered chat string), (2 + (Length of PlayerColour[(Integer A)])), (Length of (Entered chat string))))))
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Triggering player) Current gold) Greater than or equal to AmountOfGold
                  • AmountOfGold Greater than or equal to 0
                • Then - Actions
                  • Player - Add (0 - AmountOfGold) to (Triggering player) Current gold
                  • Player - Add AmountOfGold to (Player((Integer A))) Current gold
                • Else - Actions
                  • Game - Display to (All players) the text: Not enough gold! Yo...
            • Else - Actions


I made this little system, works with -<colour> <gold>. You might wanna try it out and see if it works for you.
 

HydraRancher

Truth begins in lies
Reaction score
197
Hi.


Nowhere. Shame, HydraRancher, shame! :( ;)

It was a template. ><


Changing colour strings is possible but troublesome.

Also about your JASSHelper issue I think it's to do with JASShelper itself. Because there is no JASS in the trigger. >.>
 

EoW.chips

New Member
Reaction score
2
OK got it working but still a problem, if i type -blue 1, it doesnt sent one gold oO, can u tell me what variables did u use? Like for example PlayerColour
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top