HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

Triggers 1.20e

10-02-2006, 08:50 PM#1
Panto
Herein are all of the triggers from the Pantokrator Footman Wars map, version TFT 1.20e. The first post is an index, and each following post is a GUI or Jass trigger in entirety. This is a huge thread, and because of that, comments on triggers should be made in new threads. This thread is closed, but feel free to make a New Topic on a trigger about which you have a question or comment, or hijack someone else's thread.

Initialization
Victory/Defeat/Leavers
Spawner
Leaderboard
Tactics/AI
Abilities/Special
Anims/Effects
Custom Script Code
Collapse JASS:
function FilterIsStructure takes nothing returns boolean
    return (IsUnitType(GetFilterUnit(), UNIT_TYPE_STRUCTURE) == true)
endfunction

function Handle2Int takes handle h returns integer
    return h
    return 0
endfunction

function Int2Unit takes integer i returns unit
    return i
    return null
endfunction

function PlayerGroupIsEmpty takes force whichForce returns boolean
    if CountPlayersInForceBJ(whichForce) == 0 then
        return true
    endif
    return false
endfunction

function Pwait takes real duration returns nothing
    local timer t
    local real  timeRemaining

    if (duration > 0) then
        set t = CreateTimer()
        call TimerStart(t, duration, false, null)
        loop
            set timeRemaining = TimerGetRemaining(t)
            exitwhen timeRemaining <= 0

            // If we have a bit of time left, skip past 10% of the remaining
            // duration instead of checking every interval, to minimize the
            // polling on long waits.
            if (timeRemaining > bj_POLLED_WAIT_SKIP_THRESHOLD) then
                call TriggerSleepAction(0.1 * timeRemaining)
            else
                call TriggerSleepAction(bj_POLLED_WAIT_INTERVAL)
            endif
        endloop
        call DestroyTimer(t)
    endif

    set t = null
endfunction
10-02-2006, 08:54 PM#2
Panto
Trigger:
Quests
Collapse Events
Map initialization
Conditions
Collapse Actions
Quest - Create a Required quest titled Creator with the description Feel free to email ..., using icon path ReplaceableTextures\CommandButtons\BTNMedalionOfCourage.blp
Quest - Create a quest requirement for (Last created quest) with the description This map was create...
Quest - Create a quest requirement for (Last created quest) with the description |cff66ff66pant...
Quest - Create a quest requirement for (Last created quest) with the description |cff66ff66Pant...
Quest - Create a quest requirement for (Last created quest) with the description |cff66ff66http...
Quest - Create a Required quest titled Credits with the description ChrydGod, dataangel..., using icon path ReplaceableTextures\CommandButtons\BTNDarkSummoning.blp
Quest - Create a quest requirement for (Last created quest) with the description |cffff3333Due Credi...
Quest - Create a Required quest titled Release Date with the description This Call to Arms F..., using icon path ReplaceableTextures\CommandButtons\BTNSpy.blp
Quest - Create a Optional quest titled Rally Points with the description Units that spawn wi..., using icon path ReplaceableTextures\CommandButtons\BTNRallyPoint.blp
Quest - Create a Optional quest titled Tactics with the description All heroes have a T..., using icon path ReplaceableTextures\CommandButtons\BTNAttackGround.blp
Quest - Create a Optional quest titled Spoils of War with the description Whenever a solder o..., using icon path ReplaceableTextures\CommandButtons\BTNOtherBarrel.blp
Quest - Create a Optional quest titled Alliance Sharing with the description If a player leaves ..., using icon path ReplaceableTextures\CommandButtons\BTNSpellSteal.blp
Quest - Create a Optional quest titled Computer Teams with the description If the only players..., using icon path ReplaceableTextures\CommandButtons\BTNControlMagic.blp
10-02-2006, 08:55 PM#3
Panto
Collapse JASS:
//===============================
//   Functions
//===============================
function Trig_Music_Actions takes nothing returns nothing
//== Locals =====================

//== Actions ====================
    // call PlayMusic(gg_snd_HumanX1)
    call SetMapMusic("Sound\\Music\\mp3Music\\ArthasTheme.mp3;Sound\\Music\\mp3Music\\DarkVictory.mp3;Sound\\Music\\mp3Music\\HeroicVictory.mp3;Sound\\Music\\mp3Music\\Human2.mp3;Sound\\Music\\mp3Music\\HumanX1.mp3;Sound\\Music\\mp3Music\\NightElf1.mp3;Sound\\Music\\mp3Music\\Orc2.mp3;Sound\\Music\\mp3Music\\PursuitTheme.mp3", true, 0)

//== Cleanup ====================
endfunction

//===============================
//   Events
//===============================
function InitTrig_Music takes nothing returns nothing
    set gg_trg_Music = CreateTrigger()
    call TriggerAddAction(gg_trg_Music, function Trig_Music_Actions)
endfunction
10-02-2006, 08:56 PM#4
Panto
Trigger:
General Initialization
Collapse Events
Map initialization
Conditions
Collapse Actions
Trigger - Turn off (This trigger)
Trigger - Turn off Player Dies <gen>
Trigger - Turn off Player Leaves <gen>
Game Cache - Create a game cache from PFW.w3v
Set gcPFW = (Last created game cache)
Hero - Reserve 1 Hero buttons for the local player
Environment - Set sky to Lordaeron Fall Sky
Melee Game - Use melee time of day (for all players)
Melee Game - Give trained Heroes a Scroll of Town Portal (for all players)
Collapse Destructible - Pick every destructible in (Playable map area) and do (Actions)
Collapse Loop - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
Collapse Or - Any (Conditions) are true
Collapse Conditions
(Destructible-type of (Picked destructible)) Equal to Building
(Destructible-type of (Picked destructible)) Equal to Tower
Collapse Then - Actions
Animation - Play (Picked destructible)'s birth animation
Else - Actions
Collapse For each (Integer intLoop) from 1 to 12, do (Actions)
Collapse Loop - Actions
Player - Limit training of Heroes to 1 for (Player(intLoop))
Player - Set (Player(intLoop)) Current gold to 200
Player - Limit training of Train Archers (Switcheroo) to 0 for (Player(intLoop))
Player - Limit training of Train Footmen (Switcheroo) to 0 for (Player(intLoop))
Set booArKilled[intLoop] = False
Hero - Make (Player(intLoop)) Heroes gain 75.00% experience from future kills
-------- Players and Forces --------
Collapse For each (Integer intLoop) from 1 to 4, do (Actions)
Collapse Loop - Actions
Player Group - Add (Player(intLoop)) to forceArForces[intLoop]
Player Group - Add (Player((intLoop + 4))) to forceArForces[intLoop]
Player Group - Add (Player((intLoop + 8))) to forceArForces[intLoop]
-------- Set spawn and building start positions --------
Trigger - Run Player region definitions <gen> (checking conditions)
-------- Set Unit-Type arrays 1=Satyr, 2=Arach, 3=Elf, 4=Undead --------
Trigger - Run Racial utype definitions <gen> (checking conditions)
-------- Ability Constant Variables --------
Trigger - Run Ability constant definitions <gen> (checking conditions)
-------- Gift variables --------
Trigger - Run Loot mechanic definitions <gen> (checking conditions)
-------- AI presets --------
Trigger - Run AI constant definitions <gen> (checking conditions)
-------- Remove preloaded models --------
Collapse Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
Collapse Loop - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
(Unit-type of (Picked unit)) Not equal to Marketplace
(Unit-type of (Picked unit)) Not equal to Fae Toadstool
Collapse Then - Actions
Unit - Hide (Picked unit)
Unit - Kill (Picked unit)
Unit - Remove (Picked unit) from the game
Else - Actions
10-02-2006, 08:57 PM#5
Panto
Trigger:
Player region definitions
Events
Conditions
Collapse Actions
Trigger - Turn off (This trigger)
-------- Set spawn and building start positions --------
Set rectArStart[1] = StartP1 <gen>
Set rectArStart[2] = StartP2 <gen>
Set rectArStart[3] = StartP3 <gen>
Set rectArStart[4] = StartP4 <gen>
Set rectArStart[5] = StartP5 <gen>
Set rectArStart[6] = StartP6 <gen>
Set rectArStart[7] = StartP7 <gen>
Set rectArStart[8] = StartP8 <gen>
Set rectArStart[9] = StartP9 <gen>
Set rectArStart[10] = StartP10 <gen>
Set rectArStart[11] = StartP11 <gen>
Set rectArStart[12] = StartP12 <gen>
Set rectArTower1[1] = 1Tower1 <gen>
Set rectArTower1[2] = 2Tower1 <gen>
Set rectArTower1[3] = 3Tower1 <gen>
Set rectArTower1[4] = 4Tower1 <gen>
Set rectArTower1[5] = 5Tower1 <gen>
Set rectArTower1[6] = 6Tower1 <gen>
Set rectArTower1[7] = 7Tower1 <gen>
Set rectArTower1[8] = 8Tower1 <gen>
Set rectArTower1[9] = 9Tower1 <gen>
Set rectArTower1[10] = 10Tower1 <gen>
Set rectArTower1[11] = 11Tower1 <gen>
Set rectArTower1[12] = 12Tower1 <gen>
Set rectArTower2[1] = 1Tower2 <gen>
Set rectArTower2[2] = 2Tower2 <gen>
Set rectArTower2[3] = 3Tower2 <gen>
Set rectArTower2[4] = 4Tower2 <gen>
Set rectArTower2[5] = 5Tower2 <gen>
Set rectArTower2[6] = 6Tower2 <gen>
Set rectArTower2[7] = 7Tower2 <gen>
Set rectArTower2[8] = 8Tower2 <gen>
Set rectArTower2[9] = 9Tower2 <gen>
Set rectArTower2[10] = 10Tower2 <gen>
Set rectArTower2[11] = 11Tower2 <gen>
Set rectArTower2[12] = 12Tower2 <gen>
Set locArStart[1] = (Center of StartP1 <gen>)
Set locArStart[2] = (Center of StartP2 <gen>)
Set locArStart[3] = (Center of StartP3 <gen>)
Set locArStart[4] = (Center of StartP4 <gen>)
Set locArStart[5] = (Center of StartP5 <gen>)
Set locArStart[6] = (Center of StartP6 <gen>)
Set locArStart[7] = (Center of StartP7 <gen>)
Set locArStart[8] = (Center of StartP8 <gen>)
Set locArStart[9] = (Center of StartP9 <gen>)
Set locArStart[10] = (Center of StartP10 <gen>)
Set locArStart[11] = (Center of StartP11 <gen>)
Set locArStart[12] = (Center of StartP12 <gen>)
Set stringArCorner[1] = northwest
Set stringArCorner[2] = northeast
Set stringArCorner[3] = southeast
Set stringArCorner[4] = southwest
Set stringArCorner[0] = center
10-02-2006, 08:57 PM#6
Panto
Trigger:
Racial utype definitions
Events
Conditions
Collapse Actions
Trigger - Turn off (This trigger)
Set intRaces = 3
Set stringArRace[5] = Random
Set stringArRace[1] = Satyr
Set stringArRace[2] = Arachnid
Set stringArRace[3] = Skeleton
Set stringArRace[4] = Elf
Set stringArRange[3] = Random
Set stringArRange[1] = Footman
Set stringArRange[2] = Archer
-------- Set Unit-Type arrays 1=Satyr, 2=Arachnid, 3=Elf, 4=Skeleton --------
Set realArFacingOffset[1] = -45.00
Set realArFacingOffset[2] = -5.00
Set realArFacingOffset[3] = -30.00
Set realArFacingOffset[4] = 40.00
Set utypeArTownhall[1] = Lair (Satyr)
Set utypeArTownhall[2] = Ziggurat (Arachnid)
Set utypeArTownhall[3] = Diabolic Gate (Skeleton)
Set utypeArTownhall[4] = Keep of the Sun (Elf)
-------- Intimidating spawn array --------
Set abilityArTrain[11] = Train Satyr Footmen
Set abilityArTrain[12] = Train Satyr Archer
Set abilityArTrain[21] = Train Arachnid Footmen
Set abilityArTrain[22] = Train Arachnid Archer
Set abilityArTrain[31] = Train Skeleton Footmen
Set abilityArTrain[32] = Train Skeleton Archer
Set abilityArTrain[41] = Train Elf Footmen
Set abilityArTrain[42] = Train Elf Archer
Collapse For each (Integer intLoop) from 1 to 12, do (Actions)
Collapse Loop - Actions
Collapse For each (Integer A) from 1 to 4, do (Actions)
Collapse Loop - Actions
Collapse For each (Integer B) from 1 to 2, do (Actions)
Collapse Loop - Actions
Player - Disable abilityArTrain[((10 x (Integer A)) + (Integer B))] for (Player(intLoop))
-------- Intimidating spawn array done --------
Set utypeArTower[1] = Satyr Tower (Satyr)
Set utypeArTower[2] = Arachnid Tower (Arachnid)
Set utypeArTower[3] = Skeleton Tower (Skeleton)
Set utypeArTower[4] = Elf Tower (Elf)
Set utypeArArcher[1] = Archer (Satyr)
Set utypeArArcher[2] = Archer (Arachnid)
Set utypeArArcher[3] = Archer (Skeleton)
Set utypeArArcher[4] = Archer (Elf)
Set utypeArArcher[5] = Archer aug (Satyr)
Set utypeArArcher[6] = Archer aug (Arachnid)
Set utypeArArcher[7] = Archer aug (Skeleton)
Set utypeArArcher[8] = Archer aug (Elf)
Set utypeArFootman[1] = Footman (Satyr)
Set utypeArFootman[2] = Footman (Arachnid)
Set utypeArFootman[3] = Footman (Skeleton)
Set utypeArFootman[4] = Footman (Elf)
Set utypeArFootman[5] = Footman aug (Satyr)
Set utypeArFootman[6] = Footman aug (Arachnid)
Set utypeArFootman[7] = Footman aug (Skeleton)
Set utypeArFootman[8] = Footman aug (Elf)
Set utypeArHero[11] = Piper (Satyr)
Set utypeArHero[12] = Druid (Satyr)
Set utypeArHero[13] = Mighty Oak (Satyr)
Set utypeArHero[14] = Wise Elm (Satyr)
Set utypeArHero[21] = Queen (Arachnid)
Set utypeArHero[22] = Lord (Arachnid)
Set utypeArHero[23] = Widow (Arachnid)
Set utypeArHero[24] = Recluse (Arachnid)
Set utypeArHero[31] = Revenant (Skeleton)
Set utypeArHero[32] = Liche (Skeleton)
Set utypeArHero[33] = Witch (Skeleton)
Set utypeArHero[34] = Flayer (Skeleton)
Set utypeArHero[41] = Cleric (Elf)
Set utypeArHero[42] = Ranger (Elf)
Set utypeArHero[43] = Sentinel (Elf)
Set utypeArHero[44] = Knight (Elf)
10-02-2006, 08:58 PM#7
Panto
Trigger:
Ability constant definitions
Events
Conditions
Collapse Actions
Trigger - Turn off (This trigger)
-------- Ability Constant Variables --------
Set stringArRetreat[0] = Retreat!
Set stringArRetreat[1] = Fall back!
Set stringArRetreat[2] = Run away!
Set stringArOrder[0] = Yes, sir!
Set stringArOrder[1] = Right away!
Set stringArOrder[2] = With pride!
Set realArUnearthDur[1] = 20.00
Set realArUnearthDur[2] = 30.00
Set realArUnearthDur[3] = 40.00
Set realArUnearthDur[4] = 50.00
Set realArUnearthDur[5] = 60.00
Set abilityArPoisonAura[1] = Poison Aura (Actual 1)
Set abilityArPoisonAura[2] = Poison Aura (Actual 2)
Set abilityArPoisonAura[3] = Poison Aura (Actual 3)
Set abilityArPoisonAura[4] = Poison Aura (Actual 4)
Set abilityArPoisonAura[5] = Poison Aura (Actual 5)
Set abilityArTactic[1] = Attack Northwest (Tactics)
Set abilityArTactic[2] = Attack Northeast (Tactics)
Set abilityArTactic[3] = Attack Southeast (Tactics)
Set abilityArTactic[4] = Attack Southwest (Tactics)
Collapse For each (Integer intLoop) from 1 to 12, do (Actions)
Collapse Loop - Actions
Player - Disable Hero (Primo Both) for (Player(intLoop))
Player - Disable Spacer (Tactics) for (Player(intLoop))
Player - Disable Damage counter (AI) for (Player(intLoop))
Player - Disable Attack Center (AI Tactics) for (Player(intLoop))
Player - Disable Attack Northwest (AI Tactics) for (Player(intLoop))
Player - Disable Attack Northeast (AI Tactics) for (Player(intLoop))
Player - Disable Attack Southeast (AI Tactics) for (Player(intLoop))
Player - Disable Attack Southwest (AI Tactics) for (Player(intLoop))
Player - Disable Defend (AI Tactics) for (Player(intLoop))
-------- Disabled for comps in TEZ --------
10-02-2006, 08:59 PM#8
Panto
Trigger:
Loot mechanic definitions
Events
Conditions
Collapse Actions
Trigger - Turn off (This trigger)
Set unitArMarket[1] = Marketplace 0014 <gen>
Set unitArMarket[2] = Marketplace 0013 <gen>
Set unitArMarket[3] = Marketplace 0016 <gen>
Set unitArMarket[4] = Marketplace 0015 <gen>
-------- Loot variables --------
Set intLoot = 15
Set itypeArLoot[1] = Health Potion
Set itypeArLoot[2] = Mana Potion
Set itypeArLoot[3] = Glyph of Eyes
Set itypeArLoot[4] = Glyph of Illusions
Set itypeArLoot[5] = Glyph of Purities
Set itypeArLoot[6] = Glyph of Knowledges
Set itypeArLoot[7] = Glyph of Storms
Set itypeArLoot[8] = Haste Scroll
Set itypeArLoot[9] = Darkness Scroll
Set itypeArLoot[10] = Shield Scroll
Set itypeArLoot[11] = Silence Scroll
Set itypeArLoot[12] = Stomp Scroll
Set itypeArLoot[13] = Trance Scroll
Set itypeArLoot[14] = Peace Scroll
Set itypeArLoot[15] = Glyph of Supports
-------- Relic variables --------
Set intRelic = 12
Set itypeArRelic[1] = Azure Scale Mail
Set itypeArRelic[2] = Feathery Robe
Set itypeArRelic[3] = Full Face Helm
Set itypeArRelic[4] = Heraldic Surcoat
Set itypeArRelic[5] = Imbued Hauberk
Set itypeArRelic[6] = Noctum
Set itypeArRelic[7] = Bloodthirsty Dirk
Set itypeArRelic[8] = Death's Head
Set itypeArRelic[9] = Greed
Set itypeArRelic[10] = Jagged Falchion
Set itypeArRelic[11] = Pureblade
Set itypeArRelic[12] = Yew Longbow
10-02-2006, 08:59 PM#9
Panto
Trigger:
AI constant definitions
Events
Conditions
Collapse Actions
Trigger - Turn off (This trigger)
-------- Difficulty-dependent constants --------
Set stringArDiff[0] = eattree
Set stringArDiff[1] = wispharvest
Set stringArDiffAttack[1] = web
Set stringArDiffAttack[2] = ensnare
Set stringArDiffAttack[3] = detonate
Set stringArDiffAttack[4] = selfdestruct
-------- AI presets --------
Set intTagSize = 7
Set locMiddle = (Center of Middle <gen>)
Set rectArCorner[0] = Middle <gen>
Set rectArCorner[1] = NW Corner <gen>
Set rectArCorner[2] = NE Corner <gen>
Set rectArCorner[3] = SE Corner <gen>
Set rectArCorner[4] = SW Corner <gen>
Set locArNull[0] = (Center of Middle <gen>)
Set locArNull[1] = (Center of NW Target <gen>)
Set locArNull[2] = (Center of NE Target <gen>)
Set locArNull[3] = (Center of SE Target <gen>)
Set locArNull[4] = (Center of SW Target <gen>)
Set rectArTarget[0] = Middle <gen>
Collapse For each (Integer intLoop) from 0 to 2, do (Actions)
Collapse Loop - Actions
Set rectArTarget[(1 + (4 x intLoop))] = NW Target <gen>
Set rectArTarget[(2 + (4 x intLoop))] = NE Target <gen>
Set rectArTarget[(3 + (4 x intLoop))] = SE Target <gen>
Set rectArTarget[(4 + (4 x intLoop))] = SW Target <gen>
10-02-2006, 09:00 PM#10
Panto
Trigger:
General Time Elapsed Zero
Collapse Events
Time - Elapsed game time is 0.00 seconds
Collapse Conditions
((This trigger) is on) Equal to True
Collapse Actions
Trigger - Turn off (This trigger)
-------- Don't need the construction models and they're making townhalls float --------
Collapse Destructible - Pick every destructible in (Playable map area) and do (Actions)
Collapse Loop - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
Collapse Or - Any (Conditions) are true
Collapse Conditions
(Destructible-type of (Picked destructible)) Equal to Building
(Destructible-type of (Picked destructible)) Equal to Tower
Collapse Then - Actions
Destructible - Kill (Picked destructible)
Destructible - Remove (Picked destructible)
Else - Actions
-------- Mushroom! --------
Collapse For each (Integer intLoop) from 1 to 12, do (Actions)
Collapse Loop - Actions
Visibility - Create an initially Enabled visibility modifier for (Player(intLoop)) emitting Visibility across (Playable map area)
Set visArMap[intLoop] = (Last created visibility modifier)
Cinematic - Fade out over 0.01 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with 0.00% transparency
Set sndCine = QuestNew <gen>
-------- Dialog setups for Race, Range, and Win --------
Countdown Timer - Create a timer window for timerSelect with title Choose in:
Set windowSelect = (Last created timer window)
Countdown Timer - Hide windowSelect
Dialog - Change the title of dialogRace to Pick your race:
Dialog - Change the title of dialogRange to Pick your unit type...
Dialog - Change the title of dialogWin to Victory!
Custom script: call DialogAddButtonWithHotkeyBJ(udg_dialogRace, "|cffffcc00R|r|cffffffffandom|r",82)
Set buttonArRace[5] = (Last created dialog Button)
Custom script: call DialogAddButtonWithHotkeyBJ(udg_dialogRace, "|cffffcc00S|r|cffffffffatyr|r",83)
Set buttonArRace[1] = (Last created dialog Button)
Custom script: call DialogAddButtonWithHotkeyBJ(udg_dialogRace, "|cffffcc00A|r|cffffffffrachnid|r",65)
Set buttonArRace[2] = (Last created dialog Button)
Custom script: call DialogAddButtonWithHotkeyBJ(udg_dialogRace, "|cffffffffS|r|cffffcc00k|r|cffffffffeleton|r",75)
Set buttonArRace[3] = (Last created dialog Button)
Custom script: call DialogAddButtonWithHotkeyBJ(udg_dialogRace, "|cffffcc00E|r|cfffffffflf|r",69)
Set buttonArRace[4] = (Last created dialog Button)
Custom script: call DialogAddButtonWithHotkeyBJ(udg_dialogRange, "|cffffcc00R|r|cffffffffandom|r",82)
Set buttonArRange[3] = (Last created dialog Button)
Custom script: call DialogAddButtonWithHotkeyBJ(udg_dialogRange, "|cffffcc00F|r|cffffffffootman|r",70)
Set buttonArRange[1] = (Last created dialog Button)
Custom script: call DialogAddButtonWithHotkeyBJ(udg_dialogRange, "|cffffcc00A|r|cffffffffrcher|r",65)
Set buttonArRange[2] = (Last created dialog Button)
Custom script: call DialogAddButtonWithHotkeyBJ(udg_dialogWin, "|cffffcc00Q|r|cffffffffuit Game|r",81)
Set buttonWin = (Last created dialog Button)
Collapse For each (Integer intLoop) from 1 to 12, do (Actions)
Collapse Loop - Actions
Dialog - Hide dialogRace for (Player(intLoop))
Dialog - Hide dialogRange for (Player(intLoop))
Dialog - Hide dialogWin for (Player(intLoop))
-------- Define custom player status flags --------
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
((Player(intLoop)) slot status) Equal to Is unused
Collapse Then - Actions
Collapse For each (Integer A) from 1 to 4, do (Actions)
Collapse Loop - Actions
Player Group - Remove (Player(intLoop)) from forceArForces[(Integer A)]
Else - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
((Player(intLoop)) slot status) Equal to Has left the game
Collapse Then - Actions
Game - Display to (All players) the text: ((Name of (Player(intLoop))) + has left the game.)
Game - Grant shared vision and full shared unit control of (Player(intLoop)) units with his/her allies
Else - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
((Player(intLoop)) controller) Equal to Computer
Collapse Then - Actions
Collapse For each (Integer A) from 0 to 2, do (Actions)
Collapse Loop - Actions
Custom script: if (GetAIDifficulty(ConvertedPlayer(udg_intLoop)) == ConvertAIDifficulty(GetForLoopIndexA())) then
Set intArDiff[intLoop] = (Integer A)
Custom script: endif
Game - Grant shared vision and full shared unit control of (Player(intLoop)) units with his/her allies
Else - Actions
Set intQuantityCheck = 0
Collapse For each (Integer intLoop) from 1 to 4, do (Actions)
Collapse Loop - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
Collapse And - All (Conditions) are true
Collapse Conditions
Collapse Or - Any (Conditions) are true
Collapse Conditions
((Player(intLoop)) controller) Equal to Computer
((Player(intLoop)) slot status) Equal to Is unused
Collapse Or - Any (Conditions) are true
Collapse Conditions
((Player((intLoop + 4))) controller) Equal to Computer
((Player((intLoop + 4))) slot status) Equal to Is unused
Collapse Or - Any (Conditions) are true
Collapse Conditions
((Player((intLoop + 8))) controller) Equal to Computer
((Player((intLoop + 8))) slot status) Equal to Is unused
Collapse Then - Actions
Countdown Timer - Start timerArAI[intLoop] as a One-shot timer that will expire in (Random real number between 35.00 and 60.00) seconds
Set intQuantityCheck = (intQuantityCheck + 1)
Collapse For each (Integer intLoopAI) from 0 to 2, do (Actions)
Collapse Loop - Actions
Player - Set name of (Player((intLoop + (intLoopAI x 4)))) to Enemy
Set booArNoHuman[(intLoop + (intLoopAI x 4))] = True
-------- Switch player menus for computer-usable buttons --------
Player - Enable Attack Center (AI Tactics) for (Player((intLoop + (intLoopAI x 4))))
Player - Enable Defend (AI Tactics) for (Player((intLoop + (intLoopAI x 4))))
Player - Enable Attack Northwest (AI Tactics) for (Player((intLoop + (intLoopAI x 4))))
Player - Enable Attack Northeast (AI Tactics) for (Player((intLoop + (intLoopAI x 4))))
Player - Enable Attack Southeast (AI Tactics) for (Player((intLoop + (intLoopAI x 4))))
Player - Enable Attack Southwest (AI Tactics) for (Player((intLoop + (intLoopAI x 4))))
Else - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
intQuantityCheck Less than or equal to 0
Collapse Then - Actions
Custom script: call DestroyTrigger(gg_trg_Attack_parameters)
Custom script: call DestroyTrigger(gg_trg_Hero_damaged)
Custom script: call DestroyTrigger(gg_trg_Hero_skills)
Custom script: call DestroyTrigger(gg_trg_Hero_trained)
Custom script: call DestroyTrigger(gg_trg_Townhall_tech)
Collapse Else - Actions
Trigger - Turn on Attack parameters <gen>
-------- Set up cinematic stats --------
Set intCineSkip = 0
Collapse For each (Integer intLoop) from 1 to 12, do (Actions)
Collapse Loop - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
Collapse Or - Any (Conditions) are true
Collapse Conditions
((Player(intLoop)) controller) Equal to Computer
((Player(intLoop)) slot status) Equal to Is unused
Then - Actions
Collapse Else - Actions
Set intCineTotal = (intCineTotal + 1)
Set intCineGoal = (((intCineTotal x 5) / 10) + 1)
-------- BEGIN CINEMATIC --------
Cinematic - Turn on letterbox mode (hide interface) for (All players): fade out over 0.01 seconds
Set booSkip = False
Trigger - Turn on Cine Skip <gen>
-------- GUI only permits camera by player, which is silly since the GUI function uses GetLocalPlayer() --------
Custom script: call CameraSetupApplyForceDuration(gg_cam_Cam0, true, 0.00)
Custom script: call CameraSetupApplyForceDuration(gg_cam_Cam1, true, 5.00)
Set stringCine = The Emperor's palace garden...
Set realCineDur = 5.00
Cinematic - Clear the screen of text messages for (All players)
Game - Display to (All players) for realCineDur seconds the text: stringCine
Sound - Play sndCine
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
intDummy Equal to 0
Collapse Then - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + (ESC to skip ( + ((String(intCineGoal)) + needed).|r)))
Collapse Else - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + ((ESC to skip. + ((String(intCineSkip)) + ( of + ((String(intCineTotal)) + have skipped ()))) + ((String(intCineGoal)) + needed).|r)))
Wait 2.00 game-time seconds
Cinematic - Fade in over 2.00 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with 0.00% transparency
Wait 3.00 game-time seconds
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
booSkip Equal to False
Collapse Then - Actions
Set stringCine = Since his death, fierce battle has erupted.
Set realCineDur = 6.50
Cinematic - Clear the screen of text messages for (All players)
Game - Display to (All players) for realCineDur seconds the text: stringCine
Sound - Play sndCine
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
intCineSkip Equal to 0
Collapse Then - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + (ESC to skip ( + ((String(intCineGoal)) + needed).|r)))
Collapse Else - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + ((ESC to skip. + ((String(intCineSkip)) + ( of + ((String(intCineTotal)) + have skipped ()))) + ((String(intCineGoal)) + needed).|r)))
Trigger - Turn on Cine Elf <gen>
Trigger - Run Cine Elf <gen> (ignoring conditions)
Trigger - Turn on Cine Skeleton <gen>
Trigger - Run Cine Skeleton <gen> (ignoring conditions)
Wait 6.50 game-time seconds
Else - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
booSkip Equal to False
Collapse Then - Actions
Custom script: call CameraSetupApplyForceDuration(gg_cam_Cam2, true, 0.01)
Set stringCine = Noble Elves strive to defend the glory of his empire.
Set realCineDur = 7.00
Cinematic - Clear the screen of text messages for (All players)
Game - Display to (All players) for realCineDur seconds the text: stringCine
Sound - Play sndCine
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
intCineSkip Equal to 0
Collapse Then - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + (ESC to skip ( + ((String(intCineGoal)) + needed).|r)))
Collapse Else - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + ((ESC to skip. + ((String(intCineSkip)) + ( of + ((String(intCineTotal)) + have skipped ()))) + ((String(intCineGoal)) + needed).|r)))
Wait 7.00 game-time seconds
Else - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
booSkip Equal to False
Collapse Then - Actions
Custom script: call CameraSetupApplyForceDuration(gg_cam_Cam3, true, 8.00)
Set stringCine = Legions of fresh Skeletons charge to battle to slay their still-living brethren.
Set realCineDur = 9.00
Cinematic - Clear the screen of text messages for (All players)
Game - Display to (All players) for realCineDur seconds the text: stringCine
Sound - Play sndCine
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
intCineSkip Equal to 0
Collapse Then - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + (ESC to skip ( + ((String(intCineGoal)) + needed).|r)))
Collapse Else - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + ((ESC to skip. + ((String(intCineSkip)) + ( of + ((String(intCineTotal)) + have skipped ()))) + ((String(intCineGoal)) + needed).|r)))
Unit - Create 1 Liche (Cinematic) for Player 7 (Green) at (Center of Cine Liche <gen>) facing (Random point in Cine Target Elf <gen>)
Unit - Order (Last created unit) to Hold Position
Wait 8.00 game-time seconds
Wait 1.00 game-time seconds
Else - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
booSkip Equal to False
Collapse Then - Actions
Custom script: call CameraSetupApplyForceDuration(gg_cam_Cam4, true, 0.01)
Set stringCine = Dark Satyr seek to destroy the empire and return it to wild land.
Set realCineDur = 9.00
Cinematic - Clear the screen of text messages for (All players)
Game - Display to (All players) for realCineDur seconds the text: stringCine
Sound - Play sndCine
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
intCineSkip Equal to 0
Collapse Then - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + (ESC to skip ( + ((String(intCineGoal)) + needed).|r)))
Collapse Else - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + ((ESC to skip. + ((String(intCineSkip)) + ( of + ((String(intCineTotal)) + have skipped ()))) + ((String(intCineGoal)) + needed).|r)))
Trigger - Turn on Cine Satyr <gen>
Trigger - Run Cine Satyr <gen> (ignoring conditions)
Wait 3.00 game-time seconds
Custom script: call CameraSetupApplyForceDuration(gg_cam_Cam5, true, 6.00)
Wait 6.00 game-time seconds
Else - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
booSkip Equal to False
Collapse Then - Actions
Set stringCine = Mysterious Arachnid armies rise to claim rulership.
Set realCineDur = 7.00
Cinematic - Clear the screen of text messages for (All players)
Game - Display to (All players) for realCineDur seconds the text: stringCine
Sound - Play sndCine
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
intCineSkip Equal to 0
Collapse Then - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + (ESC to skip ( + ((String(intCineGoal)) + needed).|r)))
Collapse Else - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + ((ESC to skip. + ((String(intCineSkip)) + ( of + ((String(intCineTotal)) + have skipped ()))) + ((String(intCineGoal)) + needed).|r)))
Trigger - Turn on Cine Arachnid <gen>
Trigger - Run Cine Arachnid <gen> (ignoring conditions)
Unit - Create 1 Lord (Cinematic) for Player 1 (Red) at (Center of Cine Lord <gen>) facing locMiddle
Unit - Order (Last created unit) to Attack-Move To locMiddle
Wait 1.00 game-time seconds
Custom script: call CameraSetupApplyForceDuration(gg_cam_Cam6, true, 5.00)
Wait 5.00 game-time seconds
Wait 1.00 game-time seconds
Else - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
booSkip Equal to False
Collapse Then - Actions
Custom script: call CameraSetupApplyForceDuration(gg_cam_Cam7, true, 10.00)
Set stringCine = Choose your path, and prepare to crush your enemies!
Set realCineDur = 10.00
Cinematic - Clear the screen of text messages for (All players)
Game - Display to (All players) for realCineDur seconds the text: stringCine
Sound - Play sndCine
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
intCineSkip Equal to 0
Collapse Then - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + (ESC to skip ( + ((String(intCineGoal)) + needed).|r)))
Collapse Else - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + ((ESC to skip. + ((String(intCineSkip)) + ( of + ((String(intCineTotal)) + have skipped ()))) + ((String(intCineGoal)) + needed).|r)))
Wait 7.00 game-time seconds
Cinematic - Fade out over 3.00 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with 0.00% transparency
Wait 3.00 game-time seconds
Else - Actions
-------- Start here after skip --------
Custom script: call DestroyTrigger(gg_trg_Cine_Elf)
Custom script: call DestroyTrigger(gg_trg_Cine_Skeleton)
Custom script: call DestroyTrigger(gg_trg_Cine_Satyr)
Custom script: call DestroyTrigger(gg_trg_Cine_Arachnid)
Custom script: call DestroyTrigger(gg_trg_Cine_Skip)
Collapse Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
Collapse Loop - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
(Owner of (Picked unit)) Equal to Neutral Passive
Then - Actions
Collapse Else - Actions
Unit - Kill (Picked unit)
Unit - Remove (Picked unit) from the game
Collapse For each (Integer intLoop) from 1 to 12, do (Actions)
Collapse Loop - Actions
Camera - Reset camera for (Player(intLoop)) to standard game-view over 0.00 seconds
Camera - Pan camera for (Player(intLoop)) to ((Player(intLoop)) start location) over 1.00 seconds
Set stringCine = Your Call to Arms begins now.
Set realCineDur = 4.00
Cinematic - Clear the screen of text messages for (All players)
Game - Display to (All players) for realCineDur seconds the text: stringCine
Sound - Play ClanInvitation <gen>
Game - Display to (All players) for realCineDur seconds the text:
Wait 4.00 game-time seconds
Cinematic - Turn off letterbox mode (show interface) for (All players): fade in over 0.01 seconds
-------- END AMAZING CINEMATICAL EXPERIENCE --------
Collapse For each (Integer intLoop) from 1 to 12, do (Actions)
Collapse Loop - Actions
Player - Turn Gives bounty On for (Player(intLoop))
Trigger - Run Check Victory Conditions <gen> (ignoring conditions)
Set trigCountdown = Dialog race setup <gen>
Set intCountdown = 3
Countdown Timer - Start timerTick as a Repeating timer that will expire in 1.00 seconds
Countdown Timer - Start timerSelect as a One-shot timer that will expire in 3.00 seconds
Countdown Timer - Show windowSelect
Countdown Timer - Pause timerSelect
10-02-2006, 09:02 PM#11
Panto
(Not initially on)
Trigger:
Cine Skip
Collapse Events
Player - Player 1 (Red) skips a cinematic sequence
Player - Player 2 (Blue) skips a cinematic sequence
Player - Player 3 (Teal) skips a cinematic sequence
Player - Player 4 (Purple) skips a cinematic sequence
Player - Player 5 (Yellow) skips a cinematic sequence
Player - Player 6 (Orange) skips a cinematic sequence
Player - Player 7 (Green) skips a cinematic sequence
Player - Player 8 (Pink) skips a cinematic sequence
Player - Player 9 (Gray) skips a cinematic sequence
Player - Player 10 (Light Blue) skips a cinematic sequence
Player - Player 11 (Dark Green) skips a cinematic sequence
Player - Player 12 (Brown) skips a cinematic sequence
Conditions
Collapse Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
booArSkip[(Player number of (Triggering player))] Equal to False
Collapse Then - Actions
Set booArSkip[(Player number of (Triggering player))] = True
Set intCineSkip = (intCineSkip + 1)
Cinematic - Clear the screen of text messages for (All players)
Game - Display to (All players) for realCineDur seconds the text: stringCine
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse If - Conditions
intCineSkip Greater than or equal to intCineGoal
Collapse Then - Actions
Cinematic - Fade out over 0.01 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with 0.00% transparency
Set booSkip = True
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + Skipped.|r)
Custom script: call DestroyTrigger(gg_trg_Cine_Skip)
Collapse Else - Actions
Game - Display to (All players) for realCineDur seconds the text: (stringSkip + ((ESC to skip. + ((String(intCineSkip)) + ( of + ((String(intCineTotal)) + have skipped ()))) + ((String(intCineGoal)) + needed).|r)))
Else - Actions
10-02-2006, 09:03 PM#12
Panto
(Not initially on)
Trigger:
Cine Elf
Collapse Events
Time - Every 9.00 seconds of game time
Conditions
Collapse Actions
Collapse For each (Integer A) from 1 to 5, do (Actions)
Collapse Loop - Actions
Unit - Create 1 Footman aug (Elf) for Player 4 (Purple) at (Random point in Cine Origin Elf <gen>) facing locMiddle
Unit - Order (Last created unit) to Attack-Move To (Random point in Cine Target Elf <gen>)
Collapse For each (Integer A) from 1 to 2, do (Actions)
Collapse Loop - Actions
Unit - Create 1 Archer (Elf) for Player 4 (Purple) at (Random point in Cine Origin Elf <gen>) facing locMiddle
Unit - Order (Last created unit) to Attack-Move To (Random point in Cine Target Elf <gen>)
10-02-2006, 09:04 PM#13
Panto
(Not initially on)
Trigger:
Cine Skeleton
Collapse Events
Time - Every 8.75 seconds of game time
Conditions
Collapse Actions
Collapse For each (Integer A) from 1 to 2, do (Actions)
Collapse Loop - Actions
Unit - Create 1 Footman aug (Skeleton) for Player 7 (Green) at (Random point in Cine Origin Skeleton <gen>) facing locMiddle
Unit - Order (Last created unit) to Attack-Move To (Random point in Cine Target Skeleton <gen>)
Collapse For each (Integer A) from 1 to 3, do (Actions)
Collapse Loop - Actions
Unit - Create 1 Footman (Skeleton) for Player 7 (Green) at (Random point in Cine Origin Skeleton <gen>) facing locMiddle
Unit - Order (Last created unit) to Attack-Move To (Random point in Cine Target Skeleton <gen>)
Collapse For each (Integer A) from 1 to 2, do (Actions)
Collapse Loop - Actions
Unit - Create 1 Archer aug (Skeleton) for Player 7 (Green) at (Random point in Cine Origin Skeleton <gen>) facing locMiddle
Unit - Order (Last created unit) to Attack-Move To (Random point in Cine Target Skeleton <gen>)
10-02-2006, 09:04 PM#14
Panto
(Not initially on)
Trigger:
Cine Satyr
Collapse Events
Time - Every 8.00 seconds of game time
Conditions
Collapse Actions
Collapse For each (Integer A) from 1 to 4, do (Actions)
Collapse Loop - Actions
Unit - Create 1 Footman aug (Satyr) for Player 10 (Light Blue) at (Random point in Cine Origin Satyr <gen>) facing locMiddle
Unit - Order (Last created unit) to Attack-Move To (Random point in Cine Target Satyr <gen>)
Collapse For each (Integer A) from 1 to 3, do (Actions)
Collapse Loop - Actions
Unit - Create 1 Footman (Satyr) for Player 10 (Light Blue) at (Random point in Cine Origin Satyr <gen>) facing locMiddle
Unit - Order (Last created unit) to Attack-Move To (Random point in Cine Target Satyr <gen>)
10-02-2006, 09:05 PM#15
Panto
(Not initially on)
Trigger:
Cine Arachnid
Collapse Events
Time - Every 8.50 seconds of game time
Conditions
Collapse Actions
Collapse For each (Integer A) from 1 to 2, do (Actions)
Collapse Loop - Actions
Unit - Create 1 Footman (Arachnid) for Player 1 (Red) at (Random point in Cine Origin Arachnid <gen>) facing locMiddle
Unit - Order (Last created unit) to Attack-Move To (Random point in Cine Target Arachnid <gen>)
Collapse For each (Integer A) from 1 to 3, do (Actions)
Collapse Loop - Actions
Unit - Create 1 Footman aug (Arachnid) for Player 1 (Red) at (Random point in Cine Origin Arachnid <gen>) facing locMiddle
Unit - Order (Last created unit) to Attack-Move To (Random point in Cine Target Arachnid <gen>)
Collapse For each (Integer A) from 1 to 2, do (Actions)
Collapse Loop - Actions
Unit - Create 1 Archer (Arachnid) for Player 1 (Red) at (Random point in Cine Origin Arachnid <gen>) facing locMiddle
Unit - Order (Last created unit) to Attack-Move To (Random point in Cine Target Arachnid <gen>)