Kills in a row trigger problem and yet... I'm back!

Don

Rise with the Fallens!
Reaction score
52
Yoyoyo, Don's here, I know I've been missing for a long time but I had plenty stuff to play to! (Rockband, COD4-5, TF2, WoW..., doing Flashes, trips and etc!). But now, I'm somehow back and I've gotta get back on track!

I've got this trigger, for an arena map that i can't get working!

How it works, it is that it checks, every kills, if you have the integer ''kill_row'' equal to 1 or to 2. That way, it sees if the player owner of killing unit have the good ammount of kills before the 10 seconds runs out.

The problem, is that, once in game, it only says Double kill, never gives out a triple kill!

Here's the trigger:

Code:
Kill Row
    Events
        Unit - A unit Dies
    Conditions
        ((Killing unit) is A Hero) Equal to True
        (Owner of (Killing unit)) Not equal to Neutral Hostile
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 1
            Then - Actions
                Set Kill_Row[(Player number of (Owner of (Killing unit)))] = (Kill_Row[(Player number of (Owner of (Killing unit)))] + 1)
                Game - Display to (All players) for 10.00 seconds the text: (|cffffcc00 + ((Name of (Owner of (Killing unit))) + |r |cff32cd32just pulled a|r |cffff0000DOUBLE KILL|r |cff32cd32(2 kills in a row), for an additional |cffffcc00200 gold|r))
                Sound - Play doublekill <gen>
                Player - Add 200 to (Owner of (Killing unit)) Current gold
                Wait 10.00 seconds
                If (Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 2) then do (Set Kill_Row[(Player number of (Owner of (Killing unit)))] = 0) else do (Do nothing)
            Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 2
            Then - Actions
                Set Kill_Row[(Player number of (Owner of (Killing unit)))] = (Kill_Row[(Player number of (Owner of (Killing unit)))] + 1)
                Game - Display to (All players) for 10.00 seconds the text: (|cffffcc00 + ((Name of (Owner of (Killing unit))) + |r |cff32cd32just pulled a|r |cffff0000TRIPLE KILL|r |cff32cd32(3 kills in a row), for an additional |cffffcc00300 gold|r))
                Sound - Play triplekill <gen>
                Player - Add 300 to (Owner of (Killing unit)) Current gold
                Wait 10.00 seconds
                If (Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 3) then do (Set Kill_Row[(Player number of (Owner of (Killing unit)))] = 0) else do (Do nothing)
            Else - Actions

and when someone kills someone else for the first time:

Code:
Kill Streak
    Events
        Unit - A unit Dies
    Conditions
        ((Killing unit) is A Hero) Equal to True
        (Owner of (Killing unit)) Not equal to Neutral Hostile
    Actions
        Set Kill_Row[(Player number of (Owner of (Killing unit)))] = 1
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 0
            Then - Actions
                Set Kill_Row[(Player number of (Owner of (Killing unit)))] = 1
                Wait 10.00 seconds
                If (Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 1) then do (Set Kill_Row[(Player number of (Owner of (Killing unit)))] = 0) else do (Do nothing)
            Else - Actions

If you've got any clue, could help me a lot! ;)
 

LordSaddler1

New Member
Reaction score
4
In the first trigger at the end of the first section it says:
Code:
If (Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 2) then do (Set Kill_Row[(Player number of (Owner of (Killing unit)))] = 0) else do (Do nothing)
so therefore it will be set to 0, making the triple kill section with the condition
Code:
Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 2
completely useless because Kill_Row is already set to 0
 

Don

Rise with the Fallens!
Reaction score
52
that's not the point, after 10 seconds, it ends the row, so YES, it has to be set to 0 after 10 seconds, because the player wasn't fast enought with killing to earn a row!

but what it's doing is that every kill i make, after i've made 2, it sways double kill on every kill i do... no ewxception, even if i wait 10 seconds... why?
 

Don

Rise with the Fallens!
Reaction score
52
Maybe if you know another way to do kills in a row, it could be interesting aswell! (i mean another trigger, no JASS please).
 

Don

Rise with the Fallens!
Reaction score
52
Hmmm...

i tried it and instead of only saying double kill, it says triple kill at the same time!!!

every kill i do, it says DOUBLEKILL and TRIPLE KILL, there's something wrong, again!
 

Don

Rise with the Fallens!
Reaction score
52
1-
Code:
Kill Streak
    Events
        Unit - A unit Dies
    Conditions
        ((Killing unit) is A Hero) Equal to True
        (Owner of (Killing unit)) Not equal to Neutral Hostile
    Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 0
            Then - Actions
                Set Kill_Row[(Player number of (Owner of (Killing unit)))] = 1
                Wait 10.00 seconds
                If (Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 1) then do (Set Kill_Row[(Player number of (Owner of (Killing unit)))] = 0) else do (Do nothing)
            Else - Actions

2-
Code:
Double Kill
    Events
        Unit - A unit Dies
    Conditions
        ((Killing unit) is A Hero) Equal to True
        (Owner of (Killing unit)) Not equal to Neutral Hostile
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 1
            Then - Actions
                Game - Display to (All players) for 10.00 seconds the text: (|cffffcc00 + ((Name of (Owner of (Killing unit))) + |r |cff32cd32just pulled a|r |cffff0000DOUBLE KILL|r |cff32cd32(2 kills in a row), for an additional |cffffcc00200 gold|r))
                Sound - Play doublekill <gen>
                Player - Add 200 to (Owner of (Killing unit)) Current gold
                Wait 0.01 seconds
                Set Kill_Row[(Player number of (Owner of (Killing unit)))] = (Kill_Row[(Player number of (Owner of (Killing unit)))] + 1)
                Wait 10.00 seconds
                If (Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 2) then do (Set Kill_Row[(Player number of (Owner of (Killing unit)))] = 0) else do (Do nothing)
            Else - Actions

3-
Code:
Triple Kill
    Events
        Unit - A unit Dies
    Conditions
        ((Killing unit) is A Hero) Equal to True
        (Owner of (Killing unit)) Not equal to Neutral Hostile
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 2
            Then - Actions
                Game - Display to (All players) for 10.00 seconds the text: (|cffffcc00 + ((Name of (Owner of (Killing unit))) + |r |cff32cd32just pulled a|r |cffff0000TRIPLE KILL|r |cff32cd32(3 kills in a row), for an additional |cffffcc00400 gold|r))
                Sound - Play triplekill <gen>
                Player - Add 400 to (Owner of (Killing unit)) Current gold
                Wait 0.01 seconds
                Set Kill_Row[(Player number of (Owner of (Killing unit)))] = (Kill_Row[(Player number of (Owner of (Killing unit)))] + 1)
                Wait 10.00 seconds
                If (Kill_Row[(Player number of (Owner of (Killing unit)))] Equal to 3) then do (Set Kill_Row[(Player number of (Owner of (Killing unit)))] = 0) else do (Do nothing)
            Else - Actions
 

ShadowInTheD

Active Member
Reaction score
12
I noticed one thing, your then actions will NEVER fire.
You set Kill_Row = to 1, and then check to see if it's 0.
Instead just set it = to 1, then wait 10 seconds. You might need yet another trigger, to check if it gets raised, to reset its time, instead of using 10 second waits.
 

Don

Rise with the Fallens!
Reaction score
52
Oooooh!!! I understand now!

I forgot to remove that line when i edited the first version of that system! :eek:

But now, there's a new problem... I make a kill, it says Double kill, i make another, it says double kill and i make a third one, it says triple kill..

I think it counts first kill as a double kill, but i dont know why it would do that, since it requires kill_row to be set to 1 and default is 0...

I don't see any mistakes in the triggers... that's strange, you have any clue why it's happening?
 

ShadowInTheD

Active Member
Reaction score
12
Can you edit your old post that has the triggers with the new ones, or create a new post with the triggers?
 

ShadowInTheD

Active Member
Reaction score
12
The problem I see now is that, a unit dies, and then set Kill_Row = 1. I'm not if both triggers run off same event and overlap, but you set it to 1, and then it checks if it is 1, then runs double kill, you get another kill and then it does double triple. o_O

Try putting a wait on the second trigger of like .1 seconds, to see what happens.
 

Don

Rise with the Fallens!
Reaction score
52
Yup, ,that's right, it was double checking.. dumb me!

Thanks for help, I got over it by adding 0.01 second wait in first trigger! +rep!
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top