ZombieTrigger1 = { CPos.New(261,1), CPos.New(261,2), CPos.New(261,3), CPos.New(261,4),CPos.New(261,5), CPos.New(261,6), CPos.New(261,7), CPos.New(261,8), CPos.New(261,9), CPos.New(261,10),CPos.New(261,11), CPos.New(261,12), CPos.New(261,13), CPos.New(261,14), CPos.New(261,15), CPos.New(261,16), CPos.New(261,17), CPos.New(261,18), CPos.New(261,19), CPos.New(261,20), CPos.New(261,21)  }
ZombieTrigger2 = { CPos.New(250,1), CPos.New(250,2), CPos.New(250,3), CPos.New(250,4),CPos.New(250,5), CPos.New(250,6), CPos.New(250,7), CPos.New(250,8), CPos.New(250,9), CPos.New(250,10),CPos.New(250,11), CPos.New(250,12), CPos.New(250,13), CPos.New(250,14), CPos.New(250,15), CPos.New(250,16), CPos.New(250,17), CPos.New(250,18), CPos.New(250,19), CPos.New(250,20), CPos.New(250,21)  }
ZombieTrigger3 = { CPos.New(230,1), CPos.New(230,2), CPos.New(230,3), CPos.New(230,4),CPos.New(230,5), CPos.New(230,6), CPos.New(230,7), CPos.New(230,8), CPos.New(230,9), CPos.New(230,10),CPos.New(230,11), CPos.New(230,12), CPos.New(230,13), CPos.New(230,14), CPos.New(230,15), CPos.New(230,16), CPos.New(230,17), CPos.New(230,18), CPos.New(230,19), CPos.New(230,20), CPos.New(230,21)  }
ZombieTrigger4 = { CPos.New(225,13), CPos.New(224,13), CPos.New(223,13), CPos.New(222,13), CPos.New(221,13), CPos.New(220,13), CPos.New(219,19)  }
ZombieTrigger5 = { CPos.New(199,10),CPos.New(199,11), CPos.New(199,12), CPos.New(199,13), CPos.New(199,14), CPos.New(199,15), CPos.New(199,16), CPos.New(199,17),CPos.New(199,18), CPos.New(199,19), CPos.New(199,20), CPos.New(199,21)  }
ZombieTrigger6 = { CPos.New(185,10), CPos.New(186,10), CPos.New(187,10),CPos.New(183,10), CPos.New(182,10), CPos.New(181,10), CPos.New(180,10), CPos.New(179,10), CPos.New(178,10), CPos.New(177,10), CPos.New(176,10)   }
ZombieTrigger7 = { CPos.New(170,7), CPos.New(170,8), CPos.New(170,9), CPos.New(170,10),CPos.New(170,11), CPos.New(170,12), CPos.New(170,13), CPos.New(170,14), CPos.New(170,15), CPos.New(170,16), CPos.New(170,17), CPos.New(170,18), CPos.New(170,19), CPos.New(170,20)   }
ZombieTrigger8 = { CPos.New(150,1), CPos.New(150,2), CPos.New(150,3), CPos.New(150,4),CPos.New(150,5), CPos.New(150,6), CPos.New(150,7), CPos.New(150,8), CPos.New(150,9), CPos.New(150,10),CPos.New(150,11), CPos.New(150,12), CPos.New(150,13), CPos.New(150,14), CPos.New(150,15), CPos.New(150,16), CPos.New(150,17), CPos.New(150,18), CPos.New(150,19), CPos.New(150,20), CPos.New(150,21)   }
ZombieTrigger9 = { CPos.New(119,1), CPos.New(119,2), CPos.New(119,3), CPos.New(119,4), CPos.New(119,5), CPos.New(119,6), CPos.New(119,7), CPos.New(119,8), CPos.New(119,9), CPos.New(119,10), CPos.New(119,11), CPos.New(119,12), CPos.New(119,13), CPos.New(119,14), CPos.New(119,15)   }
ZombieTrigger10 = { CPos.New(97,7), CPos.New(97,8), CPos.New(97,9), CPos.New(97,10)   }
HospitalTrigger1 = { CPos.New(78,1), CPos.New(78,2), CPos.New(78,3), CPos.New(78,4),CPos.New(78,5), CPos.New(78,6), CPos.New(78,7), CPos.New(78,8), CPos.New(78,9), CPos.New(78,10),CPos.New(78,11), CPos.New(78,12), CPos.New(78,13)  }
RescueTrigger = { CPos.New(72,11), CPos.New(71,11), CPos.New(70,11), CPos.New(69,11),CPos.New(69,12), CPos.New(69,13), CPos.New(69,14), CPos.New(70,14), CPos.New(71,14), CPos.New(72,14),CPos.New(72,13), CPos.New(72,12)  }
HospitalTrigger2 = { CPos.New(64,1), CPos.New(64,2), CPos.New(64,3), CPos.New(64,4),CPos.New(64,5), CPos.New(64,6), CPos.New(64,7), CPos.New(64,8), CPos.New(64,9), CPos.New(64,10),CPos.New(64,11), CPos.New(64,12), CPos.New(64,13)  }
ZombieTrigger11 = { CPos.New(48,1), CPos.New(48,2), CPos.New(48,3), CPos.New(48,4),CPos.New(48,5), CPos.New(48,6), CPos.New(48,7), CPos.New(48,8), CPos.New(48,9), CPos.New(48,10),CPos.New(48,11), CPos.New(48,12), CPos.New(48,13), CPos.New(48,14), CPos.New(48,15), CPos.New(48,16), CPos.New(48,17), CPos.New(48,18), CPos.New(48,19), CPos.New(48,20), CPos.New(48,21)   }
ZombieTrigger12 = { CPos.New(27,1), CPos.New(27,2), CPos.New(27,3), CPos.New(27,4),CPos.New(27,5), CPos.New(27,6), CPos.New(27,7), CPos.New(27,8), CPos.New(27,9), CPos.New(27,10),CPos.New(27,11), CPos.New(27,12), CPos.New(27,13), CPos.New(27,14), CPos.New(27,15), CPos.New(27,16), CPos.New(27,17), CPos.New(27,18), CPos.New(27,19), CPos.New(27,20), CPos.New(27,21)   }
EndTrigger = { CPos.New(15,8), CPos.New(14,8), CPos.New(13,8), CPos.New(13,9),CPos.New(13,10), CPos.New(14,10), CPos.New(15,10), CPos.New(15,9)  }
Engi = "e6"
Tanya = "e7"
Sniper = "sniper"
Einstein = "einstein"
Delphi = "delphi"
General = "gnrl"
Chan = "chan"
Medic = "medi"
Mechanic = "mech"
FlareType = "flare"
ExtractionHelicopter = "tran"
ExtractionPathMulti0 = { ExtractionHeli.Location, ExtractionLZ.Location }
--Zombie Reinforements
ZombieReinforcements1 = function()
	Trigger.AfterDelay(DateTime.Seconds(1), function()
		Reinforcements.Reinforce(BadGuy, { "c8" }, { ZombieSpawn1.Location, ZombieRally0.Location })
		Reinforcements.Reinforce(BadGuy, { "c8" }, { ZombieSpawn1.Location, ZombieRally0.Location })
		Reinforcements.Reinforce(BadGuy, { "c5" }, { ZombieSpawn43.Location, ZombieRally0.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie" }, { ZombieSpawn1.Location, ZombieRally0.Location })
		Reinforcements.Reinforce(BadGuy, { "c8" }, { ZombieSpawn1.Location, ZombieRally0.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie" }, { ZombieSpawn43.Location, ZombieRally0.Location })
	end)
end

ZombieReinforcements2 = function()
	Trigger.AfterDelay(DateTime.Seconds(1), function()
		Reinforcements.Reinforce(BadGuy, { "c6", "c6", "c3" }, { WindmillSpawn.Location, ZombieRally1.Location })
		Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c3", "c6" }, { WindmillSpawn.Location, ZombieRally1.Location })
		Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c3", "c6" }, { WindmillSpawn.Location, ZombieRally1.Location })
		Reinforcements.Reinforce(BadGuy, { "c6", "c3", "zombie", "zombie", "zombie" }, { WindmillSpawn.Location, ZombieRally1.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "c6" }, { WindmillSpawn.Location, ZombieRally1.Location })
	end)
end
ZombieReinforcements3 = function()
	Trigger.AfterDelay(DateTime.Seconds(1), function()
		Reinforcements.Reinforce(BadGuy, { "c3", "c6", "c4", "c6" }, { ZombieSpawn4.Location, ZombieRally2.Location })
		Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c5", "c3" }, { ZombieSpawn5.Location, ZombieRally2.Location })
		Reinforcements.Reinforce(BadGuy, { "c2", "c4", "c6" }, { ZombieSpawn5.Location, ZombieRally2.Location })
		Reinforcements.Reinforce(BadGuy, { "c3", "c6", "c4", "c6" }, { ZombieSpawn4.Location, ZombieRally2.Location })
		Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c5", "c3" }, { ZombieSpawn5.Location, ZombieRally2.Location })
		Reinforcements.Reinforce(BadGuy, { "c2", "c4", "c6" }, { ZombieSpawn5.Location, ZombieRally2.Location })
		Trigger.AfterDelay(DateTime.Seconds(3), function()
			Reinforcements.Reinforce(BadGuy, { "c3", "c6" }, { ForestSpawn2.Location, Actor871.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { ForestSpawn2.Location, Actor871.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { ForestSpawn2.Location, Actor871.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { ForestSpawn2.Location, Actor871.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { ForestSpawn2.Location, Actor871.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { ForestSpawn2.Location, Actor871.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { ForestSpawn2.Location, Actor871.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { ForestSpawn2.Location, Actor871.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { ForestSpawn2.Location, Actor871.Location })
		end)
	end)
end
ZombieReinforcements4 = function()
	Trigger.AfterDelay(DateTime.Seconds(1), function()
		Reinforcements.Reinforce(BadGuy, { "c1" }, { ZombieSpawn7.Location, ZombieRally3.Location })
		Reinforcements.Reinforce(BadGuy, { "c1" }, { ZombieSpawn7.Location, ZombieRally3.Location })
		Reinforcements.Reinforce(BadGuy, { "c1" }, { ZombieSpawn7.Location, ZombieRally3.Location })
	end)
end
ZombieReinforcements5 = function()
	Trigger.AfterDelay(DateTime.Seconds(1), function()
		Reinforcements.Reinforce(BadGuy, { "c3", "c3", "c6", "c5", "c4", "c5" }, { ZombieSpawn9.Location, ZombieRally4A.Location })
		Reinforcements.Reinforce(BadGuy, { "c3", "c6", "c3", "c5" }, { ZombieSpawn9.Location, ZombieRally4A.Location })
		Reinforcements.Reinforce(BadGuy, { "c3", "c3", "c6", "c5", "c4", "c5" }, { ZombieSpawn9.Location, ZombieRally4A.Location })
		Reinforcements.Reinforce(BadGuy, { "c3", "c6", "c3", "c5" }, { ZombieSpawn9.Location, ZombieRally4A.Location })
		Reinforcements.Reinforce(BadGuy, { "c3", "c3", "c6", "c5", "c4", "c5" }, { ZombieSpawn9.Location, ZombieRally4A.Location })
		Reinforcements.Reinforce(BadGuy, { "c3", "c6", "c3", "c5" }, { ZombieSpawn9.Location, ZombieRally4A.Location })
		Reinforcements.Reinforce(BadGuy, { "c3" }, { RoadSpawn7.Location, ZombieSpawn4.Location })
		Reinforcements.Reinforce(BadGuy, { "c3", "c6", "c3" }, { House10.Location, ZombieSpawn8.Location })
		Reinforcements.Reinforce(BadGuy, { "c6", "c3", "zombie", "zombie", "zombie", }, { House9.Location, ZombieSpawn8.Location })
		Reinforcements.Reinforce(BadGuy, { "c3", "c6", "c3", "c6", "c8" }, { House10.Location, ZombieSpawn8.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "c6", "c8" }, { House10.Location, ZombieSpawn8.Location })
		Reinforcements.Reinforce(BadGuy, { "c3", "c6", "c3", "c6", "c8" }, { House10.Location, ZombieSpawn8.Location })
		Reinforcements.Reinforce(BadGuy, { "c3", "zombie", "zombie", "zombie", "c8" }, { House10.Location, ZombieSpawn8.Location })
	end)
end
ZombieReinforcements7 = function()
	Trigger.AfterDelay(DateTime.Seconds(2), function()
	Reinforcements.Reinforce(BadGuy, { "c3", "c4", "c5", "c3", "c5", "c3", "c6", "c2" }, { ZombieSpawn13.Location, ZombieRally6.Location })
	Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "c3", "c5", "c3", "c6", "c2" }, { ZombieSpawn13.Location, ZombieRally6.Location })
	Reinforcements.Reinforce(BadGuy, { "c3", "c4", "c5", "c3", "c5", "c3", "c6", "c2" }, { ZombieSpawn13.Location, ZombieRally6.Location })
	Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c6", "c3", "c5", "zombie", "zombie", "zombie" }, { ZombieSpawn15.Location, ZombieRally6.Location })
	Reinforcements.Reinforce(BadGuy, { "c6", "c3", "zombie", "zombie", "zombie", "c3", "c5" }, { ZombieSpawn15.Location, ZombieRally6.Location })
	Reinforcements.Reinforce(BadGuy, { "c3", "c4", "c5", "c3", "c5", "c3", "c6", "c2" }, { ZombieSpawn13.Location, ZombieRally6.Location })
		Trigger.AfterDelay(DateTime.Seconds(5), function()
			Reinforcements.Reinforce(BadGuy, { "c4", "c3",  "c3", "c5", "c6" }, { ZombieSpawn14.Location, ZombieRally6.Location })
			Reinforcements.Reinforce(BadGuy, { "c4", "c3",  "c3", "c5", "c6" }, { ZombieSpawn14.Location, ZombieRally6.Location })
			Reinforcements.Reinforce(BadGuy, { "c4", "c3",  "c3", "c5", "c6" }, { ZombieSpawn14.Location, ZombieRally6.Location })
			Reinforcements.Reinforce(BadGuy, { "c3", "c4", "c5", "c3", "c5", "c3", "c6", "c2" }, { ZombieSpawn13.Location, ZombieRally6.Location })
			Reinforcements.Reinforce(BadGuy, { "c3", "c4", "c5", "c3", "c5", "c3", "c6", "c2" }, { ZombieSpawn13.Location, ZombieRally6.Location })
			Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c3", "c4", "c5",  "c6" }, { ZombieSpawn16.Location, ZombieRally6.Location })
			Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c6", "c3", "zombie", "zombie" }, { ZombieSpawn16.Location, ZombieRally6.Location })
			Trigger.AfterDelay(DateTime.Seconds(8), function()
				Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c6", "c3", "c5", "c3", "c5" }, { ZombieSpawn15.Location, ZombieRally6.Location })
				Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c6", "c3", "zombie", "zombie" }, { ZombieSpawn15.Location, ZombieRally6.Location })
				Reinforcements.Reinforce(BadGuy, { "c4", "c3",  "c3", "c5", "c6" }, { ZombieSpawn14.Location, ZombieRally6.Location })
				Reinforcements.Reinforce(BadGuy, { "c4", "c3",  "c3", "c5", "c6" }, { ZombieSpawn14.Location, ZombieRally6.Location })
				Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c3", "c4", "c5",  "c6" }, { ZombieSpawn16.Location, ZombieRally6.Location })
				Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "c2", "c5", "c3", "c5", "c6", "c5", "c3", "c2" }, { ZombieSpawn16.Location, ZombieRally6.Location })
				Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c3", "c4", "c5",  "c6" }, { ZombieSpawn16.Location, ZombieRally6.Location })
			end)
		end)
	end)
end
ZombieReinforcements8 = function()
	Trigger.AfterDelay(DateTime.Seconds(1), function()
	Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "c2", "c5", "c3", "c5", "c6", "c5", "c3", "c2" }, { RoadSpawn5.Location, ZombieSpawn7A.Location })
	Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "c2", "c5", "c3", "c5", "c6", "c5", "c3", "c2" }, { RoadSpawn5.Location, ZombieSpawn7A.Location })
	Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "c2", "c5", "c3", "c5", "c6", "c5", "c3", "c2" }, { RoadSpawn5.Location, ZombieSpawn7A.Location })
	Reinforcements.Reinforce(BadGuy, { "c3", "c3",  "c6", "c5", "c5", "zombie", "zombie", "zombie" }, { ZombieSpawn16.Location, ZombieSpawn7B.Location })
	Reinforcements.Reinforce(BadGuy, { "c2", "c5", "c6", "c5", "c3", "c4" }, { ZombieSpawn17.Location, ZombieRally7.Location })
	Reinforcements.Reinforce(BadGuy, { "c6", "c2", "c5", "zombie", "zombie", "zombie", "c4", "c5",  "c2" }, { ZombieSpawn16.Location, ZombieRally16.Location })
	Reinforcements.Reinforce(BadGuy, { "c2", "c5", "c3", "c5", "c6", "c5", "c3", "c2" }, { RoadSpawn5.Location, ZombieSpawn7A.Location })
	Reinforcements.Reinforce(BadGuy, { "c3", "c3",  "c6", "c5", "c5" }, { ZombieSpawn16.Location, ZombieSpawn7B.Location })
	Reinforcements.Reinforce(BadGuy, { "c2", "zombie", "zombie", "zombie", "c5", "c6", "c5", "c3", "c4" }, { ZombieSpawn17.Location, ZombieRally7.Location })
	Reinforcements.Reinforce(BadGuy, { "c6", "c2", "c5", "c4", "c5",  "c2" }, { ZombieSpawn16.Location, ZombieRally16.Location })
	end)
end
ZombieReinforcements9 = function()
	Trigger.AfterDelay(DateTime.Seconds(1), function()
	Reinforcements.Reinforce(BadGuy, { "c3", "zombie", "c3", "zombie", "c3", "zombie", "c6" }, { ZombieSpawn24.Location, ZombieRally8.Location })
	Reinforcements.Reinforce(BadGuy, { "zombie", "c6", "c3", "zombie" }, { ZombieSpawn24.Location, ZombieRally8.Location })
	Reinforcements.Reinforce(BadGuy, { "zombie", "c6", "c3", "zombie" }, { ZombieSpawn24.Location, ZombieRally8.Location })
		Trigger.AfterDelay(DateTime.Seconds(4), function()
		Reinforcements.Reinforce(BadGuy, { "c5", "c3", "zombie", "zombie", "zombie", "zombie" }, { ZombieSpawn25.Location, ZombieRally8.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie" }, { ZombieSpawn25.Location, ZombieRally8.Location })
		Reinforcements.Reinforce(BadGuy, { "c5", "c5", "zombie", "zombie", "zombie" }, { ZombieSpawn25.Location, ZombieRally8.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie" }, { ZombieSpawn25.Location, ZombieRally8.Location })
			Trigger.AfterDelay(DateTime.Seconds(10), function()
			Reinforcements.Reinforce(BadGuy, { "c6", "c3", "zombie", "zombie" }, { ZombieSpawn26.Location, ZombieRally8.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie" }, { ZombieSpawn26.Location, ZombieRally8.Location })
			Reinforcements.Reinforce(BadGuy, { "c6", "c3", "zombie", "zombie" }, { ZombieSpawn26.Location, ZombieRally8.Location })
			Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c6", "c3", "zombie", "zombie" }, { ZombieSpawn26.Location, ZombieRally8.Location })
			Reinforcements.Reinforce(BadGuy, { "c5", "c3", "zombie", "zombie", "zombie", "zombie" }, { ZombieSpawn26.Location, ZombieRally8.Location })
			Reinforcements.Reinforce(BadGuy, { "c6", "c3", "c6", "c3", "zombie", "zombie" }, { ZombieSpawn26.Location, ZombieRally8.Location })
				Trigger.AfterDelay(DateTime.Seconds(3), function()
				Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { TanyaStart1.Location, ZombieRally8.Location })
				Reinforcements.Reinforce(BadGuy, { "zombie", "c6", "c3", "zombie", "c3" }, { TanyaStart1.Location, ZombieRally8.Location })
				end)
			end)
		end)
	end)
end
ZombieReinforcements10 = function()
	Trigger.AfterDelay(DateTime.Seconds(1), function()
	Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c7" }, { ZombieSpawn27.Location, ZombieRally9.Location })
	Reinforcements.Reinforce(BadGuy, { "zombie" }, { ZombieSpawn27.Location, ZombieRally9.Location })
	Reinforcements.Reinforce(BadGuy, { "zombie" }, { ZombieSpawn27.Location, ZombieRally9.Location })
	Reinforcements.Reinforce(BadGuy, { "zombie" }, { ZombieSpawn27.Location, ZombieRally9.Location })
	Reinforcements.Reinforce(BadGuy, { "zombie", "zombie" }, { ZombieSpawn27.Location, ZombieRally9.Location })
	Reinforcements.Reinforce(BadGuy, { "zombie" }, { ZombieSpawn27.Location, ZombieRally9.Location })
	Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { ZombieSpawn27.Location, ZombieRally9.Location })
		Trigger.AfterDelay(DateTime.Seconds(5), function()
		Reinforcements.Reinforce(BadGuy, { "zombie" }, { ZombieSpawn27.Location, ZombieRally9.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie" }, { ZombieSpawn27.Location, ZombieRally9.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie" }, { ZombieSpawn27.Location, ZombieRally9.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie" }, { ZombieSpawn27.Location, ZombieRally9.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "zombie" }, { ZombieSpawn27.Location, ZombieRally9.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "c3" }, { ZombieSpawn27.Location, ZombieRally9.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "zombie" }, { ZombieSpawn27.Location, ZombieRally9.Location })
			Trigger.AfterDelay(DateTime.Seconds(2), function()
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { ZombieRally10.Location, ZombieRally9.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie" }, { ZombieRally10.Location, ZombieRally9.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie" }, { ZombieRally11.Location, ZombieRally9.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie" }, { ZombieRally11.Location, ZombieRally9.Location })
			end)
		end)
	end)
end
--Crew Rescue
HospitalReinforcements1 = function()
		Trigger.AfterDelay(DateTime.Seconds(2), function()
			Reinforcements.Reinforce(BadGuy, { "medi", "zombie", "zombie", "zombie", "zombie", "zombie" }, { ZombieSpawn33.Location, ZombieRally11.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "medi", "zombie", "zombie" }, { ZombieSpawn34.Location, ZombieRally14.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "medi", "zombie", "zombie" }, { ZombieSpawn34.Location, ZombieRally14.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c3", "zombie", "zombie", "c7","zombie" }, { ZombieSpawn35.Location, ZombieRally14.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c3", "zombie", "zombie", "c7","zombie" }, { ZombieSpawn35.Location, ZombieRally14.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "c8", "c8", "zombie","c8", "c5", "zombie", "zombie", "zombie" }, { ZombieSpawn36.Location, ZombieRally13.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c8", "medi", "c8", "zombie", "c5" }, { ZombieSpawn37.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "c5", "c3", "c8", "c5", "c8", "c8", "medi" }, { ZombieSpawn28.Location, ZombieRally10.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "c8", "c8", "zombie","c8", "medi", "zombie", "zombie", "zombie" }, { ZombieRally8.Location, ZombieRally10.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "c5", "zombie", "zombie", "c8", "zombie", "c5" }, { ZombieSpawn24.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "medi", "zombie", "zombie", "zombie", "zombie", "zombie" }, { ZombieSpawn33.Location, ZombieRally11.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "medi", "zombie", "zombie" }, { ZombieSpawn34.Location, ZombieRally14.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "medi", "zombie", "zombie" }, { ZombieSpawn34.Location, ZombieRally14.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c3", "zombie", "zombie", "c7","zombie" }, { ZombieSpawn35.Location, ZombieRally14.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c3", "zombie", "zombie", "c7","zombie" }, { ZombieSpawn35.Location, ZombieRally14.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "c8", "c8", "zombie","c8", "c5", "zombie", "zombie", "zombie" }, { ZombieSpawn36.Location, ZombieRally13.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c8", "medi", "c8", "zombie", "c5" }, { ZombieSpawn37.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "c5", "c3", "c8", "c5", "c8", "c8", "medi" }, { ZombieSpawn28.Location, ZombieRally10.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "c8", "c8", "zombie","c8", "medi", "zombie", "zombie", "zombie" }, { ZombieRally8.Location, ZombieRally10.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "c5", "zombie", "zombie", "c8", "zombie", "c5" }, { ZombieSpawn24.Location, ZombieRally12.Location })
		end)
end
HospitalRescue = function()
		Trigger.AfterDelay(DateTime.Seconds(1), function()
		Reinforcements.Reinforce(BadGuy, { "medi", "zombie", "zombie", "zombie", "zombie", "zombie" }, { ZombieSpawn33.Location, ZombieRally12.Location })
		Reinforcements.Reinforce(BadGuy, { "medi", "zombie", "zombie", "zombie", "zombie", "zombie" }, { ZombieSpawn33.Location, ZombieRally12.Location })
			Trigger.AfterDelay(DateTime.Seconds(1), function()
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "medi", "zombie", "zombie" }, { ZombieSpawn34.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "c2", "c3", "c4", "c5", "zombie", "zombie", "zombie", "c7" }, { ZombieSpawn34.Location, ZombieRally12.Location })
				Trigger.AfterDelay(DateTime.Seconds(1), function()
				Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c3", "zombie", "zombie", "c7","zombie" }, { ZombieSpawn35.Location, ZombieRally12.Location })
				Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c3", "zombie", "zombie", "c7","zombie" }, { ZombieSpawn35.Location, ZombieRally12.Location })
					Trigger.AfterDelay(DateTime.Seconds(1), function()
					Reinforcements.Reinforce(BadGuy, { "zombie", "c8", "c8", "zombie","c8", "c5", "zombie", "zombie", "zombie" }, { ZombieSpawn36.Location, ZombieRally12.Location })
					Reinforcements.Reinforce(BadGuy, { "medi", "zombie", "zombie", "zombie", "c2", "c2", "c3", "c5", "c7" }, { ZombieSpawn36.Location, ZombieRally12.Location })
					Reinforcements.Reinforce(BadGuy, { "zombie", "c8", "c8", "zombie","c8", "c5", "zombie", "zombie", "zombie" }, { ZombieSpawn36.Location, ZombieRally12.Location })
						Trigger.AfterDelay(DateTime.Seconds(1), function()
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c5", "zombie", "c8", "zombie", "c5", "c7" }, { ZombieSpawn37.Location, ZombieRally12.Location })
							Trigger.AfterDelay(DateTime.Seconds(20), function()
							Reinforcements.Reinforce(BadGuy, { "c1" }, { ZombieSpawn37.Location, ZombieRally12.Location })
							end)
						end)
					end)
				end)
			end)
		end)
end
HospitalReinforcements2 = function()
		Trigger.AfterDelay(DateTime.Seconds(1), function()
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie" }, { ZombieSpawn33.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "medi", "zombie", "zombie" }, { ZombieSpawn34.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c3", "zombie", "zombie", "c7","zombie" }, { ZombieSpawn35.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "c8", "c8", "zombie","c8", "c5", "zombie", "zombie", "zombie" }, { ZombieSpawn36.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c5", "zombie", "c8", "zombie", "c5" }, { ZombieSpawn37.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie" }, { ZombieSpawn33.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "medi", "zombie", "zombie" }, { ZombieSpawn34.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c3", "zombie", "zombie", "c7","zombie" }, { ZombieSpawn35.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "c8", "c8", "zombie","c8", "c5", "zombie", "zombie", "zombie" }, { ZombieSpawn36.Location, ZombieRally12.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c5", "zombie", "c8", "zombie", "c5" }, { ZombieSpawn37.Location, ZombieRally12.Location })
		end)
end
--Zombie Backwave
ZombieReinforcements11 = function()
		Trigger.AfterDelay(DateTime.Seconds(1), function()
		Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "c2", "c2", "c3", "c5", "c3" }, { ZombieSpawn38.Location, ZombieRally15.Location })
			Trigger.AfterDelay(DateTime.Seconds(2), function()
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { ZombieSpawn39.Location, ZombieRally15.Location })
				Trigger.AfterDelay(DateTime.Seconds(3), function()
				Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c3", "zombie", "zombie", "c7" }, { ZombieSpawn40.Location, ZombieRally15.Location })
				Reinforcements.Reinforce(BadGuy, { "zombie", "c3", "c3", "zombie", "zombie", "c7", "zombie" }, { ZombieSpawn40.Location, ZombieRally15.Location })
				Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c3", "zombie", "zombie" }, { ZombieSpawn40.Location, ZombieRally15.Location })
				Reinforcements.Reinforce(BadGuy, { "zombie", "c3", "c3", "zombie", "zombie" }, { ZombieSpawn40.Location, ZombieRally15.Location })
				Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c3", "zombie", "zombie" }, { ZombieSpawn40.Location, ZombieRally15.Location })
				Reinforcements.Reinforce(BadGuy, { "zombie", "c3", "c3", "zombie", "zombie" }, { ZombieSpawn40.Location, ZombieRally15.Location })
					Trigger.AfterDelay(DateTime.Seconds(10), function()
					Reinforcements.Reinforce(BadGuy, { "zombie", "c8", "c2", "zombie", "c6", "c5", "zombie", "c8", "c5","zombie", "c8", "c5", "zombie", "zombie", "c7" }, { ZombieSpawn41.Location, ZombieRally15.Location })
					Reinforcements.Reinforce(BadGuy, { "zombie", "c8", "zombie", "zombie", "c6", "c3", "zombie", "c8", "c5","zombie", "c8", "zombie", "zombie", "zombie", "c7" }, { ZombieSpawn41.Location, ZombieRally15.Location })
					Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c5", "zombie", "c8", "c5", "zombie", "c6", "c5", "c8", "zombie" }, { ZombieSpawn41.Location, ZombieRally15.Location })
					Reinforcements.Reinforce(BadGuy, { "zombie", "c3", "c8", "zombie", "c8", "c6", "zombie", "c8", "c3", "zombie", "c8", "c5", "zombie", "zombie" }, { ZombieSpawn41.Location, ZombieRally15.Location })
					end)
				end)
			end)
		end)
end
ZombieReinforcements12 = function()
	Media.DisplayMessage("Standby for evac...")
	Trigger.AfterDelay(DateTime.Seconds(15), function()
		Reinforcements.Reinforce(BadGuy, { "c3", "c4", "c8", "c4", "c5", "zombie", "zombie", "zombie", "c7" }, { RoadSpawn1.Location, RavenholmRally3.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "c2", "c6", "c4", "c5", "c6" }, { RoadSpawn2.Location, RavenholmRally3.Location })		
		Reinforcements.Reinforce(BadGuy, { "zombie", "c2", "c6", "zombie", "zombie", "zombie", "zombie", "zombie", "c6" }, { RoadSpawn2.Location, RavenholmRally3.Location })		
		Reinforcements.Reinforce(BadGuy, { "zombie", "c2", "c3", "c4", "c5", "zombie", "zombie", "zombie", "c7" }, { RoadSpawn7.Location, RavenholmRally1.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "c2", "c3", "c4", "c5", "zombie", "zombie", "zombie", "c7" }, { RoadSpawn7.Location, RavenholmRally1.Location })
		Reinforcements.Reinforce(BadGuy, { "c6", "c2", "c6", "c2", "c3", "c5", "c8", "c4" }, { RoadSpawn8.Location, RavenholmRally1.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn4.Location, RavenholmRally2.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn4.Location, RavenholmRally2.Location })		
		Reinforcements.Reinforce(BadGuy, { "c6", "c2", "c6", "c2", "c3", "c5", "c8", "c4" }, { RoadSpawn8.Location, RavenholmRally1.Location })
		Trigger.AfterDelay(DateTime.Seconds(20), function()
			Reinforcements.Reinforce(BadGuy, { "c6", "c2", "c6", "c2", "c8", "zombie", "zombie", "zombie", "c7" }, { RoadSpawn3.Location, RavenholmRally4.Location })
			Reinforcements.Reinforce(BadGuy, { "c8",  "zombie", "c8", "c3", "c5", "c8", "c8" }, { RoadSpawn4.Location, RavenholmRally2.Location })
			Reinforcements.Reinforce(BadGuy, { "c2", "c2", "c5", "c4", "c5", "zombie", "zombie", "zombie", "c7" }, { RoadSpawn3.Location, RavenholmRally1.Location })
			Reinforcements.Reinforce(BadGuy, { "c2", "c2",  "zombie", "c4", "c5", "zombie", "zombie", "zombie", "c7" }, { RoadSpawn5.Location, RavenholmRally1.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "c2", "c5", "c4", "c5", "zombie", "zombie", "zombie", "c7" }, { RoadSpawn7.Location, RavenholmRally1.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
			Reinforcements.Reinforce(BadGuy, { "c6", "c2", "c3", "c2", "c3", "c5", "c8", "c4" }, { RoadSpawn8.Location, RavenholmRally1.Location })
			Reinforcements.Reinforce(BadGuy, { "c2", "c2",  "zombie", "c4", "c5", "zombie", "zombie", "zombie", "c7" }, { RoadSpawn5.Location, RavenholmRally1.Location })
			Trigger.AfterDelay(DateTime.Seconds(30), function()
			Reinforcements.Reinforce(BadGuy, { "c6", "c2", "c3", "c2", "c8", "zombie", "zombie", "zombie", "c7" }, { RoadSpawn3.Location, RavenholmRally4.Location })
			Reinforcements.Reinforce(BadGuy, { "c6", "c2", "c3", "c2", "c8", "zombie", "zombie", "zombie", "c7" }, { RoadSpawn3.Location, RavenholmRally4.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn3.Location, RavenholmRally4.Location })
			Reinforcements.Reinforce(BadGuy, { "c4", "c4", "c3", "c2", "c8", "zombie", "zombie", "zombie", "c2" }, { RoadSpawn1.Location, RavenholmRally3.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
			Reinforcements.Reinforce(BadGuy, { "c3", "c4", "c8", "c4", "c5", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
			Reinforcements.Reinforce(BadGuy, { "c4", "c4", "c3", "c2", "c8", "zombie", "zombie", "zombie", "c2" }, { RoadSpawn5.Location, RavenholmRally1.Location })
			Reinforcements.Reinforce(BadGuy, { "c8", "zombie", "zombie", "c4", "c5", "c8", "c8" }, { RoadSpawn4.Location, RavenholmRally2.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn4.Location, RavenholmRally2.Location })
			Reinforcements.Reinforce(BadGuy, { "c6", "c2", "c3", "zombie", "zombie", "c3", "c6", "c8", "c5" }, { RoadSpawn8.Location, RavenholmRally1.Location })
				Trigger.AfterDelay(DateTime.Seconds(30), function()
					Media.DisplayMessage("evac in 30...")
					Trigger.AfterDelay(DateTime.Seconds(5), function()
						Reinforcements.Reinforce(BadGuy, { "c8", "zombie", "zombie", "c4", "c5", "c8", "c8" }, { RoadSpawn4.Location, RavenholmRally2.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn4.Location, RavenholmRally2.Location })
						Reinforcements.Reinforce(BadGuy, { "c6", "c2", "c3", "zombie", "zombie", "c3", "c6", "c8", "c5" }, { RoadSpawn8.Location, RavenholmRally1.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn3.Location, RavenholmRally4.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn7.Location, RavenholmRally4.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn2.Location, RavenholmRally2.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn4.Location, RavenholmRally1.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn8.Location, RavenholmRally1.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn2.Location, RavenholmRally2.Location })
						Reinforcements.Reinforce(BadGuy, { "c8", "zombie", "zombie", "c4", "c5", "c8", "c8" }, { RoadSpawn4.Location, RavenholmRally2.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn4.Location, RavenholmRally2.Location })
						Reinforcements.Reinforce(BadGuy, { "c6", "c2", "c3", "zombie", "zombie", "c3", "c6", "c8", "c5" }, { RoadSpawn8.Location, RavenholmRally1.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn1.Location, RavenholmRally3.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn3.Location, RavenholmRally4.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn7.Location, RavenholmRally4.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn2.Location, RavenholmRally2.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn4.Location, RavenholmRally1.Location })
						Reinforcements.Reinforce(BadGuy, { "c6", "c2", "c3", "zombie", "zombie", "c3", "c6", "c8", "c5" }, { RoadSpawn8.Location, RavenholmRally1.Location })
						Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn2.Location, RavenholmRally2.Location })
					end)
				end)
			end)
		end)
	end)
end
--functions

StartFromCrash = function()
	Player1 = Actor.Create(Tanya, true, { Owner = Multi0, Location = Trans.Location })
	Player2 = Actor.Create(Tanya, true, { Owner = Multi1, Location = Trans.Location })
	Player3 = Actor.Create(Tanya, true, { Owner = Multi2, Location = Trans.Location })
	Player1.Move(TanyaSpawn1.Location)
	Player2.Move(TanyaStart2.Location)
	Player3.Move(TanyaStart3.Location)
end

SniperSpawn = function()
	sniper = Actor.Create(Sniper, true, { Location = EngiSpawn.Location, Owner = Multi0 })
end

MedicSpawn = function()
	medi = Actor.Create(Medic, true, { Location = BarnSpawn.Location, Owner = Multi1 })
end

TanyaRescue1 = function()
	tanya1= Actor.Create(Tanya, true, { Location = WindmillSpawn.Location, Owner = Multi2 })
end

TanyaRescue2 = function()
	TanyaMulti1 = Actor.Create(Tanya, true, { Owner = Multi1, Location = TanyaStart1.Location })
	Trigger.AfterDelay(DateTime.Seconds(2), function()
		Reinforcements.Reinforce(BadGuy, { "zombie", "zombie" }, { ZombieSpawn29.Location, ZombieSpawn24.Location })
		Reinforcements.Reinforce(BadGuy, { "c2", "zombie", "c2" }, { ZombieSpawn29.Location, ZombieSpawn24.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "c5", "zombie", "zombie", "zombie" }, { ZombieSpawn29.Location, ZombieSpawn24.Location })
		Reinforcements.Reinforce(BadGuy, { "c2", "zombie", "c2" }, { ZombieSpawn29.Location, ZombieSpawn24.Location })
		Reinforcements.Reinforce(BadGuy, { "c2", "zombie", "zombie", "zombie", "c5" }, { ZombieSpawn29.Location, ZombieSpawn24.Location })
		Reinforcements.Reinforce(BadGuy, { "zombie", "zombie" }, { ZombieSpawn29.Location, ZombieSpawn24.Location })
		Trigger.AfterDelay(DateTime.Seconds(5), function()
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", "zombie" }, { RoadSpawn12.Location, ZombieSpawnMiss.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie" }, { RoadSpawn12.Location, TanyaStart1.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "c6", "zombie", "zombie", "zombie", "c6" }, { RoadSpawn12.Location, TanyaStart1.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "c3" }, { RoadSpawn12.Location, ZombieSpawnMiss.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "zombie", "zombie", }, { RoadSpawn12.Location, TanyaStart1.Location })
			Reinforcements.Reinforce(BadGuy, { "zombie", "c6", "zombie", "zombie" }, { RoadSpawn12.Location, ZombieSpawnMiss.Location })
		end)
	end)
end

ZombieGuardsKilled = function()
	einstein = Actor.Create(Einstein, true, { Location = CrewmateSpawn1.Location, Owner = Multi0 })
	delphi = Actor.Create(Delphi, true, { Location = CrewmateSpawn1.Location, Owner = Multi1 })
	tanya = Actor.Create(Tanya, true, { Location = CrewmateSpawn1.Location, Owner = Multi2 })
	chan = Actor.Create(Chan, true, { Location = CrewmateSpawn1.Location, Owner = Multi2 })
	einstein.Move(ZombieRally13.Location)
	chan.Move(ZombieRally13.Location)
	tanya.Move(ZombieRally13.Location)
	delphi.Move(ZombieRally13.Location)
	ScienceTeam()
	Media.PlaySpeechNotification(AllPlayers, "TargetRescued")
	Trigger.AfterDelay(DateTime.Seconds(3), function()
		ExtractObjective1 = Multi0.AddPrimaryObjective("Protect crewmates")
		ExtractObjective1 = Multi1.AddPrimaryObjective("Protect crewmates")
		ExtractObjective1 = Multi2.AddPrimaryObjective("Protect crewmates")
		ExtractObjective2 = Multi0.AddPrimaryObjective("Escort crewmates to extraction")
		ExtractObjective2 = Multi1.AddPrimaryObjective("Escort crewmates to extraction")
		ExtractObjective2 = Multi2.AddPrimaryObjective("Escort crewmates to extraction")
		Multi0.MarkCompletedObjective(alliedObjective1)
		Multi1.MarkCompletedObjective(alliedObjective1)
		Multi2.MarkCompletedObjective(alliedObjective1)
		Trigger.AfterDelay(DateTime.Seconds(10), function()
			Actor.Create(FlareType, true, { Owner = Multi0, Location = ExtractionLZ.Location })
			Media.PlaySpeechNotification(AllPlayers, "SignalFlareWest")
		end)
	end)
end

SendExtractionHelicopter = function()
	heli = Reinforcements.ReinforceWithTransport(Government, ExtractionHelicopter, nil, ExtractionPathMulti0)[1]
	Trigger.OnKilled(heli, RescueFailed)
	Trigger.AfterDelay(DateTime.Seconds(15), function()
		Media.PlaySpeechNotification(AllPlayers, "ObjectiveMet")
		Trigger.AfterDelay(DateTime.Seconds(20), function()
			Multi0.MarkCompletedObjective(ExtractObjective1)
			Multi1.MarkCompletedObjective(ExtractObjective1)
			Multi2.MarkCompletedObjective(ExtractObjective1)
			Multi0.MarkCompletedObjective(ExtractObjective2)
			Multi1.MarkCompletedObjective(ExtractObjective2)
			Multi2.MarkCompletedObjective(ExtractObjective2)
		end)
	end)
end

--Objective Fails/Completions
HospitalFail = function()
	Media.PlaySpeechNotification(AllPlayers, "ObjectiveMet")
	Multi0.MarkFailedObjective(alliedObjective1)
	Multi1.MarkFailedObjective(alliedObjective1)
	Multi2.MarkFailedObjective(alliedObjective1)
end

ScienceTeam = function()
	ScienceTeam = { einstein, delphi, chan }
	Trigger.OnAllKilled(ScienceTeam, RescueFailed)
end

RescueFailed = function()
	Multi0.MarkFailedObjective(ExtractObjective1)
	Multi1.MarkFailedObjective(ExtractObjective1)
	Multi2.MarkFailedObjective(ExtractObjective1)
	Multi0.MarkFailedObjective(ExtractObjective2)
	Multi1.MarkFailedObjective(ExtractObjective2)
	Multi2.MarkFailedObjective(ExtractObjective2)
end

MissionAccomplished = function()
	Trigger.AfterDelay(DateTime.Seconds(1), function()
	Media.PlaySpeechNotification(AllPlayers, "MissionAccomplished")
	end)
end

MissionFailed = function()
	Trigger.AfterDelay(DateTime.Seconds(1), function()
	Media.PlaySpeechNotification(AllPlayers, "MissionFailed")
	end)
end

WorldLoaded = function()
	BadGuy = Player.GetPlayer("BadGuy")
	Multi0 = Player.GetPlayer("Multi0")
	Multi1 = Player.GetPlayer("Multi1")
	Multi2 = Player.GetPlayer("Multi2")
	Government = Player.GetPlayer("Government")
	AllPlayers = Player.GetPlayer("Multi0", "Multi1", "Multi2" )
	players = { }
	for i = 0, 7, 1 do
		local player = Player.GetPlayer("Multi" ..i)
		players[i] = player
	end

	StartFromCrash()

	Trigger.OnKilled(Actor815, TanyaRescue1)

	Trigger.OnKilled(EngiHouse, SniperSpawn)

	Trigger.OnKilled(Barn, MedicSpawn)

	Trigger.OnKilled(ResearchFacility, TanyaRescue2)

	Trigger.OnKilled(Actor770, HospitalFail)

--Objectives

	Trigger.OnPlayerLost(Multi0, MissionFailed)

	Trigger.OnPlayerWon(Multi0, MissionAccomplished)

	Trigger.OnObjectiveAdded(AllPlayers, function(p, id)
		Trigger.AfterDelay(DateTime.Seconds(5), function()
			Media.DisplayMessage(p.GetObjectiveDescription(id), "New " .. string.lower(p.GetObjectiveType(id)) .. " objective")
		end)
	end)

	ZombieObjective = BadGuy.AddPrimaryObjective("Eat Brains")
	alliedObjective1 = Multi0.AddPrimaryObjective("Rescue your crewmates")
	alliedObjective1 = Multi1.AddPrimaryObjective("Rescue your crewmates")
	alliedObjective1 = Multi2.AddPrimaryObjective("Rescue your crewmates")

--Background Music
	Trigger.AfterDelay(DateTime.Seconds(0), function()
		Media.PlaySound("RavenholmReprise.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(0), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(110), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(220), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(330), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(440), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(550), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(660), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(770), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(880), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(990), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(1100), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(1210), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(1320), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(1430), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(1540), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(1650), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)
	Trigger.AfterDelay(DateTime.Seconds(1760), function()
		Media.PlaySound("RavenholmTrack1.aud")
	end)

--Zombie Triggers
	ZombieGuardsTeam = { ZombieGuard1, ZombieGuard2, ZombieGuard3, ZombieGuard4, ZombieGuard5, ZombieGuard6, ZombieGuard7, ZombieGuard9 }
	Trigger.OnAllKilled(ZombieGuardsTeam, ZombieGuardsKilled)

	Trigger.OnEnteredFootprint(ZombieTrigger1, function(a, id)
		if a.Type == "e7" then
			Trigger.RemoveFootprintTrigger(id)
			Trigger.AfterDelay(10, function()
				ZombieReinforcements1()
			end)
		end
	end)
	Trigger.OnEnteredFootprint(ZombieTrigger2, function(a, id)
		if a.Type == "e7" then
			Trigger.RemoveFootprintTrigger(id)
			Trigger.AfterDelay(10, function()
				ZombieReinforcements2()
			end)
		end
	end)
	Trigger.OnEnteredFootprint(ZombieTrigger3, function(a, id)
		if a.Type == "e7" then
			Trigger.RemoveFootprintTrigger(id)
			Trigger.AfterDelay(10, function()
				ZombieReinforcements3()
			end)
		end
	end)
	Trigger.OnEnteredFootprint(ZombieTrigger4, function(a, id)
		if a.Type == "e7" then
			Trigger.RemoveFootprintTrigger(id)
			Trigger.AfterDelay(10, function()
				ZombieReinforcements4()
			end)
		end
	end)
	Trigger.OnEnteredFootprint(ZombieTrigger5, function(a, id)
		if a.Type == "e7" then
			Trigger.RemoveFootprintTrigger(id)
			Trigger.AfterDelay(10, function()
				ZombieReinforcements5()
			end)
		end
	end)
	Trigger.OnEnteredFootprint(ZombieTrigger7, function(a, id)
		if a.Type == "e7" then
			Trigger.RemoveFootprintTrigger(id)
			Trigger.AfterDelay(10, function()
				ZombieReinforcements7()
			end)
		end
	end)
	Trigger.OnEnteredFootprint(ZombieTrigger8, function(a, id)
		if a.Type == "e7" then
			Trigger.RemoveFootprintTrigger(id)
			Trigger.AfterDelay(10, function()
				ZombieReinforcements8()
			end)
		end
	end)
	Trigger.OnEnteredFootprint(ZombieTrigger9, function(a, id)
		if a.Type == "e7" then
			Trigger.RemoveFootprintTrigger(id)
			Trigger.AfterDelay(10, function()
				ZombieReinforcements9()
			end)
		end
	end)
	Trigger.OnEnteredFootprint(HospitalTrigger1, function(a, id)
		if a.Type == "e7" then
			Trigger.RemoveFootprintTrigger(id)
			Trigger.AfterDelay(10, function()
				HospitalReinforcements1()
			end)
		end
	end)					
	Trigger.OnEnteredFootprint(HospitalTrigger2, function(a, id)
		if a.Type == "e7" then
			Trigger.RemoveFootprintTrigger(id)
			Trigger.AfterDelay(10, function()
				HospitalReinforcements2()
			end)
		end
	end)

	Trigger.OnEnteredFootprint(ZombieTrigger11, function(a, id)
		if a.Type == "e7" then
			Trigger.RemoveFootprintTrigger(id)
			Trigger.AfterDelay(10, function()
				ZombieReinforcements11()
			end)
		end
	end)
	Trigger.OnEnteredFootprint(ZombieTrigger12, function(a, id)
		if a.Type == "e7" then
			Trigger.RemoveFootprintTrigger(id)
			Trigger.AfterDelay(180, function()
				ZombieReinforcements12()
				Trigger.AfterDelay(DateTime.Seconds(110), function()
					SendExtractionHelicopter()
				end)
			end)
		end
	end)
end

Tick = function()
	if (Utils.RandomInteger(1, 200) == 10) then
		local delay = Utils.RandomInteger(1, 10)
		Lighting.Flash("LightningStrike", delay)
		Trigger.AfterDelay(delay, function()
			Media.PlaySound("thunder" .. Utils.RandomInteger(1,6) .. ".aud")
		end)
	end
end