• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • ✅ Time to vote for the top 3 models! The POLL for Hive's 6th HD Modeling Contest: Mechanical is now open! 📅 Poll close on July 16, 2024! 🔗 Cast your vote now!
  • ✅ The POLL for Hive's Texturing Contest #33 is OPEN! Vote for the TOP 3 SKINS! 🔗Click here to cast your vote!

Multiple Players Jump problem

Status
Not open for further replies.
Level 3
Joined
Aug 15, 2007
Messages
67
When using this trigger jump works perfect with player 1 but when I play with other people it makes them jump on the spot untill they are killed.

  • Jump Activate
    • Events
      • Unit - A unit Begins channeling an ability
    • Conditions
      • (Ability being cast) Equal to Jump
    • Actions
      • Set Jumpto[(Player number of (Triggering player))] = (Target point of ability being cast)
      • Set Jumper[(Player number of (Triggering player))] = (Casting unit)
      • Trigger - Run Jump <gen> (ignoring conditions)
  • Jump Movement
    • Events
      • Time - Every 0.01 seconds of game time
    • Conditions
    • Actions
      • Unit - Move Jumper[(Player number of (Triggering player))] instantly to ((Position of Jumper[(Player number of (Triggering player))]) offset by 3.00 towards (Facing of Jumper[(Player number of (Triggering player))]) degrees), facing 0.00 degrees
      • Unit - Make Jumper[(Player number of (Triggering player))] face Jumpto[(Player number of (Triggering player))] over 0.01 seconds
  • Jump
    • Events
    • Conditions
    • Actions
      • Unit - Pause Jumper[(Player number of (Triggering player))]
      • Unit - Make Jumper[(Player number of (Triggering player))] face Jumpto[(Player number of (Triggering player))] over 0.01 seconds
      • Wait 0.01 seconds
      • Unit - Add Crow Form to Jumper[(Player number of (Triggering player))]
      • Unit - Turn collision for Jumper[(Player number of (Triggering player))] Off
      • Unit - Make Jumper[(Player number of (Triggering player))] Invulnerable
      • Animation - Change Jumper[(Player number of (Triggering player))] flying height to 300.00 at 900.00
      • Trigger - Turn on Jump Movement <gen>
      • Wait 0.20 seconds
      • Trigger - Turn off Jump Movement <gen>
      • Unit - Make Jumper[(Player number of (Triggering player))] face Jumpto[(Player number of (Triggering player))] over 0.01 seconds
      • Animation - Change Jumper[(Player number of (Triggering player))] flying height to 0.00 at 1500.00
      • Trigger - Turn on Jump Movement <gen>
      • Wait 0.10 seconds
      • Trigger - Turn off Jump Movement <gen>
      • Animation - Change Jumper[(Player number of (Triggering player))]'s animation speed to 100.00% of its original speed
      • Unit - Remove Crow Form from Jumper[(Player number of (Triggering player))]
      • Unit - Turn collision for Jumper[(Player number of (Triggering player))] On
      • Unit - Make Jumper[(Player number of (Triggering player))] Vulnerable
      • Unit - Unpause Jumper[(Player number of (Triggering player))]
      • Set Jumper[(Player number of (Triggering player))] = No unit
      • Custom script: call RemoveLocation( udg_Jumpto[GetPlayerId( GetEnumPlayer()) + 1] )
 
Level 3
Joined
Aug 15, 2007
Messages
67
How could I set the variable for multiple players? As of now I have this.. How could I combine the two?

  • Jump
    • Events
      • Unit - A unit Begins channeling an ability
    • Conditions
      • (Ability being cast) Equal to Jump
    • Actions
      • Unit - Pause Jumper[(Player number of (Triggering player))]
      • Unit - Make Jumper[(Player number of (Triggering player))] face Jumpto[(Player number of (Triggering player))] over 0.01 seconds
      • Wait 0.01 seconds
      • Unit - Add Crow Form to Jumper[(Player number of (Triggering player))]
      • Unit - Turn collision for Jumper[(Player number of (Triggering player))] Off
      • Unit - Make Jumper[(Player number of (Triggering player))] Invulnerable
      • Animation - Change Jumper[(Player number of (Triggering player))] flying height to 300.00 at 900.00
      • Trigger - Turn on Jump Movement <gen>
      • Wait 0.20 seconds
      • Trigger - Turn off Jump Movement <gen>
      • Unit - Make Jumper[(Player number of (Triggering player))] face Jumpto[(Player number of (Triggering player))] over 0.01 seconds
      • Animation - Change Jumper[(Player number of (Triggering player))] flying height to 0.00 at 1500.00
      • Trigger - Turn on Jump Movement <gen>
      • Wait 0.10 seconds
      • Trigger - Turn off Jump Movement <gen>
      • Animation - Change Jumper[(Player number of (Triggering player))]'s animation speed to 100.00% of its original speed
      • Unit - Remove Crow Form from Jumper[(Player number of (Triggering player))]
      • Unit - Turn collision for Jumper[(Player number of (Triggering player))] On
      • Unit - Make Jumper[(Player number of (Triggering player))] Vulnerable
      • Unit - Unpause Jumper[(Player number of (Triggering player))]
      • Set Jumper[(Player number of (Triggering player))] = No unit
      • Custom script: call RemoveLocation( udg_Jumpto[GetPlayerId( GetEnumPlayer()) + 1] )
  • Jump Movement
    • Events
      • Time - Every 0.01 seconds of game time
    • Conditions
    • Actions
      • Unit - Move Jumper[(Player number of (Triggering player))] instantly to ((Position of Jumper[(Player number of (Triggering player))]) offset by 3.00 towards (Facing of Jumper[(Player number of (Triggering player))]) degrees), facing 0.00 degrees
      • Unit - Make Jumper[(Player number of (Triggering player))] face Jumpto[(Player number of (Triggering player))] over 0.01 seconds
 
Level 3
Joined
Aug 15, 2007
Messages
67
It is not very user friendly :(

Requirements:
* GUI Handle Vars: Located in the included file "GUIHandleVars.txt"
* That the following files does not exist in your "Where-Ever-You-Installed-WarcraftIII\UI\" folder:
* - TriggerData.txt
* - TriggerStrings.txt
* That the following file does not exist in your "Where-Ever-You-Installed-WarcraftIII\Units\" folder:
* - UnitGlobalStrings.txt

Never seen these folders before, I looked for them but still nothing, WarcraftIII\UI or \Units. Everything else I followed and when I save the map I get tons of errors in the script it tells you to paste in the map name in the triggers section.
 
Level 3
Joined
Aug 15, 2007
Messages
67
Any tips on how to change it? I need it to work for player 1-12. It would be nice if I didn't have to make a trigger for each player.
 
Level 3
Joined
Aug 15, 2007
Messages
67
I get the same error with the folders created.
 

Attachments

  • error.jpg
    error.jpg
    65.9 KB · Views: 132
Level 40
Joined
Dec 14, 2005
Messages
10,532
Kay, are you sure you haven't copied that code twice? 'Cause I see no problems (compile-wise) right there.

Perhaps post your map (without the GUI versions of the triggers)?

i can show you my verison if you give me some time, if you dont want use some complicated mods, but it might take sometime
Honestly, how do you expect to achieve MUI on this kind of spell with plain GUI?

Oh, and Yngwie, this method will also make it MUI, not just MPI.
 
Level 3
Joined
Aug 15, 2007
Messages
67
That would be awesome. I just need a simple jump spell nothing too complicated because I might need to mod it a bit to make it look the way I want. I just need the unit using it to jump from one point to another like the one I posted above. Most important it needs to work for multiple players simutaniously.

I am sure I didn't copy it twice, I have copied, then got error, deleted it, then copied again and delted again. I have more code there for a different spell maybe that is why?

Post 2 --

Here is a map with just the code in the map name of the triggers section where the problem is.

Sorry for double post but it's the only way I can upload the map.

This is in there twice once for a spell and once for the mod. Can I take one out without creating a problem?

function H2I takes handle h returns integer
return h
return 0
endfunction
 

Attachments

  • code.w3x
    21.2 KB · Views: 97
Last edited by a moderator:
Level 40
Joined
Dec 14, 2005
Messages
10,532
You can attach stuff to posts while editing by using Go Advanced ~merged posts~

If you don't take all but one of them out, that'll cause compile errors because of a reused function name.

Deleting the redeclared H2I and making a Game Cache called GUIHandleVars (or something, can't remember the exact name, check the variable manager in the attached map)

Here's the fixed map:
 

Attachments

  • code.w3x
    21 KB · Views: 112
Level 3
Joined
Aug 15, 2007
Messages
67
Thankyou PurplePoot, I have that variable set up.

Do you know which trigger I need to use to make this work?
 
Level 3
Joined
Aug 15, 2007
Messages
67
Yea that would be great. I just don't see how I can use them to pass triggering player through triggers ect.
 
Level 40
Joined
Dec 14, 2005
Messages
10,532
As I've said before, it's owner of triggering unit :p

First, make a global called TempTimer. This will be used for easy access in the looping trigger.

Next, to the first line of your starting trigger, do;

  • Set TempTimer = (Create Non-Global Timer)
Then, store what you need into the gamecache - eg;

  • Local Handle Vars - Store (Triggering Unit) with the name 'Caster' in TempTimer
  • Local Handle Vars - Store 2.00 with the name 'Time Left' in TempTimer
Then, start it to the next trigger by the following. The next trigger should have no events.

  • Countdown Timer - Start TempTimer as a Repeating timer that will expire in (interval, let's say .02) seconds, executing (Your periodic Trigger) when reaching zero.
Now, we're set to move on to the periodic trigger. Make sure that you didn't leave any waits between using and starting the timer.

Now, we'll need some variables of things we want to load. In this case, we stored time (a real) and caster (a unit). Let's make variables TimeLeft and CasterUnit. However, for safety's sake (if you want to use waits, that is), let's also make all 3 of our variables locals.

  • My Periodic Trigger
    • Events
    • Conditions
    • Actions
      • Custom script: local timer udg_TempTimer
      • Custom script: local unit udg_CasterUnit
      • Custom script: local real udg_TimeLeft
Next, let's load the timer data.

Notes: all the 'Load bleh from timer' are found under Local Handle Vars -, and Expiring Timer is found under Event Response -

  • My Periodic Trigger
    • Events
    • Conditions
    • Actions
      • Custom script: local timer udg_TempTimer
      • Custom script: local unit udg_CasterUnit
      • Custom script: local real udg_TimeLeft
      • Set TempTimer = (Expiring Timer)
      • Set CasterUnit = (Load Unit with the name 'Caster' from TempTimer.)
      • Set TimeLeft = (Load Real with the name 'Time Left' from TempTimer.)
Now, you can do stuff with CasterUnit (being the jumping unit)

Now, to end it when it's done, there's a better and more accurate way than just waiting in the starting function. Notice how we stored Time Left? The value we stored will be the time it takes for us to jump (2 seconds in this case). Decrease it by the interval (We said .02) every round of the periodic trigger

  • My Periodic Trigger
    • Events
    • Conditions
    • Actions
      • Custom script: local timer udg_TempTimer
      • Custom script: local unit udg_CasterUnit
      • Custom script: local real udg_TimeLeft
      • Set TempTimer = (Expiring Timer)
      • Set CasterUnit = (Load Unit with the name 'Caster' from TempTimer.)
      • Set TimeLeft = (Load Real with the name 'Time Left' from TempTimer.)
      • Set TimeLeft = (TimeLeft - 0.02)
Now, we need to add something that ends this if TimeLeft is less than (or equal to) 0.

  • My Periodic Trigger
    • Events
    • Conditions
    • Actions
      • Custom script: local timer udg_TempTimer
      • Custom script: local unit udg_CasterUnit
      • Custom script: local real udg_TimeLeft
      • Set TempTimer = (Expiring Timer)
      • Set CasterUnit = (Load Unit with the name 'Caster' from TempTimer.)
      • Set TimeLeft = (Load Real with the name 'Time Left' from TempTimer.)
      • Set TimeLeft = (TimeLeft - 0.02)
      • -------- Right here you should do stuff like move the unit --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (TimeLeft Less than or Equal To 0.00)
        • Then - Actions
          • Countdown Timer - Pause TempTimer
          • Local Handle Vars - Clean and Destroy TempTimer.
          • -------- right here, make a big slam when he lands and unpause him, or whatever else you want to do --------
        • Else - Actions
          • Local Handle Vars - Store TimeLeft with the name 'Time Left' in TempTimer
      • Custom script: set udg_TempTimer = null
      • Set CasterUnit = No Unit
 
Level 3
Joined
Aug 15, 2007
Messages
67
Okay I'll try and use this. So this will work with multiple players using the same spell all at once?

  • Set CasterUnit = (Load Unit with the name 'Caster' from TempTimer.)
  • Set TimeLeft = (Load Real with the name 'Time Left' from TempTimer.)
So I need to set up these variables?
 
Last edited:
Level 3
Joined
Aug 15, 2007
Messages
67
So should I make a new variable as CasterUnit and use both that and Jumper?

set udg_CasterUnit = LoadUnitFromTimer("Caster", udg_TempTimer)
set udg_TimeLeft = LoadRealFromTimer("Time Left", udg_TempTimer)

it says Error Invalid Argument type (timer)
 
Last edited:
Level 40
Joined
Dec 14, 2005
Messages
10,532
Oh, yeah, I dropped MindWorX (the maker of that) a PM asking him about writing a tutorial for those, actually, and he said there was a bug with the load funcs for the moment, but a script for them should be up later today.

You may not understand what's there, but basically he accidentally reversed the position of the timer and the string in the parameters (for the GUI version), so it'll generate a compile error no matter what you do. However, as I said, a fix (according to him) should be up today or something.
 
Level 3
Joined
Aug 15, 2007
Messages
67
Okay thanks alot PurplePoot. Again you have helped me soo much :D
Where should I look for this update?

Don't I need to Array those variables?

Off topic a little is this the correct custom script?
  • Death FFA AR
    • Events
      • Unit - A unit Dies
    • Conditions
    • Actions
      • Wait 8.00 seconds
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Owner of (Dying unit)) Current lumber) Equal to 1
        • Then - Actions
          • Set SpawnPoint[(Player number of (Owner of (Triggering unit)))] = (Random point in (Playable map area))
          • Unit - Create 1 Hero for (Owner of (Triggering unit)) at SpawnPoint[(Player number of (Owner of (Triggering unit)))] facing Default building facing degrees
          • Camera - Lock camera target for (Owner of (Triggering unit)) to (Last created unit), offset by (0.00, 0.00) using Default rotation
          • Custom script: call RemoveLocation( udg_SpawnPoint[GetPlayerId( GetEnumPlayer()) + 1] )
        • Else - Actions
 
Last edited:
Level 3
Joined
Aug 15, 2007
Messages
67
It says there is an error in the custom script. I don't need to array?? I thought if I'm using the tirrger alot for 12 players I need an array for each one?

Just a quick check when I make a variable array I can leave it at 1 (Default) and use it from 1-12 ?
 
Level 40
Joined
Dec 14, 2005
Messages
10,532
There's no wait in between the creation and destruction of that location, and thus an array is not needed.

If there's a compile error there, it's because SpawnPoint isn't an array (or doesn't exist). Also, by the way, there's no Enumerated Player there (won't crash the compiler, will just return null). I assume you want GetOwningPlayer(GetTriggerUnit())
 
Level 3
Joined
Aug 15, 2007
Messages
67
Thanks, is there a place I can find a list of the custom script variables? These give me errors.

  • Custom script: call RemoveLocation( udg_Trap[(GetOwningPlayer(GetTriggerUnit()))] )
  • Custom script: call RemoveLocation( udg_Trap[GetOwningPlayer(GetTriggerUnit())) + 1] )
Both say Expected a name
 
Level 40
Joined
Dec 14, 2005
Messages
10,532
It should be

GetPlayerId(GetOwningPlayer(GetTriggerUnit())), not just GetOwningPlayer(GetTriggerUnit())

I was merely saying to replace the GetEnumPlayer() -.-

EDIT: MindWorX says he reuploaded a fixed version of the GUI handles to the same place at wc3c, so try that one out.
 
Last edited:
Level 3
Joined
Aug 15, 2007
Messages
67
I get alot of errors before I even do anything now. See uploaded picture.

Anyway here is what I have done for the triggers just to see if it is correct.

  • Jump
    • Events
      • Unit - A unit Begins channeling an ability
    • Conditions
      • (Ability being cast) Equal to Jump
    • Actions
      • Set TempTimer = (Create Non-Global Timer)
      • Set CastingUnit = (Triggering unit)
      • Set CastingPoint = (Target point of ability being cast)
      • Local Handle Vars - Store CastingUnit with the name 'CastingUnit' in TempTimer.
      • Local Handle Vars - Store CastingPoint with the name 'CastingPoint' in TempTimer.
      • Unit - Pause CastingUnit
      • Unit - Make CastingUnit face CastingPoint over 0.01 seconds
      • Wait 0.01 seconds
      • Unit - Add Crow Form to CastingUnit
      • Unit - Turn collision for CastingUnit Off
      • Unit - Make CastingUnit Invulnerable
      • Animation - Change CastingUnit flying height to 300.00 at 900.00
      • Trigger - Turn on Jump Movement <gen>
      • Wait 0.20 seconds
      • Trigger - Turn off Jump Movement <gen>
      • Unit - Make CastingUnit face CastingPoint over 0.01 seconds
      • Animation - Change CastingUnit flying height to 0.00 at 1500.00
      • Trigger - Turn on Jump Movement <gen>
      • Wait 0.10 seconds
      • Unit - Remove Crow Form from CastingUnit
      • Unit - Turn collision for CastingUnit On
      • Unit - Make CastingUnit Vulnerable
      • Unit - Unpause CastingUnit
      • Animation - Change CastingUnit's animation speed to 100.00% of its original speed
      • Trigger - Turn off Jump Movement <gen>
      • Set CastingUnit = No unit
      • Custom script: call RemoveLocation( udg_CastingPoint )
      • Local Handle Vars - Clean and Destroy TempTimer.
  • Jump Movement
    • Events
      • Time - Every 0.01 seconds of game time
    • Conditions
    • Actions
      • Set CastingUnit = (Load Unit with the name 'CastingUnit' from TempTimer.)
      • Set CastingPoint = (Load Point with the name 'CastingPoint' from TempTimer.)
      • Unit - Move CastingUnit instantly to CastingPoint, facing 0.00 degrees
      • Unit - Make CastingUnit face CastingPoint over 0.01 seconds
I'm guessing I should just make it an array and do one trigger for each player? Would that make the file really big or make the game laggy?
 

Attachments

  • error.bmp
    1 MB · Views: 147
Level 3
Joined
Aug 15, 2007
Messages
67
Yes. There is two download links for it did you fix both? One is attached and one is a link. I used the one in the link.
 
Level 3
Joined
Aug 15, 2007
Messages
67
It makes wc3 crash now :(

  • Jump Activate
    • Events
      • Unit - A unit Begins channeling an ability
    • Conditions
      • (Ability being cast) Equal to Jump
    • Actions
      • Set TempTimer = (Create Non-Global Timer)
      • Local Handle Vars - Store (Triggering unit) with the name 'Caster' in TempTimer.
      • Local Handle Vars - Store (Target point of ability being cast) with the name 'CastingPoint' in TempTimer.
      • Countdown Timer - Start TempTimer as a Repeating timer that will expire in 0.02 seconds, executing Jump <gen> when reaching zero.
  • Jump
    • Events
    • Conditions
    • Actions
      • Custom script: local timer udg_TempTimer
      • Custom script: local unit udg_CasterUnit
      • Custom script: local real udg_TimeLeft
      • Set TempTimer = (Expiring timer)
      • Set CasterUnit = (Load Unit with the name 'Caster' from TempTimer.)
      • Set CastingPoint = (Load Point with the name 'CastingPoint' from TempTimer.)
      • Set TimeLeft = 0.02
      • Unit - Pause CasterUnit
      • Unit - Make CasterUnit face CastingPoint over 0.01 seconds
      • Wait 0.01 seconds
      • Unit - Add Crow Form to CasterUnit
      • Unit - Turn collision for CasterUnit Off
      • Unit - Make CasterUnit Invulnerable
      • Animation - Change CasterUnit flying height to 300.00 at 900.00
      • Trigger - Turn on Jump Movement <gen>
      • Wait 0.20 seconds
      • Trigger - Turn off Jump Movement <gen>
      • Unit - Make CasterUnit face CastingPoint over 0.01 seconds
      • Animation - Change CasterUnit flying height to 0.00 at 1500.00
      • Trigger - Turn on Jump Movement <gen>
      • Wait 0.10 seconds
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • TimeLeft Less than or equal to 0.00
        • Then - Actions
          • Countdown Timer - Pause TempTimer
          • Local Handle Vars - Clean and Destroy TempTimer.
          • Unit - Remove Crow Form from CasterUnit
          • Unit - Turn collision for CasterUnit On
          • Unit - Make CasterUnit Vulnerable
          • Unit - Unpause CasterUnit
          • Animation - Change CasterUnit's animation speed to 100.00% of its original speed
          • Trigger - Turn off Jump Movement <gen>
        • Else - Actions
          • Local Handle Vars - Store TimeLeft with the name 'Time Left' in TempTimer.
      • Custom script: set udg_TempTimer = null
      • Custom script: call RemoveLocation( udg_CastingPoint )
      • Set CasterUnit = No unit
  • Jump Movement
    • Events
      • Time - Every 0.01 seconds of game time
    • Conditions
    • Actions
      • Unit - Move CasterUnit instantly to CastingPoint, facing 0.00 degrees
      • Unit - Make CasterUnit face CastingPoint over 0.01 seconds
 
Level 12
Joined
Aug 18, 2006
Messages
1,193
i finaly had some time

here is my way to do this spell(might be a little late, but its just to prove that i could do what i said)
  • Jump
    • Events
      • Unit - A unit Begins channeling an ability
    • Conditions
      • (Ability being cast) Equal to Jump
    • Actions
      • Set POINT = Position of (Triggering unit)
      • Set NUMBER = Player number of (Owner of (Triggering unit)
      • Set Jumper[NUMBER] = (Triggering unit)
      • Set Jumpto[NUMBER] = (Target point of ability being cast)
      • Unit - Pause Jumper[NUMBER]
      • Unit - Make Jumper[NUMBER] face Jumpto[NUMBER] over 0.01 seconds
      • Unit - Create 1 Dummy1 for (Owner of Jumper[NUMBER]) at POINT
      • Unit - Add a 0.01 second Generic experation timer to (Last Created unit)
      • Custom script: call RemoveLocation(udg_POINT)
  • Jump 2
    • Events
      • Unit - A unit Dies
    • Conditions
      • (Unit type of (Dying unit)) Equal to Dummy1
    • Actions
      • Set POINT = Position of (Dying unit)
      • Unit - Add Crow Form to Jumper[(Player number of (Owner of (Dying unit)))]
      • Unit - Turn collision for Jumper[(Player number of (Owner of (Dying unit)))] Off
      • Unit - Make Jumper[(Player number of (Owner of (Dying unit)))] Invulnerable
      • Animation - Change Jumper[(Player number of (Owner of (Dying unit)))] flying height to 300.00 at 900.00
      • Unit - Set Custom Value of Jumper[(Player number of (Owner of (Dying unit)))] to 1
      • Unit - Create 1 Dummy2 for (Owner of (Dying unit)) at POINT
      • Unit - Add a 0.20 second Generic experation timer to (Last Created unit)
      • Custom script: call RemoveLocation(udg_POINT)
  • Jump 3
    • Events
      • Unit - A unit Dies
    • Conditions
      • (Unit type of (Dying unit)) Equal to Dummy2
    • Actions
      • Set POINT = (Position of (Dying unit))
      • Unit - Set Custom Value of Jumper[(Player number of (Owner of (Dying unit)))] to 0
      • Unit - Make Jumper[(Player number of (Owner of (Dying unit)))] face Jumpto[(Player number of (Owner of (Dying unit)))] over 0.01 seconds
      • Animation - Change Jumper[(Player number of (Owner of (Dying unit)))] flying height to 0.00 at 1500.00
      • Unit - Set Custom Value of Jumper[(Player number of (Owner of (Dying unit)))] to 1
      • Unit - Create 1 Dummy3 for (Owner of (Dying unit)) at POINT
      • Unit - Add a 0.10 second Generic experation timer to (Last Created unit)
      • Custom script: call RemoveLocation(udg_POINT)
  • Jump 4
    • Events
      • Unit - A unit Dies
    • Conditions
      • (Unit type of (Dying unit)) Equal to Dummy3
    • Actions
      • Set NUMBER = Player number of (Owner of (Dying unit))
      • Unit - Set Custom Value of Jumper[NUMBER] to 0
      • Animation - Change Jumper[NUMBER]'s animation speed to 100.00% of its original speed
      • Unit - Remove Crow Form from Jumper[NUMBER]
      • Unit - Turn collision for Jumper[NUMBER] On
      • Unit - Make Jumper[NUMBER] Vulnerable
      • Unit - Unpause Jumper[NUMBER]
      • Set Jumper[NUMBER] = No unit
      • Custom script: call RemoveLocation( udg_Jumpto[udg_NUMBER] )
  • Jump Movement
    • Events
      • Time - Every 0.01 seconds of game time
    • Conditions
    • Actions
      • For every (Integer A) from 1 to (Amount of Players) do (Actions)
        • Loop
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Custom value of Jumper[Integer A]) Equal to 1
            • Then - Actions
              • Set POINT = Jumpto[Integer A]
              • Set POSITION = (Position of Jumper[Integer A])
              • Set OFFSET = POSITION offset by 3.00 towards (Facing of Jumper[Integer A]) degrees
              • Unit - Move Jumper[Integer A] instantly to OFFSET
              • Unit - Make Jumper[Integer A] face POINT over 0.01 seconds
              • Custom script: call RemoveLocation(udg_POINT)
              • Custom script: call RemoveLocation(udg_POSITION)
              • Custom script: call RemoveLocation(udg_OFFSET)
            • Else - Actions
well, i guess that would be it. I quoted so i didnt have to remember all the previous triggers and write them myself :p
 
Status
Not open for further replies.
Top