Replacing Units

C++

New Member
Reaction score
1
How come my trigger doesn't work?
Trigger:
  • Events
    • Unit - A unit Begins casting an ability
    • Conditions
    • Actions
      • If ((Ability being cast) Equal to Morph into Hydralisk (Neutral Hostile)) then do (Unit - Replace (Triggering unit) with a Hydralisk using The old unit's relative life and mana) else do (Do nothing)
      • If ((Ability being cast) Equal to Morph into a Human (Neutral Hostile)) then do (Unit - Replace (Triggering unit) with a Marine using The old unit's relative life and mana) else do (Do nothing)
      • If ((Ability being cast) Equal to Morph into a Zergling (Neutral Hostile)) then do (Unit - Replace (Triggering unit) with a Zergling using The old unit's relative life and mana) else do (Do nothing)


When I cast the hydralisk ability with a marine, it replaces the marine with a zergling and a hydralisk. whats the problem here?
 

ArmyOfFrogs

New Member
Reaction score
20
The else do (do nothing) from the first one makes it skip the rest of them I think. Change it to if / then / else multiple functions and put them connected
e.g.
if its equal to hydralisk
replace unit with hydralisk
else
if its equal to human
replace unit with human
else
if its zergling
replace unit with zergling
else
do nothing
 

C++

New Member
Reaction score
1
The else do (do nothing) from the first one makes it skip the rest of them I think. Change it to if / then / else multiple functions and put them connected
e.g.
if its equal to hydralisk
replace unit with hydralisk
else
if its equal to human
replace unit with human
else
if its zergling
replace unit with zergling
else
do nothing
Trigger:
  • Untitled Trigger 002
    • Events
      • Unit - A unit Begins casting an ability
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Ability being cast) Equal to Morph into a Human (Neutral Hostile)
        • Then - Actions
          • Unit - Replace (Triggering unit) with a Marine using The old unit's relative life and mana
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Ability being cast) Equal to Morph into a Zergling (Neutral Hostile)
            • Then - Actions
              • Unit - Replace (Triggering unit) with a Zergling using The old unit's relative life and mana
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Ability being cast) Equal to Morph into Hydralisk (Neutral Hostile)
                • Then - Actions
                  • Unit - Replace (Triggering unit) with a Hydralisk using The old unit's relative life and mana
                • Else - Actions

Yeah, I've tried it previously but it didn't work. I just did it in that format so it would be kindof easier to read.
 

ArmyOfFrogs

New Member
Reaction score
20
check the baseid on the two morphs? I imagine you made them from the same base spell and might have forgotten to change it :p
 

trb92

Throwing science at the wall to see what sticks
Reaction score
142
Should be on the ability in object editor

The option you refer to is only on Channel, Spellbook, and Charge Gold/Lumber.

Solution to your problem: Either base the three spells off of different base abilities, or base them all off channel and change the Base Order ID's to all be different.
 

LordXavier

TH.net Regular
Reaction score
16
To check the baseid: open up Object Editor, go to View at the top, click on "Display Values As Raw Data" or just hit Ctrl+D in Object Editor
 

C++

New Member
Reaction score
1
The option you refer to is only on Channel, Spellbook, and Charge Gold/Lumber.

Solution to your problem: Either base the three spells off of different base abilities, or base them all off channel and change the Base Order ID's to all be different.

Using different base abilities worked, thanks! But I would rather change the base order ID's. I've added a custom ability with the base Channel but I don't see any Base ID (Yes, I do have display values as raw data checked)
 

Faust

You can change this now in User CP.
Reaction score
123
You don't have to rawdata anything...
Go to ability editor, select your channel spell, look through the fields, there will be TWO which reads "channel"
The one you need is something like Data - Base Order ID
 

Kelvin87

New Member
Reaction score
14
don forget to change the option to visible, else you will not able to see any ability in your unit.
 
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