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 havn't received your rank award? Then please contact the administration.
    Dismiss Notice
  4. We have recently started the 16th edition of the Mini Mapping Contest. The theme is mini RPG. Do check it out and have fun.
    Dismiss Notice
  5. Choose your ride to damnation in the 5th Special Effect Contest Poll.
    Dismiss Notice
  6. The winners of the 13th Techtree Contest have been announced!
    Dismiss Notice
  7. The 13th Music Contest Poll is up! Vote for the best tracks in this symphony of frost and flame.
    Dismiss Notice
  8. Race against the odds and Reforge, Don't Refund. The 14th Techtree Contest has begun!
    Dismiss Notice
  9. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Trigger Viewer

Pacific DogFight Beta 1.0.w3x
Variables
NOTE
To those who edit
Plane Stats
Lock camera
Select a plane
Choose a plane
RemovePlanes
Trig
Trig Copy
Initialization
Game Setup
Set Players to Enemies
tribute
Set Colors
set camera
move left
move right
stop moving left
stop moving right
uparrowpress
uparrowrelease
downarrow press
downarrow release
Fire Sound
move plane
Loop
Loop Copy
Loop Copy Copy
Loop Copy Copy Copy
HeightSet
move plane
upanddown
Respawn
Revive
Set Missle Level
Misc
Player leaves
Locust
AI
Initi
moremore Copy
Aifire
Aifire Copy 2
Aifire Copy 3
Aifire Copy 4
Aifire Copy 5
Aifire Copy
AIhoming
AIhoming Copy
Missle
Missle
Move
Missle Death
Fuel
Fuel
Fuel2
Debug
Kills
Kills Copy
Kills Copy Copy
First
last
Bonus
Name
Tips
Tip1
Tip2
Tip3
Tip4
Tip5
Tip6
Tip7
Tip8
Tip9
Tip10
Enter map-specific custom script code below. This text will be included in the map script after variables are declared and before any trigger code.

		
Name Type Is Array Initial Value
AddHeight real Yes
AnotherTempLoc location No
Cache gamecache No
Fireing boolean Yes
Fuel1 group No
GameEnding timer No
GameSelector dialog No
goingdown boolean Yes
goingup boolean Yes
HeightQue real Yes
HommingMissles group No
KillBoard leaderboard No
LastHeight integer Yes 0
Missles group No
NextHeight integer Yes
Pick_Dialogue dialog Yes
PickedUnit unit No
Plane unit Yes
Planess group No
Player_Attack integer Yes 3
Player_Color string Yes
Player_Missle integer Yes 3
Player_PlaneType unitcode Yes h000
Player_Ref player Yes
Player_Revive integer Yes 3
Player_Selection unit Yes
Player_Speed integer Yes 3
Player_Turn integer Yes 3
PlayerKills integer Yes
PlayingPlayers force No
SpawnRegion rect Yes
Speed integer Yes 5
StartTimer timer No
TargetHeight real Yes
Temp_Cooldown integer Yes
Temp_Missle integer Yes
Temp_Revive integer Yes
Temp_Speed integer Yes
Temp_Turn integer Yes
Temploc location No
turnleft boolean Yes
turnright boolean Yes
udg_mygroup group No
zz_ActionAndTrig trigger No
zz_AdjustCam boolean Yes
zz_ai_only_mode button No
zz_AllItems item Yes
zz_AllUnits unit Yes
zz_Anfangsfarbe integer Yes
zz_AnyDamageTrig trigger No
zz_AnzahlVoter integer No
zz_ATLastSound sound Yes
zz_AttackDiceUpgr integer Yes
zz_AttackRateUpgr integer Yes
zz_ATToBeSkipped boolean Yes
zz_BnsBit integer Yes
zz_CamAlreadyOff boolean Yes
zz_CamAngle real Yes
zz_CameraSettingVal real Yes
zz_CamFollowUnit unit Yes
zz_CamOffset real Yes
zz_CamPid integer Yes
zz_CamPidIndex integer No
zz_CamRoll real Yes
zz_CamRotation real Yes
zz_CamSysPlayer player No
zz_CamSysT real No
zz_CamSysTime real No
zz_CamZOffset real Yes
zz_cdlg_button button Yes
zz_cdlg_dialog dialog Yes
zz_cdlg_length integer No
zz_cdlg_number integer Yes
zz_chat_no_ally string No
zz_CheckLocation location No
zz_ClosestDestructable destructable No
zz_ClosestDistance real No
zz_ClosestItem item No
zz_CodeIdA string Yes
zz_CodeIdB string Yes
zz_CodeRow string No
zz_CodeRows integer Yes
zz_color_board leaderboard No
zz_command_dlg1 string Yes
zz_command_dlg2 string Yes
zz_command_dlg3 string Yes
zz_command_hotkey1 integer Yes
zz_command_hotkey2 integer Yes
zz_command_hotkey3 integer Yes
zz_command_key1 string Yes
zz_command_key2 string Yes
zz_command_key3 string Yes
zz_command_language string No
zz_command_length integer No
zz_command_msg string Yes
zz_command_number integer Yes
zz_command_par1 integer Yes
zz_command_par2 integer Yes
zz_command_par3 integer Yes
zz_command_prefix string No
zz_commanded_player player No
zz_commander_mode button No
zz_commanding_player player No
zz_Comp boolean No
zz_current_command integer No
zz_current_number_par integer No
zz_current_player_par integer No
zz_CurrentlySelectedHero unit Yes
zz_CustomBooleanValue boolean Yes
zz_CustomRealValue real Yes
zz_CustomStringValue string Yes
zz_DamageTaken real No
zz_debug_BlackMaskTrig trigger No
zz_debugCamAoaTrig trigger No
zz_debugCamDistTrig trigger No
zz_debugCamFarzTrig trigger No
zz_debugCamFovTrig trigger No
zz_debugCamInfoTrig trigger No
zz_debugCamResetTrig trigger No
zz_debugCamRollTrig trigger No
zz_debugCamRotTrig trigger No
zz_debugCloneTrig trigger No
zz_debugDemoTrig trigger No
zz_debugDifficultyTrig trigger No
zz_debugDispelTrig trigger No
zz_debugFingerOfDeathEnabled boolean Yes
zz_debugFingerOfDeathTrig trigger Yes
zz_debugGimmeTrig trigger No
zz_debugGotoUnits integer No
zz_debugGotoUnitTrig trigger No
zz_debugGotoUnitX real No
zz_debugGotoUnitY real No
zz_debugGotoXTrig trigger No
zz_debugGotoXYTrig trigger No
zz_debugGotoYTrig trigger No
zz_debugTeleportTrig trigger No
zz_debugToolOfDeathTrig trigger Yes
zz_debugUnitInfoTrig trigger No
zz_DefendCaster sound No
zz_DetectRandom real No
zz_DetectSelected real No
zz_deutsch_button button No
zz_dialog_in_use boolean No
zz_DialogAktion string Yes
zz_DialogButton button Yes
zz_DialogFolge trigger Yes
zz_DialogShortcut integer Yes
zz_DialogSpieler dialog Yes
zz_DivineShield sound No
zz_dlg_dialog dialog Yes
zz_dlg_length integer No
zz_dlg_string string Yes
zz_dlgbutton_ai_only string No
zz_dlgbutton_all string No
zz_dlgbutton_cancel string No
zz_dlgbutton_commander string No
zz_dlgbutton_gold string No
zz_dlgbutton_lumber string No
zz_dlgbutton_no_human string No
zz_dlgbutton_tribute string No
zz_dlghdr_choose_ally string No
zz_dlghdr_choose_number string No
zz_dlghdr_choose_player string No
zz_dlghdr_game_type string No
zz_dlghdr_root string No
zz_dlghdr_tribute_amount string No
zz_dlghdr_tribute_type string No
zz_Empty0p5 sound No
zz_Empty1 sound No
zz_Empty10 sound No
zz_Empty11 sound No
zz_Empty12 sound No
zz_Empty14 sound No
zz_Empty16 sound No
zz_Empty18 sound No
zz_Empty1p5 sound No
zz_Empty2 sound No
zz_Empty20 sound No
zz_Empty22 sound No
zz_Empty24 sound No
zz_Empty26 sound No
zz_Empty28 sound No
zz_Empty2p5 sound No
zz_Empty3 sound No
zz_Empty30 sound No
zz_Empty32 sound No
zz_Empty4 sound No
zz_Empty5 sound No
zz_Empty6 sound No
zz_Empty7 sound No
zz_Empty8 sound No
zz_Empty9 sound No
zz_EngineTimerDialogs timerdialog Yes
zz_EngineTimers timer Yes
zz_english_button button No
zz_EnumItemType integer No
zz_EnumItemTypeT itemtype No
zz_ErweckteIndex integer No
zz_ErweckteKreaturen unit Yes
zz_Farbinterval real Yes
zz_ForRectItem boolean No
zz_french_button button No
zz_game_start_dialog dialog No
zz_game_start_trigger trigger No
zz_GewitterBlitze integer No
zz_GewitterCenter location No
zz_GlowEffect effect Yes
zz_GlowEffectPlus effect Yes
zz_heap_array_0 integer Yes
zz_heap_array_1 integer Yes
zz_heap_array_2 integer Yes
zz_heap_array_begin integer No
zz_heap_array_end integer No
zz_heap_arraycount integer No
zz_heap_descriptor_alloccursor integer No
zz_heap_descriptor_array_0 integer Yes
zz_heap_descriptor_array_1 integer Yes
zz_heap_descriptor_arraycount integer No
zz_heap_descriptor_begin integer No
zz_heap_descriptor_end integer No
zz_heap_descriptor_first integer No
zz_heap_descriptor_last integer No
zz_heap_descriptor_record_size integer No
zz_HeroChoice trigger No
zz_HeroDiedMsg trigger No
zz_HeroSkill1 integer Yes
zz_HeroSkill2 integer Yes
zz_HeroSkill3 integer Yes
zz_HeroSkill4 integer Yes
zz_HeroSkill5 integer Yes
zz_IsAlreadyPathing boolean Yes
zz_ItemIndex integer No
zz_language_dialog dialog No
zz_language_trigger trigger No
zz_LastClickedButtonNr integer Yes
zz_LastCreatedMovingSFX integer No
zz_LastCreatedMultiboardItem multiboarditem No
zz_LastMidiSound sound No
zz_LastMultipleChoice integer Yes
zz_LifeRegenUpgr integer Yes
zz_ManaRegenUpgr integer Yes
zz_MissileLength integer No
zz_MissileModel string Yes
zz_MissileOrder string Yes
zz_MissileUnitType integer Yes
zz_MJAuswahl boolean Yes
zz_MJAuswahleinheit unit Yes
zz_MJLastSound sound Yes
zz_MJPlayerPointer integer No
zz_MJSelected group Yes
zz_MJTrig1 trigger Yes
zz_MJTrig2 trigger Yes
zz_ModuloHex integer No
zz_MoveRateUpgr integer Yes
zz_MovForward trigger No
zz_MovingSFX effect Yes
zz_MovingSFXAbstand real Yes
zz_MovingSFXCenter location Yes
zz_MovingSFXCounter integer Yes
zz_MovingSFXKilled boolean Yes
zz_MovingSFXLength integer No
zz_MovingSFXLoop boolean Yes
zz_MovingSFXNach rect Yes
zz_MovingSFXNr integer Yes
zz_MovingSFXPath string Yes
zz_MovingSFXRadius real Yes
zz_MovingSFXStartAngle real Yes
zz_MovingSFXTrigger trigger Yes
zz_MovingSFXType integer Yes
zz_MovingSFXUnit unit Yes
zz_MovingSFXVor rect Yes
zz_MovingSFXWait real Yes
zz_MovLeft integer Yes
zz_MovMoving boolean Yes
zz_MovRight integer Yes
zz_MovSidewards trigger No
zz_MovUnit unit Yes
zz_ndbn_button button Yes
zz_ndbn_length integer No
zz_no_human_mode button No
zz_NoBuildIndex integer No
zz_NoBuildRects rect Yes
zz_NoBuildTrig trigger No
zz_number_dialog dialog No
zz_observer_god boolean No
zz_parsed_command string Yes
zz_pcbn_button button Yes
zz_pcbn_length integer No
zz_pcbn_number integer Yes
zz_player_dialog dialog No
zz_PlayerLeftMsg trigger No
zz_PortaleffektA effect Yes
zz_PortaleffektB effect No
zz_PortaltriggerA trigger No
zz_PortaltriggerB trigger No
zz_PressDown trigger No
zz_PressLeft trigger No
zz_PressRight trigger No
zz_PressUp trigger No
zz_PrevCam camerasetup Yes
zz_RangeUpgr integer Yes
zz_RegrowingTrees trigger No
zz_ReleaseLeft trigger No
zz_ReleaseRight trigger No
zz_ReleaseUp trigger No
zz_root_dialog dialog No
zz_SaveLoadSettings boolean Yes
zz_sdbn_button button Yes
zz_sdbn_length integer No
zz_sdbn_number integer Yes
zz_SEAnzahl integer No
zz_SECaster unit No
zz_SECastingType integer Yes
zz_SEFunc string Yes
zz_SEId integer Yes
zz_SEIndex integer No
zz_SELastOrder string No
zz_SelectableHeros group No
zz_SEMana real Yes
zz_SEOrder string Yes
zz_SERange real Yes
zz_SETarget unit No
zz_SETX real No
zz_SETY real No
zz_ShortcutId string Yes
zz_start_dialog dialog No
zz_StimmeAbgegeben boolean Yes
zz_Stimmen integer Yes
zz_StimmenAbgabe trigger No
zz_StimmenAbgegeben integer No
zz_StringIdent string No
zz_swedish_button button No
zz_TargetDistance real Yes
zz_TargetUpgr integer Yes
zz_TimerCounter integer No
zz_TPCenter rect No
zz_TPCondition triggercondition Yes
zz_TPEingang rect Yes
zz_TPNextTown rect No
zz_TPOpen boolean Yes
zz_TPPointer integer No
zz_TPRestrictGroup group No
zz_TPRestrictType integer No
zz_TPWatchersA real No
zz_TPWatchersB real No
zz_tribute_amount string No
zz_tribute_dlg dialog No
zz_tribute_dlg_button button Yes
zz_tribute_dlg_length integer No
zz_tribute_g button No
zz_tribute_l button No
zz_tribute_type string No
zz_TrigAlways trigger No
zz_UnfertigeGebaeude unit Yes
zz_UnfertigeGebIndex integer No
zz_UnfertigeUpgrades unit Yes
zz_UnfertigeUpgradesIndex integer No
zz_UnitIndex integer No
zz_UseAngle boolean Yes
zz_UseDistance boolean Yes
zz_UseOffset boolean Yes
zz_UseRoll boolean Yes
zz_UseRotation boolean Yes
zz_UseZOffset boolean Yes
zz_VotingAuswahl string Yes
zz_VotingBoard leaderboard Yes
zz_VotingErgebnis string No
zz_VotingFolge string Yes
zz_VotingGeheim boolean No
zz_VotingTimer timerdialog No
zz_XAcquiredItem item Yes
zz_XBuiltConstruction unit Yes
zz_XDroppedItem item Yes
zz_XLearnedSkill integer Yes
zz_XResearchedUpgrade integer Yes
zz_XSoldItem item Yes
zz_XSoldUnit unit Yes
zz_XSummonedUnit unit Yes
zz_XTrainedUnit unit Yes
have fun, give tribute to me and Miraglade, and change the name of the map in order to tell the difference ;)

Teldrassil

If u change the Pacifc version give tribute to UndeadConquer16 and Re4HandCannon

-This version is not locked but is still in use -
-This message will change when the final and complete version is done and locked.
Lock camera
  Events
    Time - Elapsed game time is 0.10 seconds
  Conditions
  Actions
    Game Cache - Create a game cache from MapName.w3v (stringnoformat)
    Set VariableSet Cache = (Last created game cache)
    For each (Integer A) from 1 to 12, do (Actions)
      Loop - Actions
        Camera - Lock camera target for (Player((Integer A))) to Camera 0005 <gen>, offset by (0, 0) using Default rotation
        Camera - Set (Player((Integer A)))'s camera Angle of attack to -30.00 over 0 seconds
        Camera - Set (Player((Integer A)))'s camera Height Offset to 1300.00 over 0 seconds
        Camera - Set (Player((Integer A)))'s camera Distance to target to 1200.00 over 0 seconds
        Player - Set (Player((Integer A))).Food cap to 6
        Player - Set (Player((Integer A))).Food used to 3
    Game - Display to (All players) the text: |cff1A52E6Select Your Plane TypeThe game will start in about|r |cffFF000025|r |cff1A52E6seconds|r|cffFF0000Click|r |cff1A52E6on an aircraft to view its stats. Then press |r |cffFF0000escape|r |cff1A52E6to pick it.Mana is used as Fuel. Your score doesnt go down when you run out of fuel but you still die.
    Countdown Timer - Start StartTimer as a One-shot timer that will expire in 50.00 seconds
    Countdown Timer - Create a timer window for (Last started timer) with title Game Starts In...
    Custom script: call DestroyTrigger(GetTriggeringTrigger())
function Trig_Select_a_plane_Actions takes nothing returns nothing
local integer speed
local integer cooldown
local integer revive
local integer turn
local integer guns

local string msg
local force f=GetForceOfPlayer(GetTriggerPlayer())

    set udg_Player_Selection[GetConvertedPlayerId(GetTriggerPlayer())]=GetTriggerUnit()
    if GetUnitTypeId(GetTriggerUnit())=='h000' then
      set speed=5
      set cooldown=3
      set revive=8
      set turn=4
      set guns=6

      set msg="The Corsair was the best embarked fighter for the United States,very fast better used for stealth."
    endif
    if GetUnitTypeId(GetTriggerUnit())=='h004' then
      set speed=3
      set cooldown=3
      set revive=3
      set turn=4
      set guns=6

      set msg="The N1K Shiden was not the most popular Japanese plane, but it did serve use as a Fighter."
    endif
     
    if GetUnitTypeId(GetTriggerUnit())=='h00C' then
      set speed=3
      set cooldown=4
      set revive=6
      set turn=5
      set guns=5

      set msg="The A6M3 Zero-Sen was possibly the most famous and most terrified plane of WW2,despite its many upgrades,until a new generation of American planes came into production."
    endif
   
    if GetUnitTypeId(GetTriggerUnit())=='h00D' then
      set speed=2
      set cooldown=3
      set revive=4
      set turn=1
      set guns=6

      set msg="The Beaufighter was a heavy fighter that was mainly used in the Europe Theatre but saw its parts in the Pacific Theatre used by the United States and Great Britian."
    endif

   if GetUnitTypeId(GetTriggerUnit())=='h00E' then
      set speed=3
      set cooldown=2
      set revive=5
      set turn=2
      set guns=7

      set msg="The Mosquito has low mobility and fire power,but its speed and health balance it out."
    endif

    if GetUnitTypeId(GetTriggerUnit())=='h005' then
      set speed=4
      set cooldown=4
      set revive=10
      set turn=5
      set guns=5

      set msg="The SpitFire MK1 had a great reputation in Great Britian, because it decided the outcome of the Battle of Britian and changed the course of WW2."
    endif

    if GetUnitTypeId(GetTriggerUnit())=='h006' then
      set speed=4
      set cooldown=2
      set revive=8
      set turn=3
      set guns=7

      set msg="The Hellcat first saw combat in August 1943, after that it quickly came one of the United States most important fighter killing around 5000 Japanese planes."
    endif

    if GetUnitTypeId(GetTriggerUnit())=='h007' then
      set speed=4
      set cooldown=3
      set revive=3
      set turn=3
      set guns=6

      set msg="The Ki-61 Hien first served use in 1943, but by then it couldnt counter the United States Hellcat or Corsair."
    endif
    call ClearTextForPlayer(GetTriggerPlayer())

    call DisplayTimedTextToForce(f,3,"----------------------------------------|cff1A52E6Stats|r----------------------------------------")
    call DisplayTimedTextToForce(f,3,msg)
    call DrawBar(GetTriggerPlayer(),3,"Plane Speed    " ,speed,5)
    call DrawBar(GetTriggerPlayer(),3,"Fire Cooldown  " ,cooldown,5)
    call DrawBar(GetTriggerPlayer(),3,"Revive Time    " ,revive,10)
    call DrawBar(GetTriggerPlayer(),3,"Turn Rate      " ,turn,5)
    call DrawBar(GetTriggerPlayer(),3,"Fire Power      " ,guns,10)
    call DisplayTimedTextToForce(f,3,"----------------------|cff1A52E6Press Escape To Chose This Aircraft|r-----------------------")
    call DisplayTimedTextToForce(f,0.05," ")
    call DisplayTimedTextToForce(f,0.05," ")
    call DisplayTimedTextToForce(f,0.05," ")
    call DisplayTimedTextToForce(f,0.05," ")
    call DisplayTimedTextToForce(f,0.05," ")
    call DisplayTimedTextToForce(f,0.05," ")
    call DestroyForce(f)

    set udg_Temp_Speed[GetConvertedPlayerId(GetTriggerPlayer())]=speed
    set udg_Temp_Cooldown[GetConvertedPlayerId(GetTriggerPlayer())]=cooldown
    set udg_Temp_Revive[GetConvertedPlayerId(GetTriggerPlayer())]=revive
    set udg_Temp_Turn[GetConvertedPlayerId(GetTriggerPlayer())]=turn
    set udg_Temp_Missle[GetConvertedPlayerId(GetTriggerPlayer())]=guns
set f=null
endfunction

//===========================================================================
function InitTrig_Select_a_plane takes nothing returns nothing
    local integer i=0
    set gg_trg_Select_a_plane = CreateTrigger(  )
    loop
      exitwhen i>11
    call TriggerRegisterPlayerSelectionEventBJ( gg_trg_Select_a_plane, Player(i), true )
    set i=i+1
    endloop
    call TriggerAddAction( gg_trg_Select_a_plane, function Trig_Select_a_plane_Actions )
endfunction

 
Choose a plane
  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
    Player_Selection[(Player number of (Triggering player))] Not equal to No unit
  Actions
    Custom script: call ClearTextForPlayer(GetTriggerPlayer())
    Set VariableSet Player_PlaneType[(Player number of (Triggering player))] = (Unit-type of Player_Selection[(Player number of (Triggering player))])
    Set VariableSet Player_Attack[(Player number of (Triggering player))] = Temp_Cooldown[(Player number of (Triggering player))]
    Set VariableSet Player_Missle[(Player number of (Triggering player))] = Temp_Missle[(Player number of (Triggering player))]
    Set VariableSet Player_Speed[(Player number of (Triggering player))] = Temp_Speed[(Player number of (Triggering player))]
    Set VariableSet Player_Turn[(Player number of (Triggering player))] = Temp_Turn[(Player number of (Triggering player))]
    Set VariableSet Player_Revive[(Player number of (Triggering player))] = Temp_Revive[(Player number of (Triggering player))]
    Game - Display to (Player group((Triggering player))) the text: |cff1A52E6Plane Type Changed|r
RemovePlanes
  Events
    Time - StartTimer expires
  Conditions
  Actions
    Countdown Timer - Destroy (Last created timer window)
    Unit - Remove Corsair 0013 <gen> from the game
    Unit - Remove Camera 0005 <gen> from the game
    Unit - Remove N1K Shiden 0014 <gen> from the game
    Unit - Remove Spitfire Mk1 0015 <gen> from the game
    Unit - Remove F6F Hellcat 0062 <gen> from the game
    Unit - Remove Ki-61 Hien 0063 <gen> from the game
    Unit - Remove A6M3 Zero-Sen 0016 <gen> from the game
    Unit - Remove Mosquito 0019 <gen> from the game
    Unit - Remove Beaufighter 0018 <gen> from the game
    Trigger - Run set_camera <gen> (ignoring conditions)
Trig
  Events
    Time - StartTimer expires
  Conditions
  Actions
    Leaderboard - Create a leaderboard for (All players) titled Player Kills
    Player Group - Pick every player in (All players) and do (Actions)
      Loop - Actions
        Leaderboard - Add (Picked player) to (Last created leaderboard) with label ((Name of (Picked player)) + Kills) and value 0
    Leaderboard - Show (Last created leaderboard)
Trig Copy
  Events
    Time - StartTimer expires
  Conditions
  Actions
    Leaderboard - Show KillBoard
Game Setup
  Events
    Map initialization
  Conditions
  Actions
    Game - Set the time of day to 24.00
    Game - Turn the day/night cycle Off
    Countdown Timer - Start StartTimer as a One-shot timer that will expire in 30.00 seconds
    Countdown Timer - Create a timer window for StartTimer with title Game Starts
    Visibility - Disable fog of war
    Visibility - Disable black mask
    Game - Display to (All players) for 30 seconds the text: |cffffcc00GAME TYPE: Free For All|r
    Game - Display to (All players) for 30 seconds the text: |cffffcc00Simple rules: Kill everyone|r
    Game - Display to (All players) for 30 seconds the text: |cffffcc00First to 15 kills wins!|r
    Player Group - Pick every player in (All players) and do (Actions)
      Loop - Actions
        Visibility - Create an initially Enabled visibility modifier for (Picked player) emitting Visibility across (Playable map area)
        Camera - Lock camera target for (Picked player) to Camera 0005 <gen>, offset by (0, 0) using Default rotation
Set Players to Enemies
  Events
    Time - StartTimer expires
  Conditions
  Actions
    For each (Integer A) from 1 to 12, do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            ((Player((Integer A))) slot status) Equal to Is playing
          Then - Actions
            Visibility - Create an initially Enabled visibility modifier for (Player((Integer A))) emitting Visibility across (Playable map area)
            For each (Integer B) from 1 to 12, do (Actions)
              Loop - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                  If - Conditions
                    ((Player((Integer B))) slot status) Equal to Is playing
                    (Player((Integer A))) Not equal to (Player((Integer B)))
                  Then - Actions
                    Player - Make (Player((Integer A))) treat (Player((Integer B))) as an Enemy
                  Else - Actions
          Else - Actions
tribute
  Events
    Map initialization
  Conditions
  Actions
    Quest - Create a Required quest titled Miraglade & Teldrassil with the description Tribute to Miraglade and Teldrassil for mostly all of the trigs and the wonderful map Star Wars DogFight., using icon path ReplaceableTextures\CommandButtons\BTNAmbush.blp
    Quest - Create a Required quest titled Model Makers with the description Tribute to the model makers that created these excellent works of art.The B-17 Bomber, Spitfire, Destroyer, Aircraft Cairrer, and the Yak-9 the were all made by Illidan(Evil)X. The A6M Zero was made by Skrab.Models from www.hiveworkshop.comHelp from map also from www.hiveworkshop.com, using icon path ReplaceableTextures\WorldEditUI\Editor-Random-Item.blp
    Quest - Create a Required quest titled Newbies Guide with the description Use the arrow keys to steer shooting down your opponents will give you one pointfirst to 15 winsF= Guns (straight line), using icon path ReplaceableTextures\CommandButtons\BTNAmbush.blp
function Trig_Set_Colors_Actions takes nothing returns nothing
   local integer i=0
   local string clr
   local playercolor c

   loop
    exitwhen i>11
     set c=GetPlayerColor(Player(i))
     if c==PLAYER_COLOR_RED then
       set clr="|cffFF0000"
     elseif c==PLAYER_COLOR_BLUE then
       set clr="|cff0000FF"
     elseif c==PLAYER_COLOR_CYAN then
       set clr="|cff00FFFF"
     elseif c==PLAYER_COLOR_PURPLE then
       set clr="|cff770077"
     elseif c==PLAYER_COLOR_YELLOW then
       set clr="|cffFFFF00"
     elseif c==PLAYER_COLOR_ORANGE then
       set clr="|cffFF8000"
     elseif c==PLAYER_COLOR_GREEN then
       set clr="|cff00D500"
     elseif c==PLAYER_COLOR_PINK then
       set clr="|cffFF80C0"
     elseif c==PLAYER_COLOR_LIGHT_GRAY then
       set clr="|cff9E9E9E"
     elseif c==PLAYER_COLOR_LIGHT_BLUE then
       set clr="|cff81BDD1"
     elseif c==PLAYER_COLOR_AQUA then
       set clr="|cff02532B"
     elseif c==PLAYER_COLOR_BROWN then
       set clr="|cff804000"
     endif

    set udg_Player_Color[i+1]=clr
    set i=i+1
   endloop
   
   call DestroyTrigger(GetTriggeringTrigger())

   set c=null
   set clr=null
endfunction

//===========================================================================
function InitTrig_Set_Colors takes nothing returns nothing
    set gg_trg_Set_Colors = CreateTrigger(  )
    call TriggerAddAction( gg_trg_Set_Colors, function Trig_Set_Colors_Actions )
endfunction

 
function Trig_set_camera_Func003Func001C takes nothing returns boolean
    if ( not ( GetPlayerSlotState(ConvertedPlayer(GetForLoopIndexA())) == PLAYER_SLOT_STATE_PLAYING ) ) then
        return false
    endif
    return true
endfunction

function Trig_set_camera_Actions takes nothing returns nothing
    local location TempPoint
    call CameraSetSmoothingFactorBJ( 0.40 )
    set bj_forLoopAIndex = 1
    set bj_forLoopAIndexEnd = 12
    loop
        exitwhen bj_forLoopAIndex > bj_forLoopAIndexEnd
        if ( Trig_set_camera_Func003Func001C() ) then
            call ClearTextForPlayer(ConvertedPlayer(GetForLoopIndexA()))
            set TempPoint=GetRectCenter(GetPlayableMapRect())
            call CreateNUnitsAtLocFacingLocBJ( 1, udg_Player_PlaneType[GetForLoopIndexA()], ConvertedPlayer(GetForLoopIndexA()), GetPlayerStartLocationLoc(ConvertedPlayer(GetForLoopIndexA())), TempPoint )
            call RemoveLocation(TempPoint)
            set udg_Plane[GetForLoopIndexA()] = GetLastCreatedUnit()
            call PanCameraToTimedLocWithZForPlayer( ConvertedPlayer(GetForLoopIndexA()), GetUnitLoc(udg_Plane[GetForLoopIndexA()]), GetUnitFlyHeight(udg_Plane[GetForLoopIndexA()]), 0 )
            call SetCameraTargetControllerNoZForPlayer( ConvertedPlayer(GetForLoopIndexA()), udg_Plane[GetForLoopIndexA()], 0, 0, false )
            call SetCameraFieldForPlayer( ConvertedPlayer(GetForLoopIndexA()), CAMERA_FIELD_TARGET_DISTANCE, 600.00, 0 )
            call CreateFogModifierRectBJ( true, ConvertedPlayer(GetForLoopIndexA()), FOG_OF_WAR_VISIBLE, GetPlayableMapRect() )
            call SelectUnitForPlayerSingle( udg_Plane[GetForLoopIndexA()], ConvertedPlayer(GetForLoopIndexA()) )
            call RemoveLocation(TempPoint)
            set TempPoint=GetUnitLoc(udg_Plane[GetForLoopIndexA()])
            set udg_LastHeight[GetForLoopIndexA()]=GetTerrainCliffLevelBJ(TempPoint)
            call RemoveLocation(TempPoint)
        else
        endif
        set bj_forLoopAIndex = bj_forLoopAIndex + 1
    endloop

    call SetSkyModel( "Environment\\Sky\\DalaranSky\\DalaranSky.mdl" )
    call EnableTrigger( gg_trg_move_plane )
    call EnableTrigger( gg_trg_upanddown )
    call EnableTrigger( gg_trg_upanddown )
    call DestroyTrigger(gg_trg_Select_a_plane)
    call DestroyTrigger(gg_trg_Choose_a_plane)
    call DestroyTrigger(GetTriggeringTrigger())
    set TempPoint=null
endfunction

//===========================================================================
function InitTrig_set_camera takes nothing returns nothing
    set gg_trg_set_camera = CreateTrigger(  )
    call TriggerAddAction( gg_trg_set_camera, function Trig_set_camera_Actions )
endfunction

 
move left
  Events
    Player - Player 1 (Red) Presses the Left Arrow key
    Player - Player 2 (Blue) Presses the Left Arrow key
    Player - Player 3 (Teal) Presses the Left Arrow key
    Player - Player 4 (Purple) Presses the Left Arrow key
    Player - Player 5 (Yellow) Presses the Left Arrow key
    Player - Player 6 (Orange) Presses the Left Arrow key
    Player - Player 7 (Green) Presses the Left Arrow key
    Player - Player 8 (Pink) Presses the Left Arrow key
    Player - Player 9 (Gray) Presses the Left Arrow key
    Player - Player 10 (Light Blue) Presses the Left Arrow key
    Player - Player 11 (Dark Green) Presses the Left Arrow key
    Player - Player 12 (Brown) Presses the Left Arrow key
  Conditions
  Actions
    Set VariableSet turnleft[(Player number of (Triggering player))] = True
    Set VariableSet turnright[(Player number of (Triggering player))] = False
move right
  Events
    Player - Player 1 (Red) Presses the Right Arrow key
    Player - Player 2 (Blue) Presses the Right Arrow key
    Player - Player 3 (Teal) Presses the Right Arrow key
    Player - Player 4 (Purple) Presses the Right Arrow key
    Player - Player 5 (Yellow) Presses the Right Arrow key
    Player - Player 6 (Orange) Presses the Right Arrow key
    Player - Player 7 (Green) Presses the Right Arrow key
    Player - Player 8 (Pink) Presses the Right Arrow key
    Player - Player 9 (Gray) Presses the Right Arrow key
    Player - Player 10 (Light Blue) Presses the Right Arrow key
    Player - Player 11 (Dark Green) Presses the Right Arrow key
    Player - Player 12 (Brown) Presses the Right Arrow key
  Conditions
  Actions
    Set VariableSet turnright[(Player number of (Triggering player))] = True
    Set VariableSet turnleft[(Player number of (Triggering player))] = False
stop moving left
  Events
    Player - Player 1 (Red) Releases the Left Arrow key
    Player - Player 2 (Blue) Releases the Left Arrow key
    Player - Player 3 (Teal) Releases the Left Arrow key
    Player - Player 4 (Purple) Releases the Left Arrow key
    Player - Player 5 (Yellow) Releases the Left Arrow key
    Player - Player 6 (Orange) Releases the Left Arrow key
    Player - Player 7 (Green) Releases the Left Arrow key
    Player - Player 8 (Pink) Releases the Left Arrow key
    Player - Player 9 (Gray) Releases the Left Arrow key
    Player - Player 10 (Light Blue) Releases the Left Arrow key
    Player - Player 11 (Dark Green) Releases the Left Arrow key
    Player - Player 12 (Brown) Releases the Left Arrow key
  Conditions
  Actions
    Set VariableSet turnleft[(Player number of (Triggering player))] = False
stop moving right
  Events
    Player - Player 1 (Red) Releases the Right Arrow key
    Player - Player 2 (Blue) Releases the Right Arrow key
    Player - Player 3 (Teal) Releases the Right Arrow key
    Player - Player 4 (Purple) Releases the Right Arrow key
    Player - Player 5 (Yellow) Releases the Right Arrow key
    Player - Player 6 (Orange) Releases the Right Arrow key
    Player - Player 7 (Green) Releases the Right Arrow key
    Player - Player 8 (Pink) Releases the Right Arrow key
    Player - Player 9 (Gray) Releases the Right Arrow key
    Player - Player 10 (Light Blue) Releases the Right Arrow key
    Player - Player 11 (Dark Green) Releases the Right Arrow key
    Player - Player 12 (Brown) Releases the Right Arrow key
  Conditions
  Actions
    Set VariableSet turnright[(Player number of (Triggering player))] = False
uparrowpress
  Events
    Player - Player 1 (Red) Presses the Up Arrow key
    Player - Player 2 (Blue) Presses the Up Arrow key
    Player - Player 3 (Teal) Presses the Up Arrow key
    Player - Player 4 (Purple) Presses the Up Arrow key
    Player - Player 5 (Yellow) Presses the Up Arrow key
    Player - Player 6 (Orange) Presses the Up Arrow key
    Player - Player 7 (Green) Presses the Up Arrow key
    Player - Player 8 (Pink) Presses the Up Arrow key
    Player - Player 9 (Gray) Presses the Up Arrow key
    Player - Player 10 (Light Blue) Presses the Up Arrow key
    Player - Player 11 (Dark Green) Presses the Up Arrow key
    Player - Player 12 (Brown) Presses the Up Arrow key
  Conditions
  Actions
    Set VariableSet goingup[(Player number of (Triggering player))] = True
    Set VariableSet goingdown[(Player number of (Triggering player))] = False
uparrowrelease
  Events
    Player - Player 1 (Red) Releases the Up Arrow key
    Player - Player 2 (Blue) Releases the Up Arrow key
    Player - Player 3 (Teal) Releases the Up Arrow key
    Player - Player 4 (Purple) Releases the Up Arrow key
    Player - Player 5 (Yellow) Releases the Up Arrow key
    Player - Player 6 (Orange) Releases the Up Arrow key
    Player - Player 7 (Green) Releases the Up Arrow key
    Player - Player 8 (Pink) Releases the Up Arrow key
    Player - Player 9 (Gray) Releases the Up Arrow key
    Player - Player 10 (Light Blue) Releases the Up Arrow key
    Player - Player 11 (Dark Green) Releases the Up Arrow key
    Player - Player 12 (Brown) Releases the Up Arrow key
  Conditions
  Actions
    Set VariableSet goingup[(Player number of (Triggering player))] = False
downarrow press
  Events
    Player - Player 1 (Red) Presses the Down Arrow key
    Player - Player 2 (Blue) Presses the Down Arrow key
    Player - Player 3 (Teal) Presses the Down Arrow key
    Player - Player 4 (Purple) Presses the Down Arrow key
    Player - Player 5 (Yellow) Presses the Down Arrow key
    Player - Player 6 (Orange) Presses the Down Arrow key
    Player - Player 7 (Green) Presses the Down Arrow key
    Player - Player 8 (Pink) Presses the Down Arrow key
    Player - Player 9 (Gray) Presses the Down Arrow key
    Player - Player 10 (Light Blue) Presses the Down Arrow key
    Player - Player 11 (Dark Green) Presses the Down Arrow key
    Player - Player 12 (Brown) Presses the Down Arrow key
  Conditions
  Actions
    Set VariableSet goingdown[(Player number of (Triggering player))] = True
    Set VariableSet goingup[(Player number of (Triggering player))] = False
downarrow release
  Events
    Player - Player 1 (Red) Releases the Down Arrow key
    Player - Player 2 (Blue) Releases the Down Arrow key
    Player - Player 3 (Teal) Releases the Down Arrow key
    Player - Player 4 (Purple) Releases the Down Arrow key
    Player - Player 5 (Yellow) Releases the Down Arrow key
    Player - Player 6 (Orange) Releases the Down Arrow key
    Player - Player 7 (Green) Releases the Down Arrow key
    Player - Player 8 (Pink) Releases the Down Arrow key
    Player - Player 9 (Gray) Releases the Down Arrow key
    Player - Player 10 (Light Blue) Releases the Down Arrow key
    Player - Player 11 (Dark Green) Releases the Down Arrow key
    Player - Player 12 (Brown) Releases the Down Arrow key
  Conditions
  Actions
    Set VariableSet goingdown[(Player number of (Triggering player))] = False
Fire Sound
  Events
    Unit - A unit Finishes casting an ability
  Conditions
    (Ability being cast) Equal to Fire Primary Guns
  Actions
    Sound - Play Sound_Effects___machine_gun_rapid_fire <gen> at 100.00% volume, attached to (Triggering unit)
Loop
  Events
    Unit - A unit enters Looping2 <gen>
  Conditions
  Actions
    Unit - Move (Entering unit) instantly to ((Position of (Entering unit)) offset by 9000.00 towards 0 degrees.), facing Default building facing degrees
Loop Copy
  Events
    Unit - A unit enters Looping2copy <gen>
  Conditions
  Actions
    Unit - Move (Entering unit) instantly to ((Position of (Entering unit)) offset by 9000.00 towards 180.00 degrees.), facing Default building facing degrees
Loop Copy Copy
  Events
    Unit - A unit enters Looping_Copy <gen>
  Conditions
  Actions
    Unit - Move (Entering unit) instantly to ((Position of (Entering unit)) offset by 9000.00 towards 270.00 degrees.), facing Default building facing degrees
Loop Copy Copy Copy
  Events
    Unit - A unit enters Looping <gen>
  Conditions
  Actions
    Unit - Move (Entering unit) instantly to ((Position of (Entering unit)) offset by 9000.00 towards 90.00 degrees.), facing Default building facing degrees
function Trig_Untitled_Trigger_003_Actions takes nothing returns nothing
local integer LoopIndex=1
local location TempPoint
 
loop
  exitwhen LoopIndex>12
  set TempPoint=Location(GetUnitX(udg_Plane[LoopIndex]) + 300 * Cos(GetUnitFacing(udg_Plane[LoopIndex]) * bj_DEGTORAD),GetUnitY(udg_Plane[LoopIndex]) + 150 * Sin(GetUnitFacing(udg_Plane[LoopIndex]) * bj_DEGTORAD))
  set udg_NextHeight[LoopIndex]=GetTerrainCliffLevelBJ(TempPoint)
  if udg_LastHeight[LoopIndex]<udg_NextHeight[LoopIndex] then
   
     set udg_TargetHeight[LoopIndex]=udg_TargetHeight[LoopIndex]+300*IAbsBJ(udg_LastHeight[LoopIndex]-udg_NextHeight[LoopIndex])

  elseif udg_LastHeight[LoopIndex]>udg_NextHeight[LoopIndex] then
   
     set udg_TargetHeight[LoopIndex]=udg_TargetHeight[LoopIndex]-300*IAbsBJ(udg_LastHeight[LoopIndex]-udg_NextHeight[LoopIndex])


  else

  endif
  call RemoveLocation(TempPoint)
 
  if udg_HeightQue[LoopIndex]<udg_TargetHeight[LoopIndex] then
    set udg_HeightQue[LoopIndex]=udg_HeightQue[LoopIndex]+45
  elseif udg_HeightQue[LoopIndex]>udg_TargetHeight[LoopIndex] then
    set udg_HeightQue[LoopIndex]=udg_HeightQue[LoopIndex]-25
  endif
  set udg_LastHeight[LoopIndex]=udg_NextHeight[LoopIndex]
  set LoopIndex=LoopIndex+1
endloop

endfunction

//===========================================================================
function InitTrig_HeightSet takes nothing returns nothing
    set gg_trg_HeightSet = CreateTrigger(  )
    call TriggerRegisterTimerEventPeriodic( gg_trg_HeightSet, 0.05 )
    call TriggerAddAction( gg_trg_HeightSet, function Trig_Untitled_Trigger_003_Actions )
endfunction

 
function Trig_move_plane_Func001Func001C takes nothing returns boolean
    if ( not ( udg_turnright[GetForLoopIndexA()] == true ) ) then
        return false
    endif
    return true
endfunction

function Trig_move_plane_Func001Func002C takes nothing returns boolean
    if ( not ( udg_turnleft[GetForLoopIndexA()] == true ) ) then
        return false
    endif
    return true
endfunction

function Trig_move_plane_Func001Func003C takes nothing returns boolean
    if ( not ( udg_turnright[GetForLoopIndexA()] == false ) ) then
        return false
    endif
    if ( not ( udg_turnleft[GetForLoopIndexA()] == false ) ) then
        return false
    endif
    return true
endfunction

function Trig_move_plane_Actions takes nothing returns nothing
    set bj_forLoopAIndex = 1
    set bj_forLoopAIndexEnd = 12
    loop
        exitwhen bj_forLoopAIndex > bj_forLoopAIndexEnd
      if (IsUnitAliveBJ(udg_Plane[GetForLoopIndexA()]) == true ) then
        if ( Trig_move_plane_Func001Func001C() ) then
            call MoveUnitToPolarProjection(udg_Plane[GetForLoopIndexA()], 16.00+udg_Player_Speed[GetForLoopIndexA()]*4, GetUnitFacing(udg_Plane[GetForLoopIndexA()]) - (1+udg_Player_Turn[GetForLoopIndexA()]*1.5) )
        endif
        if ( Trig_move_plane_Func001Func002C() ) then
            call MoveUnitToPolarProjection(udg_Plane[GetForLoopIndexA()], 16.00+udg_Player_Speed[GetForLoopIndexA()]*4, GetUnitFacing(udg_Plane[GetForLoopIndexA()]) + (1+udg_Player_Turn[GetForLoopIndexA()]*1.5))    
        endif
        if ( Trig_move_plane_Func001Func003C() ) then
            call MoveUnitToPolarProjection(udg_Plane[GetForLoopIndexA()], 16.00+udg_Player_Speed[GetForLoopIndexA()]*4, GetUnitFacing(udg_Plane[GetForLoopIndexA()]) )
        endif
 
        call SetCameraFieldForPlayer( ConvertedPlayer(GetForLoopIndexA()), CAMERA_FIELD_ROTATION, GetUnitFacing(udg_Plane[GetForLoopIndexA()]), 0.50 )
        call SetCameraFieldForPlayer( ConvertedPlayer(GetForLoopIndexA()), CAMERA_FIELD_ZOFFSET,  175+ GetUnitFlyHeight(udg_Plane[GetForLoopIndexA()]), 0 )
        call SetCameraFieldForPlayer( ConvertedPlayer(GetForLoopIndexA()), CAMERA_FIELD_ANGLE_OF_ATTACK, 0.00, 0.00 )

        call SetCameraFieldForPlayer( ConvertedPlayer(GetForLoopIndexA()), CAMERA_FIELD_TARGET_DISTANCE, 700.00, 0 )
        call SetCameraTargetControllerNoZForPlayer( ConvertedPlayer(GetForLoopIndexA()),udg_Plane[GetForLoopIndexA()], 0, 0, false )
      endif
        set bj_forLoopAIndex = bj_forLoopAIndex + 1
    endloop
endfunction

//===========================================================================
function InitTrig_move_plane takes nothing returns nothing
    set gg_trg_move_plane = CreateTrigger(  )
    call DisableTrigger( gg_trg_move_plane )
    call TriggerRegisterTimerEventPeriodic( gg_trg_move_plane, 0.05 )
    call TriggerAddAction( gg_trg_move_plane, function Trig_move_plane_Actions )
endfunction

 
upanddown
  Events
    Time - Every 0.05 seconds of game time
  Conditions
  Actions
    For each (Integer B) from 1 to 12, do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            goingup[(Integer B)] Equal to True
            (Plane[(Integer B)] is alive) Equal to True
          Then - Actions
            Animation - Change Plane[(Integer B)] flying height to ((Current flying height of Plane[(Integer B)]) - 5.00) at 1000.00
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            goingdown[(Integer B)] Equal to True
          Then - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Integer((Current flying height of Plane[(Integer B)]))) Less than 1000
                (Plane[(Integer B)] is alive) Equal to True
              Then - Actions
                Animation - Change Plane[(Integer B)] flying height to ((Current flying height of Plane[(Integer B)]) + 5.00) at 1000.00
              Else - Actions
          Else - Actions
function Trig_Revive_Conditions takes nothing returns boolean
    if (GetTriggerUnit() == udg_Plane[GetConvertedPlayerId(GetTriggerPlayer())]) then
     return true
    endif
    return false
endfunction

function Trig_Revive_Func005Func009Func002A takes nothing returns nothing
    call CustomDefeatBJ( GetEnumPlayer(), "TRIGSTR_030" )
endfunction

function Trig_Revive_Func005Func009C takes nothing returns boolean
    if ( not ( udg_PlayerKills[GetConvertedPlayerId(GetOwningPlayer(GetKillingUnitBJ()))] >= 15 ) ) then
        return false
    endif
    return true
endfunction

function Trig_Revive_Func006C takes nothing returns boolean
    if ( not ( GetPlayerSlotState(GetTriggerPlayer()) == PLAYER_SLOT_STATE_PLAYING ) ) then
        return false
    endif
    return true
endfunction

function Trig_Revive_Actions takes nothing returns nothing
    local location TempPoint
    set TempPoint = GetUnitLoc(GetTriggerUnit())
    call CreateNUnitsAtLoc( 1, 'h003', GetTriggerPlayer(), TempPoint, bj_UNIT_FACING )
    call RemoveLocation(TempPoint)
    call SetUnitFlyHeightBJ( GetLastCreatedUnit(), GetUnitFlyHeight(GetTriggerUnit()), 10000.00 )
    call SetCameraTargetControllerNoZForPlayer( GetTriggerPlayer(), GetLastCreatedUnit(), 0, 0, false )
    call UnitApplyTimedLifeBJ( 10.00, 'BTLF', GetLastCreatedUnit() )
    if ( GetTriggerPlayer()==GetOwningPlayer(GetKillingUnit()) ) then
        call DisplayTextToForce( GetPlayersAll(), ( udg_Player_Color[GetConvertedPlayerId(GetTriggerPlayer())] + ( GetPlayerName(GetTriggerPlayer()) + "|r just killed himself." ) ) )
        set udg_PlayerKills[GetConvertedPlayerId(GetOwningPlayer(GetKillingUnitBJ()))] = ( udg_PlayerKills[GetConvertedPlayerId(GetOwningPlayer(GetKillingUnitBJ()))] - 1 )
        call LeaderboardSetPlayerItemValueBJ( GetOwningPlayer(GetKillingUnitBJ()), GetLastCreatedLeaderboard(), udg_PlayerKills[GetConvertedPlayerId(GetOwningPlayer(GetKillingUnitBJ()))] )
        call LeaderboardSortItemsBJ( GetLastCreatedLeaderboard(), bj_SORTTYPE_SORTBYVALUE, false )
    else
        call DisplayTextToForce( GetPlayersAll(), ( udg_Player_Color[GetConvertedPlayerId(GetOwningPlayer(GetKillingUnitBJ()))] + ( GetPlayerName(GetOwningPlayer(GetKillingUnitBJ())) + ( "|r" + ( " just shot down " + ( udg_Player_Color[GetConvertedPlayerId(GetTriggerPlayer())] + ( GetPlayerName(GetTriggerPlayer()) + "|r." ) ) ) ) ) ) )
        set udg_PlayerKills[GetConvertedPlayerId(GetOwningPlayer(GetKillingUnitBJ()))] = ( udg_PlayerKills[GetConvertedPlayerId(GetOwningPlayer(GetKillingUnitBJ()))] + 1 )
        call LeaderboardSetPlayerItemValueBJ( GetOwningPlayer(GetKillingUnitBJ()), GetLastCreatedLeaderboard(), udg_PlayerKills[GetConvertedPlayerId(GetOwningPlayer(GetKillingUnitBJ()))] )
        call LeaderboardSortItemsBJ( GetLastCreatedLeaderboard(), bj_SORTTYPE_SORTBYVALUE, false )
        if ( Trig_Revive_Func005Func009C() ) then
            call CustomVictoryBJ( GetOwningPlayer(GetKillingUnitBJ()), true, true )
            call ForForce( GetPlayersEnemies(GetOwningPlayer(GetKillingUnitBJ())), function Trig_Revive_Func005Func009Func002A )
        endif
    endif
    if ( Trig_Revive_Func006C() ) then
        set TempPoint = GetPlayerStartLocationLoc(Player(GetRandomInt(0,11)))
        call TriggerSleepAction( 2.00+(8-udg_Player_Revive[GetConvertedPlayerId(GetTriggerPlayer())])*1.5 )
        call CreateNUnitsAtLoc( 1, udg_Player_PlaneType[GetConvertedPlayerId(GetTriggerPlayer())], GetTriggerPlayer(), TempPoint , bj_UNIT_FACING )
        call RemoveLocation(TempPoint)
        set udg_Plane[GetConvertedPlayerId(GetTriggerPlayer())] = GetLastCreatedUnit()
        call SetUnitManaPercentBJ( udg_Plane[GetConvertedPlayerId(GetTriggerPlayer())], 100.00 )
        set TempPoint = GetUnitLoc(udg_Plane[GetConvertedPlayerId(GetTriggerPlayer())])
        call PanCameraToTimedLocWithZForPlayer( GetTriggerPlayer(), TempPoint , GetUnitFlyHeight(udg_Plane[GetConvertedPlayerId(GetTriggerPlayer())]), 0 )
        call RemoveLocation(TempPoint)
        call SetCameraTargetControllerNoZForPlayer( GetTriggerPlayer(), udg_Plane[GetConvertedPlayerId(GetTriggerPlayer())], 0, 0, false )
        call SelectUnitForPlayerSingle( udg_Plane[GetConvertedPlayerId(GetTriggerPlayer())], GetTriggerPlayer() )
        call SetCameraFieldForPlayer( GetTriggerPlayer(), CAMERA_FIELD_TARGET_DISTANCE, 600.00, 0 )
    endif
    set TempPoint=null
endfunction

//===========================================================================
function InitTrig_Revive takes nothing returns nothing
    set gg_trg_Revive = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( gg_trg_Revive, EVENT_PLAYER_UNIT_DEATH )
    call TriggerAddCondition( gg_trg_Revive, Condition( function Trig_Revive_Conditions ) )
    call TriggerAddAction( gg_trg_Revive, function Trig_Revive_Actions )
endfunction

 
Set Missle Level
  Events
    Unit - A unit enters (Playable map area)
  Conditions
    (Unit-type of (Triggering unit)) Equal to Corsair
  Actions
    Unit - Set level of Fire Primary Guns for (Triggering unit) to (Player_Attack[(Player number of (Owner of (Triggering unit)))] + 0)
Player leaves
  Events
    Player - Player 1 (Red) leaves the game
    Player - Player 2 (Blue) leaves the game
    Player - Player 3 (Teal) 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 7 (Green) leaves the game
    Player - Player 8 (Pink) 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
  Conditions
  Actions
    Game - Display to (All players) the text: ((Name of (Triggering player)) + has left the game.)
    Leaderboard - Remove (Triggering player) from (Last created leaderboard).
    For each (Integer B) from 1 to 12, do (Actions)
      Loop - Actions
        Player - Add -1 to (Player((Integer B))).Food used
function Trig_Locust_Func001002 takes nothing returns nothing
  if RectContainsUnit(gg_rct_Planes, GetEnumUnit()) == false then
    call UnitAddAbilityBJ( 'Aloc', GetEnumUnit() )
  endif
endfunction

function Trig_Locust_Actions takes nothing returns nothing
    call ForGroupBJ( GetUnitsInRectAll(GetPlayableMapRect()), function Trig_Locust_Func001002 )
endfunction

//===========================================================================
function InitTrig_Locust takes nothing returns nothing
    set gg_trg_Locust = CreateTrigger(  )
    call TriggerAddAction( gg_trg_Locust, function Trig_Locust_Actions )
endfunction

 
Initi
  Events
    Map initialization
  Conditions
  Actions
    Unit Group - Add Ki-61 Hien 0063 <gen> to Planess
    Unit Group - Add Spitfire Mk1 0015 <gen> to Planess
    Unit Group - Add Corsair 0013 <gen> to Planess
    Unit Group - Add N1K Shiden 0014 <gen> to Planess
    Unit Group - Add F6F Hellcat 0062 <gen> to Planess
    Unit Group - Add A6M3 Zero-Sen 0016 <gen> to Planess
    Unit Group - Add Mosquito 0019 <gen> to Planess
    Unit Group - Add Beaufighter 0018 <gen> to Planess
moremore Copy
  Events
    Time - Elapsed game time is 4.00 seconds
  Conditions
  Actions
    Player Group - Pick every player in (All players controlled by a Computer player) and do (Actions)
      Loop - Actions
        Set VariableSet Player_PlaneType[(Player number of (Picked player))] = (Unit-type of (Random unit from Planess))
Aifire
  Events
    Time - Every 1.00 seconds of game time
  Conditions
  Actions
    Unit Group - Pick every unit in (Units of type N1K Shiden) and do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            ((Owner of (Picked unit)) controller) Equal to Computer
          Then - Actions
            Unit - Order (Picked unit) to Orc Troll Berserker - Berserk.
          Else - Actions
Aifire Copy 2
  Events
    Time - Every 1.00 seconds of game time
  Conditions
  Actions
    Unit Group - Pick every unit in (Units of type F6F Hellcat) and do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            ((Owner of (Picked unit)) controller) Equal to Computer
          Then - Actions
            Unit - Order (Picked unit) to Orc Troll Berserker - Berserk.
          Else - Actions
Aifire Copy 3
  Events
    Time - Every 1.00 seconds of game time
  Conditions
  Actions
    Unit Group - Pick every unit in (Units of type Corsair) and do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            ((Owner of (Picked unit)) controller) Equal to Computer
          Then - Actions
            Unit - Order (Picked unit) to Orc Troll Berserker - Berserk.
          Else - Actions
Aifire Copy 4
  Events
    Time - Every 1.00 seconds of game time
  Conditions
  Actions
    Unit Group - Pick every unit in (Units of type Ki-61 Hien) and do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            ((Owner of (Picked unit)) controller) Equal to Computer
          Then - Actions
            Unit - Order (Picked unit) to Orc Troll Berserker - Berserk.
          Else - Actions
Aifire Copy 5
  Events
    Time - Every 1.00 seconds of game time
  Conditions
  Actions
    Unit Group - Pick every unit in (Units of type Ki-61 Hien) and do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            ((Owner of (Picked unit)) controller) Equal to Computer
          Then - Actions
            Unit - Order (Picked unit) to Orc Troll Berserker - Berserk.
          Else - Actions
Aifire Copy
  Events
    Time - Every 6.00 seconds of game time
  Conditions
  Actions
    Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            ((Owner of (Picked unit)) controller) Equal to Computer
          Then - Actions
            Unit - Make (Picked unit) face (Random angle) over 1.00 seconds
            Unit - Turn collision for PickedUnit On.
          Else - Actions
AIhoming
  Events
    Time - Every 10.00 seconds of game time
  Conditions
  Actions
    Unit Group - Pick every unit in (Units in (Playable map area) matching (((Owner of (Matching unit)) controller) Equal to Computer)) and do (Actions)
      Loop - Actions
        Unit - Order (Picked unit) to Neutral Alchemist - Chemical Rage.
AIhoming Copy
  Events
    Time - Every (Random real number between 1.00 and 15.00) seconds of game time
  Conditions
  Actions
    Unit Group - Pick every unit in (Units in (Playable map area) matching (((Owner of (Matching unit)) controller) Equal to Computer)) and do (Actions)
      Loop - Actions
        Unit - Order (Picked unit) to Special Sylvanas Windrunner - Activate Cold Arrows.
function Trig_Missle_Copy_Conditions takes nothing returns boolean
    if ( not ( GetSpellAbilityId() == 'A004' ) ) then
        return false
    endif
    return true
endfunction

function Trig_Missle_Copy_Actions takes nothing returns nothing
    local location TempPoint = GetUnitLoc(udg_Plane[GetConvertedPlayerId(GetTriggerPlayer())])
    if GetRandomInt(1,100)>=(100-(udg_Player_Attack[GetConvertedPlayerId(GetTriggerPlayer())]*15)) then
         call UnitResetCooldown( GetTriggerUnit() )
    endif
   
    call CreateNUnitsAtLoc( 1, 'h001', GetTriggerPlayer(),TempPoint , GetUnitFacing(udg_Plane[GetConvertedPlayerId(GetTriggerPlayer())]) )
    call SetUnitFlyHeightBJ( GetLastCreatedUnit(), GetUnitFlyHeight(udg_Plane[GetConvertedPlayerId(GetTriggerPlayer())]), 10000.00 )
    call UnitApplyTimedLifeBJ( 3.00, 'BTLF', GetLastCreatedUnit() )
    call GroupAddUnitSimple( GetLastCreatedUnit(), udg_Missles )
    call RemoveLocation(TempPoint)
    set TempPoint=null
endfunction

//===========================================================================
function InitTrig_Missle takes nothing returns nothing
    set gg_trg_Missle = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( gg_trg_Missle, EVENT_PLAYER_UNIT_SPELL_EFFECT )
    call TriggerAddCondition( gg_trg_Missle, Condition( function Trig_Missle_Copy_Conditions ) )
    call TriggerAddAction( gg_trg_Missle, function Trig_Missle_Copy_Actions )
endfunction

 
function Trig_Move_Func001Func003001002 takes nothing returns boolean
    return ( IsUnitEnemy(GetFilterUnit(), GetOwningPlayer(GetEnumUnit())) == true )
endfunction

function Trig_Move_Func001Func003A takes nothing returns nothing
    if ( GetUnitFlyHeight(GetEnumUnit()) <= ( GetUnitFlyHeight(udg_PickedUnit) + 100.00 )  ) then
       if ( GetUnitFlyHeight(GetEnumUnit()) >= ( GetUnitFlyHeight(udg_PickedUnit) - 10.00 )  ) then
        call UnitDamageTargetBJ( udg_PickedUnit, GetEnumUnit(),150, ATTACK_TYPE_NORMAL, DAMAGE_TYPE_NORMAL )
        call ExplodeUnitBJ( udg_PickedUnit )
       endif
    endif
endfunction

function Trig_Move_Func001A takes nothing returns nothing
    local location TempPoint
    local rect TempRect
    local group TempGroup
    local conditionfunc TempCondition

    call MoveUnitToPolarProjection(GetEnumUnit(), 55.00+udg_Player_Missle[GetConvertedPlayerId(GetOwningPlayer(GetEnumUnit()))]*15, GetUnitFacing(GetEnumUnit()) )

    set udg_PickedUnit = GetEnumUnit()

    set TempPoint= GetUnitLoc(GetEnumUnit())
    set TempRect = RectFromCenterSizeBJ(TempPoint, 175.00, 175.00)
    set TempCondition = Condition(function Trig_Move_Func001Func003001002)
    set TempGroup = GetUnitsInRectMatching(TempRect,TempCondition )

    call ForGroupBJ( TempGroup, function Trig_Move_Func001Func003A )

    call RemoveRect(TempRect)
    call RemoveLocation(TempPoint)
    call DestroyGroup(TempGroup)
    call DestroyCondition(TempCondition)

    set TempGroup=null
    set TempPoint = null
    set TempRect = null
    set TempCondition = null
endfunction

function Trig_Move_Actions takes nothing returns nothing
    call ForGroupBJ( udg_Missles, function Trig_Move_Func001A )
endfunction

//===========================================================================
function InitTrig_Move takes nothing returns nothing
    set gg_trg_Move = CreateTrigger(  )
    call TriggerRegisterTimerEventPeriodic( gg_trg_Move, 0.05 )
    call TriggerAddAction( gg_trg_Move, function Trig_Move_Actions )
endfunction

 
Missle Death
  Events
    Unit - A unit Dies
  Conditions
    (Unit-type of (Triggering unit)) Equal to Primary weapon
  Actions
    Unit Group - Remove (Triggering unit) from Missles.
Fuel
  Events
    Time - Every 0.10 seconds of game time
  Conditions
  Actions
    Custom script: set bj_wantDestroyGroup = true
    Unit Group - Pick every unit in (Units in (Entire map) matching (((Matching unit) is A flying unit) Equal to True)) and do (If ((Mana of (Picked unit)) Equal to 0.00) then do (Kill (Picked unit)) else do (Do nothing))
Fuel2
  Events
    Map initialization
  Conditions
  Actions
    Unit Group - Pick every unit in (Units in (Entire map)) and do (Set mana of (Picked unit) to 100%)
Kills
  Events
    Player - Player 1 (Red) types a chat message containing -2 (stringnoformat) as An exact match
  Conditions
  Actions
    Set VariableSet PlayerKills[2] = (PlayerKills[2] + 1)
    Leaderboard - Change the value for Player 2 (Blue) in (Last created leaderboard) to PlayerKills[2]
    Leaderboard - Sort (Last created leaderboard) by Value in Descending order
Kills Copy
  Events
    Player - Player 1 (Red) types a chat message containing -1 (stringnoformat) as An exact match
  Conditions
  Actions
    Set VariableSet PlayerKills[1] = (PlayerKills[1] + 1)
    Leaderboard - Change the value for Player 1 (Red) in (Last created leaderboard) to PlayerKills[1]
    Leaderboard - Sort (Last created leaderboard) by Value in Descending order
    Game - Display to (All players) the text: (String((Position of Player 1 (Red) in (Last created leaderboard))))
Kills Copy Copy
  Events
    Player - Player 1 (Red) types a chat message containing -s (stringnoformat) as An exact match
  Conditions
  Actions
    Countdown Timer - Start StartTimer as a One-shot timer that will expire in 1.00 seconds
function Trig_First_Actions takes nothing returns nothing
if InFirst(GetTriggerPlayer()) then
call DisplayTextToForce(GetPlayersAll(),"yes")
endif
endfunction

//===========================================================================
function InitTrig_First takes nothing returns nothing
    set gg_trg_First = CreateTrigger(  )
    call TriggerRegisterPlayerChatEvent( gg_trg_First, Player(0), "f", true )
    call TriggerAddAction( gg_trg_First, function Trig_First_Actions )
endfunction

 
function Trig_First_Actions2 takes nothing returns nothing
if InLast(GetTriggerPlayer()) then
call DisplayTextToForce(GetPlayersAll(),"yes")
endif
endfunction

//===========================================================================
function InitTrig_last takes nothing returns nothing
    set gg_trg_last = CreateTrigger(  )
    call TriggerRegisterPlayerChatEvent( gg_trg_last, Player(0), "l", true )
    call TriggerAddAction( gg_trg_last, function Trig_First_Actions2 )
endfunction

 
Name
  Events
    Player - Player 2 (Blue) types a chat message containing name (stringnoformat) as A substring
    Player - Player 3 (Teal) types a chat message containing name (stringnoformat) as A substring
    Player - Player 1 (Red) types a chat message containing name (stringnoformat) as A substring
    Player - Player 4 (Purple) types a chat message containing name (stringnoformat) as A substring
    Player - Player 5 (Yellow) types a chat message containing name (stringnoformat) as A substring
    Player - Player 6 (Orange) types a chat message containing name (stringnoformat) as A substring
    Player - Player 7 (Green) types a chat message containing name (stringnoformat) as A substring
    Player - Player 8 (Pink) types a chat message containing name (stringnoformat) as A substring
    Player - Player 9 (Gray) types a chat message containing name (stringnoformat) as A substring
    Player - Player 10 (Light Blue) types a chat message containing name (stringnoformat) as A substring
    Player - Player 11 (Dark Green) types a chat message containing name (stringnoformat) as A substring
    Player - Player 12 (Brown) types a chat message containing name (stringnoformat) as A substring
  Conditions
    (Substring((Entered chat string), 1, 4)) Equal to name
  Actions
    Player - Set name of (Triggering player) to (Substring((Entered chat string), 6, 45))
Tip1
  Events
    Time - Elapsed game time is 180.00 seconds
  Conditions
  Actions
    Quest - Display to (All players) the Quest Update message: Tips and Facts - Dont like fast planes? Try changing your plane to a different one next game.
Tip2
  Events
    Time - Elapsed game time is 360.00 seconds
  Conditions
  Actions
    Quest - Display to (All players) the Quest Update message: Tips and Facts - This map is still in-use, but is not protected. The final version will be locked, but the older versions will still be there to fix and upgrade.
Tip3
  Events
    Time - Elapsed game time is 540.00 seconds
  Conditions
  Actions
    Quest - Display to (All players) the Quest Update message: Tips and Facts - All models are from www.hiveworkshop.com.
Tip4
  Events
    Time - Elapsed game time is 700.00 seconds
  Conditions
  Actions
    Quest - Display to (All players) the Quest Update message: Tips and Facts -
Tip5
  Events
    Time - Elapsed game time is 1000.00 seconds
  Conditions
  Actions
    Quest - Display to (All players) the Quest Update message: Tips and Facts - This map is still in-use, but is not protected. The final version will be locked, but the older versions will still be there to fix and upgrade.
Tip6
  Events
    Time - Elapsed game time is 1400.00 seconds
  Conditions
  Actions
    Quest - Display to (All players) the Quest Update message: Tips and Facts - This map is still in-use, but is not protected. The final version will be locked, but the older versions will still be there to fix and upgrade.
Tip7
  Events
    Time - Elapsed game time is 1900.00 seconds
  Conditions
  Actions
Tip8
  Events
    Time - Elapsed game time is 2500.00 seconds
  Conditions
  Actions
Tip9
  Events
    Time - Elapsed game time is 3000.00 seconds
  Conditions
  Actions
Tip10
  Events
    Time - Elapsed game time is 3500.00 seconds
  Conditions
  Actions