• 🏆 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!

[Trigger] Need help with trigger causing a crash

Status
Not open for further replies.
Level 2
Joined
Jan 22, 2012
Messages
13
Okay, so I have this item called 'Soul Stone'. It has charges and gains 1 per kill. The item has a spellbook ability which is hidden and contains a passive ability that gives 1 mana regen per charge.

When the holder dies, he will gain gold based on the charges, and a dummy hero will be created where he died to collect exp while he is dead. His nearby allies will get healed based on the charges. Afterwards, he loses 1/3 of the charges.

Problem: When he dies, the game crashes. I don't know the reason why. :(

  • Soul Stone Dies
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Dying unit) has an item of type Soul Stone) Equal to True
      • ((Dying unit) is A Hero) Equal to True
    • Actions
      • Player - Add (25 x (Charges remaining in (Item carried by (Dying unit) of type Soul Stone))) to (Owner of (Dying unit)) Current gold
      • Set CastPoint = (Position of (Dying unit))
      • Unit - Create 1 Soul Stone for (Owner of (Dying unit)) at CastPoint facing Default building facing degrees
      • Unit Group - Add (Last created unit) to SoulStoneGroup
      • Special Effect - Create a special effect at CastPoint using Objects\Spawnmodels\Undead\UndeadDissipate\UndeadDissipate.mdl
      • Special Effect - Destroy (Last created special effect)
      • Set CastGroup = (Units within 1675.00 of CastPoint matching (((Owner of (Matching unit)) is an ally of (Owner of (Dying unit))) Equal to True))
      • Unit Group - Pick every unit in CastGroup and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) is A structure) Not equal to True
              • ((Picked unit) is Mechanical) Not equal to True
            • Then - Actions
              • Unit - Set life of (Picked unit) to (((Life of (Picked unit)) + 400.00) + (30.00 x (Real((Charges remaining in (Item carried by (Dying unit) of type Soul Stone))))))
            • Else - Actions
      • Item - Set charges remaining in (Item carried by (Dying unit) of type Soul Stone) to (((Charges remaining in (Item carried by (Dying unit) of type Soul Stone)) x 2) / 3)
      • Unit - Set level of Soul Stone dummy aura (Item) for (Dying unit) to (Charges remaining in (Item carried by (Dying unit) of type Soul Stone))
      • Custom script: call RemoveLocation(udg_CastPoint)
      • Custom script: call DestroyGroup(udg_CastGroup)
EDIT: I found the problem, "Unit - Set level of Soul Stone dummy aura (Item) for (Dying unit) to (Charges remaining in (Item carried by (Dying unit) of type Soul Stone))" causes the crash for some reason. I moved it to when he is spawning so now it doesn't crash. :psmile:
 
Last edited:
Status
Not open for further replies.
Top