1. Are you planning to upload your awesome map to Hive? Please review the rules here.
    Dismiss Notice
  2. Updated Resource Submission Rules: All model & skin resource submissions must now include an in-game screenshot. This is to help speed up the moderation process and to show how the model and/or texture looks like from the in-game camera.
    Dismiss Notice
  3. DID YOU KNOW - That you can unlock new rank icons by posting on the forums or winning contests? Click here to customize your rank or read our User Rank Policy to see a list of ranks that you can unlock. Have you won a contest and still haven't received your rank award? Then please contact the administration.
    Dismiss Notice
  4. From the gates of hell, the 5th Special Effect Contest Results have emerged.
    Dismiss Notice
  5. Rubbed the right way, the genie is out of its lamp! The 12th Concept Art Contest Results have been announced.
    Dismiss Notice
  6. Race against the odds and Reforge, Don't Refund. The 14th Techtree Contest has begun!
    Dismiss Notice
  7. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
Do you have good ideas for new contests? If so, please open new threads in the Contest Submission sub-forum to discuss them.
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Trigger Viewer

MZA HEHA 2.0.w3x
Variables
Variables
Variables Spells
Initialization
Starting time
Welcome Message
Votes Choice
Cinematic or Tuto or Skip votes
Starting Cinematic
Starting Info
Hints
Quests Information
Settings Variables
Settings
Musics
Items not for Undeads
Aslyr sword for Protector
Items not for Protector
Items heavy for humans heroes
Items heavy for humans drop
No units in Zombies HQ
Buy zombies in ships
Researches for Defenders
Pro Tiper
One item type per hero
Tutorials
Tutorials End
Tutorial Undead
Tutorial Human
Tutorial Dwarf
---------------------------
No friendly attacks on Buildings
No friendly attacks Commands Humans
No friendly attacks Commands Undeads
No friendly attacks Humans
No friendly attacks Undeads
Events
Player Leave
Income Init
Income
Income Undead Anti Bug
Alliance Dwarves and Humans
Easter egg Toby Skeleton
Easter egg Arathorn Archimonde
Easter egg Tent 01
Easter egg Tent 02
Timmy Movement
Timmy protected from humans
Timmy voice lines
Timmy dies
Five minutes remaining
Dragon dies
Necromancer dies
Dawnfall Train
Dawnfall Death
Musketeer Train
Musketeer Death
Human Village destroyed
Protector Resurrection
---------------------------
Night Eyes
Undead orc Hero
---------------------------
Aslyr Sword Turn on
Aslyr Sword can be taken
Aslyr Sword Taken
---------------------------
Portal Research Begins
Portal Research Cancel
Portal Research End
Portal Spell
Portal Heroes dies
Portal Destroy
---------------------------
Bridges Red
---------------------------
Abandonned Church Anti Glitch
Abandonned Church Open
Abandonned Church Boss
Abandonned Chuch Boss dies
---------------------------
Undead Events with Souls
Hero die and give soul
Undead Event Ancient Horror
Undead Event Portal
Undead Event Add 5 minutes Begin
Undead Event Add 5 minutes Cancel
Undead Event Add 5 minutes End
Undead Event Rebuild Bridges Begin
Undead Event Rebuild Bridges Cancel
Undead Event Rebuild Bridges End
Undead Event Graveyard
Undead Event Infected Rats Begins
Undead Event Infected Rats Cancel
Undead Event Infected Rats End
Undead Event Powerful Necromancy
Gate System
Gate Sytem Settings
Gate Sytem Open Close
Gate System Repair
Dwarves
Northwall Pass begins
Northwall Pass cancels
Northwall Pass finishes
---------------------------
Pride of the Dwarves
Crystal Golem dies
Crystal Golem Ready
Crystal Obelisks dies
---------------------------
Close the tunnels
Spiders spawn
Ancient Horor Dies
Vault Death
Northwall Pass Anti Death Knight
Rifleman unlock
Dwarven Armory dies
Commands
Undead Command Activation
Undead command
Undead command Dwarf
Hard undead command
Impossible undead command
Hard human command
Camera command
Give Ressources
Share Control
Unshare Control
Clear messages
Take Ressources
Help Command
VoteKick System
VKSetup
VKCommands
VKEndKick
VKPlugins
Victory / Defeat
Timer Human Victory
Ping mains cities
Defeat for undead
Defeat for humans
Ending music
Players turns into Undeads
Dwarf turning to Undead
Dwarf King Undead Rez
Undead Red
Undead Blue
Undead Mint
Undead Purple
Undead Yellow
Undead Light blue
Dawnfall Hold destruction
Protector dies
---------------------------
Upgrade Your Undead Hero Select
Upgrade Your Undead Hero
Protector City
Statues of Gray
Statues of Gray Contains
Protector Ghost revive
TavernCorrection
SanctumCorrection
BarrackCorrection
SanctumTurnOn
RedBarracksOn
Anti Undead Shield - Blue Capital
Anti Undead Shield Init
Anti Undead Shield Activate
Anti Undead Shield Reload mana
Anti Undead Shield Down
Anti Undead Shield Enter
Anti Undead Shield Damage
Anti Undead Shield Leave
Last Stands of Capitals
Last Stand Red
Last Stand Blue
Last Stand Mint
Last Stand Purple
Last Stand Yellow
Last Stand Orange
Last Stand Light Blue
Last Stand Grey
Zombies Evolution & Infestation
Level 2 Zombie Begins
Level 2 Zombie Cancels
Level 2 Zombie finishes
---------------------------
Level 3 Zombie Begins
Level 3 Zombie Cancels
Level 3 Zombie finishes
---------------------------
Level 4 Zombie Begins
Level 4 Zombie Cancels
Level 4 Zombie finishes
---------------------------
Level 5 Zombie Begins
Level 5 Zombie Cancels
Level 5 Zombie finishes
---------------------------
Undead Infestation
---------------------------
Nightmare Begins
Nightmare Cancels
Nightmare finishes
---------------------------
Dark Magic Begins
Dark Magic Cancels
Dark Magic finishes
---------------------------
Damned Training Begins
Damned Training Cancels
Damned Training finishes
---------------------------
Flesh Giant Powerful Attack Begins
Flesh Giant Powerful Attack Cancels
Flesh Giant Powerful Attack Finishes
---------------------------
Death Hound Powerful Mana Burn Begins
Death Hound Powerful Mana Burn Cancels
Death Hound Powerful Mana Burn Finishes
---------------------------
Heartless Deadly Instinct Begins
Heartless Deadly Instinct Cancels
Heartless Deadly Instinct Finishes
Remove Dead Heroes
Dying Heroes
Dying Heroes Red
Dying Heroes Blue
Dying Heroes Mint
Dying Heroes Purple
Dying Heroes Yellow
Dying Heroes Orange
Dying Heroes Green
Dying Heroes Light Blue
Dying Heroes Grey
Revive Undead Heroes
Revive Agandur
Revive Hellscreamer
Revive Death Eyes
Revive Undead orc Hero
Servant Red
Servant Blue
Servant Mint
Servant Purple
Servant Yellow
Servant Light Blue
Servant Grey
Spells and Researches
Remove starts
Remove ends
Protection of the Nature
Create Corpses
The Dragon Slayer
Heroic Leap Cast
Heroic Leap Slide
Grenade Launch
Multi Shot
Magic Arm
Beer barrel
Necromancy
Beast Attack
KnockbackUnits
Powerful Mana Burn
---------------------------
Robust Armor
Kings Guards
Heavy Footman
Leonar Musketeer
Dawnfall Captain Upgrades
Dawnfall Captain Dies
Dawnfall Captain Ability
Volatile Light
VL readme
VL Config
VL Cast
VL Loop
Chronosphere
ini
Chronosphere ini
Chronosphere loop
Remove Zombie Types
Remove Zombie
Remove Mutated Zombie
Remove Crazy Ghoul
Remove Runner
Remove Mutant
Remove Death Hound
Remove Flesh Giant
Events 2
Announcements
Seafront cinematic
Capitals Riotings
Undead orc chief
Human Reinforcements
Lit Beacon 01
Lit Beacon 02
Narthian Reinforcements Red
Narthian Reinforcements Yellow
Light blue
Elias
---------------------------
Red Heavy Footmen x10
Red Royal Defender x10
Red Royal Guard x10
---------------------------
Blue Falcon Footmen x10
Blue Falcon Defender x10
Blue Mage Guard x10
---------------------------
Mint Graywall Infantry x10
Mint Border Guards x10
Mint Graywall Knights x10
---------------------------
Purple Heavy Footmen x10
Purple Royal Defender x10
Purple Musketeer x10
---------------------------
Light Blue Heavy Footmen x10
Light Blue Royal Defender x10
Light Blue Wolf Guard x10
---------------------------
Yellow Paladin Initiate x10
Yellow Paladin x10
Yellow Lightward Paladin x10
---------------------------
Orange Dwarven Warriors x10
Orange Dwarven Berserkers x10
Orange Thanes x10
Main Building Events
Capitals
Teredar Fortress
Church of the Golden Eagle
Leonar Citadel
Stormfury Citadel
Hammerfell Castle
Ganch Keep
Crystal Falcon Citadel
Importants Buildings
Great Tower Red
Dawnfall Hold
Leonar City
Barkshire
Keep of South Fields
Bulwark Graywall Bastion
Garrison Tower Red
Mage Guild 4
South Fields 1
South Fields 2
Mage Guild 1
Mage Guild 2
Mage Guild 3
South Fields Barricade
Blacksmith and Artisan
Vuleron the Firebreather
Skip Dragon Cinematic
Dragon Activation
Ping DragonShine
Dragon Cinematic
Obtains dragonfire
Dragon Cinematic skipped
The Great Necromancer
Skip Necromancer Cinematic
Nobody in Necromancer Cave
Great Necromancer Gate
Great Necromancer Obelisks
Great Necromancer Cinematic
Necromancer cinematic skipped
Multiboard Game Results
Multi Board Game Results
Game Results Update Kill
Game Results Update Lost
Game Results Update Heroes

		
Name Type Is Array Initial Value
_Pause abilcode No
AntiTrollHuman boolean No true
AntiTrollUndead boolean No true
Beast_Attack_Ability_Level integer No
Beast_Attack_Atribute integer No
Beast_Attack_Atribute_Damage real No
Beast_Attack_Caster unit No
Beast_Attack_Damage_Splitter integer No
Beast_Attack_Life_Damage real No
Beast_Attack_Location location No
Beast_Attack_Location2 location No
Beast_Attack_Max_Life real No
Beast_Attack_Target unit No
Beast_Attack_Total_Damage real No
BlueUnitPortalDestroy unit No
BookOfLight item No
Caster unit No UnitNull
CH_AoE real Yes
CH_Caster unit Yes
CH_Dex integer No
CH_Effect unit Yes
CH_Group group No
CH_Group2 group No
CH_i integervar No
CH_lvl integer No
CH_p location No
CH_unit unit No
CINEMATIC integer No 1
Config_CH_AoE real No
Config_CH_Duration real No
Config_CH_lvlAoE real No
Config_CH_lvlDuration real No
Config_CH_Spell abilcode No
Config_CH_Unit unitcode No
CrystalGolem unit No
CrystalGolemAlive boolean No false
DarkGuards_Timer timer No
DarkGuards_TimerWindow timerdialog No
DawnfallAlive integer No 4
DragonKingGroup group No
EasterEggTentMan unit No
EasterEggTentWoman unit No
EndOfTheGame boolean No false
EnergyShieldGroup group No
FIRSTVOTE boolean No false
Gate destructable Yes
Give_Player player No
GroupPlayers force No
GroupUnits group No
GroupUnits2 group No
HardBrown boolean No
HardDarkGreen boolean No
HardGrey boolean No
HardRed boolean No
Hashtable hashtable No
HeroesKilled integer Yes 0
HpGate real Yes
HumanPlayers force No
HumansWin timer No
HumansWinwindow timerdialog No
ImpossibleGrey boolean No
ImpossibleRed boolean No
Integer integer No
InvuShieldSpecialEffect effect No
Ion_Canon_Ability_Level integer No
Ion_Canon_AoE real No
Ion_Canon_Base_Damage real No
Ion_Canon_Base_Mana_Burn real No
Ion_Canon_Caster unit No
Ion_Canon_Damage_Group group No
Ion_Canon_Distance real No
Ion_Canon_Location location No
Ion_Canon_Loop_Location location No
Ion_Canon_Loop_Number integer No
Ion_Canon_Total_Damage real No
Ion_Canon_Total_Mana_Burn real No
Kerraksorcs unit No
Knockback_Loc1 location No
Knockback_Loc2 location No
Knockback_Target unit No
KnockbackAngle real No
KnockbackDistance real No
KnockbackSpeed real No
KnockbackTable hashtable No
KnockbackUnits group No
Leapers group No
Lever unit Yes
LoopInteger integer No
LoveSpecialEffect effect No
Map_FacingAngle real Yes
Map_LoopInt integer No
Map_MaxInt integer No
Map_Owner player Yes
Map_Player player No
Map_SpawnLoc location Yes
Map_TempGroup group No
Map_TempLoc location No
Map_Unit unit No
Map_UnitHP real Yes
Map_UnitID integer No
Map_UnitType unitcode Yes
Multi_Shot_Ability_Level integer No
Multi_Shot_Base_Arrow_Count integer No
Multi_Shot_Caster unit No
Multi_Shot_Dummy_Ability abilcode No
Multi_Shot_Facing real No
Multi_Shot_Location location No
Multi_Shot_Location_2 location No
Multi_Shot_Loop_Location location No
Multi_Shot_Loop_Location2 location No
Multi_Shot_Owner player No
Multi_Shot_Total_Arrow_Count integer No
MultiBoard_GameScores multiboard No
MusicTime real No
MusketeerAlive integer No 2
NoPrideOfTheDwarves boolean No false
NumberOfPlayers integer No 0
Player player Yes
PlayerColor string Yes
PlayersGroup force No
PlayerVote boolean Yes false
Point location No
Point2 location No
Points location Yes
PortalDestroy timer No
PortalDestroyWindow timerdialog No
PortalsAreClosing boolean No false
PrideOfTheDwarves boolean No false
Protector unit No
Protector_Ghost unit No
RandomNumber integer No
RayOfLight weathereffect No
RE_Knocktable hashtable No
Real real Yes
RedUnitPortalDestroy unit No
Reel real No
ShareControlPlayer boolean Yes false
SKIP integer No 0
SkipCinematic boolean No false
SpecialEffectVampiricAura effect No
Spell__Ability abilcode No
Spell__Caster unit No
Spell__CasterOwner player No
Spell__CastPoint location No
Spell__Channeling boolean No
Spell__Completed boolean No
Spell__DummyOwner player No
Spell__DummyType unitcode No
Spell__Duration real No
Spell__Expired boolean No
Spell__Filter_AllowAlly boolean No
Spell__Filter_AllowDead boolean No
Spell__Filter_AllowEnemy boolean No
Spell__Filter_AllowFlying boolean No
Spell__Filter_AllowHero boolean No
Spell__Filter_AllowLiving boolean No
Spell__Filter_AllowMagicImmune boolean No
Spell__Filter_AllowMechanical boolean No
Spell__Filter_AllowNonHero boolean No
Spell__Filter_AllowStructure boolean No
Spell__Hash hashtable No
Spell__Index integer No
Spell__InRange real No
Spell__InRangeCount integer No
Spell__InRangeGroup group No
Spell__InRangePoint location No
Spell__InRangeUnits unit Yes
Spell__Interval real No
Spell__Level integer No
Spell__LevelMultiplier real No
Spell__Running boolean No
Spell__Target unit No
Spell__TargetGroup group No
Spell__TargetPoint location No
Spell__Time real No
Spell__Trigger_OnCast trigger No
Spell__Trigger_OnChannel trigger No
Spell__Trigger_OnEffect trigger No
Spell__Trigger_OnFinish trigger No
Spell__Trigger_OnLoop trigger No
Spell__UseTargetGroup boolean No
Spell__WakeTargets boolean No
Spell_i_AllowAlly boolean Yes
Spell_i_AllowDead boolean Yes
Spell_i_AllowEnemy boolean Yes
Spell_i_AllowFlying boolean Yes
Spell_i_AllowHero boolean Yes
Spell_i_AllowLiving boolean Yes
Spell_i_AllowMagicImmune boolean Yes
Spell_i_AllowMechanical boolean Yes
Spell_i_AllowNonHero boolean Yes
Spell_i_AllowStructure boolean Yes
Spell_i_Caster unit Yes
Spell_i_Channeling boolean Yes
Spell_i_Completed boolean Yes
Spell_i_Duration real Yes
Spell_i_EventType integer Yes
Spell_i_GroupN integer No
Spell_i_GroupStack group Yes
Spell_i_Head integer Yes
Spell_i_Instances integer No
Spell_i_LastTime real Yes
Spell_i_Level integer Yes
Spell_i_Linked boolean Yes
Spell_i_OnCastStack trigger Yes
Spell_i_OnChannelStack trigger Yes
Spell_i_OnEffectStack trigger Yes
Spell_i_OnFinishStack trigger Yes
Spell_i_OnLoopStack trigger Yes
Spell_i_PreloadDummy unit No
Spell_i_Recycle integer No
Spell_i_RecycleList integer Yes
Spell_i_Stack integer Yes
Spell_i_StackN integer No
Spell_i_StackRef integer Yes
Spell_i_Target unit Yes
Spell_i_TargetGroup group Yes
Spell_i_TargetX real Yes
Spell_i_TargetY real Yes
Spell_i_Time real Yes
Spell_i_Timer timer No
Spell_i_UseTG boolean Yes
StartingTime real No 0.00
StartTimer timer No
StartTimerWindow timerdialog No
String string No
TempForce force No
TempGroup group No
TempInteger integer No
Timer_Cinematic_Dragon timer No
Timer_Cinematic_Necromancer timer No
TUTO integer No 0
Tutorial_Dwarf boolean No false
Tutorial_Human boolean No false
Tutorial_UD boolean No false
UndeadCommand boolean Yes false
UndeadHuman_Vote boolean Yes false
UndeadPlayers force No
Unit unit No
Unit2 unit No
UnitsKilled integer Yes 0
UnitsLost integer Yes 0
VKAble boolean No
VKCheck boolean No
VKColors string Yes
VKMultiboard multiboard No
VKPlayers player Yes
VKSetup integer Yes
VKTime timer No
VKTimeWindow timerdialog No
VKVoted integer Yes
VKVotes integer Yes
VL_Ability abilcode No
VL_AbilityCurse abilcode No
VL_AbilityHeal abilcode No
VL_AbilityLvl integer Yes
VL_AoE real Yes
VL_Buff buffcode No
VL_C_Amount integer No
VL_C_Even real No
VL_C_GrowRate real Yes
VL_C_GrowTime real No
VL_C_MoveRate real Yes
VL_C_SFX string No
VL_C_Speed real No
VL_Caster unit Yes
VL_CounterDuration real Yes
VL_CurrentAoE real Yes
VL_Debuff buffcode No
VL_Degree real No
VL_Dummy unitcode No
VL_DummyCaster unit No
VL_Duration real Yes
VL_GroupEnemy group Yes
VL_L lightning Yes
VL_L_Amount integer No
VL_L_CheckSFX boolean Yes
VL_L_Counter real Yes
VL_L_CreateLoop integer No
VL_L_Direction real No
VL_L_Distance real No
VL_L_Duration real No
VL_L_Height real No
VL_L_ID integer No
VL_L_SFX lightningtype No
VL_L_SFX_EndPoint string No
VL_LoopInt integer No
VL_MaxIndex integer No
VL_MaxLevel integer No
VL_NodeNext integer Yes
VL_NodePrev integer Yes
VL_Owner player Yes
VL_PeriodicTimer real No
VL_RecycledSize integer No
VL_RecycledStack integer Yes
VL_SFX string No
VL_Spell_ID integer No
VL_SpellCount integer No
VL_TargetLoc location Yes
VL_TempInt integer No
VL_TempLoc location No
VL_TempReal real No
VL_TempUnit unit No
WolfCurse group No
ZombieEvolution integer No 1
Starting time
  Events
    Time - Every 1.00 seconds of game time
  Conditions
  Actions
    Set VariableSet StartingTime = (StartingTime + 1)
Welcome Message
  Events
    Time - Elapsed game time is 0.00 seconds
  Conditions
  Actions
    Countdown Timer - Start StartTimer as a One-shot timer that will expire in 20.00 seconds
    Set VariableSet StartTimer = (Last started timer)
    Countdown Timer - Create a timer window for StartTimer with title Vote expires
    Set VariableSet StartTimerWindow = (Last created timer window)
    Countdown Timer - Show StartTimerWindow
    Sound - Stop music Immediately
    Sound - Clear the music list
    Unit - Pause all units
    Cinematic - Fade out over 0.00 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Game - Display to (All players) for 1000000000.00 seconds the text: Welcome in |cffff0000Medieval Zombie Apocalypse HEHA|r |cff00ff002.0|r |cffff00ffby Arathorn_ToXiK|r!
    Wait 1.00 seconds
    Game - Display to (All players) for 1000000000.00 seconds the text: In order to help beginners and avoid noobies and leavers because they don't understand the game, take the time to decide if you want a tutorial before starting the game.
    Wait 2 seconds
    Game - Display to (All players) for 1000000000.00 seconds the text: You must type |cff00ff00-tuto|r, |cff00ff00-cinematic|r or |cff00ff00-skip|r to vote for how do you want to start. If there is no vote, the game will automatically starts with the cinematic |cffffff00in 20 seconds|r.
    Wait 1.00 seconds
    Game - Display to (All players) for 1000000000.00 seconds the text: |cff00ff00-cinematic|r will start the game with a cinematic and without the detailed tutorials. |cff00ff00-skip|r will immediately start the game without advanced tutorials and the cinematic. With |cff00ff00-tuto|r, each team (undead, human and dwarf) will have her unique tutorial for |cffffff001 minute|r at the same time.
    Game - Display to (All players) for 1000000000.00 seconds the text: (|cff00ff00cinematic votes:|r + 0)
    Game - Display to (All players) for 1000000000.00 seconds the text: (|cff00ff00skip votes:|r + (String(SKIP)))
    Game - Display to (All players) for 1000000000.00 seconds the text: (|cff00ff00tuto votes:|r + (String(TUTO)))
    For each (Integer A) from 0 to 23, do (Actions)
      Loop - Actions
        Trigger - Add to Votes_Choice <gen> the event (Player[(Integer A)] types a chat message containing -cinematic (stringnoformat) as An exact match)
        Trigger - Add to Votes_Choice <gen> the event (Player[(Integer A)] types a chat message containing -tuto (stringnoformat) as An exact match)
        Trigger - Add to Votes_Choice <gen> the event (Player[(Integer A)] types a chat message containing -skip (stringnoformat) as An exact match)
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Player[(Integer A)] slot status) Equal to Is playing
            (Player[(Integer A)] controller) Equal to User
          Then - Actions
            Set VariableSet NumberOfPlayers = (NumberOfPlayers + 1)
          Else - Actions
    If ((Player 1 (Red) slot status) Equal to Is unused) then do (Set name of Player 1 (Red) to Royal Family) else do (Do nothing)
    If ((Player 2 (Blue) slot status) Equal to Is unused) then do (Set name of Player 2 (Blue) to Crystal Falcon Order) else do (Do nothing)
    If ((Player 19 (Mint) slot status) Equal to Is unused) then do (Set name of Player 19 (Mint) to Graywall) else do (Do nothing)
    If ((Player 4 (Purple) slot status) Equal to Is unused) then do (Set name of Player 4 (Purple) to Leonar Harbor) else do (Do nothing)
    If ((Player 5 (Yellow) slot status) Equal to Is unused) then do (Set name of Player 5 (Yellow) to Golden Eagle Order) else do (Do nothing)
    If ((Player 6 (Orange) slot status) Equal to Is unused) then do (Set name of Player 6 (Orange) to Dwarf Lords) else do (Do nothing)
    If ((Player 9 (Gray) slot status) Equal to Is unused) then do (Set name of Player 9 (Gray) to Dawnfall Guardians) else do (Do nothing)
    If ((Player 10 (Light Blue) slot status) Equal to Is unused) then do (Set name of Player 10 (Light Blue) to Hammerfell) else do (Do nothing)
    If ((Player 11 (Dark Green) slot status) Equal to Is unused) then do (Set name of Player 11 (Dark Green) to Hellscreamer's Zombies) else do (Do nothing)
    If ((Player 12 (Brown) slot status) Equal to Is unused) then do (Set name of Player 12 (Brown) to Agandur's Zombies) else do (Do nothing)
Votes Choice
  Events
  Conditions
  Actions
    Cinematic - Clear the screen of text messages for (All players).
    Game - Display to (All players) for 1000000000.00 seconds the text: Welcome in |cffff0000Medieval Zombie Apocalypse HEHA|r |cff00ff002.0|r |cffff00ffby Arathorn_ToXiK|r!
    Game - Display to (All players) for 1000000000.00 seconds the text: In order to help beginners and avoid noobies and leavers because they don't understand the game, take the time to decide if you want a tutorial before starting the game.
    Game - Display to (All players) for 1000000000.00 seconds the text: You must type |cff00ff00-tuto|r, |cff00ff00-cinematic|r or |cff00ff00-skip|r to vote for how do you want to start. If there is no vote, the game will automatically starts with the cinematic |cffffff00in 20 seconds|r.
    Game - Display to (All players) for 1000000000.00 seconds the text: |cff00ff00-cinematic|r will start the game with a cinematic and without the detailed tutorials. |cff00ff00-skip|r will immediately start the game without advanced tutorials and the cinematic. With |cff00ff00-tuto|r, each team (undead, human and dwarf) will have her unique tutorial for |cffffff001 minute|r at the same time.
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        FIRSTVOTE Equal to False
      Then - Actions
        Set VariableSet FIRSTVOTE = True
        Set VariableSet CINEMATIC = 0
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        (Entered chat string) Equal to -cinematic
        PlayerVote[((Player number of (Triggering player)) - 1)] Equal to False
      Then - Actions
        Sound - Play MouseClick1 <gen>
        Set VariableSet PlayerVote[((Player number of (Triggering player)) - 1)] = True
        Set VariableSet CINEMATIC = (CINEMATIC + 1)
      Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Entered chat string) Equal to -tuto
            PlayerVote[((Player number of (Triggering player)) - 1)] Equal to False
          Then - Actions
            Sound - Play MouseClick1 <gen>
            Set VariableSet PlayerVote[((Player number of (Triggering player)) - 1)] = True
            Set VariableSet TUTO = (TUTO + 1)
          Else - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Entered chat string) Equal to -skip
                PlayerVote[((Player number of (Triggering player)) - 1)] Equal to False
              Then - Actions
                Sound - Play MouseClick1 <gen>
                Set VariableSet PlayerVote[((Player number of (Triggering player)) - 1)] = True
                Set VariableSet SKIP = (SKIP + 1)
              Else - Actions
                Game - Display to (All players matching ((Matching player) Equal to (Triggering player)).) for 2.50 seconds the text: |cffff0000You've already voted!|r
    Game - Display to (All players) for 1000000000.00 seconds the text: (|cff00ff00cinematic votes:|r + (String(CINEMATIC)))
    Game - Display to (All players) for 1000000000.00 seconds the text: (|cff00ff00skip votes:|r + (String(SKIP)))
    Game - Display to (All players) for 1000000000.00 seconds the text: (|cff00ff00tuto votes:|r + (String(TUTO)))
Cinematic or Tuto or Skip votes
  Events
    Time - Elapsed game time is 20.00 seconds
  Conditions
  Actions
    Countdown Timer - Destroy StartTimerWindow
    Trigger - Turn off (This trigger)
    Trigger - Turn off Votes_Choice <gen>
    Cinematic - Clear the screen of text messages for (All players).
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        Or - Any (Conditions) are true
          Conditions
            And - All (Conditions) are true
              Conditions
                CINEMATIC Greater than SKIP
                CINEMATIC Greater than TUTO
            And - All (Conditions) are true
              Conditions
                CINEMATIC Equal to SKIP
                SKIP Equal to CINEMATIC
                TUTO Less than CINEMATIC
                TUTO Less than SKIP
            And - All (Conditions) are true
              Conditions
                CINEMATIC Equal to SKIP
                CINEMATIC Equal to TUTO
                TUTO Equal to CINEMATIC
                TUTO Equal to SKIP
                SKIP Equal to TUTO
                SKIP Equal to CINEMATIC
      Then - Actions
        Sound - Play ArrangedTeamInvitation <gen>
        Game - Display to (All players) for 3.00 seconds the text: The game will start in 3 seconds |cffff0000with the cinematic|r.
        Wait 3.00 seconds
        Cinematic - Fade in over 2.00 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
        Trigger - Run Starting_Cinematic <gen> (checking conditions)
        Trigger - Turn off Starting_time <gen>
        Wait 120.00 seconds
        Trigger - Run Spiders_spawn <gen> (checking conditions)
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        Or - Any (Conditions) are true
          Conditions
            And - All (Conditions) are true
              Conditions
                TUTO Greater than CINEMATIC
                TUTO Greater than SKIP
            And - All (Conditions) are true
              Conditions
                Or - Any (Conditions) are true
                  Conditions
                    And - All (Conditions) are true
                      Conditions
                        TUTO Equal to CINEMATIC
                        CINEMATIC Equal to TUTO
                        SKIP Less than TUTO
                        SKIP Less than CINEMATIC
                    And - All (Conditions) are true
                      Conditions
                        TUTO Equal to SKIP
                        SKIP Equal to TUTO
                        CINEMATIC Less than TUTO
                        CINEMATIC Less than SKIP
      Then - Actions
        Sound - Play ArrangedTeamInvitation <gen>
        Game - Display to (All players) for 3.00 seconds the text: The game will start in 3 seconds |cffff0000with the advanced tutorials|r.
        Wait 3.00 seconds
        Cinematic - Fade in over 2.00 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
        Cinematic - Disable user control for (All players).
        For each (Integer A) from 0 to 23, do (Actions)
          Loop - Actions
            Camera - Reset camera for Player[(Integer A)] to standard game-view over 0 seconds
            Camera - Pan camera for Player[(Integer A)] to (Player[(Integer A)] start location) over 0 seconds
            Camera - Set Player[(Integer A)]'s camera Distance to target to 3000.00 over 0 seconds
        Trigger - Run Tutorial_Dwarf <gen> (checking conditions)
        Trigger - Run Tutorial_Human <gen> (checking conditions)
        Trigger - Run Tutorial_Undead <gen> (checking conditions)
        Trigger - Turn on Tutorials_End <gen>
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        SKIP Greater than CINEMATIC
        SKIP Greater than TUTO
      Then - Actions
        Sound - Play ArrangedTeamInvitation <gen>
        Game - Display to (All players) for 3.00 seconds the text: The game will |cffff0000immediately|r starts in 3 seconds.
        Wait 3.00 seconds
        Cinematic - Fade in over 2.00 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
        Cinematic - Turn subtitle display override On
        Unit - Unpause all units
        Trigger - Turn off Starting_time <gen>
        For each (Integer A) from 0 to 23, do (Actions)
          Loop - Actions
            Camera - Reset camera for Player[(Integer A)] to standard game-view over 0 seconds
            Camera - Pan camera for Player[(Integer A)] to (Player[(Integer A)] start location) over 0 seconds
            Camera - Set Player[(Integer A)]'s camera Distance to target to 3000.00 over 0 seconds
            Visibility - Create an initially Enabled visibility modifier for Player[(Integer A)] emitting Black mask across Abandonned_Chapel <gen>
            Trigger - Add to Give_Ressources <gen> the event (Player[(Integer A)] types a chat message containing -give gold (stringnoformat) as A substring)
            Trigger - Add to Give_Ressources <gen> the event (Player[(Integer A)] types a chat message containing -give soul (stringnoformat) as A substring)
            Trigger - Add to Share_Control <gen> the event (Player[(Integer A)] types a chat message containing -share (stringnoformat) as A substring)
            Trigger - Add to Unshare_Control <gen> the event (Player[(Integer A)] types a chat message containing -unshare (stringnoformat) as A substring)
            Trigger - Add to Clear_messages <gen> the event (Player[(Integer A)] types a chat message containing -clear (stringnoformat) as An exact match)
            Trigger - Add to Clear_messages <gen> the event (Player[(Integer A)] types a chat message containing -cl (stringnoformat) as An exact match)
            Trigger - Add to Take_Ressources <gen> the event (Player[(Integer A)] types a chat message containing -take gold (stringnoformat) as A substring)
            Trigger - Add to Take_Ressources <gen> the event (Player[(Integer A)] types a chat message containing -take soul (stringnoformat) as A substring)
            Trigger - Add to Help_Command <gen> the event (Player[(Integer A)] types a chat message containing -help (stringnoformat) as An exact match)
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Player[(Integer A)] is in HumanPlayers.) Equal to True
              Then - Actions
                Trigger - Add to No_friendly_attacks_Commands_Humans <gen> the event (Player[(Integer A)] types a chat message containing -troll on (stringnoformat) as An exact match)
                Trigger - Add to No_friendly_attacks_Commands_Humans <gen> the event (Player[(Integer A)] types a chat message containing -troll off (stringnoformat) as An exact match)
              Else - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Player[(Integer A)] is in UndeadPlayers.) Equal to True
              Then - Actions
                Trigger - Add to No_friendly_attacks_Commands_Undeads <gen> the event (Player[(Integer A)] types a chat message containing -troll on (stringnoformat) as An exact match)
                Trigger - Add to No_friendly_attacks_Commands_Undeads <gen> the event (Player[(Integer A)] types a chat message containing -troll off (stringnoformat) as An exact match)
              Else - Actions
        For each (Integer A) from 0 to 23, do (Actions)
          Loop - Actions
            Set VariableSet UnitsKilled[(Integer A)] = 0
            Set VariableSet UnitsLost[(Integer A)] = 0
            Set VariableSet PlayerVote[(Integer A)] = False
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Player[(Integer A)] slot status) Not equal to Is playing
                Player[(Integer A)] Not equal to Player 8 (Pink)
                Player[(Integer A)] Not equal to Player 22 (Snow)
              Then - Actions
                Game - Grant shared vision and full shared unit control of Player[(Integer A)] units with his/her allies
              Else - Actions
        Sound - Stop music Immediately
        Sound - Clear the music list
        -------- Activate triggers after tutorials and cinematic --------
        Trigger - Run Timer_Human_Victory <gen> (checking conditions)
        Trigger - Turn on Ping_mains_cities <gen>
        Trigger - Turn on VKCommands <gen>
        -------- ----------------------------------------- --------
        Wait 2.00 seconds
        Floating Text - Create floating text that reads CLAN HEAVEN HEART at (Center of Heaven_Heart <gen>) with Z offset 0, using font size 10.00, color (100%, 0.00%, 0.00%), and 0% transparency
        Trigger - Run Starting_Info <gen> (checking conditions)
        Trigger - Run Musics <gen> (checking conditions)
        Wait 120.00 seconds
        Trigger - Run Spiders_spawn <gen> (checking conditions)
      Else - Actions
Starting Cinematic
  Events
  Conditions
  Actions
    Sound - Stop music Immediately
    Sound - Clear the music list
    Sound - Play Tension <gen>
    Player Group - Pick every player in (All players) and do (.Apply. gg_cam_Red for (Picked player) over 4.00 seconds)
    Environment - Set sky to Lordaeron Fall Sky
    Cinematic - Turn cinematic mode On for (All players)
    Cinematic - Turn subtitle display override On
    Unit - Unpause all units
    Player Group - Pick every player in (All players) and do (.Apply. gg_cam_Introductory_Close_Up for (Picked player) over 0.00 seconds)
    Wait 1.00 seconds
    Cinematic - Send transmission to (All players) from Graywall General 0006 <gen> named General: Play A_Human_General_1 <gen> and display By the gods, these creatures have surrounded Sir Vandol's troop!. Modify duration: Add 0.00 seconds and Wait
    Player Group - Pick every player in (All players) and do (.Apply. gg_cam_Introductory_Sir_Vandol for (Picked player) over 4.00 seconds)
    Cinematic - Send transmission to (All players) from Graywall General 0006 <gen> named General: Play A_Human_General_2 <gen> and display They're going to try and bypass the front line!. Modify duration: Add 0.00 seconds and Don't wait
    Wait 2.00 seconds
    Floating Text - Create floating text that reads "Hold the line!" above Sir Vandol 0610 <gen> with Z offset 0, using font size 8.00, color (100%, 0.00%, 0.00%), and 0% transparency
    Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
    Floating Text - Change (Last created floating text): Disable permanence
    Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
    Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
    Wait 1.50 seconds
    Floating Text - Create floating text that reads "You shall not pass!" above Sir Vandol 0610 <gen> with Z offset 0, using font size 8.00, color (100%, 0.00%, 0.00%), and 0% transparency
    Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
    Floating Text - Change (Last created floating text): Disable permanence
    Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
    Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
    Wait 1.50 seconds
    Floating Text - Create floating text that reads "Return these creatures to the abyss!" above Sir Vandol 0610 <gen> with Z offset 0, using font size 8.00, color (100%, 0.00%, 0.00%), and 0% transparency
    Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
    Floating Text - Change (Last created floating text): Disable permanence
    Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
    Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
    Wait 1.00 seconds
    Player Group - Pick every player in (All players) and do (Pan camera for (Picked player) to (Center of Introductory_camera <gen>) over 3.00 seconds)
    Cinematic - Send transmission to (All players) from Graywall General 0006 <gen> named General: Play A_Human_General_3 <gen> and display We must hold the Bulwark at all costs, do not let any of these creatures pass!. Modify duration: Add 0.00 seconds and Don't wait
    Wait 3.00 seconds
    Player Group - Pick every player in (All players) and do (Pan camera for (Picked player) to (Center of Introductory_camera2 <gen>) over 6.00 seconds)
    Wait 6.00 seconds
    Cinematic - Turn cinematic mode Off for (All players)
    For each (Integer A) from 0 to 23, do (Actions)
      Loop - Actions
        Camera - Reset camera for Player[(Integer A)] to standard game-view over 0 seconds
        Camera - Pan camera for Player[(Integer A)] to (Player[(Integer A)] start location) over 0 seconds
        Camera - Set Player[(Integer A)]'s camera Distance to target to 3000.00 over 0 seconds
        Visibility - Create an initially Enabled visibility modifier for Player[(Integer A)] emitting Black mask across Abandonned_Chapel <gen>
        Trigger - Add to Give_Ressources <gen> the event (Player[(Integer A)] types a chat message containing -give gold (stringnoformat) as A substring)
        Trigger - Add to Give_Ressources <gen> the event (Player[(Integer A)] types a chat message containing -give soul (stringnoformat) as A substring)
        Trigger - Add to Share_Control <gen> the event (Player[(Integer A)] types a chat message containing -share (stringnoformat) as A substring)
        Trigger - Add to Unshare_Control <gen> the event (Player[(Integer A)] types a chat message containing -unshare (stringnoformat) as A substring)
        Trigger - Add to Clear_messages <gen> the event (Player[(Integer A)] types a chat message containing -clear (stringnoformat) as An exact match)
        Trigger - Add to Clear_messages <gen> the event (Player[(Integer A)] types a chat message containing -cl (stringnoformat) as An exact match)
        Trigger - Add to Take_Ressources <gen> the event (Player[(Integer A)] types a chat message containing -take gold (stringnoformat) as A substring)
        Trigger - Add to Take_Ressources <gen> the event (Player[(Integer A)] types a chat message containing -take soul (stringnoformat) as A substring)
        Trigger - Add to Help_Command <gen> the event (Player[(Integer A)] types a chat message containing -help (stringnoformat) as An exact match)
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Player[(Integer A)] is in HumanPlayers.) Equal to True
          Then - Actions
            Trigger - Add to No_friendly_attacks_Commands_Humans <gen> the event (Player[(Integer A)] types a chat message containing -troll on (stringnoformat) as An exact match)
            Trigger - Add to No_friendly_attacks_Commands_Humans <gen> the event (Player[(Integer A)] types a chat message containing -troll off (stringnoformat) as An exact match)
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Player[(Integer A)] is in UndeadPlayers.) Equal to True
          Then - Actions
            Trigger - Add to No_friendly_attacks_Commands_Undeads <gen> the event (Player[(Integer A)] types a chat message containing -troll on (stringnoformat) as An exact match)
            Trigger - Add to No_friendly_attacks_Commands_Undeads <gen> the event (Player[(Integer A)] types a chat message containing -troll off (stringnoformat) as An exact match)
          Else - Actions
    For each (Integer A) from 0 to 23, do (Actions)
      Loop - Actions
        Set VariableSet UnitsKilled[(Integer A)] = 0
        Set VariableSet UnitsLost[(Integer A)] = 0
        Set VariableSet PlayerVote[(Integer A)] = False
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Player[(Integer A)] slot status) Not equal to Is playing
            Player[(Integer A)] Not equal to Player 8 (Pink)
            Player[(Integer A)] Not equal to Player 22 (Snow)
          Then - Actions
            Game - Grant shared vision and full shared unit control of Player[(Integer A)] units with his/her allies
          Else - Actions
    Environment - Set sky to None
    Sound - Stop music Immediately
    Sound - Clear the music list
    -------- Activate triggers after tutorials and cinematic --------
    Trigger - Run Timer_Human_Victory <gen> (checking conditions)
    Trigger - Turn on Ping_mains_cities <gen>
    Trigger - Turn on VKCommands <gen>
    -------- ----------------------------------------- --------
    Wait 2.00 seconds
    Floating Text - Create floating text that reads CLAN HEAVEN HEART at (Center of Heaven_Heart <gen>) with Z offset 0, using font size 10.00, color (100%, 0.00%, 0.00%), and 0% transparency
    Trigger - Run Starting_Info <gen> (checking conditions)
    Trigger - Run Musics <gen> (ignoring conditions)
Starting Info
  Events
  Conditions
  Actions
    Game - Display to HumanPlayers for 30 seconds the text: You are part of the human kingdom. |cffff0000Your main objective is to protect your capital.|r Take the time to recruit the right units to deal with zombies.|cffffff00 It is not always wise to retreat directly to your capital.|r |cff00ff00Maintaining certain positions other than a capital can sometimes be decisive in the game.|r |cff8080ffFeel free to read the tabs of the "Information" menu to know all the commands and tips.|r
    Game - Display to UndeadPlayers for 30 seconds the text: You are one of the leaders of the zombie hordes. |cffff0000Your main objective is to destroy all the capitals that are regularly pinged to you.|r Every time you kill a human unit, it turns into a zombie. |cff00ff00To get through enemy defensive lines, you must upgrade your zombies in your "Zombie HQ" and use your souls to trigger events.|r |cffff00ffFor this purpose, do not hesitate to share resources between allies. Read the commands tab to knows the commands for that.|r Be careful not to feed your enemies stupidly. |cff8080ffFeel free to read the tabs in the "Information" menu to find out about the commands and tips.|r
Hints
  Events
    Time - Every 600.00 seconds of game time
  Conditions
    EndOfTheGame Equal to False
  Actions
    Sound - Play Hint <gen>
    Set VariableSet RandomNumber = (Random integer number between 1 and 3)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RandomNumber Equal to 1
      Then - Actions
        Game - Display to (All players) for 20.00 seconds the text: |cff00ff00- HINT -|r Once you have no more heroes and your capital, you join the undeads with a hero.
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RandomNumber Equal to 2
      Then - Actions
        Game - Display to (All players) for 20.00 seconds the text: |cff00ff00- HINT -|r After 30min, if you a human player and still alive, you can type "-undead" to give the control of your units to the others humans player and become zombie.
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RandomNumber Equal to 3
      Then - Actions
        Game - Display to (All players) for 20.00 seconds the text: |cff00ff00- HINT -|r Zombies can take a long time to react if there are too many units on the map. Remember to remove unnecessary unit types from your zombie towers to improve that.
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RandomNumber Equal to 4
      Then - Actions
        Game - Display to (All players) for 20.00 seconds the text: |cff00ff00- HINT -|r The admin can type "-troll on/off" to prevent players to hurt their allies. It means that if a unit attacks a friendly unit, his attack is interrupts.
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RandomNumber Equal to 5
      Then - Actions
        Game - Display to (All players) for 20.00 seconds the text: |cff00ff00- HINT -|r The command to exchange ressources is "-give gold/soul [player number] [amount]". The players numbers are |cffff000001|r, |cff0000ff02|r, |cff6f258304|r, |cffffff0005|r, |cffd45e1906|r, |cff80808009|r, |cff8080ff10|r, |cff00800011|r, |cff64141412|r, |cff8ce58219|r.
      Else - Actions
Quests Information
  Events
    Map initialization
  Conditions
  Actions
    -------- Required --------
    Quest - Create a Required quest titled |cff008000Zombies|r with the description You are one of the leaders of the zombie hordes. |cffff0000Your main objective is to destroy all the capitals that are regularly pinged to you.|r Every time you kill a human unit, it turns into a zombie. |cff00ff00To get through enemy defensive lines, you must upgrade your zombies in your "Zombie HQ" and use your souls to trigger events.|r |cffff00ffFor this purpose, do not hesitate to share resources between allies.|r Be careful not to feed your enemies stupidly. |cff8080ffFeel free to read the tabs in the "Information" menu to find out about the commands and tips.|r, using icon path ReplaceableTextures\CommandButtons\BTNZombie.blp
    Quest - Create a Required quest titled |cffff0000Defenders|r with the description You are part of the human kingdom. |cffff0000Your main objective is to protect your capital.|r Take the time to recruit the right units to deal with zombies.|cffffff00 It is not always wise to retreat directly to your capital.|r |cff00ff00Maintaining certain positions other than a capital can sometimes be decisive in the game.|r |cff8080ffFeel free to read the tabs of the "Information" menu to know all the commands and tips.|r, using icon path ReplaceableTextures\CommandButtons\BTNFootman.blp
    Quest - Create a Required quest titled Special Undead Events with the description |cff823219The Dragon:An undead heroe must takes the Hearth of the Mountain to the Dragon Altar.|r|cff008000The Necromancer:An undead hero must carry the Skeleton Key and go to the Necromancer's gate to open it.|r, using icon path ReplaceableTextures\CommandButtons\BTNBigBadVoodooSpell.blp
    -------- Optional --------
    Quest - Create a Optional quest titled Commands with the description |cffff0000Change camera distance : -cam [number]|rStart a vote kick : -kick player number/color/name|cff00ffffSend ressources to allies:-give gold/soul [player number(01-12)] [amount]|r|cff0000ffTake ressources to the players who left:-take gold/soul [player number(01-19)] [amount]|r|cffff00ffType "-share" to give your vision and full shared control of your units to all your allies. Type "-share" again to take control of your units from them.|r|cffffcc00After 30min, if you are a human player and still alive, you can type "-undead" to give the control of your units to the others humans player and become zombie.|r|cff00ff00Everyone can activate and deactivate the command "-troll on/off". It only works on the triggering player's team. Also when the command is activated, it can only be deactivated 60 seconds after. When activated, if a unit attacks a friendly unit, his attack is interrupts.|r|cff80b4ffType "-clear" to clear your screen of all text messages.|r|cffff0000Red or Grey if they are still humans can request bonus (it means that they must both agree):|r"-Hard" = 5000 gold per undead player"-Impossible" = 100 000 gold per undead player|cffff8080If red or grey is not played by a player or became undead, the bonus are directly activated whithout asking to the other player.|r|cffff0000Brown and Dark Green have the same system. They can type "-Hard" to provide +2000 gold to each human player.|r, using icon path ReplaceableTextures\CommandButtons\BTNEngineeringUpgrade.blp
    Quest - Create a Optional quest titled Version with the description |cffff0000You can find the latest version on Hive Workshop or in the map's discord server:https://discord.gg/QpEMJJW!|r|cffffcc00VERSION 2.0|r- First adaptation of the map on Reforged. It's not finished yet, but it will help you to wait., using icon path ReplaceableTextures\CommandButtons\BTNSelectHeroOn.blp
    Quest - Create a Optional quest titled Credits with the description |cffffcc00This version was made by|r |cffff0000Arathorn_ToXiK|r|cffffcc00.|r|cffffcc00Link to the discord server of the map:|rhttps://discord.gg/QpEMJJW|cffffcc00Mapper of the original map:|rArgos|cffffcc00Thanks to|r Insanepeon |cffffcc00for helping me with several voices in the map! and|r Sapprine |cffffcc00who helped with few voices too and has improved the decorations.|cffffcc00Models, skins and icons has been imported from the website|r |cffff00ffHive Workshop|r|cffffcc00.|r, using icon path ReplaceableTextures\CommandButtons\BTNManual3.blp
    Quest - Create a Optional quest titled "Fake" versions with the description |cffff0000Some people steal my work, my map and make "fake" versions of the map.|r I can't really prevent them from doing that since it's impossible to protect a map on 1.31 and sometimes it's hard to directly noticed that it's a fake version. So here is a simple trick to be sure you play the right version: Delete your MZA HEHA map files |cff808080(Documents->Warcraft III->Maps->Download->"MZA HEHA X.XX")|r and then |cffff0000download the right version on Hive or on the discord server|r (There are only official way to download the map). If you already downloaded the map by these way and you have to redownload the map when joining a lobby, it means that you are probably joining a "fake" version. |cff00ffffThanks for your attention and please don't hesitate to share this message and warn other people of the felonery!|r, using icon path ReplaceableTextures\CommandButtons\BTNCharm.blp
Settings Variables
  Events
    Map initialization
  Conditions
  Actions
    Set VariableSet Player[0] = Player 1 (Red)
    Set VariableSet Player[1] = Player 2 (Blue)
    Set VariableSet Player[2] = Player 3 (Teal)
    Set VariableSet Player[3] = Player 4 (Purple)
    Set VariableSet Player[4] = Player 5 (Yellow)
    Set VariableSet Player[5] = Player 6 (Orange)
    Set VariableSet Player[6] = Player 7 (Green)
    Set VariableSet Player[7] = Player 8 (Pink)
    Set VariableSet Player[8] = Player 9 (Gray)
    Set VariableSet Player[9] = Player 10 (Light Blue)
    Set VariableSet Player[10] = Player 11 (Dark Green)
    Set VariableSet Player[11] = Player 12 (Brown)
    Set VariableSet Player[12] = Player 13 (Maroon)
    Set VariableSet Player[13] = Player 14 (Navy)
    Set VariableSet Player[14] = Player 15 (Turquoise)
    Set VariableSet Player[15] = Player 16 (Violet)
    Set VariableSet Player[16] = Player 17 (Wheat)
    Set VariableSet Player[17] = Player 18 (Peach)
    Set VariableSet Player[18] = Player 19 (Mint)
    Set VariableSet Player[19] = Player 20 (Lavender)
    Set VariableSet Player[20] = Player 21 (Coal)
    Set VariableSet Player[21] = Player 22 (Snow)
    Set VariableSet Player[22] = Player 23 (Emerald)
    Set VariableSet Player[23] = Player 24 (Peanut)
    -------- ----------------------------- --------
    Set VariableSet PlayerColor[0] = red
    Set VariableSet PlayerColor[1] = blue
    Set VariableSet PlayerColor[3] = purple
    Set VariableSet PlayerColor[4] = yellow
    Set VariableSet PlayerColor[5] = orange
    Set VariableSet PlayerColor[8] = grey
    Set VariableSet PlayerColor[9] = light blue
    Set VariableSet PlayerColor[10] = dark green
    Set VariableSet PlayerColor[11] = brown
    Set VariableSet PlayerColor[18] = mint
    -------- ----------------------------- --------
    Set VariableSet EndOfTheGame = False
    Set VariableSet Protector = Protector of the Kingdom 0206 <gen>
    Set VariableSet Protector_Ghost = No unit
    Set VariableSet NumberOfPlayers = 0
    For each (Integer A) from 0 to 23, do (Actions)
      Loop - Actions
        Set VariableSet UnitsKilled[(Integer A)] = 0
        Set VariableSet UnitsLost[(Integer A)] = 0
        Set VariableSet HeroesKilled[(Integer A)] = 0
Settings
  Events
    Map initialization
  Conditions
  Actions
    Hashtable - Create a hashtable
    Set VariableSet Hashtable = (Last created hashtable)
    Hashtable - Create a hashtable
    Set VariableSet RE_Knocktable = (Last created hashtable)
    Hashtable - Create a hashtable
    Set VariableSet KnockbackTable = (Last created hashtable)
    Player - Change color of Player 8 (Pink) to Snow, Changing color of existing units
    Player Group - Add Player 11 (Dark Green) to UndeadPlayers
    Player Group - Add Player 12 (Brown) to UndeadPlayers
    For each (Integer A) from 0 to 23, do (Actions)
      Loop - Actions
        Player - Make Spearthrower Available for training/construction by Player[(Integer A)]
        Player - Make Robust Spearthrower Unavailable for training/construction by Player[(Integer A)]
        Player - Make Graywall Spearthrower Available for training/construction by Player[(Integer A)]
        Player - Make Robust Graywall Spearthrower Unavailable for training/construction by Player[(Integer A)]
        Player - Make Sentinel Available for training/construction by Player[(Integer A)]
        Player - Make Heavy Sentinel Unavailable for training/construction by Player[(Integer A)]
        Player - Make Axethrower Available for training/construction by Player[(Integer A)]
        Player - Make Heavy Axethrower Unavailable for training/construction by Player[(Integer A)]
        Player - Make Flesh Giant (Flesh Giant:Powerful Attack) Unavailable for training/construction by Player[(Integer A)]
        Player - Make Death Hound Death Hound:Powerful Mana Burn) Unavailable for training/construction by Player[(Integer A)]
        Player - Make Arcane Tower Unavailable for training/construction by Player[(Integer A)]
        Unit - Grant shared vision of https://discord.gg/QpEMJJW | Arathorn_ToXiK#1663 0150 <gen> to Player[(Integer A)]
        Unit - Grant shared vision of Pro Tiper 0302 <gen> to Player[(Integer A)]
        Player - Turn Gives bounty On for Player[(Integer A)]
        Player - Limit training of Sentinel to 40 for Player[(Integer A)]
        Player - Limit training of Graywall Spearthrower to 40 for Player[(Integer A)]
        Player - Limit training of Spearthrower to 40 for Player[(Integer A)]
        Player - Limit training of Dawnfall Warrior to 10 for Player[(Integer A)]
        Player - Limit training of Dawnfall Ranger to 10 for Player[(Integer A)]
        Player - Limit training of Necromancer to 24 for Player[(Integer A)]
        Player - Limit training of Sunrise Healer to 3 for Player[(Integer A)]
        Player - Limit training of Mason to 2 for Player[(Integer A)]
        Player - Limit training of Worker to 2 for Player[(Integer A)]
        Player - Limit training of Dwarven Tank to 2 for Player[(Integer A)]
        Player - Limit training of Ballista to 6 for Player[(Integer A)]
        Player - Limit training of Axethrower to 20 for Player[(Integer A)]
        Player - Limit training of Dwarven Rifleman to 10 for Player[(Integer A)]
        Player - Limit training of ArcherĀ“s Keep to 3 for Player[(Integer A)]
        Player - Limit training of Magical Fury Tower to 3 for Player[(Integer A)]
        Player - Limit training of Holy Tower to 3 for Player[(Integer A)]
        Player - Limit training of Privateer to 30 for Player[(Integer A)]
        Player - Limit training of Privateer (melee) to 30 for Player[(Integer A)]
        Player Group - Add Player[(Integer A)] to HumanPlayers
        Player - Set Player[(Integer A)].Food used to 0
        Player - Set Player[(Integer A)].Food max to 1500
        Player - Set the max research level of R008 (techcode) to 0 for Player[(Integer A)]
        Player - Disable Spell Immunity (Book) for Player[(Integer A)]
        Visibility - Create an initially Enabled visibility modifier for Player[(Integer A)] emitting Black mask across Abandonned_Chapel <gen>
        Player - Make Graywall Spearthrower Unavailable for training/construction by Player[(Integer A)]
    Player - Disable Spell Immunity (Book) for Neutral Passive
    Player - Make Graywall Spearthrower Available for training/construction by Player 19 (Mint)
    Player - Make Arcane Tower Available for training/construction by Player 2 (Blue)
    Player - Make Fortified Guard Tower Unavailable for training/construction by Player 2 (Blue)
    Player - Make Graywall Infantry Unavailable for training/construction by Player 5 (Yellow)
    Player - Make Border Guard Unavailable for training/construction by Player 5 (Yellow)
    Player - Make Graywall Spearthrower Unavailable for training/construction by Player 5 (Yellow)
    Player - Make Spearthrower Unavailable for training/construction by Player 19 (Mint)
    Player - Make Dwarven Rifleman Unavailable for training/construction by Player 6 (Orange)
    Player - Make Worker Unavailable for training/construction by Player 10 (Light Blue)
    Player - Make Worker Unavailable for training/construction by Player 19 (Mint)
    Player - Make Mason Unavailable for training/construction by Player 6 (Orange)
    Player - Limit training of Graywall Spearthrower to 40 for Player 3 (Teal)
    Set VariableSet DawnfallAlive = 4
    -------- Income Building --------
    Unit - Add Income (+200) to Garrison Tower 0659 <gen>
    Unit - Add Income (+200) to Crystal Falcon Sanctum 0761 <gen>
    Unit - Add Income (+200) to Garrison Tower 1068 <gen>
    -------- ---------------------------------- --------
    Animation - Play |cffdc7814Horn of the dwarf lords|r 1496 <gen>'s stand (animationname) animation
    Set VariableSet CrystalGolem = |cff00c8b4Crystal Golem|r 1497 <gen>
    Unit - Hide CrystalGolem
    Unit - Hide Crystal Obelisk 1500 <gen>
    Unit - Hide Crystal Obelisk 1498 <gen>
    Unit - Hide Crystal Obelisk 1501 <gen>
    Animation - Play the hide (animationname) animation for all doodads of type XOmr (doodadcode) within Crystal_Golem_Region <gen>.
    -------- ---------------------------------- --------
    Player - Set the max research level of R01J (techcode) to 0 for Player 11 (Dark Green)
    Player - Set the max research level of R01J (techcode) to 0 for Player 6 (Orange)
    Player - Set the max research level of R01K (techcode) to 0 for Player 11 (Dark Green)
    Player - Set the max research level of R01K (techcode) to 0 for Player 6 (Orange)
    Player - Set the max research level of R01Q (techcode) to 0 for Player 12 (Brown)
    Player - Set the max research level of R01Q (techcode) to 0 for Player 6 (Orange)
    Player - Make Border Guard Unavailable for training/construction by Player 5 (Yellow)
    Neutral Building - Disable Passage 0665 <gen>
    Unit - Make Corrupted Master of Light 1254 <gen> Invulnerable
    Neutral Building - Disable Passage 0074 <gen>
    Player Group - Remove Player 11 (Dark Green) from HumanPlayers.
    Player Group - Remove Player 12 (Brown) from HumanPlayers.
    Destructible - Hide Rock Chunks 8266 <gen>
    Destructible - Hide Rock Chunks 8265 <gen>
    Destructible - Hide Rock Chunks 8252 <gen>
    Destructible - Hide Rock Chunks 8255 <gen>
    Player Group - Make HumanPlayers treat UndeadPlayers as an Enemy
    Player Group - Make UndeadPlayers treat HumanPlayers as an Enemy
    Set VariableSet GroupUnits = (Units in Human_Village <gen> matching (((Owner of (Matching unit)) Equal to Player 22 (Snow)) and (((Matching unit) is A structure) Equal to False)))
    Unit Group - Pick every unit in GroupUnits and do (Order (Picked unit) to Hold Position.)
    Custom script: call DestroyGroup(udg_GroupUnits)
    Destructible - Kill Long Wooden Bridge 6140 <gen>
    Animation - Change Wolf Elder 0103 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Cloaked Stranger 0536 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Royal Veteran 0058 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Cloaked Stranger 0405 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Border Guard Veteran 0059 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Cloaked Stranger 0530 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Leonar Veteran 0102 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Cloaked Stranger 0825 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Cloaked Stranger 0666 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Paladin Veteran 0901 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Falcon Veteran 0064 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Cloaked Stranger 0508 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Cloaked Stranger 0667 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Miner 0792 <gen>'s animation speed to 0.00% of its original speed
    Animation - Change Thane Veteran 0232 <gen>'s animation speed to 0.00% of its original speed
    Neutral Building - Disable Portal 0828 <gen>
    Animation - Play Portal 0828 <gen>'s stand alternate (animationname) animation
    Neutral Building - Disable Portal 0826 <gen>
    Animation - Play Portal 0826 <gen>'s stand alternate (animationname) animation
    Animation - Play the hide (animationname) animation for all doodads of type D02F (doodadcode) within Red_Capital_Zombies_spawn_South <gen>.
    Animation - Play the hide (animationname) animation for all doodads of type D02F (doodadcode) within Red_Capital_Zombies_spawn_South_East <gen>.
    Animation - Play the hide (animationname) animation for all doodads of type D02F (doodadcode) within Red_Capital_Zombies_spawn_North_East <gen>.
    Animation - Play the hide (animationname) animation for all doodads of type D02F (doodadcode) within Red_Capital_Zombies_spawn_South_North_West <gen>.
    Destructible - Pick every destructible in (Playable map area) and do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Destructible-type of (Picked destructible)) Equal to LTrc (destructablecode)
          Then - Actions
            Destructible - Make (Picked destructible) Invulnerable
          Else - Actions
    Animation - Play the death (animationname) animation for all doodads of type D02D (doodadcode) within Destroyed_Orc_Shipyard <gen>.
    Unit - Change color of Reinforcements Point 0323 <gen> to Red
    Unit - Change color of Reinforcements Point 0255 <gen> to Yellow
    Unit - Change color of Reinforcements Point 1829 <gen> to Yellow
    Special Effect - Create a special effect attached to the chest (attachpoint) of Dawnfall Captain 1345 <gen> using war3mapImported\Simple Cape.mdx
    Unit - Change color of Dawnfall Captain 1345 <gen> to (Color of (Owner of Protector of the Kingdom 0206 <gen>))
    Animation - Play the hide (animationname) animation for all doodads of type D01I (doodadcode) within (Playable map area).
    Unit - Make Powerful Necromancer 1139 <gen> Invulnerable
    Unit - Hide Circle of Power 0265 <gen>
    Unit - Hide Circle of Power 0288 <gen>
    Unit - Hide Way Gate 0139 <gen>
    Unit - Hide Way Gate 0145 <gen>
    Neutral Building - Disable Way Gate 0139 <gen>
    Neutral Building - Disable Way Gate 0145 <gen>
    Animation - Play Guardian statue 0009 <gen>'s stand alternate (animationname) animation
    Animation - Play Guardian statue 0014 <gen>'s stand alternate (animationname) animation
    Special Effect - Create a special effect attached to the origin (attachpoint) of Lord of the King's Guard 0394 <gen> using war3mapImported\GeneralHeroGlow.mdx
    Unit - Change color of Lord of the King's Guard 0394 <gen> to (Color of (Owner of Lord of the King's Guard 0394 <gen>))
    Special Effect - Create a special effect attached to the origin (attachpoint) of Graywall General 0006 <gen> using war3mapImported\GeneralHeroGlow.mdx
    Unit - Change color of Graywall General 0006 <gen> to (Color of (Owner of Graywall General 0006 <gen>))
    Special Effect - Create a special effect attached to the origin (attachpoint) of Second in Line to the Throne 1945 <gen> using war3mapImported\GeneralHeroGlow.mdx
    Unit - Change color of Second in Line to the Throne 1945 <gen> to (Color of (Owner of Second in Line to the Throne 1945 <gen>))
    Special Effect - Create a special effect attached to the origin (attachpoint) of Leader of Church 0919 <gen> using war3mapImported\GeneralHeroGlow.mdx
    Unit - Change color of Leader of Church 0919 <gen> to (Color of (Owner of Leader of Church 0919 <gen>))
    Special Effect - Create a special effect attached to the origin (attachpoint) of Lord of Hammerfell 0643 <gen> using war3mapImported\GeneralHeroGlow.mdx
    Unit - Change color of Lord of Hammerfell 0643 <gen> to (Color of (Owner of Lord of Hammerfell 0643 <gen>))
    Special Effect - Create a special effect attached to the origin (attachpoint) of Darkwood Commander 0287 <gen> using war3mapImported\GeneralHeroGlow.mdx
    Unit - Change color of Darkwood Commander 0287 <gen> to (Color of (Owner of Darkwood Commander 0287 <gen>))
    Special Effect - Create a special effect attached to the origin (attachpoint) of The First Ancient 0915 <gen> using war3mapImported\GeneralHeroGlow.mdx
    Unit - Change color of The First Ancient 0915 <gen> to (Color of (Owner of The First Ancient 0915 <gen>))
    Special Effect - Create a special effect attached to the origin (attachpoint) of Guns Master 0910 <gen> using war3mapImported\GeneralHeroGlow.mdx
    Unit - Change color of Guns Master 0910 <gen> to (Color of (Owner of Guns Master 0910 <gen>))
    Environment - Create at Uther_Statue <gen> the weather effect Rays Of Light
    Set VariableSet RayOfLight = (Last created weather effect)
    Environment - Turn RayOfLight On
    Animation - Play the hide (animationname) animation for all doodads of type YOtf (doodadcode) within Human_Village <gen>.
    Unit - Make The Vault 0226 <gen> Invulnerable
    Unit - Make Fortified Guard Tower 0231 <gen> Invulnerable
    Unit - Make Fortified Guard Tower 0570 <gen> Invulnerable
Musics
  Events
  Conditions
    EndOfTheGame Equal to False
  Actions
    Sound - Stop music After fading
    Sound - Clear the music list
    Set VariableSet RandomNumber = (Random integer number between 1 and 4)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RandomNumber Equal to 1
      Then - Actions
        Sound - Play HumanX1 <gen>
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RandomNumber Equal to 2
      Then - Actions
        Sound - Play NightElfX1 <gen>
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RandomNumber Equal to 3
      Then - Actions
        Sound - Play OrcX1 <gen>
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RandomNumber Equal to 4
      Then - Actions
        Sound - Play UndeadX1 <gen>
      Else - Actions
    Set VariableSet MusicTime = (Length of (Last played music))
    Wait MusicTime seconds
    Trigger - Run (This trigger) (checking conditions)
Items not for Undeads
  Events
    Unit - A unit Acquires an item
  Conditions
    ((Owner of (Triggering unit)) is in UndeadPlayers.) Equal to True
    (Item-type of (Item being manipulated)) Not equal to |cff6f2583Skeleton Key|r
    (Item-type of (Item being manipulated)) Not equal to |cFFFF0000Heart of the Mountain|r
    (Item-type of (Item being manipulated)) Not equal to Ring of Shadow
    (Item-type of (Item being manipulated)) Not equal to Orb of Dragonfire
  Actions
    Set VariableSet Point = (Position of (Item being manipulated))
    Hero - Drop (Item being manipulated) from (Triggering unit).
    Item - Move (Item being manipulated) to Point
    Custom script: call RemoveLocation(udg_Point)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        (Item-type of (Item being manipulated)) Equal to Orb of Dragonfire
        (Unit-type of (Triggering unit)) Not equal to Last of the Dragons
      Then - Actions
        Set VariableSet Point = (Position of (Item being manipulated))
        Hero - Drop (Item being manipulated) from (Triggering unit).
        Item - Move (Item being manipulated) to Point
        Custom script: call RemoveLocation(udg_Point)
      Else - Actions
Aslyr sword for Protector
  Events
    Unit - A unit Acquires an item
  Conditions
    (Item-type of (Item being manipulated)) Equal to |cff0064ffAslyr, Blade of Northern Winds|r
    (Owner of (Triggering unit)) Not equal to Player 9 (Gray)
  Actions
    Set VariableSet Point = (Position of (Item being manipulated))
    Hero - Drop (Item being manipulated) from (Triggering unit).
    Item - Move (Item being manipulated) to Point
    Custom script: call RemoveLocation(udg_Point)
Items not for Protector
  Events
    Unit - A unit Acquires an item
  Conditions
    (Owner of (Triggering unit)) Equal to Player 9 (Gray)
    Or - Any (Conditions) are true
      Conditions
        (Item-type of (Item being manipulated)) Equal to Orb of Dragonfire
        (Item-type of (Item being manipulated)) Equal to |cFFFF0000Heart of the Mountain|r
        (Item-type of (Item being manipulated)) Equal to |cff6f2583Skeleton Key|r
  Actions
    Set VariableSet Point = (Position of (Item being manipulated))
    Hero - Drop (Item being manipulated) from (Triggering unit).
    Item - Move (Item being manipulated) to Point
    Custom script: call RemoveLocation(udg_Point)
Items heavy for humans heroes
  Events
    Unit - A unit Acquires an item
  Conditions
    Or - Any (Conditions) are true
      Conditions
        ((Owner of (Triggering unit)) is in HumanPlayers.) Equal to True
        (Owner of (Triggering unit)) Equal to Player 6 (Orange)
    Or - Any (Conditions) are true
      Conditions
        (Item-type of (Item being manipulated)) Equal to |cff6f2583Skeleton Key|r
        (Item-type of (Item being manipulated)) Equal to |cFFFF0000Heart of the Mountain|r
  Actions
    Unit - Remove Assassinate buff from (Triggering unit)
    Unit - Remove Wind Walk buff from (Triggering unit)
    Set VariableSet Point = (Position of (Triggering unit))
    Unit - Create 1.Dummy Caster for Neutral Hostile at Point facing Default building facing degrees
    Unit - Add Curse (Heavy items) slow to (Last created unit)
    Unit - Add Curse (Heavy items) silence to (Last created unit)
    Unit - Add a 3.00 second Generic expiration timer to (Last created unit)
    Unit - Order (Last created unit) to Human Sorceress - Slow.(Triggering unit)
    Unit - Order (Last created unit) to Neutral Dark Ranger - Silence.Point
    Custom script: call RemoveLocation(udg_Point)
Items heavy for humans drop
  Events
    Unit - A unit Loses an item
  Conditions
    Or - Any (Conditions) are true
      Conditions
        ((Owner of (Triggering unit)) is in HumanPlayers.) Equal to True
        (Owner of (Triggering unit)) Equal to Player 6 (Orange)
    Or - Any (Conditions) are true
      Conditions
        (Item-type of (Item being manipulated)) Equal to |cff6f2583Skeleton Key|r
        (Item-type of (Item being manipulated)) Equal to |cFFFF0000Heart of the Mountain|r
  Actions
    Wait 0.10 seconds
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        ((Triggering unit) has an item of type |cff6f2583Skeleton Key|r) Equal to False
        ((Triggering unit) has an item of type |cFFFF0000Heart of the Mountain|r) Equal to False
      Then - Actions
        Set VariableSet Point = (Position of (Triggering unit))
        Unit - Create 1.Dummy Caster for (Owner of (Triggering unit)) at Point facing Default building facing degrees
        Unit - Add Disenchant (heavy items) to (Last created unit)
        Unit - Add a 3.00 second Generic expiration timer to (Last created unit)
        Unit - Order (Last created unit) to Orc Spirit Walker - Disenchant.Point
        Custom script: call RemoveLocation(udg_Point)
        Unit - Remove Curse (Heavy items) buff from (Triggering unit)
        Unit - Remove Curse (Heavy items) buff from (Triggering unit)
        Unit - Remove Curse (Heavy items) buff from (Triggering unit)
      Else - Actions
No units in Zombies HQ
  Events
    Unit - A unit enters Zombies_HQ_01 <gen>
  Conditions
    ((Triggering unit) is A structure) Equal to False
  Actions
    Set VariableSet Point = (Center of Zombies_HQ_02 <gen>)
    Unit - Move (Triggering unit) instantly to Point
    Custom script: call RemoveLocation(udg_Point)
    Game - Display to (All players matching ((Matching player) Equal to (Owner of (Triggering unit))).) for 5.00 seconds the text: |cff008000This area is protected by a powerful dark spell which prevent any units from coming!|r
Buy zombies in ships
  Events
    Unit - Undead Battleship 0552 <gen> Sells a unit
    Unit - Undead Battleship 0550 <gen> Sells a unit
    Unit - Undead Battleship 0551 <gen> Sells a unit
  Conditions
  Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        (Triggering unit) Equal to Undead Battleship 0552 <gen>
      Then - Actions
        Set VariableSet Point = (Center of Seafront_3 <gen>)
        Unit - Move (Sold unit) instantly to Point
        Custom script: call RemoveLocation(udg_Point)
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        (Triggering unit) Equal to Undead Battleship 0550 <gen>
      Then - Actions
        Set VariableSet Point = (Center of Seafront_2 <gen>)
        Unit - Move (Sold unit) instantly to Point
        Custom script: call RemoveLocation(udg_Point)
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        (Triggering unit) Equal to Undead Battleship 0551 <gen>
      Then - Actions
        Set VariableSet Point = (Center of Seafront <gen>)
        Unit - Move (Sold unit) instantly to Point
        Custom script: call RemoveLocation(udg_Point)
      Else - Actions
Researches for Defenders
  Events
    Unit - A unit Finishes research
  Conditions
    ((Owner of (Triggering unit)) is in HumanPlayers.) Equal to True
  Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        (Current research level of (Researched tech-type) for Player 8 (Pink)) Less than (Current research level of (Researched tech-type) for (Owner of (Triggering unit)))
      Then - Actions
        Player - Set the current research level of (Researched tech-type) to ((Current research level of (Researched tech-type) for Player 8 (Pink)) + 1) for Player 8 (Pink)
      Else - Actions
Pro Tiper
  Events
    Unit - Pro Tiper 0302 <gen> Sells a unit
  Conditions
  Actions
    Unit - Remove (Sold unit) from the game
One item type per hero
  Events
    Unit - A unit Acquires an item
  Conditions
  Actions
    For each (Integer A) from 1 to 6, do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Item carried by (Triggering unit) in slot (Integer A)) Not equal to (Item being manipulated)
            (Item-type of (Item carried by (Triggering unit) in slot (Integer A))) Equal to (Item-type of (Item being manipulated))
            (Item-type of (Item being manipulated)) Not equal to Potion of Healing
            (Item-type of (Item being manipulated)) Not equal to Potion of Mana
          Then - Actions
            Hero - Drop (Item being manipulated) from (Triggering unit).
            Game - Display to (All players matching ((Matching player) Equal to (Owner of (Triggering unit))).) for 5.00 seconds the text: (|cffff0000The hero already have + ((Name of (Item being manipulated)) + !|r))
          Else - Actions
Tutorials End
  Events
    Time - Every 1.00 seconds of game time
  Conditions
    Tutorial_UD Equal to True
    Tutorial_Human Equal to True
    Tutorial_Dwarf Equal to True
  Actions
    Trigger - Turn off (This trigger)
    Game - Display to (All players) for 5.00 seconds the text: Good luck and have fun! Don't forget to read the |cffffff00Information|r tabs to know everything about the game and his secrets!
    Sound - Stop music After fading
    Cinematic - Fade out over 2.00 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 5.00 seconds
    Cinematic - Fade in over 2.00 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Trigger - Run Starting_Cinematic <gen> (checking conditions)
    Trigger - Turn off Starting_time <gen>
    Wait 120.00 seconds
    Trigger - Run Spiders_spawn <gen> (checking conditions)
Tutorial Undead
  Events
  Conditions
  Actions
    Set VariableSet Point = (Position of Tower of Damned 0346 <gen>)
    Player Group - Pick every player in UndeadPlayers and do (Pan camera for (Picked player) to Point over 0 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Game - Display to UndeadPlayers for 9.00 seconds the text: Your ally and you are the zombies. |cff008000Dark Green|r starts at East and |cff641414Brown|r at North.
    Wait 4.00 seconds
    Set VariableSet Point = (Position of Tower of Damned 0347 <gen>)
    Player Group - Pick every player in UndeadPlayers and do (Pan camera for (Picked player) to Point over 0 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 5.00 seconds
    Game - Display to UndeadPlayers for 10.00 seconds the text: You can train zombies in |cffff0000Corpse Storage|r and other special zombies which are very useful in differents situations. You can also train |cffff00ffAcolytes|r to build crypts in order to produce zombies closer from Humans Capitals.
    Wait 4.00 seconds
    Set VariableSet Point = (Position of Corpse Storage 0377 <gen>)
    Special Effect - Create a special effect at Point using Abilities\Spells\Other\Charm\CharmTarget.mdl
    Special Effect - Set Scale of (Last created special effect) to 2.50
    Special Effect - Destroy (Last created special effect)
    Custom script: call RemoveLocation(udg_Point)
    Set VariableSet Point = (Position of Corpse Storage 0376 <gen>)
    Special Effect - Create a special effect at Point using Abilities\Spells\Other\Charm\CharmTarget.mdl
    Special Effect - Set Scale of (Last created special effect) to 2.50
    Special Effect - Destroy (Last created special effect)
    Custom script: call RemoveLocation(udg_Point)
    Wait 2.00 seconds
    Set VariableSet Point = (Position of Tower of Damned 0346 <gen>)
    Player Group - Pick every player in UndeadPlayers and do (Pan camera for (Picked player) to Point over 0 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 2.00 seconds
    Set VariableSet Point = (Position of Corpse Storage 0182 <gen>)
    Special Effect - Create a special effect at Point using Abilities\Spells\Other\Charm\CharmTarget.mdl
    Special Effect - Set Scale of (Last created special effect) to 2.50
    Special Effect - Destroy (Last created special effect)
    Custom script: call RemoveLocation(udg_Point)
    Set VariableSet Point = (Position of Corpse Storage 0181 <gen>)
    Special Effect - Create a special effect at Point using Abilities\Spells\Other\Charm\CharmTarget.mdl
    Special Effect - Set Scale of (Last created special effect) to 2.50
    Special Effect - Destroy (Last created special effect)
    Custom script: call RemoveLocation(udg_Point)
    Wait 2.00 seconds
    Game - Display to UndeadPlayers for 11.00 seconds the text: However don't spend too much gold on zombies and special zombies because you will need gold to |cffff0000evolve your zombies|r. These evolutions are very expensive but are very very important if you want a chance to win. Every upgrades you make in your Zombie HQ are shared with your ally. It means that you only need to make them once for both of you. |cffff0000Zombie evolution apply to every zombie players.|r
    Set VariableSet Point = (Position of Zombie HQ 0175 <gen>)
    Player Group - Pick every player in UndeadPlayers and do (Pan camera for (Picked player) to Point over 0 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 11.00 seconds
    Set VariableSet Point = (Position of Zombie HQ 0175 <gen>)
    Player Group - Pick every player in UndeadPlayers and do (Rotate camera 360.00 degrees around Point for (Picked player) over 6.00 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Game - Display to UndeadPlayers for 8.00 seconds the text: You can also make |cffff0000special events|r in your Zombie HQ which can be very strategic. Use them wisely. |cffffff00Be aware that every units and buildings you kill, create a zombie; like a virus/infestation|r. So it is possible to attack without training a lot of zombies.
    Wait 8.00 seconds
    Game - Display to UndeadPlayers for 7.00 seconds the text: Your objectives are to destroy all the capitals of the Kingdom which are ping on the mini-map every 20 seconds.
    Set VariableSet Point = (Position of Ganch Keep 0976 <gen>)
    Player Group - Pick every player in UndeadPlayers and do (Pan camera for (Picked player) to Point over 0 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 1.00 seconds
    Player Group - Pick every player in UndeadPlayers and do (Pan camera for (Picked player) to (Player 1 (Red) start location) over 0 seconds)
    Wait 1.00 seconds
    Player Group - Pick every player in UndeadPlayers and do (Pan camera for (Picked player) to (Player 2 (Blue) start location) over 0 seconds)
    Wait 1.00 seconds
    Player Group - Pick every player in UndeadPlayers and do (Pan camera for (Picked player) to (Player 4 (Purple) start location) over 0 seconds)
    Wait 1.00 seconds
    Player Group - Pick every player in UndeadPlayers and do (Pan camera for (Picked player) to (Player 5 (Yellow) start location) over 0 seconds)
    Wait 1.00 seconds
    Player Group - Pick every player in UndeadPlayers and do (Pan camera for (Picked player) to (Player 6 (Orange) start location) over 0 seconds)
    Wait 1.00 seconds
    Player Group - Pick every player in UndeadPlayers and do (Pan camera for (Picked player) to (Player 10 (Light Blue) start location) over 0 seconds)
    Wait 1.00 seconds
    Game - Display to UndeadPlayers for 9.00 seconds the text: It is wise to share and speak with your ally to plans and coordinates your attacks. Try to not feed your ennemies. You can often win by a surprise or clever attack instead of a massive attack which can be easely stop by good players.
    Player Group - Pick every player in UndeadPlayers and do (Pan camera for (Picked player) to ((Picked player) start location) over 0 seconds)
    Wait 9.00 seconds
    Set VariableSet Tutorial_UD = True
Tutorial Human
  Events
  Conditions
  Actions
    Game - Display to HumanPlayers for 5.00 seconds the text: You are a faction of the |cffff0000Human Kingdom|r. You must protect your capital from the zombies until the doctors find a cure to the virus (1 hour and 10 minutes).
    Wait 5.00 seconds
    Player Group - Pick every player in HumanPlayers and do (Rotate camera 360.00 degrees around ((Picked player) start location) for (Picked player) over 5.00 seconds)
    Game - Display to HumanPlayers for 5.00 seconds the text: You can train units in your barracks and capital. Therefore try to not feed zombie players by training only weak units. Each capital have gates which can be close, open and repaired with the closer lever.
    Wait 5.00 seconds
    Game - Display to HumanPlayers for 8.00 seconds the text: |cff0000ffBlue player|r and |cffff0000red player|r have a portal which connect their base to each other. The portal can be very useful but it can also cause the immediat death of the other if blue or red loose. |cff00ffffThey can close the portal by making a research in their capital which explain everything.|r
    Set VariableSet Point = (Position of Circle of Power 0265 <gen>)
    Player Group - Pick every player in HumanPlayers and do (Pan camera for (Picked player) to Point over 0 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 4.00 seconds
    Set VariableSet Point = (Position of Circle of Power 0288 <gen>)
    Player Group - Pick every player in HumanPlayers and do (Pan camera for (Picked player) to Point over 0 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 4.00 seconds
    Game - Display to HumanPlayers for 4.00 seconds the text: |cff8ce582Graywall|r should try to defend the wall as much as he can before retreating to his capital. The Wall is a strategic position. |cffff0000Red player|r can help him. The Wall is important to avoid zombies to obtain the Dragon.
    Set VariableSet Point = (Position of Graywall Bastion 0297 <gen>)
    Player Group - Pick every player in HumanPlayers and do (Pan camera for (Picked player) to Point over 0 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 4.00 seconds
    Game - Display to HumanPlayers for 4.00 seconds the text: But be aware of the |cffdc6400Dwarf|r who is not allied with the Human Kingdom.
    Set VariableSet Point = (Position of Stormfury Citadel 1483 <gen>)
    Player Group - Pick every player in HumanPlayers and do (Pan camera for (Picked player) to Point over 3.00 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 4.00 seconds
    Game - Display to HumanPlayers for 5.00 seconds the text: Therefore the |cffdc6400Dwarf|r can ally the Human Kingdom if him and |cffff0000red player|r make both of them a research in their capital.
    Wait 2.50 seconds
    Set VariableSet Point = (Position of Teredar Fortress 0461 <gen>)
    Player Group - Pick every player in HumanPlayers and do (Pan camera for (Picked player) to Point over 0.00 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 2.50 seconds
    Game - Display to HumanPlayers for 11.00 seconds the text: |cff6f2583Purple player|r will face zombies coming from ships. His capital contains the key for the Necromancer Gate. The Necromancer is a second very powerful undead hero. |cff6f2583Leonar Harbor|r is the path toward many strategic points. Holding the capital can be very useful to Humans.
    Set VariableSet Point = (Position of Commander of the Gate 0760 <gen>)
    Player Group - Pick every player in HumanPlayers and do (Pan camera for (Picked player) to Point over 0 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 1.00 seconds
    Set VariableSet Point = (Position of Guard Tower 0115 <gen>)
    Player Group - Pick every player in HumanPlayers and do (Pan camera for (Picked player) to Point over 5.50 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 7.00 seconds
    Set VariableSet Point = (Position of Leonar Citadel 0538 <gen>)
    Player Group - Pick every player in HumanPlayers and do (Pan camera for (Picked player) to Point over 3.00 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 5.00 seconds
    Game - Display to HumanPlayers for 7.00 seconds the text: |cff808080Grey player|r is not a required objective for zombies players but he is very important for the survival of Human players. He can train strong units and his hero is very powerful. |cffff0000He must act quick and use his teleportation spell to help every player who is in danger.|r
    Set VariableSet Point = (Position of Protector of the Kingdom 0206 <gen>)
    Player Group - Pick every player in HumanPlayers and do (Pan camera for (Picked player) to Point over 0.00 seconds)
    Custom script: call RemoveLocation(udg_Point)
    Wait 7.00 seconds
    Game - Display to HumanPlayers for 5.00 seconds the text: A very important part of your resistance will be the upgrades you make in your armoury (blacksmith). These upgrades are the key to have a strong army. Without these upgrades you will not resist a very long time.
    Player Group - Pick every player in HumanPlayers and do (Pan camera for (Picked player) to ((Picked player) start location) over 0.00 seconds)
    Wait 5.00 seconds
    Set VariableSet Tutorial_Human = True
Tutorial Dwarf
  Events
  Conditions
  Actions
    Game - Display to Player Group - Player 6 (Orange) for 4.00 seconds the text: Your are the |cffdc6400Dwarf player|r located at North-West.
    Wait 4.00 seconds
    Game - Display to Player Group - Player 6 (Orange) for 5.00 seconds the text: Your are standing alone in the Kingdom. However you should not attack the humans, they have the same objectives as you.
    Wait 5.00 seconds
    Game - Display to Player Group - Player 6 (Orange) for 7.00 seconds the text: If you want to ally the humans to help them or go out of your base without being attacked, you can make a research alliance in your capital. Be aware that |cffff0000red player|r must also do the research and that you will loose your regular income by allying the humans. Everything is explained in the description of the research.
    Wait 7.00 seconds
    Game - Display to Player Group - Player 6 (Orange) for 5.00 seconds the text: In your Dwarven Armory and your capitals, you can make very important upgrades to improve your army. You won't survive a very long time without improving your units.
    Set VariableSet Point = (Position of Dwarven Armory 0968 <gen>)
    Camera - Pan camera for Player 6 (Orange) to Point over 2.00 seconds
    Custom script: call RemoveLocation(udg_Point)
    Wait 3.00 seconds
    Set VariableSet Point = (Position of Dwarven Armory 0937 <gen>)
    Camera - Pan camera for Player 6 (Orange) to Point over 2.00 seconds
    Custom script: call RemoveLocation(udg_Point)
    Wait 3.00 seconds
    Game - Display to Player Group - Player 6 (Orange) for 8.00 seconds the text: Your base is link to caverns and tunnels. The two tunnels can be open with a research in your capital. It will allow you to quickly move to North and South of the map. But careful, once opened, everyone can go through these tunnels.
    Set VariableSet Point = (Position of Dwarven Warrior 0013 <gen>)
    Camera - Pan camera for Player 6 (Orange) to Point over 0.00 seconds
    Custom script: call RemoveLocation(udg_Point)
    Wait 2 seconds
    Set VariableSet Point = (Position of Forest Spider 0266 <gen>)
    Camera - Pan camera for Player 6 (Orange) to Point over 3.00 seconds
    Custom script: call RemoveLocation(udg_Point)
    Wait 4.00 seconds
    Set VariableSet Point = (Position of Passage 1243 <gen>)
    Special Effect - Create a special effect at Point using Abilities\Spells\Other\Charm\CharmTarget.mdl
    Special Effect - Set Scale of (Last created special effect) to 2.00
    Special Effect - Destroy (Last created special effect)
    Custom script: call RemoveLocation(udg_Point)
    Set VariableSet Point = (Position of Passage 0583 <gen>)
    Special Effect - Create a special effect at Point using Abilities\Spells\Other\Charm\CharmTarget.mdl
    Special Effect - Set Scale of (Last created special effect) to 2.00
    Special Effect - Destroy (Last created special effect)
    Custom script: call RemoveLocation(udg_Point)
    Wait 2 seconds
    Set VariableSet Point = (Position of Passage 0471 <gen>)
    Camera - Pan camera for Player 6 (Orange) to Point over 0.00 seconds
    Custom script: call RemoveLocation(udg_Point)
    Wait 2 seconds
    Set VariableSet Point = (Position of Passage 0517 <gen>)
    Camera - Pan camera for Player 6 (Orange) to Point over 0.00 seconds
    Custom script: call RemoveLocation(udg_Point)
    Wait 2 seconds
    Game - Display to Player Group - Player 6 (Orange) for 5.00 seconds the text: By this door, you can go to your Vault which allow you to produce Ancestors (your most powerful unit).
    Set VariableSet Point = (Position of Black Spider 0233 <gen>)
    Camera - Pan camera for Player 6 (Orange) to Point over 0.00 seconds
    Custom script: call RemoveLocation(udg_Point)
    Wait 2.00 seconds
    Set VariableSet Point = (Position of Fortified Guard Tower 0570 <gen>)
    Camera - Pan camera for Player 6 (Orange) to Point over 2.00 seconds
    Custom script: call RemoveLocation(udg_Point)
    Wait 2.00 seconds
    Game - Display to Player Group - Player 6 (Orange) for 8.00 seconds the text: Be aware of the Ancient Horror which live here. Spiders will spawn until the Ancient Horror death. You should kill it quickly before the zombies players make an event to take possession of it and produce spiders. Also know that many gold and a powerful item are hiding in this cavern.
    Set VariableSet Point = (Position of Ancient Horror 0066 <gen>)
    Camera - Pan camera for Player 6 (Orange) to Point over 3.00 seconds
    Custom script: call RemoveLocation(udg_Point)
    Wait 8.00 seconds
    Game - Display to Player Group - Player 6 (Orange) for 10.00 seconds the text: While you are fighting in the caverns you should take care of this passage which is directly link to zombies. A fast and surprise attack from the zombie player can cause easily cause your death. However you can definitely close this passage with rocks by making a research in your barrack.
    Set VariableSet Point = (Position of Black Spider 0233 <gen>)
    Camera - Pan camera for Player 6 (Orange) to Point over 2.00 seconds
    Custom script: call RemoveLocation(udg_Point)
    Wait 3.00 seconds
    Set VariableSet Point = (Position of Dwarven Warrior 0128 <gen>)
    Camera - Pan camera for Player 6 (Orange) to Point over 2.00 seconds
    Custom script: call RemoveLocation(udg_Point)
    Wait 3.00 seconds
    Set VariableSet Point = (Position of Barracks 0729 <gen>)
    Special Effect - Create a special effect at Point using Abilities\Spells\Other\Charm\CharmTarget.mdl
    Special Effect - Set Scale of (Last created special effect) to 2.50
    Special Effect - Destroy (Last created special effect)
    Custom script: call RemoveLocation(udg_Point)
    Wait 4.00 seconds
    Game - Display to Player Group - Player 6 (Orange) for 4.00 seconds the text: If you loose your capital and your king hero, you will join the zombies with a full base and Zombie HQ.
    Camera - Pan camera for Player 6 (Orange) to (Player 6 (Orange) start location) over 0 seconds
    Wait 4.00 seconds
    Set VariableSet Tutorial_Dwarf = True
No friendly attacks on Buildings
  Events
    Unit - A unit Is attacked
  Conditions
    ((Owner of (Attacking unit)) is in HumanPlayers.) Equal to True
    ((Triggering unit) is A structure) Equal to True
    ((Owner of (Triggering unit)) is in HumanPlayers.) Equal to True
    (Owner of (Triggering unit)) Not equal to Player 22 (Snow)
  Actions
    Unit - Interrupt (Attacking unit)'s Attack
No friendly attacks Commands Humans
  Events
  Conditions
  Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        ((Triggering player) is in HumanPlayers.) Equal to True
      Then - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Entered chat string) Equal to -troll on
            AntiTrollHuman Equal to False
          Then - Actions
            Trigger - Turn on No_friendly_attacks_Humans <gen>
            Set VariableSet AntiTrollHuman = True
            Sound - Play Warning <gen>
            Game - Display to HumanPlayers the text: |cffff0000The anti-troll command has been activated. You can't hurt an ally. You will be able to deactivate the command only in 60 seconds.|r
            Trigger - Turn off (This trigger)
            Wait 60.00 seconds
            Trigger - Turn on (This trigger)
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Entered chat string) Equal to -troll off
            AntiTrollHuman Equal to True
          Then - Actions
            Trigger - Turn off No_friendly_attacks_Humans <gen>
            Set VariableSet AntiTrollHuman = False
            Sound - Play Warning <gen>
            Game - Display to HumanPlayers the text: |cffff0000The anti-troll command has been deactivated. It is possible to hurt an ally.|r
          Else - Actions
      Else - Actions
No friendly attacks Commands Undeads
  Events
  Conditions
  Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        ((Triggering player) is in UndeadPlayers.) Equal to True
      Then - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Entered chat string) Equal to -troll on
            AntiTrollUndead Equal to False
          Then - Actions
            Trigger - Turn on No_friendly_attacks_Undeads <gen>
            Set VariableSet AntiTrollUndead = True
            Sound - Play Warning <gen>
            Game - Display to UndeadPlayers the text: |cffff0000The anti-troll command has been activated. You can't hurt an ally. You will be able to deactivate the command only in 60 seconds.|r
            Trigger - Turn off (This trigger)
            Wait 60.00 seconds
            Trigger - Turn on (This trigger)
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Entered chat string) Equal to -troll off
            AntiTrollUndead Equal to True
          Then - Actions
            Trigger - Turn off No_friendly_attacks_Undeads <gen>
            Set VariableSet AntiTrollUndead = False
            Sound - Play Warning <gen>
            Game - Display to UndeadPlayers the text: |cffff0000The anti-troll command has been deactivated. It is possible to hurt an ally.|r
          Else - Actions
      Else - Actions
No friendly attacks Humans
  Events
    Unit - A unit Is attacked
  Conditions
    ((Attacked unit) belongs to an ally of (Owner of (Attacking unit)).) Equal to True
    ((Owner of (Attacking unit)) is in HumanPlayers.) Equal to True
    (Owner of (Attacked unit)) Not equal to (Owner of (Attacking unit))
  Actions
    Unit - Interrupt (Attacking unit)'s Attack
No friendly attacks Undeads
  Events
    Unit - A unit Is attacked
  Conditions
    ((Attacked unit) belongs to an ally of (Owner of (Attacking unit)).) Equal to True
    ((Owner of (Attacking unit)) is in UndeadPlayers.) Equal to True
    (Owner of (Attacked unit)) Not equal to (Owner of (Attacking unit))
  Actions
    Unit - Interrupt (Attacking unit)'s Attack
Player Leave
  Events
    Player - Player 1 (Red) leaves the game
    Player - Player 2 (Blue) leaves the game
    Player - Player 4 (Purple) leaves the game
    Player - Player 5 (Yellow) leaves the game
    Player - Player 6 (Orange) leaves the game
    Player - Player 9 (Gray) leaves the game
    Player - Player 10 (Light Blue) leaves the game
    Player - Player 11 (Dark Green) leaves the game
    Player - Player 12 (Brown) leaves the game
    Player - Player 19 (Mint) leaves the game
  Conditions
  Actions
    Sound - Play Warning <gen>
    Game - Grant shared vision and full shared unit control of (Triggering player) units with his/her allies
    Game - Display to (All players) the text: ((Name of (Triggering player)) + left the game!)
    Set VariableSet NumberOfPlayers = (NumberOfPlayers - 1)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        ((Triggering player) Equal to Player 11 (Dark Green)) or ((Triggering player) Equal to Player 12 (Brown))
        (Undead_command <gen> is on) Equal to False
        (Undead_command_Dwarf <gen> is on) Equal to False
      Then - Actions
        Trigger - Turn off Undead_Command_Activation <gen>
        Trigger - Turn on Undead_command <gen>
        Trigger - Turn on Undead_command_Dwarf <gen>
        Sound - Play Hint <gen>
        Game - Display to (All players) the text: |cff00ff00- HINT -|r The "-undead" command is activated sooner because a main zombie player has left!
      Else - Actions
Income Init
  Events
    Time - Elapsed game time is 1.00 seconds
  Conditions
  Actions
    For each (Integer A) from 0 to 23, do (Actions)
      Loop - Actions
        Player - Set Player[(Integer A)].Food used to 0
        Player - Set Player[(Integer A)].Food max to 1500
        Set VariableSet GroupUnits = (Units owned by Player[(Integer A)] matching (((Matching unit) is A structure) Equal to True).)
        Unit Group - Pick every unit in GroupUnits and do (Actions)
          Loop - Actions
            If (((Picked unit) has buff Devotion Aura (+200)) Equal to True) then do (Add 200 to Player[(Integer A)].Food used) else do (Do nothing)
            If (((Picked unit) has buff Devotion Aura (+250)) Equal to True) then do (Add 250 to Player[(Integer A)].Food used) else do (Do nothing)
            If (((Picked unit) has buff Devotion Aura (+350)) Equal to True) then do (Add 350 to Player[(Integer A)].Food used) else do (Do nothing)
            If (((Picked unit) has buff Devotion Aura (+500)) Equal to True) then do (Add 500 to Player[(Integer A)].Food used) else do (Do nothing)
            If (((Picked unit) has buff Devotion Aura (+600)) Equal to True) then do (Add 600 to Player[(Integer A)].Food used) else do (Do nothing)
            If (((Picked unit) has buff Devotion Aura (+750)) Equal to True) then do (Add 750 to Player[(Integer A)].Food used) else do (Do nothing)
            If (((Picked unit) has buff Devotion Aura (+800)) Equal to True) then do (Add 800 to Player[(Integer A)].Food used) else do (Do nothing)
            If (((Picked unit) has buff Devotion Aura (+1250)) Equal to True) then do (Add 1250 to Player[(Integer A)].Food used) else do (Do nothing)
        Player - Set Player[(Integer A)].Food max to (Player[(Integer A)] Food used)
        Custom script: call DestroyGroup(udg_GroupUnits)
Income
  Events
    Time - Every 180.00 seconds of game time
  Conditions
  Actions
    For each (Integer A) from 0 to 23, do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Player[(Integer A)] Food used) Greater than 0
          Then - Actions
            Player - Add (Player[(Integer A)] Food used) to Player[(Integer A)].Current gold
            Game - Display to (All players matching ((Matching player) Equal to Player[(Integer A)]).) the text: |cffffcc00You have received your regular income!|r
          Else - Actions
Income Undead Anti Bug
  Events
    Player - Player 11 (Dark Green)'s Food used becomes Less than 800.00
    Player - Player 12 (Brown)'s Food used becomes Less than 800.00
  Conditions
  Actions
    Player - Set (Triggering player).Food used to 800
    Player - Set (Triggering player).Food max to 1500
    Player - Set (Triggering player).Food max to ((Triggering player) Food used)
Alliance Dwarves and Humans
  Events
    Unit - A unit Finishes research
  Conditions
    ((Researched tech-type) Equal to R01G (techcode)) or ((Researched tech-type) Equal to R01H (techcode))
    (Current research level of R01G (techcode) for Player 6 (Orange)) Equal to 1
    (Current research level of R01H (techcode) for Player 1 (Red)) Equal to 1
  Actions
    Player Group - Add Player 6 (Orange) to HumanPlayers
    Player Group - Make HumanPlayers treat Player Group - Player 6 (Orange) as an Ally with shared vision
    Player Group - Make Player Group - Player 6 (Orange) treat HumanPlayers as an Ally with shared vision
    Sound - Play Hint <gen>
    Game - Display to (All players) the text: |cffff0000- WARNING -|r The dwarves are now allied with the human kingdom!
    For each (Integer A) from 0 to 11, do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Player[(Integer A)] slot status) Not equal to Is playing
          Then - Actions
            Game - Grant shared vision and full shared unit control of Player[(Integer A)] units with his/her allies
          Else - Actions
Easter egg Toby Skeleton
  Events
    Player - Player 1 (Red) Selects a unit
    Player - Player 2 (Blue) Selects a unit
    Player - Player 3 (Teal) Selects a unit
    Player - Player 4 (Purple) Selects a unit
    Player - Player 5 (Yellow) Selects a unit
    Player - Player 6 (Orange) Selects a unit
    Player - Player 7 (Green) Selects a unit
    Player - Player 8 (Pink) Selects a unit
    Player - Player 9 (Gray) Selects a unit
    Player - Player 10 (Light Blue) Selects a unit
    Player - Player 11 (Dark Green) Selects a unit
    Player - Player 12 (Brown) Selects a unit
    Player - Player 19 (Mint) Selects a unit
  Conditions
    (Triggering unit) Equal to Legendary Skeleton 0043 <gen>
  Actions
    Trigger - Turn off (This trigger)
    Set VariableSet TempInteger = (Random integer number between 1 and 5)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 1
      Then - Actions
        Floating Text - Create floating text that reads "You dare to disturb me in my grave ?!" above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 2
      Then - Actions
        Floating Text - Create floating text that reads "Please leave me in peace." above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 3
      Then - Actions
        Floating Text - Create floating text that reads "Your problems do not concern me." above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 4
      Then - Actions
        Floating Text - Create floating text that reads "I do not have to worry about this plague given my condition." above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 5
      Then - Actions
        Floating Text - Create floating text that reads "If you die, at least you might be with me!" above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    Wait 1.00 seconds
    Trigger - Turn on (This trigger)
Easter egg Arathorn Archimonde
  Events
    Player - Player 1 (Red) Selects a unit
    Player - Player 2 (Blue) Selects a unit
    Player - Player 3 (Teal) Selects a unit
    Player - Player 4 (Purple) Selects a unit
    Player - Player 5 (Yellow) Selects a unit
    Player - Player 6 (Orange) Selects a unit
    Player - Player 7 (Green) Selects a unit
    Player - Player 8 (Pink) Selects a unit
    Player - Player 9 (Gray) Selects a unit
    Player - Player 10 (Light Blue) Selects a unit
    Player - Player 11 (Dark Green) Selects a unit
    Player - Player 12 (Brown) Selects a unit
    Player - Player 19 (Mint) Selects a unit
  Conditions
    (Triggering unit) Equal to https://discord.gg/QpEMJJW | Arathorn_ToXiK#1663 0150 <gen>
  Actions
    Trigger - Turn off (This trigger)
    Set VariableSet TempInteger = (Random integer number between 1 and 5)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 1
      Then - Actions
        Floating Text - Create floating text that reads "Stay focused on the game!" above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 2
      Then - Actions
        Floating Text - Create floating text that reads "You can find me by the links in my name." above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 3
      Then - Actions
        Floating Text - Create floating text that reads "I am French if you ask ; )" above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 4
      Then - Actions
        Floating Text - Create floating text that reads "Don't hesitate to rate and leave a comment on Hive!" above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 5
      Then - Actions
        Floating Text - Create floating text that reads "I greatly improve this map." above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    Wait 1.00 seconds
    Trigger - Turn on (This trigger)
Easter egg Tent 01
  Events
    Player - Player 1 (Red) Selects a unit
    Player - Player 2 (Blue) Selects a unit
    Player - Player 3 (Teal) Selects a unit
    Player - Player 4 (Purple) Selects a unit
    Player - Player 5 (Yellow) Selects a unit
    Player - Player 6 (Orange) Selects a unit
    Player - Player 7 (Green) Selects a unit
    Player - Player 8 (Pink) Selects a unit
    Player - Player 9 (Gray) Selects a unit
    Player - Player 10 (Light Blue) Selects a unit
    Player - Player 11 (Dark Green) Selects a unit
    Player - Player 12 (Brown) Selects a unit
    Player - Player 19 (Mint) Selects a unit
  Conditions
    (Triggering unit) Equal to Tent 0209 <gen>
  Actions
    Trigger - Turn off (This trigger)
    Set VariableSet Point = (Position of (Triggering unit))
    Special Effect - Create a special effect at Point using war3mapImported\Fallinlove.mdx
    Set VariableSet LoveSpecialEffect = (Last created special effect)
    Special Effect - Set Height of LoveSpecialEffect to: 120.00
    Set VariableSet TempInteger = (Random integer number between 1 and 5)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 1
      Then - Actions
        Floating Text - Create floating text that reads "Yes! Yes! Yes!" at Point with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 2
      Then - Actions
        Floating Text - Create floating text that reads "Faster! Stronger! Deeper!" at Point with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 3
      Then - Actions
        Floating Text - Create floating text that reads "OooOOooOohhHhhhHhH" at Point with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 4
      Then - Actions
        Floating Text - Create floating text that reads Hihihihihihihi! at Point with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 5
      Then - Actions
        Floating Text - Create floating text that reads "I love you..." at Point with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    Custom script: call RemoveLocation(udg_Point)
    Wait 1.00 seconds
    Special Effect - Destroy LoveSpecialEffect
    Trigger - Turn on (This trigger)
Easter egg Tent 02
  Events
    Unit - Tent 0209 <gen> Dies
  Conditions
  Actions
    Set VariableSet Point = (Center of Easter_egg_Tent_Woman <gen>)
    Unit - Create 1.Villager (Female) for Neutral Passive at Point facing 300.00 degrees
    Unit - Pause (Last created unit)
    Unit - Make (Last created unit) Invulnerable
    Set VariableSet EasterEggTentWoman = (Last created unit)
    Custom script: call RemoveLocation(udg_Point)
    Set VariableSet Point = (Center of Easter_egg_Tent_Man <gen>)
    Unit - Create 1.Villager (Male) for Neutral Passive at Point facing 120.00 degrees
    Unit - Pause (Last created unit)
    Unit - Make (Last created unit) Invulnerable
    Set VariableSet EasterEggTentMan = (Last created unit)
    Custom script: call RemoveLocation(udg_Point)
    Wait 1.00 seconds
    Floating Text - Create floating text that reads "..." above EasterEggTentMan with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
    Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
    Floating Text - Change (Last created floating text): Disable permanence
    Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
    Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
    Wait 2.00 seconds
    Floating Text - Create floating text that reads "..." above EasterEggTentWoman with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
    Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
    Floating Text - Change (Last created floating text): Disable permanence
    Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
    Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
    Wait 2.00 seconds
    Floating Text - Create floating text that reads "It's not what you think!" above EasterEggTentMan with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
    Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
    Floating Text - Change (Last created floating text): Disable permanence
    Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
    Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
    Wait 2.00 seconds
    Floating Text - Create floating text that reads "Please ignore us..." above EasterEggTentWoman with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
    Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
    Floating Text - Change (Last created floating text): Disable permanence
    Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
    Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
    Wait 1.00 seconds
    Unit - Unpause EasterEggTentMan
    Unit - Unpause EasterEggTentWoman
    Unit - Make EasterEggTentMan Vulnerable
    Unit - Make EasterEggTentWoman Vulnerable
Timmy Movement
  Events
    Time - Every 20.00 seconds of game time
  Conditions
    (Timmy 0007 <gen> is alive) Equal to True
  Actions
    Set VariableSet Integer = (Random integer number between 1 and 6)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        Integer Equal to 1
      Then - Actions
        Set VariableSet Point = (Center of Timmy_01 <gen>)
        Unit - Order Timmy 0007 <gen> to Move To.Point
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        Integer Equal to 2
      Then - Actions
        Set VariableSet Point = (Center of Timmy_02 <gen>)
        Unit - Order Timmy 0007 <gen> to Move To.Point
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        Integer Equal to 3
      Then - Actions
        Set VariableSet Point = (Center of Timmy_03 <gen>)
        Unit - Order Timmy 0007 <gen> to Move To.Point
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        Integer Equal to 4
      Then - Actions
        Set VariableSet Point = (Center of Timmy_04 <gen>)
        Unit - Order Timmy 0007 <gen> to Move To.Point
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        Integer Equal to 5
      Then - Actions
        Set VariableSet Point = (Center of Timmy_05 <gen>)
        Unit - Order Timmy 0007 <gen> to Move To.Point
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        Integer Equal to 6
      Then - Actions
        Set VariableSet Point = (Center of Timmy_06 <gen>)
        Unit - Order Timmy 0007 <gen> to Move To.Point
      Else - Actions
    Custom script: call RemoveLocation(udg_Point)
Timmy protected from humans
  Events
    Unit - Timmy 0007 <gen> Is attacked
  Conditions
  Actions
    Unit - Interrupt (Attacking unit)'s Attack
    Floating Text - Create floating text that reads "Careful! You almost hit me!" above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
    Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
    Floating Text - Change (Last created floating text): Disable permanence
    Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
    Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
Timmy voice lines
  Events
    Player - Player 1 (Red) Selects a unit
    Player - Player 2 (Blue) Selects a unit
    Player - Player 3 (Teal) Selects a unit
    Player - Player 4 (Purple) Selects a unit
    Player - Player 5 (Yellow) Selects a unit
    Player - Player 6 (Orange) Selects a unit
    Player - Player 7 (Green) Selects a unit
    Player - Player 8 (Pink) Selects a unit
    Player - Player 9 (Gray) Selects a unit
    Player - Player 10 (Light Blue) Selects a unit
    Player - Player 11 (Dark Green) Selects a unit
    Player - Player 12 (Brown) Selects a unit
    Player - Player 19 (Mint) Selects a unit
  Conditions
    (Triggering unit) Equal to Timmy 0007 <gen>
  Actions
    Trigger - Turn off (This trigger)
    Set VariableSet TempInteger = (Random integer number between 1 and 5)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 1
      Then - Actions
        Floating Text - Create floating text that reads "My mom told me to wait here." above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 2
      Then - Actions
        Floating Text - Create floating text that reads "Did you see my mom?" above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 3
      Then - Actions
        Floating Text - Create floating text that reads "My mom told me not to talk to strangers." above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 4
      Then - Actions
        Floating Text - Create floating text that reads "One day I pooped in the forest east of the kingdom." above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TempInteger Equal to 5
      Then - Actions
        Floating Text - Create floating text that reads "I think my father sells things in the forest east of the kingdom." above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      Else - Actions
    Wait 1.00 seconds
    Trigger - Turn on (This trigger)
Timmy dies
  Events
    Unit - Timmy 0007 <gen> Dies
  Conditions
  Actions
    Trigger - Turn off Timmy_Movement <gen>
    Set VariableSet Point = (Position of (Triggering unit))
    If (ZombieEvolution Equal to 1) then do (Create 1.Zombie for (Owner of (Killing unit)) at Point facing Default building facing degrees) else do (Do nothing)
    If (ZombieEvolution Equal to 2) then do (Create 1.Mutant Zombie for (Owner of (Killing unit)) at Point facing Default building facing degrees) else do (Do nothing)
    If (ZombieEvolution Equal to 3) then do (Create 1.Crazy Ghoul for (Owner of (Killing unit)) at Point facing Default building facing degrees) else do (Do nothing)
    If (ZombieEvolution Equal to 4) then do (Create 1.Abomination for (Owner of (Killing unit)) at Point facing Default building facing degrees) else do (Do nothing)
    If (ZombieEvolution Equal to 5) then do (Create 1.Mutant for (Owner of (Killing unit)) at Point facing Default building facing degrees) else do (Do nothing)
    Unit - Set Name of (Last created unit) to Timmy
    Custom script: call RemoveLocation(udg_Point)
Five minutes remaining
  Events
    Time - DarkGuards_Timer expires
  Conditions
  Actions
    Player - Set the current research level of R01C (techcode) to 1 for Player 6 (Orange)
    Player - Set the current research level of R01C (techcode) to 1 for Player 11 (Dark Green)
    Player - Set the current research level of R01C (techcode) to 1 for Player 12 (Brown)
    Sound - Play Warning <gen>
    Game - Display to (All players) the text: |cffff0000Dark Guards can now be trained in Corpse Storages!|r
Dragon dies
  Events
    Unit - A unit Dies
  Conditions
    (Unit-type of (Triggering unit)) Equal to Last of the Dragons
  Actions
    Animation - Change (Triggering unit)'s animation speed to 30.00% of its original speed
    Wait 5.00 seconds
    Unit - Remove (Triggering unit) from the game
Necromancer dies
  Events
    Unit - A unit Dies
  Conditions
    (Unit-type of (Triggering unit)) Equal to Powerful Necromancer
  Actions
    Set VariableSet Point = (Position of (Triggering unit))
    Special Effect - Create a special effect at Point using war3mapImported\Soul Discharge Purple.mdx
    Special Effect - Set Scale of (Last created special effect) to 2.00
    Special Effect - Destroy (Last created special effect)
    Custom script: call RemoveLocation(udg_Point)
    Wait 5.00 seconds
    Unit - Remove (Triggering unit) from the game
Dawnfall Train
  Events
    Unit - A unit Finishes training a unit
  Conditions
    (Unit-type of (Trained unit)) Equal to Dawnfall Warrior
  Actions
    Player - Limit training of Dawnfall Warrior to 10 for (Owner of (Triggering unit))
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        DawnfallAlive Greater than or equal to 11
      Then - Actions
        Unit - Remove (Trained unit) from the game
        Player - Add 500 to (Owner of (Triggering unit)).Current gold
        Game - Display to (All players matching ((Matching player) Equal to (Owner of (Triggering unit))).) the text: |cffffcc00- WARNING -|r You can't recruit more than 10 |cff00ff00Dawnfall Warrior|r ! The unit has been removed and your gold refunded.
        Player - Limit training of Dawnfall Warrior to 10 for (Owner of (Triggering unit))
      Else - Actions
        Set VariableSet DawnfallAlive = (DawnfallAlive + 1)
Dawnfall Death
  Events
    Unit - A unit Dies
  Conditions
    Or - Any (Conditions) are true
      Conditions
        (Unit-type of (Triggering unit)) Equal to Dawnfall Warrior
        (Unit-type of (Triggering unit)) Equal to Dawnfall Ranger
  Actions
    Set VariableSet DawnfallAlive = (DawnfallAlive - 1)
    Player - Limit training of Dawnfall Warrior to 10 for (Owner of (Triggering unit))
Musketeer Train
  Events
    Unit - A unit Finishes training a unit
  Conditions
    (Unit-type of (Trained unit)) Equal to Privateer
  Actions
    Player - Limit training of Privateer to 30 for (Owner of (Triggering unit))
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        MusketeerAlive Greater than or equal to 30
      Then - Actions
        Unit - Remove (Trained unit) from the game
        Player - Add 500 to (Owner of (Triggering unit)).Current gold
        Game - Display to (All players matching ((Matching player) Equal to (Owner of (Triggering unit))).) the text: |cffffcc00- WARNING -|r You can't recruit more than 30 |cff00ff00Musketeer|r ! The unit has been removed and your gold refunded.
        Player - Set the max research level of R00O (techcode) to 0 for (Owner of (Triggering unit))
      Else - Actions
        Set VariableSet MusketeerAlive = (MusketeerAlive + 1)
Musketeer Death
  Events
    Unit - A unit Dies
  Conditions
    Or - Any (Conditions) are true
      Conditions
        (Unit-type of (Triggering unit)) Equal to Privateer
        (Unit-type of (Triggering unit)) Equal to Privateer (melee)
  Actions
    Set VariableSet MusketeerAlive = (MusketeerAlive - 1)
    Player - Limit training of Privateer to 30 for (Owner of (Triggering unit))
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        MusketeerAlive Less than or equal to 20
      Then - Actions
        Player - Set the max research level of R00O (techcode) to 10 for (Owner of (Triggering unit))
        Player - Set the current research level of R00O (techcode) to ((Current research level of R00O (techcode) for (Owner of (Triggering unit))) - 1) for (Owner of (Triggering unit))
      Else - Actions
Human Village destroyed
  Events
    Unit - A unit owned by Player 22 (Snow).Dies
  Conditions
  Actions
    Wait 2.00 seconds
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        (Number of units in (Units in Human_Village <gen> matching (((Owner of (Matching unit)) Equal to Player 22 (Snow)) and (((Matching unit) is alive) Equal to True)))) Equal to 0
      Then - Actions
        Trigger - Turn off (This trigger)
        Environment - Remove RayOfLight
        Animation - Play the show (animationname) animation for all doodads of type YOtf (doodadcode) within Human_Village <gen>.
      Else - Actions
Protector Resurrection
  Events
    Time - Every 1.00 seconds of game time
  Conditions
    Or - Any (Conditions) are true
      Conditions
        (BookOfLight is in Dawnfall_Altar <gen>) Equal to True
        ((Random item in Dawnfall_Altar <gen> matching ((Item-type of (Matching item)) Equal to |cffffff00Book of Light|r)) is in Dawnfall_Altar <gen>) Equal to True
  Actions
    Set VariableSet Integer = (Hero level of Protector_Ghost)
    Set VariableSet Point = (Center of Dawnfall_Altar <gen>)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        Integer Greater than or equal to 6
      Then - Actions
        Trigger - Turn off (This trigger)
        Item - Remove BookOfLight
        Unit - Remove Protector_Ghost from the game
        Unit - Create 1.Protector of the Kingdom for Player 9 (Gray) at Point facing 135.00 degrees
        Set VariableSet Protector = (Last created unit)
        Hero - Set (Last created unit) Hero-level to Integer, Hide level-up graphics
        Special Effect - Create a special effect attached to the origin (attachpoint) of (Last created unit) using Abilities\Spells\Human\Resurrect\ResurrectCaster.mdl
        Special Effect - Destroy (Last created special effect)
        Sound - Play HolyBolt <gen>
        Game - Display to (All players) the text: Tyrial Dawnstar, the protector of Teredar, has been resurrected!
        Animation - Reset Dawnfall Altar 0941 <gen>'s animation
        Trigger - Add to Protector_dies <gen> the event (Protector Dies)
      Else - Actions
        Floating Text - Create floating text that reads "The Ghost of Tyrial must be at least level 6..." at Point with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
        Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
        Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
    Custom script: call RemoveLocation(udg_Point)
Night Eyes
  Events
    Unit - Worgen Blade Dancer 0158 <gen> Dies
  Conditions
  Actions
    Set VariableSet Point = (Position of (Triggering unit))
    Unit - Change ownership of Death Knight 0642 <gen> to Player 12 (Brown) and Change color
    Unit - Move Death Knight 0642 <gen> instantly to Point, facing 270.00 degrees
    Custom script: call RemoveLocation(udg_Point)
    Set VariableSet Point = (Center of Rise_of_the_Death_hounds <gen>)
    Unit - Create 6.Death Hound for Player 12 (Brown) at Point facing 270.00 degrees
    Custom script: call RemoveLocation(udg_Point)
    Game - Display to (All players) for 20.00 seconds the text: Night Eyes the worgen has fallen and has been Resurrected as |cffff0000Death Eyes|r; he is coming to hunt in the human lands. Also a few Death Hounds have been made from the Worgen's fallen brothers.
Undead orc Hero
  Events
    Unit - Clan Leader 0082 <gen> Dies
  Conditions
  Actions
    Set VariableSet Point = (Position of (Triggering unit))
    Special Effect - Create a special effect at Point using Abilities\Spells\Undead\DarkRitual\DarkRitualTarget.mdl
    Special Effect - Destroy (Last created special effect)
    Unit - Create 1.Undead Clan Leader (undead) for Player 11 (Dark Green) at Point facing Default building facing degrees
    Game - Display to (All players) for 20.00 seconds the text: |cffff0000Rakkash the Slaughterer|r has been slain. The undeads ressurected him at their services!
    Custom script: call RemoveLocation(udg_Point)
    Set VariableSet Point = (Center of Necromancer_Cave_Back <gen>)
    Unit - Create 4.Skeletal Orc Grunt for Player 11 (Dark Green) at Point facing (Random angle) degrees
    Custom script: call RemoveLocation(udg_Point)
    Set VariableSet Point = (Center of Necromancer_Cave_Back <gen>)
    Unit - Create 4.Skeletal Orc for Player 11 (Dark Green) at Point facing (Random angle) degrees
    Custom script: call RemoveLocation(udg_Point)
    Set VariableSet Point = (Center of Necromancer_Cave_Back <gen>)
    Unit - Create 4.Skeletal Berserker for Player 11 (Dark Green) at Point facing (Random angle) degrees
    Custom script: call RemoveLocation(udg_Point)
Aslyr Sword Turn on
  Events
    Unit - A unit owned by Player 9 (Gray).Gains a level
  Conditions
    (Hero level of (Triggering unit)) Equal to 10
  Actions
    Trigger - Turn off (This trigger)
    Neutral Building - Enable Way Gate 0139 <gen>
    Neutral Building - Enable Way Gate 0145 <gen>
    Unit - Unhide Way Gate 0139 <gen>
    Unit - Unhide Way Gate 0145 <gen>
    Game - Display to Player Group - Player 9 (Gray) the text: |cff0000ffYou can now reach the sword "Aslyr" by the beach in your base !|r
Aslyr Sword can be taken
  Events
    Unit - Ice Revenant 0117 <gen> Dies
    Unit - Frost Revenant 0118 <gen> Dies
    Unit - Frost Revenant 0125 <gen> Dies
  Conditions
    (Ice Revenant 0117 <gen> is dead) Equal to True
    (Frost Revenant 0118 <gen> is dead) Equal to True
    (Frost Revenant 0125 <gen> is dead) Equal to True
  Actions
    Destructible - Kill Arcane Wrath 0417 <gen>
    Destructible - Kill Arcane Wrath 0416 <gen>
Aslyr Sword Taken
  Events
    Unit - A unit Acquires an item
  Conditions
    (Owner of (Triggering unit)) Equal to Player 9 (Gray)
    (Item being manipulated) Equal to gg_item_I001_0015
  Actions
    Animation - Play the show (animationname) animation for all doodads of type D01I (doodadcode) within (Playable map area).
    Animation - Play the stand second (animationname) animation for all doodads of type D01I (doodadcode) within (Playable map area).
    Cinematic - Send transmission to (All players) from (Triggering unit) named (Proper name of (Triggering unit)): Play H09Arthas16 <gen> and display I would gladly bear any curse to save my homeland.. Modify duration: Set to 5.00 seconds and Don't wait
    Special Effect - Create a special effect attached to the origin (attachpoint) of (Triggering unit) using war3mapImported\Soul Beam Blue.mdx
    Special Effect - Destroy (Last created special effect)
    Sound - Play HolyBolt <gen> at 100% volume, attached to (Triggering unit)
    Special Effect - Create a special effect attached to the chest (attachpoint) of (Triggering unit) using war3mapImported\Cosmic Wings.mdx
    Trigger - Turn off (This trigger)
    Neutral Building - Disable Way Gate 0145 <gen>
    Unit - Hide Way Gate 0145 <gen>
    Game - Display to (All players) the text: ((Name of (Owner of (Triggering unit))) + ( took the legendary sword + ((Name of gg_item_I001_0015) + !)))
Portal Research Begins
  Events
    Unit - A unit Begins research
  Conditions
    (Researched tech-type) Equal to R01I (techcode)
  Actions
    If ((Owner of (Triggering unit)) Equal to Player 1 (Red)) then do (Set the max research level of R01I (techcode) to 0 for Player 2 (Blue)) else do (Do nothing)
    If ((Owner of (Triggering unit)) Equal to Player 2 (Blue)) then do (Set the max research level of R01I (techcode) to 0 for Player 1 (Red)) else do (Do nothing)
Portal Research Cancel
  Events
    Unit - A unit Cancels research
  Conditions
    (Researched tech-type) Equal to R01I (techcode)
  Actions
    Player - Set the max research level of R01I (techcode) to 1 for Player 1 (Red)
    Player - Set the max research level of R01I (techcode) to 1 for Player 2 (Blue)
Portal Research End
  Events
    Unit - A unit Finishes research
  Conditions
    (Researched tech-type) Equal to R01I (techcode)
  Actions
    Player - Set the max research level of R01I (techcode) to 1 for Player 1 (Red)
    Player - Set the max research level of R01I (techcode) to 1 for Player 2 (Blue)
    Player - Set the current research level of R01I (techcode) to 1 for Player 1 (Red)
    Player - Set the current research level of R01I (techcode) to 1 for Player 2 (Blue)
    Unit - Unhide Circle of Power 0265 <gen>
    Unit - Unhide Circle of Power 0288 <gen>
    Game - Display to (All players) the text: (|cffff0000 + ((Name of Player 1 (Red)) + (|r + ( |cff00ff00et|r + (|cff0000ff + ((Name of Player 2 (Blue)) + (|r + |cff00ff00can now begin the spell to close the portal. For this the red and blue player must have a hero on the power circle of their base.|r)))))))
    Trigger - Turn on Portal_Spell <gen>
Portal Spell
  Events
    Time - Every 1.00 seconds of game time
  Conditions
    And - All (Conditions) are true
      Conditions
        Or - Any (Conditions) are true
          Conditions
            (Number of units in (Units in Close_Portal_Red <gen> matching ((((Matching unit) is A Hero) Equal to True) and ((Owner of (Matching unit)) Equal to Player 1 (Red))))) Equal to 1
            (Number of units in (Units in Close_Portal_Red <gen> matching ((((Matching unit) is A Hero) Equal to True) and ((Owner of (Matching unit)) Equal to Player 8 (Pink))))) Equal to 1
        Or - Any (Conditions) are true
          Conditions
            (Number of units in (Units in Close_Portal_Blue <gen> matching ((((Matching unit) is A Hero) Equal to True) and ((Owner of (Matching unit)) Equal to Player 2 (Blue))))) Equal to 1
            (Number of units in (Units in Close_Portal_Blue <gen> matching ((((Matching unit) is A Hero) Equal to True) and ((Owner of (Matching unit)) Equal to Player 8 (Pink))))) Equal to 1
  Actions
    Trigger - Turn off (This trigger)
    Game - Display to (All players) the text: |cff00ff00The spell to destroy the portal has begun! Protect the heroes who make it or the portal will be open forever!|r
    Trigger - Turn on Portal_Heroes_dies <gen>
    Trigger - Turn on Portal_Destroy <gen>
    Set VariableSet GroupUnits = (Units in Close_Portal_Red <gen> matching ((((Matching unit) is A Hero) Equal to True) and ((Owner of (Matching unit)) Equal to Player 1 (Red))))
    Unit Group - Pick every unit in GroupUnits and do (Actions)
      Loop - Actions
        Unit - Move (Picked unit) instantly to (Center of Portal_Red <gen>), facing 180.00 degrees
        Unit - Pause (Picked unit)
        Set VariableSet RedUnitPortalDestroy = (Picked unit)
    Custom script: call DestroyGroup(udg_GroupUnits)
    Set VariableSet GroupUnits = (Units in Close_Portal_Red <gen> matching ((((Matching unit) is A Hero) Equal to True) and ((Owner of (Matching unit)) Equal to Player 8 (Pink))))
    Unit Group - Pick every unit in GroupUnits and do (Actions)
      Loop - Actions
        Unit - Move (Picked unit) instantly to (Center of Portal_Red <gen>), facing 180.00 degrees
        Unit - Pause (Picked unit)
        Set VariableSet RedUnitPortalDestroy = (Picked unit)
    Custom script: call DestroyGroup(udg_GroupUnits)
    Set VariableSet GroupUnits = (Units in Close_Portal_Blue <gen> matching ((((Matching unit) is A Hero) Equal to True) and ((Owner of (Matching unit)) Equal to Player 2 (Blue))))
    Unit Group - Pick every unit in GroupUnits and do (Actions)
      Loop - Actions
        Unit - Move (Picked unit) instantly to (Center of Portal_Blue <gen>), facing 180.00 degrees
        Unit - Pause (Picked unit)
        Set VariableSet BlueUnitPortalDestroy = (Picked unit)
    Custom script: call DestroyGroup(udg_GroupUnits)
    Set VariableSet GroupUnits = (Units in Close_Portal_Blue <gen> matching ((((Matching unit) is A Hero) Equal to True) and ((Owner of (Matching unit)) Equal to Player 8 (Pink))))
    Unit Group - Pick every unit in GroupUnits and do (Actions)
      Loop - Actions
        Unit - Move (Picked unit) instantly to (Center of Portal_Blue <gen>), facing 180.00 degrees
        Unit - Pause (Picked unit)
        Set VariableSet BlueUnitPortalDestroy = (Picked unit)
    Custom script: call DestroyGroup(udg_GroupUnits)
    Countdown Timer - Start PortalDestroy as a One-shot timer that will expire in 120.00 seconds
    Set VariableSet PortalDestroy = (Last started timer)
    Countdown Timer - Create a timer window for PortalDestroy with title Portal Destruction
    Set VariableSet PortalDestroyWindow = (Last created timer window)
    Countdown Timer - Show PortalDestroyWindow
    Set VariableSet PortalsAreClosing = True
    For each (Integer A) from 0 to 59, do (Actions)
      Loop - Actions
        Animation - Play BlueUnitPortalDestroy's spell (animationname) animation
        Animation - Play RedUnitPortalDestroy's spell (animationname) animation
        Wait 2 seconds
Portal Heroes dies
  Events
    Unit - A unit Dies
  Conditions
    ((Triggering unit) Equal to BlueUnitPortalDestroy) or ((Triggering unit) Equal to RedUnitPortalDestroy)
  Actions
    Trigger - Turn off (This trigger)
    Trigger - Turn off Portal_Spell <gen>
    Trigger - Turn off Portal_Destroy <gen>
    Game - Display to (All players) the text: |cffff0000One of the heroes doing the spell to close the portal is dead! The portal will remain open forever!|r
    Countdown Timer - Pause PortalDestroy
    Countdown Timer - Destroy PortalDestroyWindow
    Unit - Unpause BlueUnitPortalDestroy
    Unit - Unpause RedUnitPortalDestroy
    Unit - Remove Circle of Power 0288 <gen> from the game
    Unit - Remove Circle of Power 0265 <gen> from the game
    Set VariableSet PortalsAreClosing = False
Portal Destroy
  Events
    Time - PortalDestroy expires
  Conditions
  Actions
    Trigger - Turn off (This trigger)
    Trigger - Turn off Portal_Spell <gen>
    Trigger - Turn off Portal_Heroes_dies <gen>
    Countdown Timer - Destroy PortalDestroyWindow
    Game - Display to (All players) the text: |cff00ff00The portal between Blue and Red has been destroyed!|r
    Animation - Change Way Gate 0151 <gen>'s animation speed to 50.00% of its original speed
    Animation - Change Way Gate 0208 <gen>'s animation speed to 50.00% of its original speed
    Unit - Unpause BlueUnitPortalDestroy
    Animation - Reset BlueUnitPortalDestroy's animation
    Unit - Unpause RedUnitPortalDestroy
    Animation - Reset RedUnitPortalDestroy's animation
    Unit - Kill Way Gate 0208 <gen>
    Unit - Kill Way Gate 0151 <gen>
    Unit - Remove Circle of Power 0288 <gen> from the game
    Unit - Remove Circle of Power 0265 <gen> from the game
    Set VariableSet BlueUnitPortalDestroy = No unit
    Set VariableSet RedUnitPortalDestroy = No unit
    Set VariableSet PortalsAreClosing = False
Bridges Red
  Events
    Unit - A unit Finishes research
  Conditions
    ((Researched tech-type) Equal to R017 (techcode)) and ((Owner of (Triggering unit)) Equal to Player 1 (Red))
  Actions
    Destructible - Kill Long Wooden Bridge 0002 <gen>
    Set VariableSet GroupUnits = (Units in Red_Bridge_West <gen>)
    Unit Group - Pick every unit in GroupUnits and do (Kill (Picked unit))
    Custom script: call DestroyGroup(udg_GroupUnits)
    Destructible - Kill Wide Wooden Bridge 0059 <gen>
    Set VariableSet GroupUnits = (Units in Red_Bridge_East <gen>)
    Unit Group - Pick every unit in GroupUnits and do (Kill (Picked unit))
    Custom script: call DestroyGroup(udg_GroupUnits)
    Destructible - Kill Wide Wooden Bridge 5946 <gen>
    Set VariableSet GroupUnits = (Units in Red_Bridge_North_East_1 <gen>)
    Unit Group - Pick every unit in GroupUnits and do (Kill (Picked unit))
    Custom script: call DestroyGroup(udg_GroupUnits)
    Set VariableSet GroupUnits = (Units in Red_Bridge_North_East_2 <gen>)
    Unit Group - Pick every unit in GroupUnits and do (Kill (Picked unit))
    Custom script: call DestroyGroup(udg_GroupUnits)
Abandonned Church Anti Glitch
  Events
    Unit - A unit enters Abandonned_Chapel <gen>
  Conditions
    (((Owner of (Triggering unit)) is in HumanPlayers.) Equal to True) or (((Owner of (Triggering unit)) is in UndeadPlayers.) Equal to True)
  Actions
    Unit - Remove (Triggering unit) from the game
    Game - Display to (All players) for 10.00 seconds the text: ((Name of (Owner of (Triggering unit))) + tried to glitch the "Abandonned Church Quest". The unit who enters in the zone is removed and this is a warning to every player.)
    For each (Integer A) from 0 to 23, do (Actions)
      Loop - Actions
        Visibility - Create an initially Enabled visibility modifier for Player[(Integer A)] emitting Black mask across Abandonned_Chapel <gen>
Abandonned Church Open
  Events
    Unit - A unit enters Activate_Corrupted_Church_Quest <gen>
  Conditions
    ((Triggering unit) is A Hero) Equal to True
  Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        ((Owner of (Triggering unit)) is in HumanPlayers.) Equal to True
        (Owner of (Triggering unit)) Equal to Player 5 (Yellow)
      Then - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Hero level of (Triggering unit)) Less than 3
          Then - Actions
            Floating Text - Create floating text that reads "I must be level 3 to understand the ritual in the book." above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
            Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
            Floating Text - Change (Last created floating text): Disable permanence
            Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
            Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
          Else - Actions
            Trigger - Turn off (This trigger)
            Unit - Make (Triggering unit) Invulnerable
            Special Effect - Create a special effect attached to the origin (attachpoint) of (Triggering unit) using Abilities\Spells\Human\DivineShield\DivineShieldTarget.mdl
            Set VariableSet InvuShieldSpecialEffect = (Last created special effect)
            Set VariableSet Point = (Center of Abandonned_Church_Channel <gen>)
            Unit - Move (Triggering unit) instantly to Point, facing 45.00 degrees
            Custom script: call RemoveLocation(udg_Point)
            Unit - Pause (Triggering unit)
            Floating Text - Create floating text that reads "By the Light! It's time to start the incantation!" above (Triggering unit) with Z offset 0, using font size 8.00, color (100%, 100%, 100%), and 0% transparency
            Floating Text - Set the velocity of (Last created floating text) to 64 towards 90 degrees
            Floating Text - Change (Last created floating text): Disable permanence
            Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
            Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
            Wait 2 seconds
            Animation - Play (Triggering unit)'s spell (animationname) animation
            Sound - Play HolyBolt <gen> at 50.00% volume, attached to (Triggering unit)
            Special Effect - Create a special effect attached to the origin (attachpoint) of Passage 0665 <gen> using Abilities\Spells\Other\Charm\CharmTarget.mdl
            Special Effect - Destroy (Last created special effect)
            Special Effect - Create a special effect attached to the origin (attachpoint) of (Triggering unit) using Abilities\Spells\Human\HolyBolt\HolyBoltSpecialArt.mdl
            Special Effect - Destroy (Last created special effect)
            Wait 2 seconds
            Animation - Play (Triggering unit)'s spell (animationname) animation
            Sound - Play HolyBolt <gen> at 50.00% volume, attached to (Triggering unit)
            Special Effect - Create a special effect attached to the origin (attachpoint) of Passage 0665 <gen> using Abilities\Spells\Other\Charm\CharmTarget.mdl
            Special Effect - Destroy (Last created special effect)
            Special Effect - Create a special effect attached to the origin (attachpoint) of (Triggering unit) using Abilities\Spells\Human\HolyBolt\HolyBoltSpecialArt.mdl
            Special Effect - Destroy (Last created special effect)
            Wait 2 seconds
            Animation - Play (Triggering unit)'s spell (animationname) animation
            Sound - Play HolyBolt <gen> at 50.00% volume, attached to (Triggering unit)
            Special Effect - Create a special effect attached to the origin (attachpoint) of Passage 0665 <gen> using Abilities\Spells\Other\Charm\CharmTarget.mdl
            Special Effect - Destroy (Last created special effect)
            Special Effect - Create a special effect attached to the origin (attachpoint) of (Triggering unit) using Abilities\Spells\Human\HolyBolt\HolyBoltSpecialArt.mdl
            Special Effect - Destroy (Last created special effect)
            Wait 2 seconds
            Animation - Play (Triggering unit)'s spell (animationname) animation
            Sound - Play HolyBolt <gen> at 50.00% volume, attached to (Triggering unit)
            Special Effect - Create a special effect attached to the origin (attachpoint) of Passage 0665 <gen> using Abilities\Spells\Other\Charm\CharmTarget.mdl
            Special Effect - Destroy (Last created special effect)
            Special Effect - Create a special effect attached to the origin (attachpoint) of (Triggering unit) using Abilities\Spells\Human\HolyBolt\HolyBoltSpecialArt.mdl
            Special Effect - Destroy (Last created special effect)
            Wait 2 seconds
            Animation - Play (Triggering unit)'s spell (animationname) animation
            Sound - Play HolyBolt <gen> at 50.00% volume, attached to (Triggering unit)
            Special Effect - Create a special effect attached to the origin (attachpoint) of Passage 0665 <gen> using Abilities\Spells\Other\Charm\CharmTarget.mdl
            Special Effect - Destroy (Last created special effect)
            Special Effect - Create a special effect attached to the origin (attachpoint) of (Triggering unit) using Abilities\Spells\Human\HolyBolt\HolyBoltSpecialArt.mdl
            Special Effect - Destroy (Last created special effect)
            Wait 2 seconds
            Animation - Play the stand second (animationname) animation for all doodads of type D02P (doodadcode) within Uther_Statue <gen>.
            Animation - Play the hide (animationname) animation for all doodads of type JOgr (doodadcode) within Uther_Statue <gen>.
            Trigger - Turn off Abandonned_Church_Anti_Glitch <gen>
            Trigger - Turn on Abandonned_Church_Boss <gen>
            Unit - Unpause (Triggering unit)
            Animation - Reset (Triggering unit)'s animation
            Unit - Make (Triggering unit) Vulnerable
            Special Effect - Destroy InvuShieldSpecialEffect
            Set VariableSet Point = (Position of Passage 0665 <gen>)
            Cinematic - Ping minimap for (All players) at Point for 3.00 seconds
            Custom script: call RemoveLocation(udg_Point)
            Animation - Play the death alternate (animationname) animation for all doodads of type D01B (doodadcode) within 300.00 of (Center of Abandonned_Chapel_Exterior <gen>).
            Animation - Play the death alternate (animationname) animation for all doodads of type D01B (doodadcode) within 300.00 of (Center of Abandonned_Chapel_Interior <gen>).
            Neutral Building - Enable Passage 0665 <gen>
            Neutral Building - Enable Passage 0074 <gen>
            Sound - Play Hint <gen>
            Game - Display to (All players) for 15.00 seconds the text: |cffffff00The abandonned church has been reopened! And an evil soul with it!|r
      Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Triggering unit) Equal to Powerful Necromancer 1139 <gen>
          Then - Actions
            Trigger - Turn off (This trigger)
            Unit - Make (Triggering unit) Invulnerable
            Special Effect - Create a special effect attached to the origin (attachpoint) of (Triggering unit) using Abilities\Spells\Undead\Unsummon\UnsummonTarget.mdl
            Set VariableSet InvuShieldSpecialEffect = (Last created special effect)
            Set VariableSet Point = (Center of Abandonned_Church_Channel <gen>)
            Unit - Move (Triggering unit) instantly to Point, facing 45.00 degrees
            Custom script: call RemoveLocation(udg_Point)
            Unit - Pause (Triggering unit)
            Floating Text - Create floating text that reads "I will c