• 🏆 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!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Creep Respawn System

Status
Not open for further replies.
Level 19
Joined
Aug 16, 2007
Messages
881
Hello. I tried to create a Creep Respawn system. And now, I want to know if this system will work 100% through a couple of hours game-play.

Here are the triggers:

  • CreepRespawnInitalization
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set CreepGroup = (Units owned by Player 12 (Brown))
      • Unit Group - Pick every unit in CreepGroup and do (Actions)
        • Loop - Actions
          • Set CreepID = (CreepID + 1)
          • Set CreepUnitType[CreepID] = (Unit-type of (Picked unit))
          • Set CreepRespawnTimer[CreepID] = 0
          • Set CreepPosition[CreepID] = (Position of (Picked unit))
          • Unit - Set the custom value of (Picked unit) to CreepID
      • Custom script: call DestroyGroup(udg_CreepGroup)

  • CreepDies
    • Events
      • Unit - A unit Dies
    • Conditions
      • (Owner of (Triggering unit)) Equal to Player 12 (Brown)
      • ((Triggering unit) is Summoned) Equal to False
    • Actions
      • Set CreepRespawnTimer[(Custom value of (Triggering unit))] = 30

  • CreepRevive
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • Set CreepGroup = (Units owned by Player 12 (Brown))
      • Unit Group - Pick every unit in CreepGroup and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • CreepRespawnTimer[(Custom value of (Picked unit))] Greater than or equal to 1
            • Then - Actions
              • Set CreepRespawnTimer[(Custom value of (Picked unit))] = (CreepRespawnTimer[(Custom value of (Picked unit))] - 1)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • CreepRespawnTimer[(Custom value of (Picked unit))] Equal to 0
                • Then - Actions
                  • Set CreepRespawnTimer[(Custom value of (Picked unit))] = -5
                  • Unit - Create 1 CreepUnitType[(Custom value of (Picked unit))] for Player 12 (Brown) at CreepPosition[(Custom value of (Picked unit))] facing Default building facing degrees
                • Else - Actions
            • Else - Actions
      • Custom script: call DestroyGroup(udg_CreepGroup)

Well, will this work? :)
 
Status
Not open for further replies.
Top