add unit to unit group (trigger-action)

Discussion in 'Starcraft 2 (SC2) Editor Help' started by MissKerrigan, Jul 13, 2012.

  1. MissKerrigan

    MissKerrigan Active Member

    Ratings:
    +23 / 0 / -0
    Hello I created this trigger actions:

    action : create 1 zergling for player 8 (computer) at 'level 1 zergling 1'
    action : add last created unit to unit group 'level 1'
    action : create 1 zergling for player 8 (computer) at 'level 1 zergling 2'
    action : add last created unit to unit group 'level 1'
    action : create 1 hydralisk for player 8 (computer) at 'level 1 hydralisk 1'
    action : add last created unit to unit group 'level 1'
    action : create 1 hydralisk for player 8 (computer) at 'level 1 hydralisk 2'
    action : add last created unit to unit group 'level 1'
    action : create 1 baneling for player 8 (computer) at 'level 1 baneling 1'
    action : add last created unit to unit group 'level 1'
    action : create 1 baneling for player 8 (computer) at 'level 1 baneling 2'
    action : add last created unit to unit group 'level 1'
    action : create 1 spider mine for player 8 (computer) at 'level 1 spider mine 1'
    action : add last created unit to unit group 'level 1'
    action : create 1 spider mine for player 8 (computer) at 'level 1 spider mine 2'
    action : add last created unit to unit group 'level 1'
    action : create 1 mineral box for player 0 (neutral) at 'level 1 mineral box 1'
    action : add last created unit to unit group 'level 1'
    action : create 1 mineral box for player 0 (neutral) at 'level 1 mineral box 2'
    action : add last created unit to unit group 'level 1'
    action : create 1 green key for player 0 (neutral) at 'level 1 green key'
    action : add last created unit to unit group 'level 1'
    action : create 1 green gate for player 0 (neutral) at 'level 1 green gate'
    action : add last created unit to unit group 'level 1'
    action : create 1 blue key for player 0 (neutral) at 'level 1 blue key'
    action : add last created unit to unit group 'level 1'
    action : create 1 blue gate for player 0 (neutral) at 'level 1 blue gate'
    action : add last created unit to unit group 'level 1'
    action : create 1 red key for player 0 (neutral) at 'level 1 red key'
    action : add last created unit to unit group 'level 1'
    action : create 1 red gate for player 0 (neutral) at 'level 1 red gate'
    action : add last created unit to unit group 'level 1'
    action : create 1 green gate for player 0 (neutral) at 'level 1 green gate'
    action : add last created unit to unit group 'level 1'
    action : create 1 green key for player 0 (neutral) at 'level 1 green key'
    action : add last created unit to unit group 'level 1'
    action : create 1 orange (+1 health) for player 0 (neutral) at 'level 1 orange 1'
    action : add last created unit to unit group 'level 1'
    action : create 1 orange (+1 health) for player 0 (neutral) at 'level 1 orange 2'
    action : add last created unit to unit group 'level 1'
    action : create 1 orange (+1 health) for player 0 (neutral) at 'level 1 orange 3'
    action : add last created unit to unit group 'level 1'
    action : create 1 orange (+1 health) for player 0 (neutral) at 'level 1 orange 4'
    action : add last created unit to unit group 'level 1'
    action : create 1 orange (+1 health) for player 0 (neutral) at 'level 1 orange 5'
    action : add last created unit to unit group 'level 1'
    action : create 1 orange (+1 health) for player 0 (neutral) at 'level 1 orange 6'
    action : add last created unit to unit group 'level 1'
    action : create 1 lemon (+2 health) for player 0 (neutral) at 'level 1 lemon 1'
    action : add last created unit to unit group 'level 1'
    action : create 1 lemon (+2 health) for player 0 (neutral) at 'level 1 lemon 2'
    action : add last created unit to unit group 'level 1'
    action : create 1 lemon (+2 health) for player 0 (neutral) at 'level 1 lemon 3'
    action : add last created unit to unit group 'level 1'
    action : create 1 lemon (+2 health) for player 0 (neutral) at 'level 1 lemon 4'


    is this the only way to do this?
    now my map has about 25 levels, would be very unpleasant for the computer to create all this?

    MissKerrigan
     
  2. Dave312

    Dave312 Censored for your safe viewing

    Ratings:
    +269 / 0 / -0
    If you pre-place the units in the Terrain Editor, you can create unit groups by going Map -> Object Groups...
     
  3. MissKerrigan

    MissKerrigan Active Member

    Ratings:
    +23 / 0 / -0
    thanks but the problem is that this units groups must be placed in the map everytime when a player enters a level

    problem: if a player kills 50% units in a level and entering the level again, there are suddenly 150% units

    So how do I program that ONLY the units of the unit group are in the level when a player enters the level?
     
  4. Dave312

    Dave312 Censored for your safe viewing

    Ratings:
    +269 / 0 / -0
    I think you are doing it the right way then.
     
  5. MissKerrigan

    MissKerrigan Active Member

    Ratings:
    +23 / 0 / -0
    already found something, just added multiple unit group variables and make all trigger actions:

    remove 1 unit from unit group 'level 1'
    wait 0.1 seconds
    remove 1 unit from unit group 'level 1'
    wait 0.1 seconds
    remove 1 unit from unit group 'level 1'
    wait 0.1 seconds
    remove 1 unit from unit group 'level 1'
    wait 0.1 seconds

    (about 50 times)

    so I'm sure now all units of a unit group are deleted before create the unit group again in the level
     
  6. Dave312

    Dave312 Censored for your safe viewing

    Ratings:
    +269 / 0 / -0
    Removing a unit from the Unit Group will not delete the unit. You need use the action Remove Unit. I think this action will also remove the unit from the unit group.
     
  7. MissKerrigan

    MissKerrigan Active Member

    Ratings:
    +23 / 0 / -0
    I am using the 'remove unit' trigger, but I select the units from a unit group :)
     
  8. MissKerrigan

    MissKerrigan Active Member

    Ratings:
    +23 / 0 / -0
    Hello,

    The title of this thread is named about 'unit groups' so I continue here

    actions create 1 hydralisk in region 'hydralisk 1' for player 8 (computer)...
    actions add last created unit group to 'hydralisks'
    actions create 1 hydralisk in region 'hydralisk 2' for player 8 (computer)...
    actions add last created unit group to 'hydralisks'
    actions create 1 hydralisk in region 'hydralisk 3' for player 8 (computer)...
    actions add last created unit group to 'hydralisks'
    actions create 1 hydralisk in region 'hydralisk 4' for player 8 (computer)...
    actions add last created unit group to 'hydralisks'
    actions create 1 hydralisk in region 'hydralisk 5' for player 8 (computer)...
    actions add last created unit group to 'hydralisks'
    actions create 1 hydralisk in region 'hydralisk 6' for player 8 (computer)...
    actions add last created unit group to 'hydralisks'
    actions create 1 hydralisk in region 'hydralisk 7' for player 8 (computer)...
    actions add last created unit group to 'hydralisks'
    actions create 1 hydralisk in region 'hydralisk 8' for player 8 (computer)...
    actions add last created unit group to 'hydralisks'
    actions create 1 hydralisk in region 'hydralisk 9' for player 8 (computer)...
    actions add last created unit group to 'hydralisks'

    1. is there a way I can put all hydralisks in the unit group at once?
    2. 'add last created unit to unit group' is this only 1 unit? I mean would this work?

    actions create 12 hydralisks at 'hydralisks' for player 8 (computer)...
    actions add last created unit to 'hydralisks'
     
  9. GFreak45

    GFreak45 I didnt slap you, i high 5'd your face.

    Ratings:
    +132 / 0 / -0
    you will have to use variables, create one variable called hydralisk with the array marker checked that holds regions, it should be 1 dimension with an index of 9, then at map initialization, set "hydralisk 1" to hydralisk[0], "hydralisk 2" to hydralisk[1], then do something like this:

    Trigger:
    • Spawn hydralisks
      • Events
        • Your events
      • Conditions
        • Your conditions
      • Local Variables
        • x <Integer> = 0
      • Actions
        • For each integer x from 1 to 9 do actions
          • Loop - Actions
            • Unit - Create 1 hydralisk for player 8 (computer) at hydralisk[x]
            • Unit Group - add last created unit to hydralisks
     
  10. MissKerrigan

    MissKerrigan Active Member

    Ratings:
    +23 / 0 / -0
    omg why does it always has something to do with variables...
     
  11. MissKerrigan

    MissKerrigan Active Member

    Ratings:
    +23 / 0 / -0
    Hello,

    If I add 'ghost a' to unit group 'ghosts', does it remove the ghost then if it was in another unit group?
     
  12. GFreak45

    GFreak45 I didnt slap you, i high 5'd your face.

    Ratings:
    +132 / 0 / -0
    no a unit can be in as many unit groups as you want, but it can only be in each group once, btw, save yourself hours and learn to use variables, iv seen the coding for some of your maps and you could cut it down to 1 thousandth of the size...
     
  13. MissKerrigan

    MissKerrigan Active Member

    Ratings:
    +23 / 0 / -0
    no no what I just want to know is when the ghost is in unit group 'ghosts' and he enters the marine world, he must be switch over to the unit group 'marines'

    so if I make a trigger that when a ghost enters the marine world, add the ghost to 'marines' does it is automatically removed from the unit group 'ghosts'?
     
  14. Siretu

    Siretu Starcraft 2 Editor Moderator Staff Member

    Ratings:
    +295 / 0 / -0
    That's exactly what GFreak talked about. I'm quoting "no a unit can be in many unit groups as you want".

    How would it be able to be in many unit groups at once if it was automatically deleted when you add it to another group?

    To answer your question, if you add it to a unit group, it wont get deleted from another unit group automatically.
     
  15. MissKerrigan

    MissKerrigan Active Member

    Ratings:
    +23 / 0 / -0
    so why there is no trigger-action 'MOVE UNIT TO UNIT GROUP'?
     
  16. Siretu

    Siretu Starcraft 2 Editor Moderator Staff Member

    Ratings:
    +295 / 0 / -0
    Because you don't need it. You just add it to the new unit group and remove it from the other one.
     
  17. MissKerrigan

    MissKerrigan Active Member

    Ratings:
    +23 / 0 / -0
    I can't remove the unit from the unit group because I don't know in which unit group the unit is
     
  18. Siretu

    Siretu Starcraft 2 Editor Moderator Staff Member

    Ratings:
    +295 / 0 / -0
    Well, you could always remove it from all of them.
     
  19. MissKerrigan

    MissKerrigan Active Member

    Ratings:
    +23 / 0 / -0
    thx! didn't know I can make trigger-actions to remove units from a group even if they are not in there
     

Share This Page