#include "scripts/bp_common.txt"
#include "scripts/map/common_level_script.txt"

kActor @fireThrower;
//------------------------------------------------------------------------------------------------------------------------
// Start
//------------------------------------------------------------------------------------------------------------------------
$script 0 {
	World.TriggerActorsByTID(instigator, 2122); //plasma guy left at start area
	World.TriggerActorsByTID(instigator, 2121); //2 gunners left at start area
	World.TriggerActorsByTID(instigator, 2120); //1 gunner left at start area
	
	World.TriggerActorsByTID(instigator, 2126); //plasma guy right at start area
	World.TriggerActorsByTID(instigator, 2125); //2 gunners right at start area
	World.TriggerActorsByTID(instigator, 2124); //1 gunner right at start area
	
	World.TriggerActorsByTID(instigator, 2127); //plasma above underpass across ladder
	
	World.TriggerActorsByTID(instigator, 2132); //2 guys after hitting swiitch
	
	World.TriggerActorsByTID(instigator, 2128); //2 guys behind save temple
	
	World.TriggerActorsByTID(instigator, 2135); //2 guys right side in area  after buildings
	World.TriggerActorsByTID(instigator, 2136); //1 hulk right side in area  after buildings
	World.TriggerActorsByTID(instigator, 2137); //2 guys right side in area  after buildings
	World.TriggerActorsByTID(instigator, 2138); //1 hulk right side in area  after buildings

	World.TriggerActorsByTID(instigator, 2131); //2 hulks left side in area  after buildings
	World.TriggerActorsByTID(instigator, 2130); //2 guys left side in area  after buildings
	World.TriggerActorsByTID(instigator, 2129); //2 guys left side in area  after buildings
	
	//crossing ladder 
	World.ChangeAreaArg(32, 4, 5);
	World.ChangeAreaArg(32, 5, 256);
	World.ChangeAreaFlag(32, AAF_DAMAGE, true);
	
	@fireThrower = ActorFactory.Spawn("DummyActor", 0, -6544, 3080, 0, 4315);
	
	MapSpawnBeamTrapVert(kVec3(98, 1224, 2918), kVec3(-102, 1224, 2918), 0.6f, 2257);
	
	ActorFactory.Spawn("ShopPoint", 416, 529, 2936, Math::Deg2Rad(0), 0); //Spawn Shop Portal

	Game.CallDelayedMapScript(1, instigator, 0);
}
//------------------------------------------------------------------------------------------------------------------------
// Update
//------------------------------------------------------------------------------------------------------------------------
$script 1 {
	if (InAreaMinMax(kVec3(-2167, -7810, 2611), kVec3(2183, -5060, 3293)) and PlayLoop.Ticks() % 10 == 0) {
		fireThrower.SpawnProjectile("fx/longhunter_gun_pulse.kfx", kVec3(0, 0, 0), Player.Actor().Origin(), 0);
	}
	
	UpdateGeneralGame();
	//ActorInWorldTestUpdate();
	$restart;
}
//------------------------------------------------------------------------------------------------------------------------
