Event "A unit dies" doesn't involve exploding units.

KingJohn

New Member
Reaction score
0
Hey there folks, I have a problem with creep revival.
I use the common creep revival system with custom values, made by Tinki3. Everything works fine, but if a creeps dies by a Mortar Team or a Cannon Tower, it explodes (that's what it should do), but obviously doesn't trigger the revival system. I just don't know how to fix this, there's no "A unit explodes" event, nor nothing else that made any sense. Would be great if you could help me out.
Also, I'm wondering how to import GUI triggers into this thread? I didn't find it in the FAQs.
 

Solu9

You can change this now in User CP.
Reaction score
216
To import trigger copy your trigger (at the trigger name in the Events, Conditions, Actions window) as text.
Wrap [.WC3][./WC3] (without punctuation) around the pasted text.

One thing you could do is make a trigger which stores the attacked unit in a unit variable if the attacking unit is a Mortar Team or Cannon Tower. Then revive the unit by referring to the unit variable. Problem is if you have a lot of Mortar Teams and Cannon Towers. There might be a better way to do it.
 

Imp Midna

Active Member
Reaction score
52
A unit dies always worked fine for me, wether it explodes due to the make unit explode on death function or because it was killed by a canon tower. Try checking this with a simple text message, cause i dont think that its different in your map. Maybe some other trigger interferes with you revival trigger?
 

death_knight

Dark is the heart of a corrupted man.
Reaction score
24
As Imp said, you might have another tigger that interferes with the revival system. I think this is quite likely, especially if you have other triggers with are predicated on a unit dying. The other scenerio, which is no where near as likely but still possible, is that you may have conditions within the revival trigger that somehow exclude the scenario where a unit explodes on death.

If it's neither of those, then if it's not too time consuming/hard to do, I suggest deleting all triggers that are involved in the revival process and recreate them. This has work on a couple of occasions for me, so it might work if all else fails.
 

KingJohn

New Member
Reaction score
0
Thank you, Solu9, for the info!
There aren't many Mortar-Teams and Cannon Towers, but it's still a lot of work, though, so I'd like to try a different solution.
@Imp/death_knight, well there are several triggers with "a unit dies" as the event, but I don't know how it could possibly interfere, as the trigger runs perfectly when the unit dies in a normal way, and I have no trigger with "units explodes upon death" included.
Here are the two "revival triggers":


Trigger:
  • Init
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Unit Group - Pick every unit in (Units in (Playable map area) owned by Neutral Hostile) and do (Actions)
        • Loop - Actions
          • Set CreepRespawnCustomValue = (CreepRespawnCustomValue + 1)
          • Unit - Set the custom value of (Picked unit) to CreepRespawnCustomValue
          • Custom script: set udg_CreepRespawnX[udg_CreepRespawnCustomValue] = GetUnitX(GetEnumUnit())
          • Custom script: set udg_CreepRespawnY[udg_CreepRespawnCustomValue] = GetUnitY(GetEnumUnit())


"Dying unit is an Ancient" has nothing to do with the problem, I just need that, so Dungeon Units aren't revived during a run.
Trigger:
  • Revive Creeps 1 by 1
    • Events
      • Unit - A unit Dies
    • Conditions
      • And - All (Conditions) are true
        • Conditions
          • ((Owner of (Triggering unit)) Equal to Neutral Hostile) and (((Dying unit) is Summoned) Equal to False)
          • ((Dying unit) is An Ancient) Equal to False
    • Actions
      • Wait (Random real number between 45.00 and 90.00) seconds
      • Unit - Create 1 (Unit-type of (Triggering unit)) for Neutral Hostile at ((Center of (Entire map)) offset by (CreepRespawnX[(Custom value of (Triggering unit))], CreepRespawnY[(Custom value of (Triggering unit))])) facing (Random angle) degrees
      • Unit - Set the custom value of (Last created unit) to (Custom value of (Triggering unit))


I thought of this problem: Maybe the "custom value" is destroyed somehow, if the units explodes? Because, there is no corpse, which may be revived either. It's like setting an unit group = empty unit group (normal death) and CallDestroyUnitGroup (explosion death).
I now try checking with a text message.
 

Juggernaut

I don't know what to change it to
Reaction score
33
Just a thought. Are you trying to create the dead unit at the position of it's death?
If so, why don't you store the position of dying unit and then create a new unit at that position?
 

Solu9

You can change this now in User CP.
Reaction score
216
Off question. But does this line in your second trigger actually work?
Unit - Create 1 (unit-type of (Triggering unit) for Neutral Hostile at.....

After 45 to 90 seconds will the game still recognize what the triggering unit is?
 
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