Reviveing problems.

Eskemoenn

Member
Reaction score
2
Hey folks, i am trying to make a RPG, and i want to make a revive system, so when you'r hero dies. You gain 1 "Ghost" so you have to go find your grave, and attack it to revive, i already try'd to make it. But it seems i am doing somthing wrong? :(

Trigger:
  • Player 1 Dies
    • Events
      • Unit - A unit owned by Player 1 (Red) Dies
    • Conditions
      • ((Triggering unit) is A Hero) Equal to True
    • Actions
      • Unit - Create 1 ATTACK ME TO REVIVE for Player 1 (Red) at (Position of (Triggering unit)) facing Default building facing degrees
      • Game - Display to (All players) the text: ((Name of (Triggering player)) + Died! .. You'r Ghost has spawned in Dallian!)
      • Wait 1.00 seconds
      • Camera - Pan camera for Player 1 (Red) to (Center of Game Spawn <gen>) over 1.00 seconds
      • Unit - Create 1 You'r Ghost for Player 1 (Red) at (Center of Game Spawn <gen>) facing Default building facing degrees
      • Trigger - Add to (This trigger) the event (Unit - A unit owned by Player 1 (Red) Is attacked)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Unit-type of (Triggering unit)) Equal to ATTACK ME TO REVIVE
          • ((Triggering unit) is A structure) Equal to True
        • Then - Actions
          • Unit - Remove (Attacked unit) from the game
          • Unit - Remove (Attacking unit) from the game
          • Wait 1.00 seconds
          • Hero - Instantly revive (Dying unit) at (Position of (Attacking unit)), Show revival graphics
        • Else - Actions
          • Do nothing


Can anyone tell me what? :)

Apriciated, Thanks :)
 

feelingparty

New Member
Reaction score
3
I kinda don't get your triggers with the event addition thing. So I created my own that should work. Try them :)

Before you read though, I suggest that you use Starting Locations instead of regions if the spawning locations won't change as it would be easier for you.

1st:
Trigger:
  • Untitled Trigger 001
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Triggering unit) is A Hero) Equal to True
    • Actions
      • Set TempPoint = (Position of (Triggering unit))
      • Unit - Create 1 ATTACK ME TO REVIVE for (Owner of (Triggering unit)) at TempPoint facing Default building facing degrees
      • Unit - Create 1 Your Ghost for (Owner of (Triggering unit)) at ((Owner of (Triggering unit)) start location) facing Default building facing degrees
      • Custom script: call RemoveLocation (udg_TempPoint)


2nd

Trigger:
  • Untitled Trigger 002
    • Events
      • Unit - A unit Is attacked
    • Conditions
      • (Unit-type of (Attacked unit)) Equal to ATTACK ME TO REVIVE
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Unit-type of (Attacking unit)) Equal to Your Ghost
        • Then - Actions
          • Unit - Create 1 Your Hero for (Owner of (Triggering unit)) at TempPoint facing Default building facing degrees
        • Else - Actions
      • Custom script: call RemoveLocation (udg_TempPoint)
 

hopy

Active Member
Reaction score
64
I think it would be a bit better to just do this in 2 triggers rather than one.
Below are two triggers that should work, but something else first, the points in your trigger leak; they have to be destroyed.

I think that with your current trigger: you will leak, will only work once and will spawn multiple ATTACK ME units.

Trigger:
  • Spawn Ghost
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Triggering unit) is A Hero) Equal to True
    • Actions
      • Set Unit[(Player number of (Owner of (Triggering Unit)))] = (Dying unit)
      • Set Point = (Position of (Triggering unit))
      • Unit - Create 1 KILL ME TO REVIVE for (Owner of (Triggering unit)) at Point facing Default building facing degrees
      • Custom script: call RemoveLocation (udg_Point)
      • Game - Display to (All players) the text: ((Name of (Owner of (Triggering unit))) + has died!)
      • Game - Display to (All players matching ((Owner of (Triggering unit)) Equal to (Matching player))) the text: Your Ghost has spaw...
      • Set Point = (Center of Game Spawn <gen>)
      • Camera - Pan camera for (Owner of (Triggering unit)) to Point over 1.00 seconds
      • Unit - Create 1 Ghost for (Owner of (Triggering unit)) at Point facing Default building facing degrees
      • Custom script: call RemoveLocation (udg_Point)


Trigger:
  • Revive
    • Events
      • Unit - A unit Is attacked
    • Conditions
      • (Unit-type of (Attacked unit)) Equal to KILL ME TO REVIVE
      • (Unit-type of (Attacking unit)) Equal to Ghost
    • Actions
      • Unit - Remove (Attacked unit) from the game
      • Unit - Remove (Attacking unit) from the game
      • Set Point = (Position of (Triggering unit))
      • Hero - Instantly revive Unit[(Player number of (Owner of (Triggering Unit)))] at Point, Show revival graphics
      • Custom script: call RemoveLocation (udg_Point)


Variables:
- Unit[] is a Unit array variable, used to save the dieing heroes.
- Point is a Point variable. (O'rly?)

What the trigger does:
- Creates a Tomb Stone unit at the Corpse.
- Lets Everyone know you died.
- Lets the owner of the hero know he now has a Ghost.
- Creates a Ghost at the starting Point and pans the camara to the Ghost.

- Removes the Ghost and Tomb Stone.
- Revives your hero.

Leakless and usable for Multiple players at once.
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
well just change it to revive instead of created.
save the hero into an array with the id being the player number of the owner (in case every player got only 1 hero) and the revive the hero with the proper id.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top