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

Eggsack system 0.03

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
  • Like
Reactions: Archangel678
My third spell. For AvP Maps.

WARNING: Is a system, but not easy (6 Triggers).

  • Max
    • Events
      • Map initialization
    • Conditions
    • Actions
      • -------- ------- --------
      • -------- If you map casts this spell much, add more number. --------
      • Set Max = 10
      • -------- ------- --------
  • Init
    • Events
      • Unit - A unit starts the effect of an abilit
    • Conditions
      • (Ability being cast) Equal to Eggsack
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • IntegerEggsack[1] Equal to 0
        • Then - Actions
          • Trigger - Turn on Loop Eggsack <gen>
          • Detonador - Turn on TimeValue <gen>
        • Else - Actions
      • Set IntegerEggsack[1] = (IntegerEggsack[1] + 1)
      • Set IntegerEggsack[2] = (IntegerEggsack[2] + 1)
      • Set AlienQueen[IntegerEggsack[2]] = (Triggering unit)
      • -------- ------------------------------- --------
      • -------- This is the distance of appear of the EggSack (Don't change the [ - ] or the eggsack appears toward the Queen --------
      • Set Towards = -500.00
      • -------- ------------------------------- --------
      • Set Facing = (Facing of AlienQueen[IntegerEggsack[2]])
      • Set EggPosition = ((Position of (Triggering unit)) offset by Towards towards Facing degrees)
      • -------- ------------------------------- --------
      • -------- Creating the eggsack --------
      • Unit - Create 1 EggSack for (Owner of AlienQueen[IntegerEggsack[2]]) at EggPosition facing Facing degrees
      • -------- ------------------------------- --------
      • Set Eggsack[IntegerEggsack[2]] = (Last created unit)
      • Animation - Change Eggsack[IntegerEggsack[3]]'s animation speed to 0.00% of its original speed
      • Unit Group - Add Eggsack[IntegerEggsack[2]] to GroupEggsack
      • -------- ------------------------------- --------
      • -------- If you change this, the Queen can move. --------
      • Unit - Pause AlienQueen[IntegerEggsack[2]]
      • -------- ------------------------------- --------
      • -------- The Time is... the time (?) and the TimeCreation is the rate of the creation of Eggs. --------
      • Set TimeCreation[IntegerEggsack[2]] = 7.00
      • Set Time[IntegerEggsack[2]] = 0.00
      • -------- ------------------------------- --------
      • Unit - Pause Eggsack[IntegerEggsack[2]]
      • -------- ------------------------------- --------
      • -------- Clearing a leak. --------
      • Custom script: call RemoveLocation (udg_EggPosition)
      • -------- ------------------------------- --------
  • Loop Eggsack
    • Events
      • Time - Every 0.03 seconds of game time
    • Condtions
    • Actions
      • For each (Integer IntegerEggsack[3]) from 1 to IntegerEggsack[2], do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Eggsack[IntegerEggsack[3]] is in GroupEggsack) Igual a True
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • RealEggsack[IntegerEggsack[3]] Less or Equal to 150.00
                • Then - Actions
                  • -------- ------------------------------- --------
                  • -------- If you change the last number (1.00) you change the velocity of the size. --------
                  • Set RealEggsack[IntegerEggsack[3]] = (RealEggsack[IntegerEggsack[3]] + 1.00)
                  • -------- ------------------------------- --------
                  • Animation - Change Eggsack[IntegerEggsack[3]]'s size to (RealEggsack[IntegerEggsack[3]]%, RealEggsack[IntegerEggsack[3]]%, RealEggsack[IntegerEggsack[3]]%) of its original size
                • Else - Actions
                  • -------- ------------------------------- --------
                  • -------- Removing the eggsack from the group to able creation of Eggs. --------
                  • Unit Group - Remove Eggsack[IntegerEggsack[3]] from GroupEggsack
                  • -------- ------------------------------- --------
                  • Set RealEggsack[IntegerEggsack[3]] = 0.00
                  • Unit - Unpause Eggsack[IntegerEggsack[3]]
                  • Animation - Change Eggsack[IntegerEggsack[3]]'s animation speed to 20.00% of its original speed
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • IntegerEggsack[1] = 0
                    • Then - Actions
                      • Trigger - Turn off (This trigger)
                    • Else - Actions
            • Actions
  • Exit from Eggsack
    • Events
      • Unit - A unit starts the effect on an ability
    • Conditions
    • Actions
      • For each (Integer IntegerEggsack[3]) from 1 to IntegerEggsack[2], do (Actions)
        • Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • Si: Condiciones
              • (Triggering unit) Igual a Eggsack[IntegerEggsack[3]]
              • (Ability being cast) Igual a Exit
            • Actions
              • Unidad - Remove Eggsack[IntegerEggsack[3]] from the game
              • Unidad - Desactivar pausa AlienQueen[IntegerEggsack[3]]
              • -------- ------------------------------- --------
              • -------- If you change this, has got a probability to create other EggSack. --------
              • Unidad - Order AlienQueen[IntegerEggsack[3]] to Detener
              • -------- ------------------------------- --------
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • Si: Condiciones
                  • IntegerEggsack[1] Mayor que Max
                • Actions
                  • Set IntegerEggsack[1] = 0
                  • Set IntegerEggsack[2] = 0
                • Actions
            • Actions
  • Dead
    • Events
      • Unidad - A unit Muere
    • Condiciones
    • Actions
      • For each (Integer IntegerEggsack[3]) from 1 to IntegerEggsack[2], do (Actions)
        • Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • Si: Condiciones
              • (Triggering unit) Igual a AlienQueen[IntegerEggsack[3]]
            • Actions
              • Unidad - Remove Eggsack[IntegerEggsack[3]] from the game
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • Si: Condiciones
                  • IntegerEggsack[1] Mayor que Max
                • Actions
                  • Set IntegerEggsack[1] = 0
                  • Set IntegerEggsack[2] = 0
                • Actions
            • Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • Si: Condiciones
                  • (Triggering unit) Igual a Eggsack[IntegerEggsack[3]]
                • Actions
                  • Unidad - Desactivar pausa AlienQueen[IntegerEggsack[3]]
                  • Unidad - Order AlienQueen[IntegerEggsack[3]] to Detener
                  • Unidad - Remove Eggsack[IntegerEggsack[3]] from the game
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • Si: Condiciones
                      • IntegerEggsack[1] Mayor que Max
                    • Actions
                      • Set IntegerEggsack[1] = 0
                      • Set IntegerEggsack[2] = 0
                    • Actions
                • Actions
  • Creation
    • Events
      • Tiempo - Every 0.01 seconds of game time
    • Condiciones
    • Actions
      • For each (Integer IntegerEggsack[3]) from 1 to IntegerEggsack[2], do (Actions)
        • Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • Si: Condiciones
              • (Eggsack[IntegerEggsack[3]] is in GroupEggsack) Igual a False
            • Entonces: Acciones
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • Si: Condiciones
                  • TimeCreation[IntegerEggsack[3]] Igual a Time[IntegerEggsack[3]]
                • Actions
                  • -------- ------------------------------- --------
                  • -------- Restarts the time. --------
                  • Set Time[IntegerEggsack[3]] = 0.00
                  • -------- ------------------------------- --------
                  • -------- Position of the egg. --------
                  • Set Towards = -300.00
                  • Set Facing = (Facing of Eggsack[IntegerEggsack[3]])
                  • Set EggPosition = ((Position of Eggsack[IntegerEggsack[3]]) offset by Towards towards Facing degrees)
                  • -------- ------------------------------- --------
                  • -------- Creating an alien egg. --------
                  • Unidad - Create 1 Alien egg for (Owner of Eggsack[IntegerEggsack[3]]) at EggPosition facing (Random angle) degrees
                  • -------- ------------------------------- --------
                  • -------- The special effect. --------
                  • Efecto especial - Create a special effect at EggPosition using Objects\Spawnmodels\Naga\NagaBlood\NagaBloodWindserpent.mdl
                  • Efecto especial - Destroy (Last created special effect)
                  • -------- ------------------------------- --------
                  • -------- Clearing a leak. --------
                  • Custom script: call RemoveLocation (udg_EggPosition)
                  • -------- ------------------------------- --------
                • Actions
            • Actions
  • TimeValue
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • Si: Condiciones
          • IntegerEggsack[1] Igual a 0
        • Actions
          • Detonador - Turn off (This trigger)
        • Actions
      • For each (Integer IntegerEggsack[3]) from 1 to IntegerEggsack[2], do (Actions)
        • Actions
          • Set Time[IntegerEggsack[3]] = (Time[IntegerEggsack[3]] + 1.00)


Credits: Dr.Boom, Maker, owner of AvP Maps (Avp War, Predator RGP, AvP - Extincion...)

Keywords:
alien, predator, system, terror.
Contents

Alien Spells (Map)

Reviews
12th Dec 2015 IcemanBo: For long time as NeedsFix. Rejected. 16:13 GMT, 1st Jun 2011 Bribe: IntegerEggsack should be split into normal variables. If it doesn't have to be an array, don't make it an array. This leaks: "Set EggPosition =...

Moderator

M

Moderator

12th Dec 2015
IcemanBo: For long time as NeedsFix. Rejected.

16:13 GMT, 1st Jun 2011
Bribe:

IntegerEggsack should be split into normal variables. If it doesn't have to be an array, don't make it an array.

This leaks:

"Set EggPosition = ((Position of (Triggering unit)) offset by Towards towards Facing degrees)"

0.01 is too fast, use 0.03.

This leaks too:

"Set EggPosition = ((Position of Eggsack[IntegerEggsack[3]]) offset by Towards towards Facing degrees)"
 
Level 3
Joined
Sep 25, 2010
Messages
33
its 389.6kb because of the imports

a 0.01 interval can cause lag
this more like a spell than a system (i think)
 
Level 10
Joined
Apr 25, 2009
Messages
296
6 Triggers is fairly easy - a majority of my spells are 5+ triggers, and they aren't systems.

A high KB count discourages people to use this system, just FYI.
This is your second(?) time you've uploaded this spell. There is progress, I'll admit that. But imported models, more triggers, variables, etc. probably won't make this incredibly useful, as the system itself isn't that hard to make.

I'll give you a 3/5 for effort, as well as rep - My vote will stay neutral.
 
Top