cannot take the last summoned unit

mems

Memory Lapse
Reaction score
24
i have a custom ability from sipirit of vegance
this spell creates a parmanent egg

Other sides will be done with triggers i want this eggs grow and turn into another ting. Im testing it ringht now. here is an example of my basic trigger

Code:
Queen
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Unit-type of (Triggering unit)) Equal to Queen
        (Ability being cast) Equal to Lay Egg 
    Actions
        Wait 1.00 seconds
        Set n = (n + 1)
        //my problem is here this does not works i cant set the Variable
        [B]Set eggs[n] = (Summoned unit)[/B]
        //This also does not works 
        [B]Set eggs[n] = (Last Created unit)[/B]
        Wait 1.00 seconds
        Animation - Change eggs[n]'s size to (110.00%, 110.00%, 110.00%) of its original size
        Wait 1.00 seconds
        Animation - Change eggs[n]'s size to (120.00%, 120.00%, 120.00%) of its original size
        Wait 1.00 seconds
        Unit - Kill eggs[n]
        Unit - Create 1 Worker for (Owner of eggs[n]) at (Position of eggs[n]) facing Default building facing degrees

Also there will be more problems on this when advenced, becosue of waiting time for the units effect, you cannot set the last sommoned unit(or whatever) quickly and another unit which is casting this ability at the same time will couse a problem. any opinions about to solve this? (ofcourse i will use local variables)
:(
 
A

AddE

Guest
ive never :/ really understood that with the custom trigger part even if im good at triggers but what do this really help wtih i mean:

Custom Script: local unit udg_egg


cant you just set a variable instead?
 

phyrex1an

Staff Member and irregular helper
Reaction score
447
AddE said:
ive never :/ really understood that with the custom trigger part even if im good at triggers but what do this really help wtih i mean:

Custom Script: local unit udg_egg


cant you just set a variable instead?

A local variable is just for the function it is running on. ie if you one function(a trigger is mostly only one function) that revives heroes like this:

A unit dies.

Set <hero> = Dying unit
wait 90 sec
Revive <hero>

if another unit dies meenwhile the global variable is over writed. With a local it isnt. But local can normaly only be accesed with jass.

There is one exeption. In jass scripts a global variable starts with udg_. You can "trick" the script by call the local "udg_<global variable_name>" now you global variable is a local inside that function and you can use GUI to access it.

So the function
local unit udg_egg
simply sets a global varialbe to a local so that you can use GUI to acces it.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top