dofile("Scripts/mission.lua");
dofile("Scripts/msl.lua");

function PostCreate()
	mission_lua.BasicMissionInitialize()
	AIparts:AddPeriodic("New Script", 100, func_New_Script, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Init", 10, func_Init, 0 + RandomHalf(10))
	AIparts:AddPeriodic("Mission", 600, func_Mission, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Patrollie T34", 2000, func_Patrollie_T34, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Patrolie  erste Strasse", 200, func_Patrolie__erste_Strasse, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Kommandant", 30, func_Kommandant, 0 + RandomHalf(30))
	AIparts:AddPeriodic("Templates", 10, func_Templates, 0 + RandomHalf(10))
	AIparts:AddPeriodic("Häuserskript", 100, func_H_userskript, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Bomber", 100, func_Bomber, 0 + RandomHalf(100))
	AIparts:AddPeriodic("A_Nachschub Russen", 100, func_A_Nachschub_Russen, 0 + RandomHalf(100))
	AIparts:AddPeriodic("A_Schema", 1000, func_A_Schema, 0 + RandomHalf(100))
	AIparts:AddPeriodic("B_Nachschub_Russen", 500, func_B_Nachschub_Russen, 0 + RandomHalf(100))
	AIparts:AddPeriodic("C_Nachschub_Russen", 500, func_C_Nachschub_Russen, 0 + RandomHalf(100))
	AIparts:AddPeriodic("D_Nachschub_Russen", 500, func_D_Nachschub_Russen, 0 + RandomHalf(100))
	AIparts:AddPeriodic("B_Schema", 1000, func_B_Schema, 0 + RandomHalf(100))
	AIparts:AddPeriodic("D_Schema", 1000, func_D_Schema, 0 + RandomHalf(100))
	AIparts:AddPeriodic("C_Schema", 1000, func_C_Schema, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Initialisierung", 10, func_Initialisierung, 0 + RandomHalf(10))
	AIparts:AddPeriodic("A Ziele aktivieren", 500, func_A_Ziele_aktivieren, 0 + RandomHalf(100))
	AIparts:AddPeriodic("D_Ziele aktivieren", 500, func_D_Ziele_aktivieren, 0 + RandomHalf(100))
	AIparts:AddPeriodic("B_Ziele aktivieren", 500, func_B_Ziele_aktivieren, 0 + RandomHalf(100))
	AIparts:AddPeriodic("C_Ziele aktivieren", 500, func_C_Ziele_aktivieren, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Komandant stirbt", 500, func_Komandant_stirbt, 0 + RandomHalf(100))
	AIparts:AddPeriodic("A_Ziele erreicht", 500, func_A_Ziele_erreicht, 0 + RandomHalf(100))
	AIparts:AddPeriodic("B_Ziele erreicht", 500, func_B_Ziele_erreicht, 0 + RandomHalf(100))
	AIparts:AddPeriodic("C_Ziele erreicht", 500, func_C_Ziele_erreicht, 0 + RandomHalf(100))
	AIparts:AddPeriodic("D_Ziele erreicht", 500, func_D_Ziele_erreicht, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Sonstige Ziele erreicht", 500, func_Sonstige_Ziele_erreicht, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Siegbedingung", 500, func_Siegbedingung, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Sonstige Ziele aktivieren", 500, func_Sonstige_Ziele_aktivieren, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Nachschub_AD", 500, func_Nachschub_AD, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Nachschub BC unten", 500, func_Nachschub_BC_unten, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Nachschub_BC_2v_unten", 500, func_Nachschub_BC_2v_unten, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Nachschub_BC_3v_unten", 500, func_Nachschub_BC_3v_unten, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Nachschub_BC_Eisenbahn", 500, func_Nachschub_BC_Eisenbahn, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Nachschub_CD_links", 500, func_Nachschub_CD_links, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Nachschub_CD_rechts", 500, func_Nachschub_CD_rechts, 0 + RandomHalf(100))
	AIparts:AddPeriodic("Eisenbahn", 6000, func_Eisenbahn, 0 + RandomHalf(100))
	AIparts:AddPeriodic("B_Buergermeister", 2000, func_B_Buergermeister, 0 + RandomHalf(100))
	AIparts:AddPeriodic("B_Fabrik mit Feuerwehr", 2000, func_B_Fabrik_mit_Feuerwehr, 0 + RandomHalf(100))
	AIparts:AddPeriodic("B_Kaserne", 2000, func_B_Kaserne, 0 + RandomHalf(100))
	AIparts:AddPeriodic("B_Traktorfabrik", 2000, func_B_Traktorfabrik, 0 + RandomHalf(100))
	AIparts:AddPeriodic("C_Feuerwehr", 10, func_C_Feuerwehr, 0 + RandomHalf(10))
	AIparts:AddPeriodic("C_Getreidsilo", 10, func_C_Getreidsilo, 0 + RandomHalf(10))
	AIparts:AddPeriodic("Zähler für Ziele", 100, func_Z_hler_f_r_Ziele, 0 + RandomHalf(100))
	AIparts:AddPeriodic("C_Fabrikteile", 10, func_C_Fabrikteile, 0 + RandomHalf(10))
	AIparts:AddPeriodic("C_Fabrikle", 10, func_C_Fabrikle, 0 + RandomHalf(10))
	msd_vars = {
		A_Zhler = 0,
		Bomber_deu = 0,
		Brgermeister = 99,
		Bruecke_AD = 0,
		Bruecke_BC_2v_unten = 0,
		Bruecke_BC_3v_unten = 0,
		Bruecke_BC_Eisenbahn = 0,
		Bruecke_BC_unten = 0,
		Bruecke_CD_links = 0,
		Bruecke_CD_rechts = 0,
		Eisenbahn = 99,
		Fabrikle = 99,
		FabrikmitFeuerwehr = 99,
		Fabrikteile = 99,
		Feuerwehr = 99,
		Getreidesilo = 0,
		Kaserne = 99,
		KommandantFortschritt = 99,
		Mine_D = false,
		minenA = false,
		Missionsziele = 1,
		stop = false,
		test = false,
		Traktorfabrik = 99,
		Variable_Name = 4,
	}
end

function func_New_Script()
	if NumPlayerUnitsInZone("Player", "Einmarsch_rechts") > 0 then
		groups.CreateTemplate("Nach vorne", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 0.50,
			points = {"D1_1","D_2_1", }, group_move = true, spread_rad = 15, wait_time = 60})
		SetGroupBehaviour("Rus_Aufmarschgebiet", true, true, true, true, false, true, nil, nil, nil, nil)
		GroupSetMicroAIBehaviour("Rus_Aufmarschgebiet", "Agressive")
	end
	if NumPlayerUnitsInZone("Player", "Stadt_1_Strasse_quer") > 0 then
		SetGroupBehaviour("Rus_Aufmarschgebiet", false, true, true, true, false, true, nil, nil, nil, nil)
		GroupSetMicroAIBehaviour("Rus_Aufmarschgebiet", "Cautious")
		MoveGroupToZone("Rus_Aufmarschgebiet", "D_2_2", true, false)
	end
end

function func_Init()
	if NumPlayerUnitsInZone("Player", "Stadt_1_Strasse_quer") > 0 and not msd_vars.stop then
		RunSpawn("Enemy", {"Rus_6_mann", }, "Spawn_04", "6Mann", "", true, true, {}, false, 20)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_00", "6Mann", "", true, true, {}, false, 20)
		msd_vars.stop = true
	end
	do
		MoveGroupToZone("6Mann", "Aufmarschgebiet", true, false)
	end
	do
		SetEvent("Russischer Angriff")
	end
end

function func_Mission()
	if GetGameTime() > 10 and msd_vars.Missionsziele == 1 then
		mission.OutScreenMessage(100069, 15, "0xFF00E000")
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  mission.OutScreenMessage(100003, 10, "0xFF00E000") end)
		msd_vars.Missionsziele = msd_vars.Missionsziele + 1
	end
	if GetGameTime() > 60 and msd_vars.Missionsziele == 2 then
		mission.OutScreenMessage(100004, 10, "0xFF00E000")
		msd_vars.Missionsziele = msd_vars.Missionsziele + 1
	end
	if GetGameTime() > 80 and msd_vars.Missionsziele == 3 then
		mission.CameraAt({477.281494, 2.985623, -474.789612}, 66.898216, -57.467880, 46.607632, 10.00)
		mission.OutMessage(100006)
		msd_vars.Missionsziele = msd_vars.Missionsziele + 1
		msd_vars.KommandantFortschritt = 0
	end
	if msd_vars.Missionsziele == 4 and msd_vars.KommandantFortschritt > 6 then
		AcivateObjective("Durchbruch Gumrak links")
		AcivateObjective("Durchbruch Gumrak rechts")
		AcivateObjective("Durchbruch Zariza links")
		AcivateObjective("Durchbruch Zariza rechts")
		AcivateObjective("Bunker Pitomnik")
		DisableObjective("Die letzte Spreu")
		msd_vars.Missionsziele = msd_vars.Missionsziele + 1
	end
end

function func_Patrollie_T34()
	do
		groups.CreateTemplate("T34", groups.ttypes.patrol,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			points = {"T34patrolliAnfang","T34PatrolieEnde", }, wait_time = {10,20, },
			spread_rad = 5, assault = true, group_move = false, circle = true })
		groups.AssignTemplate("T34", "Rus_T34_Patrollie")
	end
end

function func_Patrolie__erste_Strasse()
	-- D_Sektor
	if NumGroupUnitsInZone("Strasse1_quer", "Anfan_Strasse1_quer") > 0 then
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  MoveGroupToZone("Strasse1_quer", "Ende_Strasse1_quer", true, false) end)
	end
	if NumGroupUnitsInZone("Strasse1_quer", "Ende_Strasse1_quer") > 0 then
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  MoveGroupToZone("Strasse1_quer", "Anfan_Strasse1_quer", true, false) end)
	end
	-- A_Sektor
	if NumGroupUnitsInZone("A_1Strasse_quer", "A_1_Strasse_quer_links") > 0 then
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  MoveGroupToZone("A_1Strasse_quer", "A_1_Strasse_oben", true, false) end)
	end
	if NumGroupUnitsInZone("A_1Strasse_quer", "A_1_Strasse_oben") > 0 then
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  MoveGroupToZone("A_1Strasse_quer", "A_1_Strasse_quer_links", true, false) end)
	end
end

function func_Kommandant()
	if msd_vars.KommandantFortschritt == 0 then
		SetGroupSelectable("Bunkereinheiten_neutral", false)
		RunSpawn("Player", {"Deu_offiziere", }, "Spawn_04", "offizier", "", true, true, {}, false, 0)
		RunSpawn("Player", {"Deu_tiger", }, "Spawn_06", "Leibgarde", "", true, true, {}, false, 10)
		RunSpawn("Player", {"Deu_tiger", }, "Spawn_06", "Leibgarde", "", true, true, {}, false, 10)
		RunSpawn("Player", {"Deu_tiger", }, "Spawn_06", "Leibgarde", "", true, true, {}, false, 10)
		RunSpawn("Player", {"Deu_tiger", }, "Spawn_06", "Leibgarde", "", true, true, {}, false, 10)
		msd_vars.KommandantFortschritt = msd_vars.KommandantFortschritt + 1
	end
	if msd_vars.KommandantFortschritt == 1 then
		SetGroupSelectable("offizier", true)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  mission.OutMessage(100007) end)
		SetEvent("Komandant lebt")
		msd_vars.KommandantFortschritt = msd_vars.KommandantFortschritt + 1
	end
	if NumGroupUnitsInZone("offizier", "Bunker1") > 0 and msd_vars.KommandantFortschritt == 2 then
		TransferUnits("Bunkereinheiten_neutral", 0, "Bunkereinheiten", 0)
		SetGroupSelectable("Bunkereinheiten", false)
		SetObjectiveComplete("Bunker Pitomnik", "Player")
		msd_vars.KommandantFortschritt = msd_vars.KommandantFortschritt + 1
	end
	if msd_vars.KommandantFortschritt == 3 then
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  mission.OutMessage(100008) end)
		mission.CameraAt({144.988129, 2.998398, -484.866241}, 42.714836, 102.480049, 157.028671, 10.00)
		AcivateObjective("Depot Mitte")
		msd_vars.KommandantFortschritt = msd_vars.KommandantFortschritt + 1
	end
	if msd_vars.KommandantFortschritt == 4 and NumGroupUnitsInZone("offizier", "Depot_Munition") > 0 then
		TransferUnits("Depot_munition_neutral", 0, "Depot_Munition", 0)
		SetGroupSelectable("Depot_Munition", false)
		SetObjectiveComplete("Depot Mitte", "Player")
		msd_vars.KommandantFortschritt = msd_vars.KommandantFortschritt + 1
	end
	if msd_vars.KommandantFortschritt == 5 then
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  mission.OutMessage(100009) end)
		mission.CameraAt({-444.132172, 6.794936, -443.523102}, 42.714836, 102.480049, 151.861511, 10.00)
		AcivateObjective("Depot Links")
		msd_vars.KommandantFortschritt = msd_vars.KommandantFortschritt + 1
	end
	if msd_vars.KommandantFortschritt == 6 and NumGroupUnitsInZone("offizier", "Depot_Treibstoff") > 0 then
		TransferUnits("Depot_Treibstoff_neutral", 0, "Depot_Treibstoff", 0)
		SetGroupSelectable("Depot_Treibstoff", false)
		msd_vars.KommandantFortschritt = msd_vars.KommandantFortschritt + 1
	end
	if msd_vars.KommandantFortschritt == 7 then
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 30*10, function()  mission.OutMessage(100064) end)
		mission.OutMessage(100016)
		SetGroupSelectable("Depot_Treibstoff", true)
		SetGroupSelectable("Depot_Munition", true)
		SetGroupSelectable("Bunkereinheiten", true)
		SetObjectiveComplete("Depot Links", "Player")
		msd_vars.KommandantFortschritt = msd_vars.KommandantFortschritt + 1
		AcivateObjective("Bunker Pitomnik")
	end
	if msd_vars.KommandantFortschritt == 8 and NumGroupUnitsInZone("offizier", "Bunker1") > 0 then
		mission.OutMessage(100015)
		msd_vars.KommandantFortschritt = msd_vars.KommandantFortschritt + 1
		SetObjectiveComplete("Bunker Pitomnik", "Player")
		mission.CameraAt({392.741852, 2.998398, -491.015320}, 47.172245, -15.749211, 122.137733, 3.00)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 0*10, function()  RunSpawn("Player", {"Deu_Krad", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 10*10, function()  RunSpawn("Player", {"Deu_231", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  RunSpawn("Player", {"Deu_Infantrie_Sonder", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 30*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 50*10, function()  RunSpawn("Player", {"Deu_Scharf", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 5) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 60*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 1) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 70*10, function()  RunSpawn("Player", {"Deu_Opel_Mörser", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 80*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 90*10, function()  RunSpawn("Player", {"Deu_Opel_MG", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 100*10, function()  RunSpawn("Player", {"Deu_LKW_Inf_Sanitäter", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 110*10, function()  RunSpawn("Player", {"Deu_Flak_gross", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 120*10, function()  RunSpawn("Player", {"Deu_Geschütze_Pak_gross", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 130*10, function()  RunSpawn("Player", {"Deu_Geschütze_Pak_gross", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 140*10, function()  RunSpawn("Player", {"Deu_251_Inf_Pioniere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 150*10, function()  RunSpawn("Player", {"Deu_251_Infantrie_Schuss", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 40) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 160*10, function()  RunSpawn("Player", {"Deu_250_Inf_Besatzungen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 30) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 170*10, function()  RunSpawn("Player", {"Deu_250_Inf_Besatzungen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 30) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 180*10, function()  RunSpawn("Player", {"Deu_250_Inf_Mechaniker", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 190*10, function()  RunSpawn("Player", {"Deu_251_Inf_Schwere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 210*10, function()  RunSpawn("Player", {"marder_panzer", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 220*10, function()  RunSpawn("Player", {"Deu_Panzer_IVe", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 230*10, function()  RunSpawn("Player", {"DEU_III_J", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 240*10, function()  RunSpawn("Player", {"Deu_IV_D", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 250*10, function()  RunSpawn("Player", {"Deu_III_F", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 260*10, function()  RunSpawn("Player", {"Deu_stugIIIg", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 260*10, function()  RunSpawn("Player", {"Deu_wirbelwind", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 270*10, function()  RunSpawn("Player", {"Deu_stugIIIb", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 310*10, function()  RunSpawn("Player", {"Deu_infantrie gemischt", }, "Spawn_04", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 320*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_04", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 330*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_04", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 340*10, function()  RunSpawn("Player", {"Deu_infantrie gemischt", }, "Spawn_07", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 350*10, function()  RunSpawn("Player", {"Deu_infantrie gemischt", }, "Spawn_07", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 360*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_07", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_Versorger", }, "Spawn_07", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_treibstoff", }, "Spawn_07", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 100*10, function()  mission.OutMessage(100066) end)
		AcivateObjective("Depot Links")
	end
	if NumGroupUnitsInZone("offizier", "Cheat") > 0 and msd_vars.KommandantFortschritt == 2 then
		msd_vars.KommandantFortschritt = 7
	end
	if msd_vars.KommandantFortschritt == 9 and NumGroupUnitsInZone("offizier", "Depot_Treibstoff") > 0 then
		mission.OutMessage(100015)
		msd_vars.KommandantFortschritt = msd_vars.KommandantFortschritt + 1
		SetObjectiveComplete("Depot Links", "Player")
		mission.CameraAt({-440.946899, 2.998398, -480.517883}, 47.172245, -15.749211, 122.127724, 3.00)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 10*10, function()  RunSpawn("Player", {"Deu_Krad", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  RunSpawn("Player", {"Deu_231", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 30*10, function()  RunSpawn("Player", {"Deu_Scharf", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 5) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  RunSpawn("Player", {"Deu_Opel_MG", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 50*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 60*10, function()  RunSpawn("Player", {"Deu_LKW_Inf_Sanitäter", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 70*10, function()  RunSpawn("Player", {"Deu_Flak_gross", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 80*10, function()  RunSpawn("Player", {"Deu_Geschütze_Pak_gross", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 90*10, function()  RunSpawn("Player", {"Deu_Geschütze_Pak_klein", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 100*10, function()  RunSpawn("Player", {"Deu_Flak_klein", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 110*10, function()  RunSpawn("Player", {"Deu_Opel_Mörser", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 1) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 120*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 130*10, function()  RunSpawn("Player", {"Deu_251_Inf_Pioniere", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 140*10, function()  RunSpawn("Player", {"Deu_251_Inf_Pioniere", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 40) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 150*10, function()  RunSpawn("Player", {"Deu_250_Inf_Besatzungen", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 30) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 160*10, function()  RunSpawn("Player", {"Deu_250_Inf_Mechaniker", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 170*10, function()  RunSpawn("Player", {"Deu_251_Inf_Schwere", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 180*10, function()  RunSpawn("Player", {"Deu_Infantrie_Sonder", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 190*10, function()  RunSpawn("Player", {"Deu_Panzer_IVe", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 200*10, function()  RunSpawn("Player", {"DEU_III_J", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 205*10, function()  RunSpawn("Player", {"Deu_III_F", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 210*10, function()  RunSpawn("Player", {"Deu_IV_D", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 220*10, function()  RunSpawn("Player", {"Deu_wirbelwind", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 230*10, function()  RunSpawn("Player", {"Deu_stugIIIg", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 240*10, function()  RunSpawn("Player", {"Deu_stugIIIb", }, "Spawn_03", "Depot_Treibstoff", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 300*10, function()  mission.OutMessage(100008) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 360*10, function()  RunSpawn("Player", {"Deu_infantrie gemischt", }, "Spawn_05", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_05", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 380*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_05", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 380*10, function()  RunSpawn("Player", {"Deu_infantrie gemischt", }, "Spawn_05", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 380*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_05", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 380*10, function()  RunSpawn("Player", {"Deu_infantrie gemischt", }, "Spawn_05", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 390*10, function()  RunSpawn("Player", {"Deu_Versorger", }, "Spawn_05", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 400*10, function()  RunSpawn("Player", {"Deu_treibstoff", }, "Spawn_05", "Depot_Treibstoff", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 100*10, function()  mission.OutMessage(100065) end)
		AcivateObjective("Depot Mitte")
	end
	if msd_vars.KommandantFortschritt == 10 and NumGroupUnitsInZone("offizier", "Depot_Munition") > 0 then
		mission.OutMessage(100015)
		SetObjectiveComplete("Depot Mitte", "Player")
		msd_vars.KommandantFortschritt = msd_vars.KommandantFortschritt + 1
		mission.CameraAt({54.836838, 2.998398, -484.511017}, 47.172245, -15.749211, 122.125366, 3.00)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 10*10, function()  RunSpawn("Player", {"Deu_Krad", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  RunSpawn("Player", {"Deu_231", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 30*10, function()  RunSpawn("Player", {"Deu_Scharf", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 5) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  RunSpawn("Player", {"Deu_Opel_MG", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 60*10, function()  RunSpawn("Player", {"Deu_LKW_Inf_Sanitäter", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 80*10, function()  RunSpawn("Player", {"Deu_Geschütze_Pak_gross", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 110*10, function()  RunSpawn("Player", {"Deu_Opel_Mörser", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 1) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 130*10, function()  RunSpawn("Player", {"Deu_Panzer_IVe", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 140*10, function()  RunSpawn("Player", {"Deu_251_Inf_Pioniere", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 40) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 150*10, function()  RunSpawn("Player", {"Deu_250_Inf_Besatzungen", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 30) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 360*10, function()  RunSpawn("Player", {"Deu_infantrie gemischt", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 380*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 380*10, function()  RunSpawn("Player", {"Deu_infantrie gemischt", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 380*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 380*10, function()  RunSpawn("Player", {"Deu_infantrie gemischt", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 400*10, function()  RunSpawn("Player", {"Deu_treibstoff", }, "Spawn_01", "Depot_Munition", "", true, true, {}, false, 10) end)
		AcivateObjective("C_Bahnhof rechts")
		AcivateObjective("B_Kaserne HQ")
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 100*10, function()  mission.OutMessage(100067) end)
	end
	if msd_vars.KommandantFortschritt == 11 then
		msd_vars.Eisenbahn = 0
		msd_vars.KommandantFortschritt = msd_vars.KommandantFortschritt + 1
	end
end

function func_Templates()
	do
		groups.CreateTemplate("Gräben", groups.ttypes.defence, { call_for_help = false, call_for_howitzer = false, reinf_lost = 0 })
		groups.CreateTemplate("", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 1.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 0.50,
			points = {"", }, group_move = true, spread_rad = 15, wait_time = 60})
	end
	
end

function func_H_userskript()
	if GetGameTime() > 0 then
		GroupSetMicroAIBehaviour("Haeuser", "Cautious")
		SetGroupBehaviour("Haeuser", true, false, true, false, true, false, false, true, true, false)
		GroupSetMicroAIBehaviour("Graeben", "Agressive")
		SetGroupBehaviour("Graeben", false, true, true, true, true, false, false, true, true, false)
	end
end

function func_Bomber()
	if msd_vars.Bomber_deu == 0 then
		SetPlaneDesc("germany", "bomber", "German/ju_88s.dsc")
		SetPlaneSide(1, "SE")
		SendPlane("Player", "Angriff", "bomber", "S", 15, -1, "")
		msd_vars.Bomber_deu = msd_vars.Bomber_deu + 1
	end
	if msd_vars.Bomber_deu == 1 then
		SetPlaneDesc("germany", "bomber", "German/bf_109g.dsc")
		SetPlaneSide(1, "S")
		SendPlane("Player", "Viertel2 Bomben1", "bomber", "S", 100, -1, "")
		msd_vars.Bomber_deu = msd_vars.Bomber_deu + 1
	end
	if msd_vars.Bomber_deu == 2 then
		SetPlaneDesc("germany", "bomber", "German/fw_189.dsc")
		SetPlaneSide(1, "S")
		SendPlane("Player", "Viertel2 Bomben2 ", "bomber", "S", 100, -1, "")
		msd_vars.Bomber_deu = msd_vars.Bomber_deu + 1
	end
end

function func_A_Nachschub_Russen()
	if NumPlayerUnitsInZone("Player", "A_1_1") > 0 and not IsEventPresent("A1_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_1", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_1", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_1", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A1_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_2_1") > 0 and not IsEventPresent("A_2_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_2", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_2", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_2", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_2_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_3_1") > 0 and not IsEventPresent("A_3_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_3", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_3", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_3", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_3_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_4_1") > 0 and not IsEventPresent("A_4_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_4", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_4", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_4", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_4_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_5_1") > 0 and not IsEventPresent("A_5_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_5", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_5", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_5", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_5_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_6_1") > 0 and not IsEventPresent("A_6_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_6", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_6", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_6", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_6_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_7_1") > 0 and not IsEventPresent("A_7_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_7", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_7", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_7", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_7_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_8_1") > 0 and not IsEventPresent("A_8_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_8", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_8", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_8", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_8_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_9_1") > 0 and not IsEventPresent("A_9_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_9", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_9", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_9", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_9_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_10_1") > 0 and not IsEventPresent("A_10_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_10", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_10", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_10", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_10_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_11_1") > 0 and not IsEventPresent("A_11_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_11", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_11", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_11", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_11_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_12_1") > 0 and not IsEventPresent("A_12_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_12", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_12", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_12", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_12_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_13_1") > 0 and not IsEventPresent("A_13_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_13", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_13_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_13_2") > 0 and not IsEventPresent("A_Nachubweg blockiert")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_13", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_Nachubweg blockiert")
	end
	if NumPlayerUnitsInZone("Player", "A_14_1") > 0 and not IsEventPresent("A_14_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_14", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_14", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_14", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_14_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_15_1") > 0 and not IsEventPresent("A_15_Nachschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_15", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_15", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_15", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_15_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_16_1") > 0 and not IsEventPresent("A_16_NAchschubstop") and not IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_16", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "A_16", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_04", "A_16", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_16_NAchschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_1_1") > 0 and not IsEventPresent("A1_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_1", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_1", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_1", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A1_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_2_1") > 0 and not IsEventPresent("A_2_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_2", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_2", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_2", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_2_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_3_1") > 0 and not IsEventPresent("A_3_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_3", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_3", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_3", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_3_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_4_1") > 0 and not IsEventPresent("A_4_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_4", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_4", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_4", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_4_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_5_1") > 0 and not IsEventPresent("A_5_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_5", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_5", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_5", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_5_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_6_1") > 0 and not IsEventPresent("A_6_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_6", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_6", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_6", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_6_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_7_1") > 0 and not IsEventPresent("A_7_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_7", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_7", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_7", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_7_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_8_1") > 0 and not IsEventPresent("A_8_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_8", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_8", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_8", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_8_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_9_1") > 0 and not IsEventPresent("A_9_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_9", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_9", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_9", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_9_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_10_1") > 0 and not IsEventPresent("A_10_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_10", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_10", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_10", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_10_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_11_1") > 0 and not IsEventPresent("A_11_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_11", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_11", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_11", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_11_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_12_1") > 0 and not IsEventPresent("A_12_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_12", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_12", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_12", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_12_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_13_1") > 0 and not IsEventPresent("A_13_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_13", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_13_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_14_1") > 0 and not IsEventPresent("A_14_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_14", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_14", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_14", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_14_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_15_1") > 0 and not IsEventPresent("A_15_Nachschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_15", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_15", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_15", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_15_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "A_16_1") > 0 and not IsEventPresent("A_16_NAchschubstop") and IsEventPresent("A_Nachubweg blockiert") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_16", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "A_16", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "A_16", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_16_NAchschubstop")
	end
end

function func_A_Schema()
	if GetGameTime() > 0 then
		groups.CreateTemplate("A_1", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_1_1","A_1_2","A_1_Strasse_oben", }, group_move = false, spread_rad = 15, wait_time = 20})
		groups.CreateTemplate("A_1_defense", groups.ttypes.defence, { call_for_help = false, call_for_howitzer = false, reinf_lost = 0 })
		groups.CreateTemplate("A_2", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_2_1","A_2_2","A_2_Strasse_oben", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("A_3", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_3_1","A_4_1","A_3_Strasse_oben", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("A_4", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_4_1","A_5_1","A_3_Strasse_oben", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("A_5", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_5_1","A_5_2","A_5_strasse_oben", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("A_6", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_6_1","A_6_Strasse_oben","A_3_Strasse_oben", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("A_7", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_7_1","A_7_Strasse_oben","A_6_1", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("A_8", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_8_1","A_8_Strasse_oben", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("A_9", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_9_1","A_10_Strasse_oben","A_8_Strasse_oben", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("A_10", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_10_1","A_10_Strasse_oben","A_11_Strasse_oben", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("A_11", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_11_1","A_11_Strasse_oben","A_10_Strasse_oben", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("A_12", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_12_Strasse_oben","A_12_2","A_12_1", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("A_13", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"A_13_Strasse_oben","A_13_2","A_13_1", }, group_move = false, spread_rad = 15, wait_time = 10})
	end
	if GetGameTime() > 0 then
		MoveGroupToZone("A_1", "A_1_Strasse_oben", true, true)
		MoveGroupToZone("A_2", "A_2_Strasse_oben", true, true)
		MoveGroupToZone("A_3", "A_3_Strasse_oben", true, true)
		MoveGroupToZone("A_4", "A_4_1", true, true)
		MoveGroupToZone("A_5", "A_5_strasse_oben", true, true)
		MoveGroupToZone("A_6", "A_6_Strasse_oben", true, true)
		MoveGroupToZone("A_7", "A_7_Strasse_oben", true, true)
		MoveGroupToZone("A_8", "A_8_Strasse_oben", true, true)
		MoveGroupToZone("A_9", "A_9_Strasse_oben", true, true)
		MoveGroupToZone("A_10", "A_10_Strasse_oben", true, true)
		MoveGroupToZone("A_11", "A_8_Strasse_oben", true, true)
		MoveGroupToZone("A_12", "A_12_Strasse_oben", true, true)
		MoveGroupToZone("A_13", "A_13_Strasse_oben", true, true)
	end
	if NumGroupUnitsInZone("A_1", "A_1_Strasse_oben") > 0 then
		SetGroupBehaviour("A_1", true, true, true, true, false, true, true, true, true, false)
		groups.AssignTemplate("A_1", "A_1")
	end
	if NumGroupUnitsInZone("A_2", "A_2_Strasse_oben") > 0 then
		SetGroupBehaviour("A_2", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("A_2", "Normal")
		groups.AssignTemplate("A_2", "A_2")
	end
	if NumGroupUnitsInZone("A_3", "A_3_Strasse_oben") > 0 then
		SetGroupBehaviour("A_3", nil, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("A_3", "Agressive")
		groups.AssignTemplate("A_3", "A_3")
	end
	if NumGroupUnitsInZone("A_4", "A_4_1") > 0 then
		SetGroupBehaviour("A_4", nil, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("A_4", "Agressive")
		groups.AssignTemplate("A_4", "A_4")
	end
	if NumGroupUnitsInZone("A_5", "A_5_strasse_oben") > 0 then
		SetGroupBehaviour("A_5", true, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("A_5", "Agressive")
		groups.AssignTemplate("A_5", "A_5")
	end
	if NumGroupUnitsInZone("A_6", "A_6_Strasse_oben") > 0 then
		SetGroupBehaviour("A_6", true, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("A_6", "Cautious")
		groups.AssignTemplate("A_6", "A_6")
	end
	if NumGroupUnitsInZone("A_7", "A_7_Strasse_oben") > 0 then
		SetGroupBehaviour("A_7", true, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("A_7", "Normal")
		groups.AssignTemplate("A_7", "A_7")
	end
	if NumGroupUnitsInZone("A_8", "A_8_Strasse_oben") > 0 then
		SetGroupBehaviour("A_8", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("A_8", "Normal")
		groups.AssignTemplate("A_8", "A_8")
	end
	if NumGroupUnitsInZone("A_9", "A_9_Strasse_oben") > 0 then
		SetGroupBehaviour("A_9", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("A_9", "Normal")
		groups.AssignTemplate("A_9", "A_9")
	end
	if NumGroupUnitsInZone("A_10", "A_10_Strasse_oben") > 0 then
		SetGroupBehaviour("A_10", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("A_10", "Normal")
		groups.AssignTemplate("A_10", "A_10")
	end
	if NumGroupUnitsInZone("A_11", "A_11_Strasse_oben") > 0 then
		SetGroupBehaviour("A_11", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("A_11", "Normal")
		groups.AssignTemplate("A_11", "A_11")
	end
	if NumGroupUnitsInZone("A_12", "A_12_Strasse_oben") > 0 then
		SetGroupBehaviour("A_12", nil, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("A_12", "Agressive")
		groups.AssignTemplate("A_12", "A_12")
	end
	if NumGroupUnitsInZone("A_13", "A_13_Strasse_oben") > 0 then
		SetGroupBehaviour("A_13", true, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("A_13", "Agressive")
		groups.AssignTemplate("A_13", "A_13")
	end
end

function func_B_Nachschub_Russen()
	if NumPlayerUnitsInZone("Player", "B_1_Fabrik") > 0 and not IsEventPresent("B_1_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_1", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_1", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_1", "", true, true, {}, false, 10)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_1_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "B_2") > 0 and not IsEventPresent("B_2_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_2", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_2", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_2", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_2_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "B_3_Fabrik_rechts") > 0 and not IsEventPresent("B_3_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_3", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_3", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_3", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_3_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "B_4") > 0 and not IsEventPresent("B_4_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_4", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_4", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_4", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_4_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "B_5_Bahnhoflinks") > 0 and not IsEventPresent("B_5_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_5", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_5", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_5", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_5_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "B_6") > 0 and not IsEventPresent("B_6_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_6", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_6", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_6", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_6_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "B_7_Fabrik_links") > 0 and not IsEventPresent("B_7_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_7", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_7", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_7", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_7_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "B_8") > 0 and not IsEventPresent("B_8_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_8", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_8", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_8", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_8_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "B_9") > 0 and not IsEventPresent("B_9_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_9", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_9", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_9", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_9_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "B_10") > 0 and not IsEventPresent("B_10_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_10", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_10", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_10", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_10_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "B_11") > 0 and not IsEventPresent("B_11_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_11", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_11", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_11", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_11_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "B_12") > 0 and not IsEventPresent("B_12_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_12", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_12", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_12", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_12_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "B_13") > 0 and not IsEventPresent("B_13_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "B_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_01", "B_13", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("B_13_Nachschubstop")
	end
end

function func_C_Nachschub_Russen()
	if NumPlayerUnitsInZone("Player", "C_1_1") > 0 and not IsEventPresent("C_1_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_1", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_1", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_1", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_1_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_2") > 0 and not IsEventPresent("C_2_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_2", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_2", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_2", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_2_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_3") > 0 and not IsEventPresent("C_3_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_3", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_3", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_3", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_3_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_4_ost") > 0 and not IsEventPresent("C_4_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_4", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_4", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_4", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_4_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_5") > 0 and not IsEventPresent("C_5_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_5", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_5", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_5", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_5_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_6_1") > 0 and not IsEventPresent("C_6_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_6", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_6", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_6", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_6_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_7") > 0 and not IsEventPresent("C_7_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_7", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_7", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_7", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("A_3_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_8") > 0 and not IsEventPresent("C_8_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_8", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_8", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_8", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_8_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_9") > 0 and not IsEventPresent("C_9_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_9", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_9", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_9", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_9_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_10") > 0 and not IsEventPresent("C_10_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_10", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_10", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_10", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_10_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_11") > 0 and not IsEventPresent("C_11_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_11", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_11", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_11", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_11_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_12") > 0 and not IsEventPresent("C_12_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_12", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_12", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_12", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_12_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_13") > 0 and not IsEventPresent("C_13_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_13", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_13_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_14") > 0 and not IsEventPresent("C_14_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_14", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_14", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_14", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_14_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_15") > 0 and not IsEventPresent("C_15_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_15", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_15", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_15", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_15_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_16") > 0 and not IsEventPresent("C_16_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_16", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_16", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_16", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_16_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_17") > 0 and not IsEventPresent("C_17_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_17", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_17", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_17", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_17_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_18") > 0 and not IsEventPresent("C_18_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_18", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_18", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_18", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_18_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_19") > 0 and not IsEventPresent("C_19_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_19", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_19", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_19", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_19_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_20") > 0 and not IsEventPresent("C_20_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_20", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_20", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_20", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_20_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_21") > 0 and not IsEventPresent("C_21_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_21", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_21", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_21", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_21_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_22") > 0 and not IsEventPresent("C_22_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_22", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_22", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_22", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_22_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_23") > 0 and not IsEventPresent("C_23_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_23", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_23", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_23", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_23_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_24") > 0 and not IsEventPresent("C_24_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_24", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_24", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_24", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_24_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_25") > 0 and not IsEventPresent("C_25_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_25", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_25", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_25", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_25_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_26") > 0 and not IsEventPresent("C_26_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_26", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_26", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_26", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_26_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_27") > 0 and not IsEventPresent("C_27_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_27", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_27", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_27", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_27_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_28") > 0 and not IsEventPresent("C_28_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_28", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_28", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_28", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_28_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_29") > 0 and not IsEventPresent("C_29_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_29", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_29", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_29", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_29_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_30") > 0 and not IsEventPresent("C_30_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_30", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_30", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_30", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_30_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_31") > 0 and not IsEventPresent("C_31_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_31", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_31", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_31", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_31_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_32_Friedhof_unten") > 0 and not IsEventPresent("C_32_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_32", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_32", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_32", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_32_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_33") > 0 and not IsEventPresent("C_33_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_33", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_33", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_9", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_33_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_34") > 0 and not IsEventPresent("C_34_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_34", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_34", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_34", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_34_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "C_35") > 0 and not IsEventPresent("C_35_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_35", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_35", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "C_35", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("C_35_Nachschubstop")
	end
end

function func_D_Nachschub_Russen()
	if NumPlayerUnitsInZone("Player", "D1_1") > 0 and not IsEventPresent("D_1_Nachschubstop") and not IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_1", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_1", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_1", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_1_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_2_1") > 0 and not IsEventPresent("D_2_Nachschubstop") and not IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_2", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_2", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_2", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_2_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_3_1") > 0 and not IsEventPresent("D_3_Nachschubstop") and not IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_3", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_3", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_3", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_3_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_4_1") > 0 and not IsEventPresent("D_4_Nachschubstop") and not IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_4", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_4", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_4", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_4_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_5_1") > 0 and not IsEventPresent("D_5_Nachschubstop") and not IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_5", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_5", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_5", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_5_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_6_1") > 0 and not IsEventPresent("D_6_Nachschubstop") and not IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_6", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_6", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_6", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_6_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_7_1") > 0 and not IsEventPresent("D_7_Nachschubstop") and not IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_7", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_7", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_7", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_7_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_8_1") > 0 and not IsEventPresent("D_8_Nachschubstop") and not IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_8", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_8", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_8", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_8_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_9_1") > 0 and not IsEventPresent("D_9_Nachschubstop") and not IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_9", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_9", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_9", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_9_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_10_1") > 0 and not IsEventPresent("D_10_Nachschubstop") and not IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_10", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_10", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_10", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_10_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_11_1") > 0 and not IsEventPresent("D_11_Nachschubstop") and not IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_11", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_11", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_11", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_11_Nachschubstop")
	end
	if NumPlayerUnitsInZones("Player", {"D_12_1", "D_12_Strasse_davor_pat", }) > 0 and not IsEventPresent("D_12_Nachschubstop")  then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_12", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_12", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_12", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_12_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_13_1") > 0 and not IsEventPresent("D_13_Nachschubstop") and not IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_03", "D_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_03", "D_13", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_13_Nachschubstop")
	end
	-- Nachschubweg gesperrt
	if NumPlayerUnitsInZone("Player", "D1_1") > 0 and not IsEventPresent("D_1_Nachschubstop") and IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_1", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_1", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "D_1", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_1_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_2_1") > 0 and not IsEventPresent("D_2_Nachschubstop") and IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_2", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_2", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "D_2", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_2_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_3_1") > 0 and not IsEventPresent("D_3_Nachschubstop") and IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_3", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_3", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "D_3", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_3_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_4_1") > 0 and not IsEventPresent("D_4_Nachschubstop") and IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_4", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_4", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "D_4", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_4_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_5_1") > 0 and not IsEventPresent("D_5_Nachschubstop") and IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_5", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_5", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "D_5", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_5_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_6_1") > 0 and not IsEventPresent("D_6_Nachschubstop") and IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_6", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_6", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "D_6", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_6_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_7_1") > 0 and not IsEventPresent("D_7_Nachschubstop") and IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_7", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_7", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "D_7", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_7_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_8_1") > 0 and not IsEventPresent("D_8_Nachschubstop") and IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_8", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_8", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "D_8", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_8_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_9_1") > 0 and not IsEventPresent("D_9_Nachschubstop") and IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_9", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_9", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "D_9", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_9_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_10_1") > 0 and not IsEventPresent("D_10_Nachschubstop") and IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_10", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_10", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "D_10", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_10_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_11_1") > 0 and not IsEventPresent("D_11_Nachschubstop") and IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_11", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_11", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "D_11", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_11_Nachschubstop")
	end
	if NumPlayerUnitsInZone("Player", "D_13_1") > 0 and not IsEventPresent("D_13_Nachschubstop") and IsEventPresent("D_12_Nachschubstop") then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "D_13", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"egal", }, "Spawn_02", "D_13", "", true, true, {}, false, 0)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.OutMessage(100018)
		SetEvent("D_13_Nachschubstop")
	end
end

function func_B_Schema()
	if GetGameTime() > 0 then
		groups.CreateTemplate("B_1", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"B_1_Zentrale","B_1_Zentrum","B_1_Fabrik", }, group_move = false, spread_rad = 15, wait_time = 20})
		groups.CreateTemplate("B_2", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"B_2","B_1_Zentrum","B_1_Fabrik", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("B_3", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 1.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 0.50,
			points = {"B_3_Fabrik_links","B_3_Fabrik_rechts","B_1_Zentrum", }, group_move = true, spread_rad = 15, wait_time = 60})
		groups.CreateTemplate("B_4", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"B_4","B_3_Fabrik_rechts","B_3_Fabrik_links", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("B_5", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"B_5_Bahnhoflinks","B_1_Zentrum","B_1_Fabrik", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("B_6", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"B_6","B_7_Fabrik_zentrum","B_7_Fabrik_links", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("B_7", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"B_7_fabrik_unten","B_7_Platz","B_7_Fabrik_zentrum", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("B_8", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"B_8","B_7_Platz","B_7_fabrik_unten", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("B_9", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"B_9","B_7_Fabrik_zentrum","B_8", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("B_10", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"B_10","B_7_Platz", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("B_11", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"B_11","B13_Durchgang", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("B_12", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"B_12","B13_Durchgang","B_13", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("B_13", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"B_13","B13_Durchgang","B_12", }, group_move = false, spread_rad = 15, wait_time = 10})
	end
	if GetGameTime() > 0 then
		MoveGroupToZone("B_1", "B_1_Zentrale", true, true)
		MoveGroupToZone("B_2", "B_2", true, true)
		MoveGroupToZone("B_3", "B_3_Fabrik_links", true, true)
		MoveGroupToZone("B_4", "B_4", true, true)
		MoveGroupToZone("B_5", "B_5_Bahnhoflinks", true, true)
		MoveGroupToZone("B_6", "B_6", true, true)
		MoveGroupToZone("B_7", "B_7_Fabrik_links", true, true)
		MoveGroupToZone("B_8", "B_8", true, true)
		MoveGroupToZone("B_9", "B_9", true, true)
		MoveGroupToZone("B_10", "B_1_Zentrale", true, true)
		MoveGroupToZone("B_11", "B_11", true, true)
		MoveGroupToZone("B_12", "B_12", true, true)
		MoveGroupToZone("B_13", "B_13", true, true)
	end
	if NumGroupUnitsInZone("B_1", "B_1_Zentrum") > 0 then
		SetGroupBehaviour("B_1", true, true, true, true, false, true, true, true, true, false)
		groups.AssignTemplate("B_1", "B_1")
	end
	if NumGroupUnitsInZone("B_2", "B_2") > 0 then
		SetGroupBehaviour("B_2", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("B_2", "Normal")
		groups.AssignTemplate("B_2", "B_2")
	end
	if NumGroupUnitsInZone("B_3", "B_3_Fabrik_links") > 0 then
		SetGroupBehaviour("B_3", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("B_3", "Normal")
		groups.AssignTemplate("B_3", "B_3")
	end
	if NumGroupUnitsInZone("B_4", "B_4") > 0 then
		SetGroupBehaviour("B_4", true, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("B_4", "Normal")
		groups.AssignTemplate("B_4", "B_4")
	end
	if NumGroupUnitsInZone("B_5", "B_5_Bahnhoflinks") > 0 then
		SetGroupBehaviour("B_5", true, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("B_5", "Cautious")
		groups.AssignTemplate("B_5", "B_5")
	end
	if NumGroupUnitsInZone("B_6", "B_6") > 0 then
		SetGroupBehaviour("B_6", true, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("B_6", "Agressive")
		groups.AssignTemplate("B_6", "B_6")
	end
	if NumGroupUnitsInZone("B_7", "B_7_Fabrik_links") > 0 then
		SetGroupBehaviour("B_7", nil, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("B_7", "Agressive")
		groups.AssignTemplate("B_7", "B_7")
	end
	if NumGroupUnitsInZone("B_8", "B_8") > 0 then
		SetGroupBehaviour("B_8", nil, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("B_8", "Agressive")
		groups.AssignTemplate("B_8", "B_8")
	end
	if NumGroupUnitsInZone("B_9", "B_9") > 0 then
		SetGroupBehaviour("B_9", true, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("B_9", "Agressive")
		groups.AssignTemplate("B_9", "B_9")
	end
	if NumGroupUnitsInZone("B_10", "B_10") > 0 then
		SetGroupBehaviour("B_10", true, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("B_10", "Agressive")
		groups.AssignTemplate("B_10", "B_10")
	end
	if NumGroupUnitsInZone("B_11", "B_11") > 0 then
		SetGroupBehaviour("B_11", true, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("B_11", "Agressive")
		groups.AssignTemplate("B_11", "B_11")
	end
	if NumGroupUnitsInZone("B_12", "B_12") > 0 then
		SetGroupBehaviour("B_12", true, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("B_12", "Agressive")
		groups.AssignTemplate("B_12", "B_12")
	end
	if NumGroupUnitsInZone("B_13", "B_13") > 0 then
		SetGroupBehaviour("B_13", true, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("B_13", "Agressive")
		groups.AssignTemplate("B_13", "B_13")
	end
end

function func_D_Schema()
	if GetGameTime() > 0 then
		groups.CreateTemplate("D_1", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D1_1","D_1_2","D_2_1", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("D_2", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D_2_1","D_2_2","D1_1", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("D_3", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D_3_1","D_3_2","D_4_Bruecke_rechts", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("D_4", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D_4_Strasse_oben","D_3_1","D_4_1", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("D_5", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D_5_1","D_4_Strasse_oben","D_4_Bruecke_rechts", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("D_6", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D_6_1","D_9_Strasse_oben","D_9_1", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("D_7", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D_7_1","D_13_1","D_13_2", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("D_8", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D_8_1","D_11_1","D_11_2_Waffenfabrik", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("D_9", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D_9_Strasse_oben","D_9_1","D_6_1", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("D_10", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D_11_2_Waffenfabrik","D_10_1","D_11_1", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("D_11", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D_11_1","D_12_1","D_10_1", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("D_12", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D_11_1","D_12_1","D_11_1", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("D_13", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"D_13_1","D_13_2","D_7_1", }, group_move = false, spread_rad = 15, wait_time = 10})
	end
	if GetGameTime() > 0 then
		MoveGroupToZone("D_1", "D1_1", true, true)
		MoveGroupToZone("D_2", "D_2_Strasse_oben", true, true)
		MoveGroupToZone("D_3", "D_3_1", true, true)
		MoveGroupToZone("D_4", "D_4_Strasse_oben", true, true)
		MoveGroupToZone("D_5", "D_5_1", true, true)
		MoveGroupToZone("D_6", "D_6_1", true, true)
		MoveGroupToZone("D_7", "D_7_1", true, true)
		MoveGroupToZone("D_8", "D_8_1", true, true)
		MoveGroupToZone("D_9", "D_9_Strasse_oben", true, true)
		MoveGroupToZone("D_10", "D_10_1", true, true)
		MoveGroupToZone("D_11", "D_11_1", true, true)
		MoveGroupToZone("D_12", "D_12_1", true, true)
		MoveGroupToZone("D_13", "D_13_1", true, true)
	end
	if NumGroupUnitsInZone("D_1", "D1_1") > 0 then
		SetGroupBehaviour("D_1", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_1", "Normal")
		groups.AssignTemplate("D_1", "D_1")
	end
	if NumGroupUnitsInZone("D_2", "D_2_Strasse_oben") > 0 then
		SetGroupBehaviour("D_2", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_2", "Normal")
		groups.AssignTemplate("D_2", "D_2")
	end
	if NumGroupUnitsInZone("D_3", "D_3_1") > 0 then
		SetGroupBehaviour("D_3", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_3", "Normal")
		groups.AssignTemplate("D_3", "D_3")
	end
	if NumGroupUnitsInZone("D_4", "D_4_1") > 0 then
		SetGroupBehaviour("D_4", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_4", "Normal")
		groups.AssignTemplate("D_4", "D_4")
	end
	if NumGroupUnitsInZone("D_5", "D_5_1") > 0 then
		SetGroupBehaviour("D_5", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_5", "Normal")
		groups.AssignTemplate("D_5", "D_5")
	end
	if NumGroupUnitsInZone("D_6", "D_6_1") > 0 then
		SetGroupBehaviour("D_6", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_6", "Normal")
		groups.AssignTemplate("D_6", "D_6")
	end
	if NumGroupUnitsInZone("D_7", "D_7_1") > 0 then
		SetGroupBehaviour("D_7", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_7", "Normal")
		groups.AssignTemplate("D_7", "D_7")
	end
	if NumGroupUnitsInZone("D_8", "D_8_1") > 0 then
		SetGroupBehaviour("D_8", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_8", "Normal")
		groups.AssignTemplate("D_8", "D_8")
	end
	if NumGroupUnitsInZone("D_9", "D_9_Strasse_oben") > 0 then
		SetGroupBehaviour("D_9", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_9", "Normal")
		groups.AssignTemplate("D_9", "D_9")
	end
	if NumGroupUnitsInZone("D_10", "D_10_1") > 0 then
		SetGroupBehaviour("D_10", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_10", "Normal")
		groups.AssignTemplate("D_10", "D_10")
	end
	if NumGroupUnitsInZone("D_11", "D_11_1") > 0 then
		SetGroupBehaviour("D_11", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_11", "Normal")
		groups.AssignTemplate("D_11", "D_11")
	end
	if NumGroupUnitsInZone("D_12", "D_12_1") > 0 then
		SetGroupBehaviour("D_12", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_12", "Normal")
		groups.AssignTemplate("D_12", "D_12")
	end
	if NumGroupUnitsInZone("D_13", "D_13_1") > 0 then
		SetGroupBehaviour("D_13", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("D_13", "Normal")
		groups.AssignTemplate("D_13", "D_13")
	end
end

function func_C_Schema()
	if GetGameTime() > 0 then
		groups.CreateTemplate("C_1", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_1_Fluss","C_1_1", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_2", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_2","C_1_Fluss", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_3", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_3","C_west","C_4_Zentrum", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_4", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_4_ost","C_west","C_4_Zentrum", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_5", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_5","C_west","C_4_Zentrum", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_6", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_6_1","C_6_2","C_7", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_7", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_7","C_8","C_7_2", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_8", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_8","C_9","C_7_2", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_9", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_9","C_8","C_7", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_10", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_10","C_11_Fabrik","C_11", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_11", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_11","C_11_Fabrik","C_10", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_12", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_12","C_13", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_13", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_12","C_13", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_14", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_14","C_15","C_11_Fabrik", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_15", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_15","C_14","C_11_Fabrik", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_16", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_16","C_11_Fabrik","C_11", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_17", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_17","C_16","C_11_Fabrik", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_18", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_18","C_19","C_11_Fabrik", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_19", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_19","C_18","C_11_Fabrik", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_20", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_20","C_21","C_19", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_21", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_21","C_22","C_23", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_22", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_22","C_23","C_21", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_23", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_23","C_24","C_21", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_24", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_24","C_25","C_21", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_25", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_25","C_26","C_21", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_26", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_26","C_27","C_21", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_27", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_27","C_28","C_32_Friedhof_oben", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_28", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_28","C_32_Friedhof_oben","C_21", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_29", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_29","C_30","C_21", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_30", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_30","C_31","C_32_Friedhof_unten", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_31", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_30","C_32_Friedhof_oben","C_31", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_32", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_32_Friedhof_oben","C_32_Friedhof_Kirchen","C_32_Friedhof_unten", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_33", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_33","C_34","C_35", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_34", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_33","C_34","C_35", }, group_move = false, spread_rad = 15, wait_time = 10})
		groups.CreateTemplate("C_35", groups.ttypes.attack,
			{ call_for_help = false, call_for_howitzer = false, reinf_lost = 0,
			attack_adv = 4.00, attack_timeout = 15, attack_delay = 15, distance = 50, retreat_adv = 1.00,
			points = {"C_35","C_34","C_33", }, group_move = false, spread_rad = 15, wait_time = 10})
	end
	if GetGameTime() > 0 then
		MoveGroupToZone("C_1", "C_1_1", true, true)
		MoveGroupToZone("C_2", "C_2", true, true)
		MoveGroupToZone("C_3", "C_3", true, true)
		MoveGroupToZone("C_4", "C_4_Zentrum", true, true)
		MoveGroupToZone("C_5", "C_5", true, true)
		MoveGroupToZone("C_6", "C_6_1", true, true)
		MoveGroupToZone("C_7", "C_7", true, true)
		MoveGroupToZone("C_8", "C_8", true, true)
		MoveGroupToZone("C_9", "C_9", true, true)
		MoveGroupToZone("C_10", "C_10", true, true)
		MoveGroupToZone("C_11", "C_11", true, true)
		MoveGroupToZone("C_12", "C_12", true, true)
		MoveGroupToZone("C_13", "C_13", true, true)
		MoveGroupToZone("C_14", "C_14", true, true)
		MoveGroupToZone("C_15", "C_15", true, true)
		MoveGroupToZone("C_16", "C_16", true, true)
		MoveGroupToZone("C_17", "C_17", true, true)
		MoveGroupToZone("C_18", "C_18", true, true)
		MoveGroupToZone("C_19", "C_19", true, true)
		MoveGroupToZone("C_20", "C_20", true, true)
		MoveGroupToZone("C_21", "C_21", true, true)
		MoveGroupToZone("C_22", "C_22", true, true)
		MoveGroupToZone("C_23", "C_23", true, true)
		MoveGroupToZone("C_24", "C_24", true, true)
		MoveGroupToZone("C_25", "C_25", true, true)
		MoveGroupToZone("C_26", "C_26", true, true)
		MoveGroupToZone("C_27", "C_27", true, true)
		MoveGroupToZone("C_28", "C_28", true, true)
		MoveGroupToZone("C_29", "C_29", true, true)
		MoveGroupToZone("C_30", "C_30", true, true)
		MoveGroupToZone("C_31", "C_31", true, true)
		MoveGroupToZone("C_32", "C_32_Friedhof_oben", true, true)
		MoveGroupToZone("C_33", "C_33", true, true)
		MoveGroupToZone("C_34", "C_34", true, true)
		MoveGroupToZone("C_35", "C_35", true, true)
	end
	if NumGroupUnitsInZone("C_1", "C_1_1") > 0 then
		SetGroupBehaviour("C_1", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_1", "Normal")
		groups.AssignTemplate("C_1", "C_1")
	end
	if NumGroupUnitsInZone("C_2", "C_2") > 0 then
		SetGroupBehaviour("C_2", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_2", "Normal")
		groups.AssignTemplate("C_2", "C_2")
	end
	if NumGroupUnitsInZone("C_3", "C_3") > 0 then
		SetGroupBehaviour("C_3", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_3", "Normal")
		groups.AssignTemplate("C_3", "C_3")
	end
	if NumGroupUnitsInZone("C_4", "C_4_Zentrum") > 0 then
		SetGroupBehaviour("C_4", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_4", "Normal")
		groups.AssignTemplate("C_4", "C_4")
	end
	if NumGroupUnitsInZone("C_5", "C_5") > 0 then
		SetGroupBehaviour("C_5", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_5", "Normal")
		groups.AssignTemplate("C_5", "C_5")
	end
	if NumGroupUnitsInZone("C_6", "C_6_1") > 0 then
		SetGroupBehaviour("C_6", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_7", "Normal")
		groups.AssignTemplate("C_6", "C_6")
	end
	if NumGroupUnitsInZone("C_7", "C_7") > 0 then
		SetGroupBehaviour("C_7", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_7", "Normal")
		groups.AssignTemplate("C_7", "C_7")
	end
	if NumGroupUnitsInZone("C_8", "C_8") > 0 then
		SetGroupBehaviour("C_8", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_8", "Normal")
		groups.AssignTemplate("C_8", "C_8")
	end
	if NumGroupUnitsInZone("C_9", "C_9") > 0 then
		SetGroupBehaviour("C_9", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_9", "Normal")
		groups.AssignTemplate("C_9", "C_9")
	end
	if NumGroupUnitsInZone("C_10", "C_10") > 0 then
		SetGroupBehaviour("C_10", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_10", "Normal")
		groups.AssignTemplate("C_10", "C_10")
	end
	if NumGroupUnitsInZone("C_11", "C_11") > 0 then
		SetGroupBehaviour("C_11", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_11", "Normal")
		groups.AssignTemplate("C_11", "C_11")
	end
	if NumGroupUnitsInZone("C_12", "C_12") > 0 then
		SetGroupBehaviour("C_12", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_12", "Normal")
		groups.AssignTemplate("C_12", "C_12")
	end
	if NumGroupUnitsInZone("C_13", "C_13") > 0 then
		SetGroupBehaviour("C_13", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_13", "Normal")
		groups.AssignTemplate("C_13", "C_13")
	end
	if NumGroupUnitsInZone("C_14", "C_14") > 0 then
		SetGroupBehaviour("C_14", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_14", "Normal")
		groups.AssignTemplate("C_14", "C_14")
	end
	if NumGroupUnitsInZone("C_15", "C_15") > 0 then
		SetGroupBehaviour("C_15", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_15", "Normal")
		groups.AssignTemplate("C_15", "C_15")
	end
	if NumGroupUnitsInZone("C_16", "C_16") > 0 then
		SetGroupBehaviour("C_16", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_16", "Normal")
		groups.AssignTemplate("C_16", "C_16")
	end
	if NumGroupUnitsInZone("C_17", "C_17") > 0 then
		SetGroupBehaviour("C_17", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_17", "Normal")
		groups.AssignTemplate("C_17", "C_17")
	end
	if NumGroupUnitsInZone("C_18", "C_18") > 0 then
		SetGroupBehaviour("C_18", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_18", "Normal")
		groups.AssignTemplate("C_18", "C_18")
	end
	if NumGroupUnitsInZone("C_19", "C_19") > 0 then
		SetGroupBehaviour("C_19", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_19", "Normal")
		groups.AssignTemplate("C_19", "C_19")
	end
	if NumGroupUnitsInZone("C_20", "C_20") > 0 then
		SetGroupBehaviour("C_20", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_20", "Normal")
		groups.AssignTemplate("C_20", "C_20")
	end
	if NumGroupUnitsInZone("C_21", "C_21") > 0 then
		SetGroupBehaviour("C_21", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_21", "Normal")
		groups.AssignTemplate("C_21", "C_21")
	end
	if NumGroupUnitsInZone("C_22", "C_22") > 0 then
		SetGroupBehaviour("C_22", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_22", "Normal")
		groups.AssignTemplate("C_22", "C_22")
	end
	if NumGroupUnitsInZone("C_23", "C_23") > 0 then
		SetGroupBehaviour("C_23", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_23", "Normal")
		groups.AssignTemplate("C_23", "C_23")
	end
	if NumGroupUnitsInZone("C_24", "C_24") > 0 then
		SetGroupBehaviour("C_24", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_24", "Normal")
		groups.AssignTemplate("C_24", "C_24")
	end
	if NumGroupUnitsInZone("C_25", "C_25") > 0 then
		SetGroupBehaviour("C_25", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_25", "Normal")
		groups.AssignTemplate("C_25", "C_25")
	end
	if NumGroupUnitsInZone("C_26", "C_26") > 0 then
		SetGroupBehaviour("C_26", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_26", "Normal")
		groups.AssignTemplate("C_26", "C_26")
	end
	if NumGroupUnitsInZone("C_27", "C_27") > 0 then
		SetGroupBehaviour("C_27", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_27", "Normal")
		groups.AssignTemplate("C_27", "C_27")
	end
	if NumGroupUnitsInZone("C_28", "C_28") > 0 then
		SetGroupBehaviour("C_28", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_28", "Normal")
		groups.AssignTemplate("C_28", "C_28")
	end
	if NumGroupUnitsInZone("C_29", "C_29") > 0 then
		SetGroupBehaviour("C_29", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_29", "Normal")
		groups.AssignTemplate("C_29", "C_29")
	end
	if NumGroupUnitsInZone("C_30", "C_30") > 0 then
		SetGroupBehaviour("C_30", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_30", "Normal")
		groups.AssignTemplate("C_30", "C_30")
	end
	if NumGroupUnitsInZone("C_31", "C_31") > 0 then
		SetGroupBehaviour("C_31", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_31", "Normal")
		groups.AssignTemplate("C_31", "C_31")
	end
	if NumGroupUnitsInZone("C_32", "C_32_Friedhof_oben") > 0 then
		SetGroupBehaviour("C_30", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_30", "Normal")
		groups.AssignTemplate("C_30", "C_30")
	end
	if NumGroupUnitsInZone("C_33", "C_33") > 0 then
		SetGroupBehaviour("C_33", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_33", "Normal")
		groups.AssignTemplate("C_33", "C_33")
	end
	if NumGroupUnitsInZone("C_34", "C_34") > 0 then
		SetGroupBehaviour("C_34", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_34", "Normal")
		groups.AssignTemplate("C_34", "C_34")
	end
	if NumGroupUnitsInZone("C_35", "C_35") > 0 then
		SetGroupBehaviour("C_35", false, true, true, true, false, true, true, true, true, false)
		GroupSetMicroAIBehaviour("C_35", "Normal")
		groups.AssignTemplate("C_35", "C_35")
	end
end

function func_Initialisierung()
	do
		mission.CameraAt({54.836838, 2.998398, -484.511017}, 47.172245, -15.749211, 122.125366, 5.00)
		msd_vars.minenA = false
		msd_vars.Mine_D = false
		AIparts:RemovePeriodic("Initialisierung")
		mission.OutScreenMessage(100069, 25, "0xFF00E000")
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 30*10, function()  ClearEvent("Komandant lebt") end)
	end
end

function func_A_Ziele_aktivieren()
	if NumPlayerUnitsInZone("Player", "A_Minen") > 0 and not msd_vars.minenA then
		AcivateObjective("A_1. Reihe links")
		AcivateObjective("A_1. Reihe A rechts")
		AcivateObjective("A_1. Reihe A rmitte")
		SetObjectiveComplete("Durchbruch Gumrak links", "Player")
		SetObjectiveComplete("Durchbruch Gumrak rechts", "Player")
		msd_vars.minenA = true
		mission.OutMessage(100020)
	end
	if NumPlayerUnitsInZones("Player", {"A_12_1", "A_12_2", "A_12_Strasse_oben", }) > 0 and NumPlayerUnitsInZones("Enemy", {"A_12_1", "A_12_2", "A_12_Strasse_oben", }) > 0 and not IsObjectiveCompleted("A_2. Reihe links", "Player") then
		AcivateObjective("A_2. Reihe links")
	end
	if NumPlayerUnitsInZones("Player", {"A_8_1", "A_8_Strasse_oben", }) > 0 and NumPlayerUnitsInZones("Enemy", {"A_8_1", "A_8_Strasse_oben", }) > 0 and not IsObjectiveCompleted("A_2. Reihe rechts", "Player") then
		AcivateObjective("A_2. Reihe rechts")
	end
	if NumPlayerUnitsInZones("Player", {"A_7_1", "A_7_Strasse_oben", }) > 0 and NumPlayerUnitsInZones("Enemy", {"A_7_1", "A_7_Strasse_oben", }) > 0 and not IsObjectiveCompleted("A_2. Reihe mitte", "Player") then
		AcivateObjective("A_2. Reihe mitte")
	end
	if NumPlayerUnitsInZones("Player", {"A_9_1", "A_9_Strasse_oben", }) > 0 and NumPlayerUnitsInZones("Enemy", {"A_9_1", "A_9_Strasse_oben", }) > 0 and not IsObjectiveCompleted("A_3. Reihe rechts", "Player") then
		AcivateObjective("A_3. Reihe rechts")
	end
	if NumPlayerUnitsInZones("Player", {"A_13_1", "A_13_2", "A_13_Strasse_oben", }) > 0 and NumPlayerUnitsInZones("Enemy", {"A_13_1", "A_13_2", "A_13_Strasse_oben", }) > 0 and not IsObjectiveCompleted("A_3. Reihe links", "Player") then
		AcivateObjective("A_3. Reihe links")
	end
	if NumPlayerUnitsInZones("Player", {"A_11_1", "A_11_Strasse_oben", "A_10_1", }) > 0 and NumPlayerUnitsInZones("Enemy", {"A_11_1", "A_11_Strasse_oben", "A_10_1", }) > 0 and not IsObjectiveCompleted("A_3. Reihe mitte", "Player") then
		AcivateObjective("A_3. Reihe mitte")
	end
end

function func_D_Ziele_aktivieren()
	if NumPlayerUnitsInZone("Player", "D_Minen") > 0 and not msd_vars.Mine_D then
		AcivateObjective("D1. Reihe D links")
		AcivateObjective("D_1. Reihe D rechts")
		AcivateObjective("D_1. Reihe D mitte")
		SetObjectiveComplete("Durchbruch Zariza links", "Player")
		SetObjectiveComplete("Durchbruch Zariza rechts", "Player")
		msd_vars.Mine_D = true
		mission.OutMessage(100020)
	end
	if NumPlayerUnitsInZones("Player", {"D_4_1", "D_4_Strasse_oben", }) > 0 and NumPlayerUnitsInZones("Enemy", {"D_4_1", "D_4_Strasse_oben", }) > 0 and not IsObjectiveCompleted("D_2. Reihe D links", "Player") then
		AcivateObjective("D_2. Reihe D links")
	end
	if NumPlayerUnitsInZones("Player", {"D_2_1", "D_2_2", }) > 0 and NumPlayerUnitsInZones("Enemy", {"D_2_1", "D_2_2", }) > 0 and not IsObjectiveCompleted("D_2. Reihe D rechts", "Player") then
		AcivateObjective("D_2. Reihe D rechts")
	end
	if NumPlayerUnitsInZones("Player", {"D_8_1", }) > 0 and NumPlayerUnitsInZones("Enemy", {"D_8_1", }) > 0 and not IsObjectiveCompleted("D_2. Reihe D mitte", "Player") then
		AcivateObjective("D_2. Reihe D mitte")
	end
	if NumPlayerUnitsInZones("Player", {"D_12_1", "D_10_1", }) > 0 and NumPlayerUnitsInZones("Enemy", {"D_12_1", "D_10_1", }) > 0 and not IsObjectiveCompleted("D_3. Reihe D rechts Nachschub", "Player") then
		AcivateObjective("D_3. Reihe D rechts Nachschub")
	end
	if NumPlayerUnitsInZones("Player", {"D_13_1", "D_13_2", "D_7_1", }) > 0 and NumPlayerUnitsInZones("Enemy", {"D_13_1", "D_13_2", "D_7_1", }) > 0 and not IsObjectiveCompleted("D_3. Reihe links Gutsherrnhaus", "Player") then
		AcivateObjective("D_3. Reihe links Gutsherrnhaus")
	end
	if NumPlayerUnitsInZones("Player", {"D_11_1", "D_11_2_Waffenfabrik", }) > 0 and NumPlayerUnitsInZones("Enemy", {"D_11_1", "D_11_2_Waffenfabrik", }) > 0 and not IsObjectiveCompleted("D_3. Reihe D mitte Waffenfabrik", "Player") then
		AcivateObjective("D_3. Reihe D mitte Waffenfabrik")
	end
end

function func_B_Ziele_aktivieren()
	if NumPlayerUnitsInZones("Player", {"A_16_1", "A_16_2", "A_16_3", }) > 0 and NumPlayerUnitsInZones("Enemy", {"A_16_1", "A_16_2", "A_16_3", }) > 0 then
		AcivateObjective("B_Stellung_Bruecke unten B")
	end
	if NumPlayerUnitsInZones("Player", {"A_15_1", "A_15_2", "A_15_3", "A_15_Strasse_mitte", "A_15_kleinerPlatz", "A_15_huegel", }) > 0 and NumPlayerUnitsInZones("Enemy", {"A_15_1", "A_15_2", "A_15_3", "A_15_Strasse_mitte", "A_15_kleinerPlatz", "A_15_huegel", }) > 0 and not IsObjectiveCompleted("B_Siedlung_Zentrum", "Player") then
		AcivateObjective("B_Siedlung_Zentrum")
	end
	if NumPlayerUnitsInZones("Player", {"B_10", }) > 0 and NumPlayerUnitsInZones("Enemy", {"B_10", }) > 0 and not IsObjectiveCompleted("B_Siedlung_1_Reihe_links", "Player") then
		AcivateObjective("B_Siedlung_1_Reihe_links")
	end
	if NumPlayerUnitsInZones("Player", {"B_13", }) > 0 and NumPlayerUnitsInZones("Enemy", {"B_13", }) > 0 and not IsObjectiveCompleted("B_Siedlung_2_Reihe_links", "Player") then
		AcivateObjective("B_Siedlung_2_Reihe_links")
	end
	if NumPlayerUnitsInZones("Player", {"B_14_Reihe_rechts", }) > 0 and NumPlayerUnitsInZones("Enemy", {"B_14_Reihe_rechts", }) > 0 and not IsObjectiveCompleted("B_Siedlungen_1_Reihe_rechts", "Player") then
		AcivateObjective("B_Siedlungen_1_Reihe_rechts")
	end
	if NumPlayerUnitsInZones("Player", {"B_15_2_Reihe_rechts", }) > 0 and NumPlayerUnitsInZones("Enemy", {"B_15_2_Reihe_rechts", }) > 0 and not IsObjectiveCompleted("B_Siedlungen_2_Reihe_Rechts", "Player") then
		AcivateObjective("B_Siedlungen_2_Reihe_Rechts")
	end
	if NumPlayerUnitsInZones("Player", {"B_7_Fabrik_zentrum", "B_7_Platz", "B_7_fabrik_unten", }) > 0 and NumPlayerUnitsInZones("Enemy", {"B_7_Fabrik_zentrum", "B_7_Platz", "B_7_fabrik_unten", }) > 0 and not IsObjectiveCompleted("B_Fabrik mit Feuerwehr", "Player") and msd_vars.FabrikmitFeuerwehr == 99 then
		AcivateObjective("B_Fabrik mit Feuerwehr")
		msd_vars.FabrikmitFeuerwehr = 0
	end
	if NumPlayerUnitsInZones("Player", {"B_12", }) > 0 and NumPlayerUnitsInZones("Enemy", {"B_12", }) > 0 and not IsObjectiveCompleted("B_Bürgermeister", "Player") and msd_vars.Brgermeister == 99 then
		AcivateObjective("B_Bürgermeister")
		msd_vars.Brgermeister = 0
	end
	if NumPlayerUnitsInZones("Player", {"B_1_Fabrik", "B_1_Zentrale", "B_1_Zentrum", }) > 0 and NumPlayerUnitsInZones("Enemy", {"B_1_Fabrik", "B_1_Zentrale", "B_1_Zentrum", }) > 0 and not IsObjectiveCompleted("B_Kaserne HQ", "Player") then
		AcivateObjective("B_Kaserne HQ")
	end
	if NumPlayerUnitsInZones("Player", {"B_3_Fabrik_links", "B_3_Fabrik_rechts", }) > 0 and NumPlayerUnitsInZones("Enemy", {"B_3_Fabrik_links", "B_3_Fabrik_rechts", }) > 0 and not IsObjectiveCompleted("B_Traktorfabrik", "Player") and msd_vars.Traktorfabrik == 99 then
		AcivateObjective("B_Traktorfabrik")
		msd_vars.Traktorfabrik = 0
	end
	if NumPlayerUnitsInZones("Player", {"B_6", "B_7_Fabrik_links", }) > 0 and NumPlayerUnitsInZones("Enemy", {"B_6", "B_7_Fabrik_links", }) > 0 and not IsObjectiveCompleted("B_Siedlung_an der Feuerwehr", "Player") then
		AcivateObjective("B_Siedlung_an der Feuerwehr")
	end
	if NumPlayerUnitsInZones("Player", {"B_4", "B_4_2", }) > 0 and NumPlayerUnitsInZones("Enemy", {"B_4", "B_4_2", }) > 0 and not IsObjectiveCompleted("B_Siedlung_Eisenbahn", "Player") then
		AcivateObjective("B_Siedlung_Eisenbahn")
	end
	if NumPlayerUnitsInZones("Player", {"B_5_Bahnhoflinks", }) > 0 and NumPlayerUnitsInZones("Enemy", {"B_5_Bahnhoflinks", }) > 0 and not IsObjectiveCompleted("B_Bahnhof Links", "Player") then
		AcivateObjective("B_Bahnhof Links")
	end
	if NumPlayerUnitsInZones("Player", {"B_Kasernen", }) > 0 and NumPlayerUnitsInZones("Enemy", {"B_Kasernen", }) > 0 and not IsObjectiveCompleted("B_Kasernen", "Player") and msd_vars.Kaserne == 99 then
		AcivateObjective("B_Kasernen")
		msd_vars.Kaserne = 0
	end
end

function func_C_Ziele_aktivieren()
	if NumPlayerUnitsInZones("Player", {"C_1_1", "C_1_Fluss", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_1_1", "C_1_Fluss", }) > 0 and not IsObjectiveCompleted("C_Siedlung am Fluss Links", "Player") then
		AcivateObjective("C_Siedlung am Fluss Links")
	end
	if NumPlayerUnitsInZones("Player", {"C_west", "C_4_Zentrum", "C_3", "C_33", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_west", "C_4_Zentrum", "C_3", "C_33", }) > 0 and not IsObjectiveCompleted("C_Siedlung_nach den Brücken", "Player") then
		AcivateObjective("C_Siedlung_nach den Brücken")
	end
	if NumPlayerUnitsInZones("Player", {"C_6_1", "C_6_2", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_6_1", "C_6_2", }) > 0 and not IsObjectiveCompleted("C_Siedlung_rechts_unten", "Player") then
		AcivateObjective("C_Siedlung_rechts_unten")
	end
	if NumPlayerUnitsInZones("Player", {"C_7", "C_7_2", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_7", "C_7_2", }) > 0 and not IsObjectiveCompleted("C_Siedlung_rechts_2_von_unten", "Player") then
		AcivateObjective("C_Siedlung_rechts_2_von_unten")
	end
	if NumPlayerUnitsInZones("Player", {"C_32_Friedhof_unten", "C_2", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_32_Friedhof_unten", "C_2", }) > 0 and not IsObjectiveCompleted("C_Friedhof_unten_brücke", "Player") then
		AcivateObjective("C_Friedhof_unten_brücke")
	end
	if NumPlayerUnitsInZones("Player", {"C_32_Friedhof_oben", "C_32_Friedhof_Kirchen", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_32_Friedhof_oben", "C_32_Friedhof_Kirchen", }) > 0 and not IsObjectiveCompleted("C_Friedhof", "Player") then
		AcivateObjective("C_Friedhof")
	end
	if NumPlayerUnitsInZones("Player", {"C_28", "C_29", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_28", "C_29", }) > 0 and not IsObjectiveCompleted("C_Friedhof_oben_Bruecke", "Player") then
		AcivateObjective("C_Friedhof_oben_Bruecke")
	end
	if NumPlayerUnitsInZones("Player", {"C_27", "C_25", "C_26", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_27", "C_25", "C_26", }) > 0 and not IsObjectiveCompleted("C_Siedlung_Eisenbahn", "Player") then
		AcivateObjective("C_Siedlung_Eisenbahn")
	end
	if NumPlayerUnitsInZones("Player", {"C_22", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_22", }) > 0 and not IsObjectiveCompleted("C_Getreidsilo", "Player") and msd_vars.Getreidesilo == 99 then
		AcivateObjective("C_Getreidsilo")
		msd_vars.Getreidesilo = 0
	end
	if NumPlayerUnitsInZones("Player", {"C_31", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_31", }) > 0 and not IsObjectiveCompleted("C_Siedlung_Friedhof_getreidesilo", "Player") then
		AcivateObjective("C_Siedlung_Friedhof_getreidesilo")
	end
	if NumPlayerUnitsInZones("Player", {"C_23", "C_24", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_23", "C_24", }) > 0 and not IsObjectiveCompleted("C_Siedlung_Getreidsilo_Bruecke", "Player") then
		AcivateObjective("C_Siedlung_Getreidsilo_Bruecke")
	end
	if NumPlayerUnitsInZones("Player", {"C_21", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_21", }) > 0 and not IsObjectiveCompleted("C_Fabrik_Teile", "Player") then
		AcivateObjective("C_Fabrik_Teile")
	end
	if NumPlayerUnitsInZones("Player", {"C_19", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_19", }) > 0 and not IsObjectiveCompleted("C_Feuerwehr", "Player") and msd_vars.Feuerwehr == 99 then
		AcivateObjective("C_Feuerwehr")
		msd_vars.Feuerwehr = 0
	end
	if NumPlayerUnitsInZones("Player", {"C_17", "C_18", "C_13", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_17", "C_18", "C_13", }) > 0 and not IsObjectiveCompleted("C_Siedlung_Um das Fabrikle", "Player") then
		AcivateObjective("C_Siedlung_Um das Fabrikle")
	end
	if NumPlayerUnitsInZones("Player", {"C_15", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_15", }) > 0 and not IsObjectiveCompleted("C_Bahnhof rechts", "Player") then
		AcivateObjective("C_Bahnhof rechts")
	end
	if NumPlayerUnitsInZones("Player", {"C_12", "C_13", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_12", "C_13", }) > 0 and not IsObjectiveCompleted("C_Fabrik beim Bahnhof", "Player") then
		AcivateObjective("C_Fabrik beim Bahnhof")
	end
	if NumPlayerUnitsInZones("Player", {"C_11", "C_11_Fabrik", }) > 0 and NumPlayerUnitsInZones("Enemy", {"C_11", "C_11_Fabrik", }) > 0 and not IsObjectiveCompleted("C_Fabrikle", "Player") then
		AcivateObjective("C_Fabrikle")
	end
end

function func_Komandant_stirbt()
	if NumGroupUnits("offizier", 0, false, false, false) == 0 and msd_vars.KommandantFortschritt > 2 and IsEventPresent("Komandant lebt") then
		FailObjective("B_Kaserne HQ")
		FailObjective("C_Bahnhof rechts")
	end
	if IsObjectiveFailed("B_Kaserne HQ", "Player") then
		PlayerDefeat("Player")
	end
end

function func_A_Ziele_erreicht()
	if IsObjectiveActive("A_1. Reihe links") and NumPlayerUnitsInZones("Enemy", {"A_5_1", "A_5_2", "A_3_2", }) == 0 and NumPlayerUnitsInZones("Player", {"A_5_1", "A_5_2", "A_3_2", }) > 0 then
		SetObjectiveComplete("A_1. Reihe links", "Player")
	end
	if IsObjectiveActive("A_1. Reihe A rmitte") and NumPlayerUnitsInZones("Enemy", {"A_4_1", }) == 0 and NumPlayerUnitsInZones("Player", {"A_4_1", }) > 0 then
		SetObjectiveComplete("A_1. Reihe A rmitte", "Player")
	end
	if IsObjectiveActive("A_1. Reihe A rechts") and NumPlayerUnitsInZones("Enemy", {"A_1_1", "A_1_2", }) == 0 and NumPlayerUnitsInZones("Player", {"A_1_1", "A_1_2", }) > 0 then
		SetObjectiveComplete("A_1. Reihe A rechts", "Player")
	end
	if IsObjectiveActive("A_2. Reihe links") and NumPlayerUnitsInZones("Enemy", {"A_12_1", "A_12_2", }) == 0 and NumPlayerUnitsInZones("Player", {"A_12_1", "A_12_2", }) > 0 then
		SetObjectiveComplete("A_2. Reihe links", "Player")
	end
	if IsObjectiveActive("A_2. Reihe mitte") and NumPlayerUnitsInZones("Enemy", {"A_7_1", }) == 0 and NumPlayerUnitsInZones("Player", {"A_7_1", }) > 0 then
		SetObjectiveComplete("A_2. Reihe mitte", "Player")
	end
	if IsObjectiveActive("A_2. Reihe rechts") and NumPlayerUnitsInZones("Enemy", {"A_8_1", }) == 0 and NumPlayerUnitsInZones("Player", {"A_8_1", }) > 0 then
		SetObjectiveComplete("A_2. Reihe rechts", "Player")
	end
	if IsObjectiveActive("A_3. Reihe links") and NumPlayerUnitsInZones("Enemy", {"A_13_1", "A_13_2", }) == 0 and NumPlayerUnitsInZones("Player", {"A_13_1", "A_13_2", }) > 0 then
		SetObjectiveComplete("A_3. Reihe links", "Player")
	end
	if IsObjectiveActive("A_3. Reihe mitte") and NumPlayerUnitsInZones("Enemy", {"A_11_1", "A_10_1", }) == 0 and NumPlayerUnitsInZones("Player", {"A_11_1", "A_10_1", }) > 0 then
		SetObjectiveComplete("A_3. Reihe mitte", "Player")
	end
	if IsObjectiveActive("A_3. Reihe rechts") and NumPlayerUnitsInZones("Enemy", {"A_9_1", }) == 0 and NumPlayerUnitsInZones("Player", {"A_9_1", }) > 0 then
		SetObjectiveComplete("A_3. Reihe rechts", "Player")
	end
end

function func_B_Ziele_erreicht()
	if IsObjectiveActive("B_Bahnhof Links") and NumPlayerUnitsInZones("Enemy", {"B_5_Bahnhoflinks", }) == 0 and NumPlayerUnitsInZones("Player", {"B_5_Bahnhoflinks", }) > 0 then
		SetObjectiveComplete("B_Bahnhof Links", "Player")
	end
	if IsObjectiveActive("B_Stellung_Bruecke unten B") and NumPlayerUnitsInZones("Enemy", {"A_16_2", "A_16_1", "A_16_3", }) == 0 and NumPlayerUnitsInZones("Player", {"A_16_2", "A_16_1", "A_16_3", }) > 0 then
		SetObjectiveComplete("B_Stellung_Bruecke unten B", "Player")
	end
	if IsObjectiveActive("B_Siedlung_Zentrum") and NumPlayerUnitsInZones("Enemy", {"B_1_Zentrum", }) == 0 and NumPlayerUnitsInZones("Player", {"B_1_Zentrum", }) > 0 then
		SetObjectiveComplete("B_Siedlung_Zentrum", "Player")
	end
	if IsObjectiveActive("B_Siedlung_1_Reihe_links") and NumPlayerUnitsInZones("Enemy", {"A_10_1", "A_10_Strasse_oben", }) == 0 and NumPlayerUnitsInZones("Player", {"A_10_1", "A_10_Strasse_oben", }) > 0 then
		SetObjectiveComplete("B_Siedlung_1_Reihe_links", "Player")
	end
	if IsObjectiveActive("B_Siedlung_2_Reihe_links") and NumPlayerUnitsInZones("Enemy", {"A_13_1", "A_13_2", "A_13_Strasse_oben", }) == 0 and NumPlayerUnitsInZones("Player", {"A_13_1", "A_13_2", "A_13_Strasse_oben", }) > 0 then
		SetObjectiveComplete("B_Siedlung_2_Reihe_links", "Player")
	end
	if IsObjectiveActive("B_Siedlungen_1_Reihe_rechts") and NumPlayerUnitsInZones("Enemy", {"B_14_Reihe_rechts", }) == 0 and NumPlayerUnitsInZones("Player", {"B_14_Reihe_rechts", }) > 0 then
		SetObjectiveComplete("B_Siedlungen_1_Reihe_rechts", "Player")
	end
	if IsObjectiveActive("B_Siedlungen_2_Reihe_Rechts") and NumPlayerUnitsInZones("Enemy", {"B_15_2_Reihe_rechts", }) == 0 and NumPlayerUnitsInZones("Player", {"B_15_2_Reihe_rechts", }) > 0 then
		SetObjectiveComplete("B_Siedlungen_2_Reihe_Rechts", "Player")
	end
	if IsObjectiveActive("B_Fabrik mit Feuerwehr") and NumPlayerUnitsInZones("Enemy", {"B_7_Fabrik_zentrum", "B_7_Platz", "B_7_fabrik_unten", }) == 0 and NumPlayerUnitsInZones("Player", {"B_7_Fabrik_zentrum", "B_7_Platz", "B_7_fabrik_unten", }) > 0 then
		SetObjectiveComplete("B_Fabrik mit Feuerwehr", "Player")
	end
	if IsObjectiveActive("B_Bürgermeister") and NumPlayerUnitsInZones("Enemy", {"B_12", }) == 0 and NumPlayerUnitsInZones("Player", {"B_12", }) > 0 then
		SetObjectiveComplete("B_Bürgermeister", "Player")
	end
	if IsObjectiveActive("B_Kaserne HQ") and NumPlayerUnitsInZones("Enemy", {"B_1_Zentrale", "B_1_Zentrum", "B_1_Fabrik", }) == 0 and NumPlayerUnitsInZones("Player", {"B_1_Zentrale", "B_1_Zentrum", "B_1_Fabrik", }) > 0 and NumGroupUnitsInZone("Leibgarde", "B_1_Zentrale") > 0 then
		SetObjectiveComplete("B_Kaserne HQ", "Player")
	end
	if IsObjectiveActive("B_Traktorfabrik") and NumPlayerUnitsInZones("Enemy", {"B_3_Fabrik_links", "B_3_Fabrik_rechts", }) == 0 and NumPlayerUnitsInZones("Player", {"B_3_Fabrik_links", "B_3_Fabrik_rechts", }) > 0 then
		SetObjectiveComplete("B_Traktorfabrik", "Player")
	end
	if IsObjectiveActive("B_Siedlung_an der Feuerwehr") and NumPlayerUnitsInZones("Enemy", {"B_7_Fabrik_links", "B_6", }) == 0 and NumPlayerUnitsInZones("Player", {"B_7_Fabrik_links", "B_6", }) > 0 then
		SetObjectiveComplete("B_Siedlung_an der Feuerwehr", "Player")
	end
	if IsObjectiveActive("B_Siedlung_Eisenbahn") and NumPlayerUnitsInZones("Enemy", {"B_4", "B_4_2", }) == 0 and NumPlayerUnitsInZones("Player", {"B_4", "B_4_2", }) > 0 then
		SetObjectiveComplete("B_Siedlung_Eisenbahn", "Player")
	end
	if IsObjectiveActive("B_Kasernen") and NumPlayerUnitsInZones("Enemy", {"B_Kasernen", }) == 0 and NumPlayerUnitsInZones("Player", {"B_Kasernen", }) > 0 then
		SetObjectiveComplete("B_Kasernen", "Player")
	end
end

function func_C_Ziele_erreicht()
	if IsObjectiveActive("C_Bahnhof rechts") and NumPlayerUnitsInZones("Enemy", {"C_15", "C_14", }) == 0 and NumPlayerUnitsInZones("Player", {"C_15", "C_14", }) > 0 and NumGroupUnitsInZone("Leibgarde", "C_14") > 0 then
		SetObjectiveComplete("C_Bahnhof rechts", "Player")
	end
	if IsObjectiveActive("C_Siedlung am Fluss Links") and NumPlayerUnitsInZones("Enemy", {"C_1_1", "C_1_Fluss", }) == 0 and NumPlayerUnitsInZones("Player", {"C_1_1", "C_1_Fluss", }) > 0 then
		SetObjectiveComplete("C_Siedlung am Fluss Links", "Player")
	end
	if IsObjectiveActive("C_Siedlung_nach den Brücken") and NumPlayerUnitsInZones("Enemy", {"C_4_Zentrum", "C_west", "C_3", "C_33", }) == 0 and NumPlayerUnitsInZones("Player", {"C_4_Zentrum", "C_west", "C_3", "C_33", }) > 0 then
		SetObjectiveComplete("C_Siedlung_nach den Brücken", "Player")
	end
	if IsObjectiveActive("C_Siedlung_rechts_unten") and NumPlayerUnitsInZones("Enemy", {"C_6_1", "C_6_2", }) == 0 and NumPlayerUnitsInZones("Player", {"C_6_1", "C_6_2", }) > 0 then
		SetObjectiveComplete("C_Siedlung_rechts_unten", "Player")
	end
	if IsObjectiveActive("C_Siedlung_rechts_2_von_unten") and NumPlayerUnitsInZones("Enemy", {"C_7", "C_7_2", }) == 0 and NumPlayerUnitsInZones("Player", {"C_7", "C_7_2", }) > 0 then
		SetObjectiveComplete("C_Siedlung_rechts_2_von_unten", "Player")
	end
	if IsObjectiveActive("C_Friedhof_unten_brücke") and NumPlayerUnitsInZones("Enemy", {"C_2", "C_32_Friedhof_unten", }) == 0 and NumPlayerUnitsInZones("Player", {"C_2", "C_32_Friedhof_unten", }) > 0 then
		SetObjectiveComplete("C_Friedhof_unten_brücke", "Player")
	end
	if IsObjectiveActive("C_Friedhof") and NumPlayerUnitsInZones("Enemy", {"C_32_Friedhof_Kirchen", "C_32_Friedhof_oben", }) == 0 and NumPlayerUnitsInZones("Player", {"C_32_Friedhof_Kirchen", "C_32_Friedhof_oben", }) > 0 then
		SetObjectiveComplete("C_Friedhof", "Player")
	end
	if IsObjectiveActive("C_Friedhof_oben_Bruecke") and NumPlayerUnitsInZones("Enemy", {"C_28", "C_29", }) == 0 and NumPlayerUnitsInZones("Player", {"C_28", "C_29", }) > 0 then
		SetObjectiveComplete("C_Friedhof_oben_Bruecke", "Player")
	end
	if IsObjectiveActive("C_Siedlung_Eisenbahn") and NumPlayerUnitsInZones("Enemy", {"C_27", "C_25", "C_26", }) == 0 and NumPlayerUnitsInZones("Player", {"C_27", "C_25", "C_26", }) > 0 then
		SetObjectiveComplete("C_Siedlung_Eisenbahn", "Player")
	end
	if IsObjectiveActive("C_Getreidsilo") and NumPlayerUnitsInZones("Enemy", {"C_22", }) == 0 and NumPlayerUnitsInZones("Player", {"C_22", }) > 0 then
		SetObjectiveComplete("C_Getreidsilo", "Player")
	end
	if IsObjectiveActive("C_Siedlung_Friedhof_getreidesilo") and NumPlayerUnitsInZones("Enemy", {"C_31", }) == 0 and NumPlayerUnitsInZones("Player", {"C_31", }) > 0 then
		SetObjectiveComplete("C_Siedlung_Friedhof_getreidesilo", "Player")
	end
	if IsObjectiveActive("C_Siedlung_Getreidsilo_Bruecke") and NumPlayerUnitsInZones("Enemy", {"C_23", "C_24", }) == 0 and NumPlayerUnitsInZones("Player", {"C_23", "C_24", }) > 0 then
		SetObjectiveComplete("C_Siedlung_Getreidsilo_Bruecke", "Player")
	end
	if IsObjectiveActive("C_Fabrik_Teile") and NumPlayerUnitsInZones("Enemy", {"C_21", }) == 0 and NumPlayerUnitsInZones("Enemy", {"C_21", }) > 0 then
		SetObjectiveComplete("C_Fabrik_Teile", "Player")
	end
	if IsObjectiveActive("C_Feuerwehr") and NumPlayerUnitsInZones("Enemy", {"C_19", }) == 0 and NumPlayerUnitsInZones("Player", {"C_19", }) > 0 then
		SetObjectiveComplete("C_Feuerwehr", "Player")
	end
	if IsObjectiveActive("C_Siedlung_Um das Fabrikle") and NumPlayerUnitsInZones("Enemy", {"C_17", "C_18", "C_13", }) == 0 and NumPlayerUnitsInZones("Player", {"C_17", "C_18", "C_13", }) > 0 then
		SetObjectiveComplete("C_Siedlung_Um das Fabrikle", "Player")
	end
	if IsObjectiveActive("C_Fabrik beim Bahnhof") and NumPlayerUnitsInZones("Enemy", {"C_12", "C_13", }) == 0 and NumPlayerUnitsInZones("Player", {"C_12", "C_13", }) > 0 then
		SetObjectiveComplete("C_Fabrik beim Bahnhof", "Player")
	end
	if IsObjectiveActive("C_Fabrikle") and NumPlayerUnitsInZones("Enemy", {"C_11", "C_11_Fabrik", }) == 0 and NumPlayerUnitsInZones("Player", {"C_11", "C_11_Fabrik", }) > 0 then
		SetObjectiveComplete("C_Fabrikle", "Player")
	end
end

function func_D_Ziele_erreicht()
	if IsObjectiveActive("D1. Reihe D links") and NumPlayerUnitsInZones("Enemy", {"D_3_1", "D_4_1", }) == 0 and NumPlayerUnitsInZones("Player", {"D_3_1", "D_4_1", }) > 0 then
		SetObjectiveComplete("D1. Reihe D links", "Player")
	end
	if IsObjectiveActive("D_1. Reihe D mitte") and NumPlayerUnitsInZones("Enemy", {"Aufmarschgebiet", }) == 0 and NumPlayerUnitsInZones("Player", {"Aufmarschgebiet", }) > 0 then
		SetObjectiveComplete("D_1. Reihe D mitte", "Player")
	end
	if IsObjectiveActive("D_1. Reihe D rechts") and NumPlayerUnitsInZones("Enemy", {"D1_1", "D_1_2", }) == 0 and NumPlayerUnitsInZones("Player", {"D1_1", "D_1_2", }) > 0 then
		SetObjectiveComplete("D_1. Reihe D rechts", "Player")
	end
	if IsObjectiveActive("D_2. Reihe D links") and NumPlayerUnitsInZones("Enemy", {"D_4_1", }) == 0 and NumPlayerUnitsInZones("Player", {"D_4_1", }) > 0 then
		SetObjectiveComplete("D_2. Reihe D links", "Player")
	end
	if IsObjectiveActive("D_2. Reihe D mitte") and NumPlayerUnitsInZones("Enemy", {"D_8_1", }) == 0 and NumPlayerUnitsInZones("Player", {"D_8_1", }) > 0 then
		SetObjectiveComplete("D_2. Reihe D mitte", "Player")
	end
	if IsObjectiveActive("D_2. Reihe D rechts") and NumPlayerUnitsInZones("Enemy", {"D_2_1", "D_2_2", }) == 0 and NumPlayerUnitsInZones("Player", {"D_2_1", "D_2_2", }) > 0 then
		SetObjectiveComplete("D_2. Reihe D rechts", "Player")
	end
	if IsObjectiveActive("D_3. Reihe links Gutsherrnhaus") and NumPlayerUnitsInZones("Enemy", {"D_13_1", "D_13_2", "D_7_1", }) == 0 and NumPlayerUnitsInZones("Player", {"D_13_1", "D_13_2", "D_7_1", }) > 0 then
		SetObjectiveComplete("D_3. Reihe links Gutsherrnhaus", "Player")
	end
	if IsObjectiveActive("D_3. Reihe D mitte Waffenfabrik") and NumPlayerUnitsInZones("Enemy", {"D_11_1", "D_11_2_Waffenfabrik", }) == 0 and NumPlayerUnitsInZones("Player", {"D_11_1", "D_11_2_Waffenfabrik", }) > 0 then
		SetObjectiveComplete("D_3. Reihe D mitte Waffenfabrik", "Player")
	end
	if IsObjectiveActive("D_3. Reihe D rechts Nachschub") and NumPlayerUnitsInZones("Enemy", {"D_12_1", "D_10_1", }) == 0 and NumPlayerUnitsInZones("Player", {"D_12_1", "D_10_1", }) > 0 then
		SetObjectiveComplete("D_3. Reihe D rechts Nachschub", "Player")
	end
end

function func_Sonstige_Ziele_erreicht()
	if IsObjectiveActive("Bruecke A-D") and NumPlayerUnitsInZones("Enemy", {"Bruecke_A_D", }) == 0 and NumPlayerUnitsInZones("Player", {"Bruecke_A_D", }) > 0 and IsEventPresent("BrueckeAD") then
		SetObjectiveComplete("Bruecke A-D", "Player")
	end
	if IsObjectiveActive("Bruecke B-C 2. v. unten") and NumPlayerUnitsInZones("Enemy", {"Bruecke_B_C_2_von_unten", }) == 0 and NumPlayerUnitsInZones("Player", {"Bruecke_B_C_2_von_unten", }) > 0 and IsEventPresent("BrueckeBC_2v_unten") then
		SetObjectiveComplete("Bruecke B-C 2. v. unten", "Player")
	end
	if IsObjectiveActive("Bruecke B-C 3. v. unten") and NumPlayerUnitsInZones("Enemy", {"Bruecke_B_C_3_von_unten", }) == 0 and NumPlayerUnitsInZones("Player", {"Bruecke_B_C_3_von_unten", }) > 0 and IsEventPresent("BrueckeBC_3v_unten")  then
		SetObjectiveComplete("Bruecke B-C 3. v. unten", "Player")
	end
	if IsObjectiveActive("Bruecke B-C Eisenbahn") and NumPlayerUnitsInZones("Enemy", {"Bruecke_B_C_Eisenbahn", }) == 0 and NumPlayerUnitsInZones("Player", {"Bruecke_B_C_Eisenbahn", }) > 0 and IsEventPresent("BrueckeBC_Eisenbahn") then
		SetObjectiveComplete("Bruecke B-C Eisenbahn", "Player")
	end
	if IsObjectiveActive("Bruecke B-C unten") and NumPlayerUnitsInZones("Enemy", {"Bruecke_B_C_unten", }) == 0 and NumPlayerUnitsInZones("Player", {"Bruecke_B_C_unten", }) > 0 and IsEventPresent("BrueckeBCunten") then
		SetObjectiveComplete("Bruecke B-C unten", "Player")
	end
	if IsObjectiveActive("Bruecke C-D links") and NumPlayerUnitsInZones("Enemy", {"Bruecke_C_D_Links", }) == 0 and NumPlayerUnitsInZones("Player", {"Bruecke_C_D_Links", }) > 0 and IsEventPresent("BrueckeCD links") then
		SetObjectiveComplete("Bruecke C-D links", "Player")
	end
	if IsObjectiveActive("Bruecke C-D rechts") and NumPlayerUnitsInZones("Enemy", {"Bruecke_C_D_rechts", }) == 0 and NumPlayerUnitsInZones("Player", {"Bruecke_C_D_rechts", }) > 0 and IsEventPresent("BrueckeCD rechts") then
		SetObjectiveComplete("Bruecke C-D rechts", "Player")
	end
end

function func_Siegbedingung()
	if NumPlayerUnitsInZones("Enemy", {"B_1_Zentrale", }) == 0 and NumGroupUnitsInZone("offizier", "B_1_Zentrale") > 0 and IsObjectiveCompleted("B_Kaserne HQ", "Player") and IsObjectiveCompleted("C_Bahnhof rechts", "Player") then
		SetEvent("Sieg")
	end
	if NumPlayerUnitsInZones("Enemy", {"B_1_Zentrale", }) == 0 and NumGroupUnitsInZone("Leibgarde", "B_1_Zentrale") > 0 and IsObjectiveCompleted("B_Kaserne HQ", "Player") and IsObjectiveCompleted("C_Bahnhof rechts", "Player") then
		SetEvent("Sieg")
	end
	if IsEventPresent("Sieg") then
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 30*10, function()  PlayerWin("Player") end)
		mission.OutScreenMessage(100074, 30, "0xFF00E000")
	end
end

function func_Sonstige_Ziele_aktivieren()
	if NumPlayerUnitsInZones("Player", {"Bruecke_A_D", }) > 0 and not IsObjectiveCompleted("Bruecke A-D", "Player") then
		AcivateObjective("Bruecke A-D")
		mission.OutScreenMessage(100051, 15, "0xFF00E000")
	end
	if NumPlayerUnitsInZones("Player", {"Bruecke_B_C_2_von_unten", }) > 0 and not IsObjectiveCompleted("Bruecke B-C 2. v. unten", "Player") then
		AcivateObjective("Bruecke B-C 2. v. unten")
		mission.OutScreenMessage(100030, 15, "0xFF00E000")
	end
	if NumPlayerUnitsInZones("Player", {"Bruecke_B_C_3_von_unten", }) > 0 and not IsObjectiveCompleted("Bruecke B-C 3. v. unten", "Player") then
		AcivateObjective("Bruecke B-C 3. v. unten")
		mission.OutScreenMessage(100031, 15, "0xFF00E000")
	end
	if NumPlayerUnitsInZones("Player", {"Bruecke_B_C_Eisenbahn", }) > 0 and not IsObjectiveCompleted("Bruecke B-C Eisenbahn", "Player") then
		AcivateObjective("Bruecke B-C Eisenbahn")
		mission.OutScreenMessage(100032, 15, "0xFF00E000")
	end
	if NumPlayerUnitsInZones("Player", {"Bruecke_B_C_unten", }) > 0 and not IsObjectiveCompleted("Bruecke B-C unten", "Player") then
		AcivateObjective("Bruecke B-C unten")
		mission.OutScreenMessage(100029, 15, "0xFF00E000")
	end
	if NumPlayerUnitsInZones("Player", {"Bruecke_C_D_Links", }) > 0 and not IsObjectiveCompleted("Bruecke C-D links", "Player") then
		AcivateObjective("Bruecke C-D links")
		mission.OutScreenMessage(100028, 15, "0xFF00E000")
	end
	if NumPlayerUnitsInZones("Player", {"Bruecke_C_D_rechts", }) > 0 and not IsObjectiveCompleted("Bruecke C-D rechts", "Player") then
		AcivateObjective("Bruecke C-D rechts")
		mission.OutScreenMessage(100052, 15, "0xFF00E000")
	end
end

function func_Nachschub_AD()
	if NumGroupUnits("Bruecke_AD", 0, false, false, false) > 0 then
		MoveGroupToZone("Bruecke_AD", "Bruecke_A_D", true, false)
	end
	if IsObjectiveActive("Bruecke A-D") and msd_vars.Bruecke_AD == 0 then
		RunSpawn("Enemy", {"Rus_Su76", }, "Spawn_04", "Bruecke_AD", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_T-34", }, "Spawn_04", "Bruecke_AD", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_offizier", }, "Spawn_04", "Bruecke_AD", "", true, true, {}, false, 0)
		msd_vars.Bruecke_AD = msd_vars.Bruecke_AD + 1
	end
	if IsObjectiveActive("Bruecke A-D") and msd_vars.Bruecke_AD == 1 then
		RunSpawn("Enemy", {"Rus_lmg_2rifle", }, "Spawn_04", "Bruecke_AD", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_3_Infantrie_AntiPanzer", }, "Spawn_04", "Bruecke_AD", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_5_Infantrie_schuss", }, "Spawn_04", "Bruecke_AD", "", true, true, {}, false, 0)
		msd_vars.Bruecke_AD = msd_vars.Bruecke_AD + 1
	end
	if IsObjectiveActive("Bruecke A-D") and msd_vars.Bruecke_AD == 2 then
		RunSpawn("Enemy", {"Rus_3_Gewehr", }, "Spawn_04", "Bruecke_AD", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_Flak_klein", }, "Spawn_04", "Bruecke_AD", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_Pak_mittel", }, "Spawn_04", "Bruecke_AD", "", true, true, {}, false, 0)
		msd_vars.Bruecke_AD = msd_vars.Bruecke_AD + 1
	end
	if IsObjectiveActive("Bruecke A-D") and msd_vars.Bruecke_AD == 3 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_04", "Bruecke_AD", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_6_mann", }, "Spawn_04", "Bruecke_AD", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_2Flame", }, "Spawn_04", "Bruecke_AD", "", true, true, {}, false, 0)
		msd_vars.Bruecke_AD = msd_vars.Bruecke_AD + 1
	end
	if msd_vars.Bruecke_AD == 4 then
		SetEvent("BrueckeAD")
	end
	if NumPlayerUnitsInZones("Enemy", {"Bruecke_A_D", }) > 0 and IsObjectiveCompleted("Bruecke A-D", "Player") then
		AcivateObjective("Bruecke A-D")
	end
end

function func_Nachschub_BC_unten()
	if NumGroupUnits("Bruecke_BC_unten", 0, false, false, false) > 0 then
		MoveGroupToZone("Bruecke_BC_unten", "Bruecke_B_C_unten", true, false)
	end
	if IsObjectiveActive("Bruecke B-C unten") and msd_vars.Bruecke_BC_unten == 0 then
		RunSpawn("Enemy", {"Rus_KV1", }, "Spawn_01", "Bruecke_BC_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_Scharfschützen", }, "Spawn_01", "Bruecke_BC_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_3Panzer", }, "Spawn_01", "Bruecke_BC_unten", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_unten = msd_vars.Bruecke_BC_unten + 1
	end
	if IsObjectiveActive("Bruecke B-C unten") and msd_vars.Bruecke_BC_unten == 1 then
		RunSpawn("Enemy", {"Rus_6_mann", }, "Spawn_01", "Bruecke_BC_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_5_Infantrie_schuss", }, "Spawn_01", "Bruecke_BC_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_3_Infantrie_AntiPanzer", }, "Spawn_01", "Bruecke_BC_unten", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_unten = msd_vars.Bruecke_BC_unten + 1
	end
	if IsObjectiveActive("Bruecke B-C unten") and msd_vars.Bruecke_BC_unten == 2 then
		RunSpawn("Enemy", {"rus_mobile_Flak", }, "Spawn_01", "Bruecke_BC_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_6_mann", }, "Spawn_01", "Bruecke_BC_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Bruecke_BC_unten", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_unten = msd_vars.Bruecke_BC_unten + 1
	end
	if IsObjectiveActive("Bruecke B-C unten") and msd_vars.Bruecke_BC_unten == 3 then
		RunSpawn("Enemy", {"Rus_Flak_klein", }, "Spawn_04", "Bruecke_BC_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_5_Infantrie_schuss", }, "Spawn_04", "Bruecke_BC_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_Raketenwerfer", }, "Spawn_04", "Bruecke_BC_unten", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_unten = msd_vars.Bruecke_BC_unten + 1
	end
	if msd_vars.Bruecke_BC_unten == 4 then
		SetEvent("BrueckeBCunten")
	end
	if NumPlayerUnitsInZones("Enemy", {"Bruecke_B_C_unten", }) > 0 and IsObjectiveCompleted("Bruecke B-C unten", "Player") then
		AcivateObjective("Bruecke B-C unten")
	end
end

function func_Nachschub_BC_2v_unten()
	if NumGroupUnits("Bruecke_BC_2v_unten", 0, false, false, false) > 0 then
		MoveGroupToZone("Bruecke_BC_2v_unten", "Bruecke_B_C_2_von_unten", true, false)
	end
	if IsObjectiveActive("Bruecke B-C 2. v. unten") and msd_vars.Bruecke_BC_2v_unten == 0 then
		RunSpawn("Enemy", {"Rus_Su76", }, "Spawn_01", "Bruecke_BC_2v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_Pak_7,6", }, "Spawn_01", "Bruecke_BC_2v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_5_Infantrie_schuss", }, "Spawn_01", "Bruecke_BC_2v_unten", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_2v_unten = msd_vars.Bruecke_BC_2v_unten + 1
	end
	if IsObjectiveActive("Bruecke B-C 2. v. unten") and msd_vars.Bruecke_BC_2v_unten == 1 then
		RunSpawn("Enemy", {"Rus_3_Infantrie_AntiPanzer", }, "Spawn_01", "Bruecke_BC_2v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Bruecke_BC_2v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"rus_mobile_Flak", }, "Spawn_01", "Bruecke_BC_2v_unten", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_2v_unten = msd_vars.Bruecke_BC_2v_unten + 1
	end
	if IsObjectiveActive("Bruecke B-C 2. v. unten") and msd_vars.Bruecke_BC_2v_unten == 2 then
		RunSpawn("Enemy", {"Rus_2Flame", }, "Spawn_01", "Bruecke_BC_2v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_5_Infantrie_schuss", }, "Spawn_01", "Bruecke_BC_2v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_6_mann", }, "Spawn_01", "Bruecke_BC_2v_unten", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_2v_unten = msd_vars.Bruecke_BC_2v_unten + 1
	end
	if IsObjectiveActive("Bruecke B-C 2. v. unten") and msd_vars.Bruecke_BC_2v_unten == 3 then
		RunSpawn("Enemy", {"Rus_MG", }, "Spawn_01", "Bruecke_BC_2v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_6_mann", }, "Spawn_01", "Bruecke_BC_2v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_3_Infantrie_AntiPanzer", }, "Spawn_01", "Bruecke_BC_2v_unten", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_2v_unten = msd_vars.Bruecke_BC_2v_unten + 1
	end
	if msd_vars.Bruecke_BC_2v_unten == 4 then
		SetEvent("BrueckeBC_2v_unten")
	end
	if NumPlayerUnitsInZones("Enemy", {"Bruecke_B_C_2_von_unten", }) > 0 and IsObjectiveCompleted("Bruecke B-C 2. v. unten", "Player") then
		AcivateObjective("Bruecke B-C 2. v. unten")
	end
end

function func_Nachschub_BC_3v_unten()
	if NumGroupUnits("Bruecke_BC_3v_unten", 0, false, false, false) > 0 then
		MoveGroupToZone("Bruecke_BC_3v_unten", "Bruecke_B_C_3_von_unten", true, false)
	end
	if IsObjectiveActive("Bruecke B-C 3. v. unten") and msd_vars.Bruecke_BC_3v_unten == 0 then
		RunSpawn("Enemy", {"Rus_7Panzer", }, "Spawn_01", "Bruecke_BC_3v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_MG", }, "Spawn_01", "Bruecke_BC_3v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_Moerser", }, "Spawn_01", "Bruecke_BC_3v_unten", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_2v_unten = msd_vars.Bruecke_BC_2v_unten + 1
	end
	if IsObjectiveActive("Bruecke B-C 3. v. unten") and msd_vars.Bruecke_BC_3v_unten == 1 then
		RunSpawn("Enemy", {"Rus_Pak_7,6", }, "Spawn_01", "Bruecke_BC_3v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"rus_mobile_Flak", }, "Spawn_01", "Bruecke_BC_3v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_6_mann", }, "Spawn_01", "Bruecke_BC_3v_unten", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_3v_unten = msd_vars.Bruecke_BC_3v_unten + 1
	end
	if IsObjectiveActive("Bruecke B-C 3. v. unten") and msd_vars.Bruecke_BC_3v_unten == 2 then
		RunSpawn("Enemy", {"Rus_5_Infantrie_schuss", }, "Spawn_01", "Bruecke_BC_3v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_3_Infantrie_AntiPanzer", }, "Spawn_01", "Bruecke_BC_3v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Bruecke_BC_3v_unten", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_3v_unten = msd_vars.Bruecke_BC_3v_unten + 1
	end
	if IsObjectiveActive("Bruecke B-C 3. v. unten") and msd_vars.Bruecke_BC_3v_unten == 3 then
		RunSpawn("Enemy", {"Rus_3_Infantrie_AntiPanzer", }, "Spawn_01", "Bruecke_BC_3v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_2Flame", }, "Spawn_01", "Bruecke_BC_3v_unten", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Bruecke_BC_3v_unten", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_2v_unten = msd_vars.Bruecke_BC_2v_unten + 1
	end
	if msd_vars.Bruecke_BC_3v_unten == 4 then
		SetEvent("BrueckeBC_3v_unten")
	end
	if NumPlayerUnitsInZones("Enemy", {"Bruecke_B_C_3_von_unten", }) > 0 and IsObjectiveCompleted("Bruecke B-C 3. v. unten", "Player") then
		AcivateObjective("Bruecke B-C 3. v. unten")
	end
	
end

function func_Nachschub_BC_Eisenbahn()
	if NumGroupUnits("Bruecke_BC_Eisenbahn", 0, false, false, false) > 0 then
		MoveGroupToZone("Bruecke_BC_Eisenbahn", "Bruecke_B_C_Eisenbahn", true, false)
	end
	if IsObjectiveActive("Bruecke B-C Eisenbahn") and msd_vars.Bruecke_BC_Eisenbahn == 0 then
		RunSpawn("Enemy", {"Rus_KV2", }, "Spawn_01", "Bruecke_BC_Eisenbahn", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_Su76", }, "Spawn_01", "Bruecke_BC_Eisenbahn", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"rus_mobile_Flak", }, "Spawn_01", "Bruecke_BC_Eisenbahn", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_Eisenbahn = msd_vars.Bruecke_BC_Eisenbahn + 1
	end
	if IsObjectiveActive("Bruecke B-C Eisenbahn") and msd_vars.Bruecke_BC_Eisenbahn == 1 then
		RunSpawn("Enemy", {"Rus_3Panzer", }, "Spawn_01", "Bruecke_BC_Eisenbahn", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_5_Infantrie_schuss", }, "Spawn_01", "Bruecke_BC_Eisenbahn", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_3_Infantrie_AntiPanzer", }, "Spawn_01", "Bruecke_BC_Eisenbahn", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_Eisenbahn = msd_vars.Bruecke_BC_Eisenbahn + 1
	end
	if IsObjectiveActive("Bruecke B-C Eisenbahn") and msd_vars.Bruecke_BC_Eisenbahn == 2 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Bruecke_BC_Eisenbahn", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_lmg_2rifle", }, "Spawn_01", "Bruecke_BC_Eisenbahn", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_offizier", }, "Spawn_01", "Bruecke_BC_Eisenbahn", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_Eisenbahn = msd_vars.Bruecke_BC_Eisenbahn + 1
	end
	if IsObjectiveActive("Bruecke B-C Eisenbahn") and msd_vars.Bruecke_BC_Eisenbahn == 3 then
		RunSpawn("Enemy", {"Rus_5_Infantrie_schuss", }, "Spawn_01", "Bruecke_BC_Eisenbahn", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_2Flame", }, "Spawn_01", "Bruecke_BC_Eisenbahn", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Bruecke_BC_Eisenbahn", "", true, true, {}, false, 0)
		msd_vars.Bruecke_BC_Eisenbahn = msd_vars.Bruecke_BC_Eisenbahn + 1
	end
	if msd_vars.Bruecke_BC_Eisenbahn == 4 then
		SetEvent("BrueckeBC_Eisenbahn")
	end
	if NumPlayerUnitsInZones("Enemy", {"Bruecke_B_C_Eisenbahn", }) > 0 and IsObjectiveCompleted("Bruecke B-C Eisenbahn", "Player") then
		AcivateObjective("Bruecke B-C Eisenbahn")
	end
end

function func_Nachschub_CD_links()
	if NumGroupUnits("Bruecke_CD_Links", 0, false, false, false) > 0 then
		MoveGroupToZone("Bruecke_CD_Links", "Bruecke_C_D_Links", true, false)
	end
	if IsObjectiveActive("Bruecke C-D links") and msd_vars.Bruecke_CD_links == 0 then
		RunSpawn("Enemy", {"rus_mobile_Flak", }, "Spawn_01", "Bruecke_CD_Links", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_3Panzer", }, "Spawn_01", "Bruecke_CD_Links", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_5_Infantrie_schuss", }, "Spawn_01", "Bruecke_CD_Links", "", true, true, {}, false, 0)
		msd_vars.Bruecke_CD_links = msd_vars.Bruecke_CD_links + 1
	end
	if IsObjectiveActive("Bruecke C-D links") and msd_vars.Bruecke_CD_links == 1 then
		RunSpawn("Enemy", {"Rus_3_Gewehr", }, "Spawn_01", "Bruecke_CD_Links", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_3_Infantrie_AntiPanzer", }, "Spawn_01", "Bruecke_CD_Links", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_2Flame", }, "Spawn_01", "Bruecke_CD_Links", "", true, true, {}, false, 0)
		msd_vars.Bruecke_CD_links = msd_vars.Bruecke_CD_links + 1
	end
	if IsObjectiveActive("Bruecke C-D links") and msd_vars.Bruecke_CD_links == 2 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Bruecke_CD_Links", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_offizier", }, "Spawn_01", "Bruecke_CD_Links", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"rus_mobile_Flak", }, "Spawn_01", "Bruecke_CD_Links", "", true, true, {}, false, 0)
		msd_vars.Bruecke_CD_links = msd_vars.Bruecke_CD_links + 1
	end
	if IsObjectiveActive("Bruecke C-D links") and msd_vars.Bruecke_CD_links == 3 then
		RunSpawn("Enemy", {"Rus_Su76", }, "Spawn_01", "Bruecke_CD_Links", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_Su76", }, "Spawn_01", "Bruecke_CD_Links", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_Su76", }, "Spawn_01", "Bruecke_CD_Links", "", true, true, {}, false, 0)
		msd_vars.Bruecke_CD_links = msd_vars.Bruecke_CD_links + 1
	end
	if msd_vars.Bruecke_CD_links == 4 then
		SetEvent("BrueckeCD links")
	end
	if NumPlayerUnitsInZones("Enemy", {"Bruecke_C_D_Links", }) > 0 and IsObjectiveCompleted("Bruecke C-D links", "Player") then
		AcivateObjective("Bruecke C-D links")
	end
end

function func_Nachschub_CD_rechts()
	if NumGroupUnits("Bruecke_CD_rechts", 0, false, false, false) > 0 then
		MoveGroupToZone("Bruecke_CD_rechts", "Bruecke_C_D_rechts", true, false)
	end
	if IsObjectiveActive("Bruecke C-D rechts") and msd_vars.Bruecke_CD_rechts == 0 then
		RunSpawn("Enemy", {"Rus_offizier", }, "Spawn_01", "Bruecke_CD_rechts", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_Su76", }, "Spawn_01", "Bruecke_CD_rechts", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_T-34", }, "Spawn_01", "Bruecke_CD_rechts", "", true, true, {}, false, 0)
		msd_vars.Bruecke_CD_rechts = msd_vars.Bruecke_CD_rechts + 1
	end
	if IsObjectiveActive("Bruecke C-D rechts") and msd_vars.Bruecke_CD_rechts == 1 then
		RunSpawn("Enemy", {"Rus_Pak_7,6", }, "Spawn_01", "Bruecke_CD_rechts", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_Raketenwerfer", }, "Spawn_01", "Bruecke_CD_rechts", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_lmg_2rifle", }, "Spawn_01", "Bruecke_CD_rechts", "", true, true, {}, false, 0)
		msd_vars.Bruecke_CD_rechts = msd_vars.Bruecke_CD_rechts + 1
	end
	if IsObjectiveActive("Bruecke C-D rechts") and msd_vars.Bruecke_CD_rechts == 2 then
		RunSpawn("Enemy", {"Rus_lmg_2rifle", }, "Spawn_01", "Bruecke_CD_rechts", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_Scharfschützen", }, "Spawn_01", "Bruecke_CD_rechts", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_6_mann", }, "Spawn_01", "Bruecke_CD_rechts", "", true, true, {}, false, 0)
		msd_vars.Bruecke_CD_rechts = msd_vars.Bruecke_CD_rechts + 1
	end
	if IsObjectiveActive("Bruecke C-D rechts") and msd_vars.Bruecke_CD_rechts == 3 then
		RunSpawn("Enemy", {"Rus_5_Infantrie_schuss", }, "Spawn_01", "Bruecke_CD_rechts", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_2Flame", }, "Spawn_01", "Bruecke_CD_rechts", "", true, true, {}, false, 0)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Bruecke_CD_rechts", "", true, true, {}, false, 0)
		msd_vars.Bruecke_CD_rechts = msd_vars.Bruecke_CD_rechts + 1
	end
	if msd_vars.Bruecke_CD_rechts == 4 then
		SetEvent("BrueckeCD rechts")
	end
	if NumPlayerUnitsInZones("Enemy", {"Bruecke_C_D_rechts", }) > 0 and IsObjectiveCompleted("Bruecke C-D rechts", "Player") then
		AcivateObjective("Bruecke C-D rechts")
	end
end

function func_Eisenbahn()
	if NumGroupUnitsInZone("Eisenbahn", "Eisenbahnstrecke_links") > 0 and msd_vars.Eisenbahn == 0 then
		mission.OutMessage(100071)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 50*10, function()  MoveGroupToZone("Eisenbahn", "Eisenbahnstrecke_rechts", false, false) end)
		msd_vars.Eisenbahn = msd_vars.Eisenbahn + 1
	end
	if NumGroupUnitsInZone("Eisenbahn", "Eisenbahnstrecke_rechts") > 0 and msd_vars.Eisenbahn == 1 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_05", "Eisenbahn_Friedhof", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_Pak_7,6", }, "Spawn_05", "Eisenbahn_Friedhof", "", true, true, {}, false, 10)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 70*10, function()  MoveGroupToZone("Eisenbahn", "Eisenbahnstrecke_links", false, false) end)
		mission.OutMessage(100072)
	end
	if NumGroupUnitsInZone("Eisenbahn", "Eisenbahnstrecke_rechts") > 0 and msd_vars.Eisenbahn == 2 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_05", "Eisenbahn_Friedhof", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_offizier", }, "Spawn_05", "Eisenbahn_Friedhof", "", true, true, {}, false, 10)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 70*10, function()  MoveGroupToZone("Eisenbahn", "Eisenbahnstrecke_links", false, false) end)
		mission.OutMessage(100072)
	end
	if NumGroupUnitsInZone("Eisenbahn", "Eisenbahnstrecke_rechts") > 0 and msd_vars.Eisenbahn == 3 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_05", "Eisenbahn_Friedhof", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_MG", }, "Spawn_05", "Eisenbahn_Friedhof", "", true, true, {}, false, 10)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 70*10, function()  MoveGroupToZone("Eisenbahn", "Eisenbahnstrecke_links", false, false) end)
		mission.OutMessage(100072)
	end
	do
		MoveGroupToZone("Eisenbahn_Friedhof", "C_32_Friedhof_Kirchen", true, false)
	end
	if GroupSeeEnemyNow("Eisenbahn_Friedhof") then
		UnloadTransports("Eisenbahn_Friedhof")
	end
end

function func_B_Buergermeister()
	if IsObjectiveActive("B_Bürgermeister") and not IsObjectiveCompleted("B_Bürgermeister", "Player") and msd_vars.Brgermeister == 0 then
		RunSpawn("Enemy", {"Rus_Flak_klein", }, "Spawn_01", "Buergermeister", "", true, true, {}, false, 10)
		msd_vars.Brgermeister = msd_vars.Brgermeister + 1
	end
	if IsObjectiveActive("B_Bürgermeister") and not IsObjectiveCompleted("B_Bürgermeister", "Player") and msd_vars.Brgermeister == 1 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Buergermeister", "", true, true, {}, false, 10)
		msd_vars.Brgermeister = msd_vars.Brgermeister + 1
	end
	if IsObjectiveActive("B_Bürgermeister") and not IsObjectiveCompleted("B_Bürgermeister", "Player") and msd_vars.Brgermeister == 2 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Buergermeister", "", true, true, {}, false, 10)
		msd_vars.Brgermeister = msd_vars.Brgermeister + 1
	end
	if NumGroupUnits("Buergermeister", 0, false, false, false) > 0 then
		MoveGroupToZone("Buergermeister", "B_12", true, false)
	end
	if GroupSeeEnemyNow("Buergermeister") then
		SetGroupBehaviour("Buergermeister", true, nil, true, true, nil, true, true, true, true, nil)
		UnloadTransports("Buergermeister")
	end
end

function func_B_Fabrik_mit_Feuerwehr()
	if IsObjectiveActive("B_Fabrik mit Feuerwehr") and not IsObjectiveCompleted("B_Fabrik mit Feuerwehr", "Player") and msd_vars.FabrikmitFeuerwehr == 0 then
		RunSpawn("Enemy", {"Rus_Flak_klein", }, "Spawn_01", "Fabrik_mit_Feuerwehr", "", true, true, {}, false, 10)
		msd_vars.FabrikmitFeuerwehr = msd_vars.FabrikmitFeuerwehr + 1
	end
	if IsObjectiveActive("B_Fabrik mit Feuerwehr") and not IsObjectiveCompleted("B_Fabrik mit Feuerwehr", "Player") and msd_vars.FabrikmitFeuerwehr == 1 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Fabrik_mit_Feuerwehr", "", true, true, {}, false, 10)
		msd_vars.FabrikmitFeuerwehr = msd_vars.FabrikmitFeuerwehr + 1
	end
	if IsObjectiveActive("B_Fabrik mit Feuerwehr") and not IsObjectiveCompleted("B_Fabrik mit Feuerwehr", "Player") and msd_vars.FabrikmitFeuerwehr == 2 then
		RunSpawn("Enemy", {"Rus_7Panzer", }, "Spawn_01", "Fabrik_mit_Feuerwehr", "", true, true, {}, false, 10)
		msd_vars.FabrikmitFeuerwehr = msd_vars.FabrikmitFeuerwehr + 1
	end
	if GroupSeeEnemyNow("Fabrik_mit_Feuerwehr") then
		SetGroupBehaviour("Fabrik_mit_Feuerwehr", true, nil, true, true, nil, true, true, true, true, nil)
		UnloadTransports("Fabrik_mit_Feuerwehr")
	end
	if NumGroupUnits("Fabrik_mit_Feuerwehr", 0, false, false, false) > 0 then
		MoveGroupToZone("Fabrik_mit_Feuerwehr", "B_7_Platz", true, false)
	end
end

function func_B_Kaserne()
	if IsObjectiveActive("B_Kasernen") and not IsObjectiveCompleted("B_Kasernen", "Player") and msd_vars.Kaserne == 0 then
		RunSpawn("Enemy", {"Rus_Flak_klein", }, "Spawn_01", "Kaserne", "", true, true, {}, false, 10)
		msd_vars.Kaserne = msd_vars.Kaserne + 1
	end
	if IsObjectiveActive("B_Kasernen") and not IsObjectiveCompleted("B_Kasernen", "Player") and msd_vars.Kaserne == 1 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Kaserne", "", true, true, {}, false, 10)
		msd_vars.Kaserne = msd_vars.Kaserne + 1
	end
	if IsObjectiveActive("B_Kasernen") and not IsObjectiveCompleted("B_Kasernen", "Player") and msd_vars.Kaserne == 2 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Kaserne", "", true, true, {}, false, 10)
		msd_vars.Kaserne = msd_vars.Kaserne + 1
	end
	if GroupSeeEnemyNow("Kaserne") then
		SetGroupBehaviour("Kaserne", true, nil, true, true, nil, true, true, true, true, nil)
		UnloadTransports("Kaserne")
	end
	if NumGroupUnits("Kaserne", 0, false, false, false) > 0 then
		MoveGroupToZone("Kaserne", "B_Kasernen", true, false)
	end
	
end

function func_B_Traktorfabrik()
	if IsObjectiveActive("B_Traktorfabrik") and not IsObjectiveCompleted("B_Traktorfabrik", "Player") and msd_vars.Traktorfabrik == 0 then
		RunSpawn("Enemy", {"Rus_Flak_klein", }, "Spawn_01", "Traktorfabrik", "", true, true, {}, false, 10)
		msd_vars.Traktorfabrik = msd_vars.Traktorfabrik + 1
	end
	if IsObjectiveActive("B_Traktorfabrik") and not IsObjectiveCompleted("B_Traktorfabrik", "Player") and msd_vars.Traktorfabrik == 1 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Traktorfabrik", "", true, true, {}, false, 10)
		msd_vars.Traktorfabrik = msd_vars.Traktorfabrik + 1
	end
	if IsObjectiveActive("B_Traktorfabrik") and not IsObjectiveCompleted("B_Traktorfabrik", "Player") and msd_vars.Traktorfabrik == 2 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_01", "Traktorfabrik", "", true, true, {}, false, 10)
		msd_vars.Traktorfabrik = msd_vars.Traktorfabrik + 1
	end
	if GroupSeeEnemyNow("Traktorfabrik") then
		SetGroupBehaviour("Traktorfabrik", true, nil, true, true, nil, true, true, true, true, nil)
		UnloadTransports("Traktorfabrik")
	end
	if NumGroupUnits("Traktorfabrik", 0, false, false, false) > 0 then
		MoveGroupToZone("Traktorfabrik", "Traktorfabrik", true, false)
	end
	
end

function func_C_Feuerwehr()
	if IsObjectiveActive("C_Feuerwehr") and not IsObjectiveCompleted("C_Feuerwehr", "Player") and msd_vars.Feuerwehr == 0 then
		RunSpawn("Enemy", {"Rus_2Flame", }, "Spawn_02", "C_Feuerwehr", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_Flak_klein", }, "Spawn_02", "C_Feuerwehr", "", true, true, {}, false, 10)
		msd_vars.Feuerwehr = msd_vars.Feuerwehr + 1
	end
	if IsObjectiveActive("C_Feuerwehr") and not IsObjectiveCompleted("C_Feuerwehr", "Player") and msd_vars.Feuerwehr == 1 then
		RunSpawn("Enemy", {"Rus_2Flame", }, "Spawn_02", "C_Feuerwehr", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_Feuerwehr", "", true, true, {}, false, 10)
		msd_vars.Feuerwehr = msd_vars.Feuerwehr + 1
	end
	if IsObjectiveActive("C_Feuerwehr") and not IsObjectiveCompleted("C_Feuerwehr", "Player") and msd_vars.Feuerwehr == 2 then
		RunSpawn("Enemy", {"Rus_2Flame", }, "Spawn_02", "C_Feuerwehr", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_2Flame", }, "Spawn_02", "C_Feuerwehr", "", true, true, {}, false, 10)
		msd_vars.Feuerwehr = msd_vars.Feuerwehr + 1
	end
	if GroupSeeEnemyNow("C_Feuerwehr") then
		SetGroupBehaviour("C_Feuerwehr", true, nil, true, true, nil, true, true, true, true, nil)
		UnloadTransports("C_Feuerwehr")
	end
	if NumGroupUnits("C_Feuerwehr", 0, false, false, false) > 0 then
		MoveGroupToZone("C_Feuerwehr", "C_19", true, false)
	end
	
	
end

function func_C_Getreidsilo()
	if IsObjectiveActive("C_Getreidsilo") and not IsObjectiveCompleted("C_Getreidsilo", "Player") and msd_vars.Getreidesilo == 0 then
		RunSpawn("Enemy", {"Rus_2_smg", }, "Spawn_02", "C_Getreidesilo", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_Pak_7,6", }, "Spawn_02", "C_Getreidesilo", "", true, true, {}, false, 10)
		msd_vars.Getreidesilo = msd_vars.Getreidesilo + 1
	end
	if IsObjectiveActive("C_Getreidsilo") and not IsObjectiveCompleted("C_Getreidsilo", "Player") and msd_vars.Getreidesilo == 1 then
		RunSpawn("Enemy", {"Rus_2_smg", }, "Spawn_02", "C_Getreidesilo", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_Flak_klein", }, "Spawn_02", "C_Getreidesilo", "", true, true, {}, false, 10)
		msd_vars.Getreidesilo = msd_vars.Getreidesilo + 1
	end
	if IsObjectiveActive("C_Getreidsilo") and not IsObjectiveCompleted("C_Getreidsilo", "Player") and msd_vars.Getreidesilo == 0 then
		RunSpawn("Enemy", {"Rus_3_Infantrie_AntiPanzer", }, "Spawn_02", "C_Getreidesilo", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_Getreidesilo", "", true, true, {}, false, 10)
		msd_vars.Getreidesilo = msd_vars.Getreidesilo + 1
	end
	if GroupSeeEnemyNow("C_Getreidesilo") then
		SetGroupBehaviour("C_Getreidesilo", true, nil, true, true, nil, true, true, true, true, nil)
		UnloadTransports("C_Getreidesilo")
	end
	if NumGroupUnits("C_Getreidesilo", 0, false, false, false) > 0 then
		MoveGroupToZone("C_Getreidesilo", "C_22", true, false)
	end
	
	
	
end

function func_Z_hler_f_r_Ziele()
	if msd_vars.A_Zhler == 5  then
		mission.OutMessage(100015)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.CameraAt({392.741852, 2.998398, -491.015320}, 47.172245, -15.749211, 122.137733, 3.00)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 0*10, function()  RunSpawn("Player", {"Deu_Krad", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 10*10, function()  RunSpawn("Player", {"Deu_231", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  RunSpawn("Player", {"Deu_Infantrie_Sonder", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 50*10, function()  RunSpawn("Player", {"Deu_Scharf", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 5) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 90*10, function()  RunSpawn("Player", {"Deu_Opel_MG", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 100*10, function()  RunSpawn("Player", {"Deu_LKW_Inf_Sanitäter", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 140*10, function()  RunSpawn("Player", {"Deu_251_Inf_Pioniere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 150*10, function()  RunSpawn("Player", {"Deu_251_Infantrie_Schuss", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 40) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 160*10, function()  RunSpawn("Player", {"Deu_250_Inf_Besatzungen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 30) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 180*10, function()  RunSpawn("Player", {"Deu_250_Inf_Mechaniker", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 190*10, function()  RunSpawn("Player", {"Deu_251_Inf_Schwere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 220*10, function()  RunSpawn("Player", {"Deu_Panzer_IVe", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 240*10, function()  RunSpawn("Player", {"Deu_IV_D", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 250*10, function()  RunSpawn("Player", {"DEU_III_i", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 260*10, function()  RunSpawn("Player", {"Deu_stugIIIg", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 270*10, function()  RunSpawn("Player", {"Deu_stugIIIb", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 360*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_Versorger", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_treibstoff", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AddBonus(1, 8, 1, -1, -1)
		AddBonus(1, 8, 1, -1, -1)
	end
	if msd_vars.A_Zhler == 11  then
		mission.OutMessage(100015)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.CameraAt({392.741852, 2.998398, -491.015320}, 47.172245, -15.749211, 122.137733, 3.00)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 0*10, function()  RunSpawn("Player", {"Deu_Krad", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 10*10, function()  RunSpawn("Player", {"Deu_231", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  RunSpawn("Player", {"Deu_Infantrie_Sonder", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 50*10, function()  RunSpawn("Player", {"Deu_Scharf", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 5) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 90*10, function()  RunSpawn("Player", {"Deu_Opel_MG", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 100*10, function()  RunSpawn("Player", {"Deu_LKW_Inf_Sanitäter", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 140*10, function()  RunSpawn("Player", {"Deu_251_Inf_Pioniere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 150*10, function()  RunSpawn("Player", {"Deu_251_Infantrie_Schuss", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 40) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 160*10, function()  RunSpawn("Player", {"Deu_250_Inf_Besatzungen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 30) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 180*10, function()  RunSpawn("Player", {"Deu_250_Inf_Mechaniker", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 190*10, function()  RunSpawn("Player", {"Deu_251_Inf_Schwere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 220*10, function()  RunSpawn("Player", {"Deu_Panzer_IVe", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 240*10, function()  RunSpawn("Player", {"Deu_IV_D", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 250*10, function()  RunSpawn("Player", {"DEU_III_i", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 270*10, function()  RunSpawn("Player", {"Deu_stugIIIb", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 360*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_Versorger", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_treibstoff", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AddBonus(1, 8, 1, -1, -1)
		AddBonus(1, 8, 1, -1, -1)
	end
	if msd_vars.A_Zhler == 16  then
		mission.OutMessage(100015)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.CameraAt({392.741852, 2.998398, -491.015320}, 47.172245, -15.749211, 122.137733, 3.00)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 0*10, function()  RunSpawn("Player", {"Deu_Krad", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 10*10, function()  RunSpawn("Player", {"Deu_231", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  RunSpawn("Player", {"Deu_Infantrie_Sonder", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 50*10, function()  RunSpawn("Player", {"Deu_Scharf", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 5) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 90*10, function()  RunSpawn("Player", {"Deu_Opel_MG", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 100*10, function()  RunSpawn("Player", {"Deu_LKW_Inf_Sanitäter", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 140*10, function()  RunSpawn("Player", {"Deu_251_Inf_Pioniere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 150*10, function()  RunSpawn("Player", {"Deu_251_Infantrie_Schuss", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 40) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 160*10, function()  RunSpawn("Player", {"Deu_250_Inf_Besatzungen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 30) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 180*10, function()  RunSpawn("Player", {"Deu_250_Inf_Mechaniker", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 190*10, function()  RunSpawn("Player", {"Deu_251_Inf_Schwere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 220*10, function()  RunSpawn("Player", {"Deu_Panzer_IVe", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 240*10, function()  RunSpawn("Player", {"Deu_IV_D", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 250*10, function()  RunSpawn("Player", {"DEU_III_i", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 270*10, function()  RunSpawn("Player", {"Deu_stugIIIb", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 360*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_Versorger", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_treibstoff", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AddBonus(1, 8, 1, -1, -1)
		AddBonus(1, 8, 1, -1, -1)
	end
	if msd_vars.A_Zhler == 22  then
		mission.OutMessage(100015)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.CameraAt({392.741852, 2.998398, -491.015320}, 47.172245, -15.749211, 122.137733, 3.00)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 0*10, function()  RunSpawn("Player", {"Deu_Krad", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 10*10, function()  RunSpawn("Player", {"Deu_231", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  RunSpawn("Player", {"Deu_Infantrie_Sonder", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 50*10, function()  RunSpawn("Player", {"Deu_Scharf", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 5) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 90*10, function()  RunSpawn("Player", {"Deu_Opel_MG", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 100*10, function()  RunSpawn("Player", {"Deu_LKW_Inf_Sanitäter", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 140*10, function()  RunSpawn("Player", {"Deu_251_Inf_Pioniere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 150*10, function()  RunSpawn("Player", {"Deu_251_Infantrie_Schuss", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 40) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 160*10, function()  RunSpawn("Player", {"Deu_250_Inf_Besatzungen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 30) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 180*10, function()  RunSpawn("Player", {"Deu_250_Inf_Mechaniker", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 190*10, function()  RunSpawn("Player", {"Deu_251_Inf_Schwere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 220*10, function()  RunSpawn("Player", {"Deu_Panzer_IVe", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 240*10, function()  RunSpawn("Player", {"Deu_IV_D", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 250*10, function()  RunSpawn("Player", {"DEU_III_i", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 270*10, function()  RunSpawn("Player", {"Deu_stugIIIb", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 360*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_Versorger", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_treibstoff", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AddBonus(1, 8, 1, -1, -1)
		AddBonus(1, 8, 1, -1, -1)
	end
	if msd_vars.A_Zhler == 28  then
		mission.OutMessage(100015)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.CameraAt({392.741852, 2.998398, -491.015320}, 47.172245, -15.749211, 122.137733, 3.00)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 0*10, function()  RunSpawn("Player", {"Deu_Krad", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 10*10, function()  RunSpawn("Player", {"Deu_231", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  RunSpawn("Player", {"Deu_Infantrie_Sonder", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 50*10, function()  RunSpawn("Player", {"Deu_Scharf", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 5) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 90*10, function()  RunSpawn("Player", {"Deu_Opel_MG", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 100*10, function()  RunSpawn("Player", {"Deu_LKW_Inf_Sanitäter", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 140*10, function()  RunSpawn("Player", {"Deu_251_Inf_Pioniere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 150*10, function()  RunSpawn("Player", {"Deu_251_Infantrie_Schuss", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 40) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 160*10, function()  RunSpawn("Player", {"Deu_250_Inf_Besatzungen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 30) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 180*10, function()  RunSpawn("Player", {"Deu_250_Inf_Mechaniker", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 190*10, function()  RunSpawn("Player", {"Deu_251_Inf_Schwere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 220*10, function()  RunSpawn("Player", {"Deu_Panzer_IVe", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 240*10, function()  RunSpawn("Player", {"Deu_IV_D", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 250*10, function()  RunSpawn("Player", {"DEU_III_i", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 270*10, function()  RunSpawn("Player", {"Deu_stugIIIb", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 360*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_Versorger", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_treibstoff", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AddBonus(1, 8, 1, -1, -1)
		AddBonus(1, 8, 1, -1, -1)
	end
	if msd_vars.A_Zhler == 34  then
		mission.OutMessage(100015)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.CameraAt({392.741852, 2.998398, -491.015320}, 47.172245, -15.749211, 122.137733, 3.00)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 0*10, function()  RunSpawn("Player", {"Deu_Krad", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 10*10, function()  RunSpawn("Player", {"Deu_231", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  RunSpawn("Player", {"Deu_Infantrie_Sonder", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 50*10, function()  RunSpawn("Player", {"Deu_Scharf", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 5) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 90*10, function()  RunSpawn("Player", {"Deu_Opel_MG", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 100*10, function()  RunSpawn("Player", {"Deu_LKW_Inf_Sanitäter", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 140*10, function()  RunSpawn("Player", {"Deu_251_Inf_Pioniere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 150*10, function()  RunSpawn("Player", {"Deu_251_Infantrie_Schuss", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 40) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 160*10, function()  RunSpawn("Player", {"Deu_250_Inf_Besatzungen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 30) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 180*10, function()  RunSpawn("Player", {"Deu_250_Inf_Mechaniker", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 190*10, function()  RunSpawn("Player", {"Deu_251_Inf_Schwere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 220*10, function()  RunSpawn("Player", {"Deu_Panzer_IVe", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 240*10, function()  RunSpawn("Player", {"Deu_IV_D", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 250*10, function()  RunSpawn("Player", {"DEU_III_i", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 270*10, function()  RunSpawn("Player", {"Deu_stugIIIb", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 360*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_Versorger", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_treibstoff", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AddBonus(1, 8, 1, -1, -1)
		AddBonus(1, 8, 1, -1, -1)
	end
	if msd_vars.A_Zhler == 40  then
		mission.OutMessage(100015)
		msd_vars.A_Zhler = msd_vars.A_Zhler + 1
		mission.CameraAt({392.741852, 2.998398, -491.015320}, 47.172245, -15.749211, 122.137733, 3.00)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 0*10, function()  RunSpawn("Player", {"Deu_Krad", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 10*10, function()  RunSpawn("Player", {"Deu_231", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 20*10, function()  RunSpawn("Player", {"Deu_Infantrie_Sonder", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 40*10, function()  RunSpawn("Player", {"Deu_Opel_Inf_Schützen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 50*10, function()  RunSpawn("Player", {"Deu_Scharf", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 5) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 90*10, function()  RunSpawn("Player", {"Deu_Opel_MG", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 100*10, function()  RunSpawn("Player", {"Deu_LKW_Inf_Sanitäter", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 140*10, function()  RunSpawn("Player", {"Deu_251_Inf_Pioniere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 50) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 150*10, function()  RunSpawn("Player", {"Deu_251_Infantrie_Schuss", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 40) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 160*10, function()  RunSpawn("Player", {"Deu_250_Inf_Besatzungen", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 30) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 180*10, function()  RunSpawn("Player", {"Deu_250_Inf_Mechaniker", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 25) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 190*10, function()  RunSpawn("Player", {"Deu_251_Inf_Schwere", }, "Spawn_00", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 220*10, function()  RunSpawn("Player", {"Deu_Panzer_IVe", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 240*10, function()  RunSpawn("Player", {"Deu_IV_D", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 250*10, function()  RunSpawn("Player", {"DEU_III_i", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 20) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 270*10, function()  RunSpawn("Player", {"Deu_stugIIIb", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 360*10, function()  RunSpawn("Player", {"Deu_infantrie_leicht", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_Versorger", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AIparts:AddOneTime(AIparts:GetUniqueId("TIMER_DO_"), 370*10, function()  RunSpawn("Player", {"Deu_treibstoff", }, "Spawn_06", "Bunkereinheiten", "", true, true, {}, false, 10) end)
		AddBonus(1, 8, 1, -1, -1)
		AddBonus(1, 8, 1, -1, -1)
	end
end

function func_C_Fabrikteile()
	if IsObjectiveActive("C_Fabrik_Teile") and not IsObjectiveCompleted("C_Fabrik_Teile", "Player") and msd_vars.Fabrikteile == 0 then
		RunSpawn("Enemy", {"Rus_3Panzer", }, "Spawn_02", "C_Fabrikteile", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_6_mann", }, "Spawn_02", "C_Fabrikteile", "", true, true, {}, false, 10)
		msd_vars.Fabrikteile = msd_vars.Fabrikteile + 1
	end
	if IsObjectiveActive("C_Fabrik_Teile") and not IsObjectiveCompleted("C_Fabrik_Teile", "Player") and msd_vars.Fabrikteile == 1 then
		RunSpawn("Enemy", {"Rus_3_Gewehr", }, "Spawn_02", "C_Fabrikteile", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_Pak_7,6", }, "Spawn_02", "C_Fabrikteile", "", true, true, {}, false, 10)
		msd_vars.Fabrikteile = msd_vars.Fabrikteile + 1
	end
	if IsObjectiveActive("C_Fabrik_Teile") and not IsObjectiveCompleted("C_Fabrik_Teile", "Player") and msd_vars.Fabrikteile == 2 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_Fabrikteile", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_MG", }, "Spawn_02", "C_Fabrikteile", "", true, true, {}, false, 10)
		msd_vars.Fabrikteile = msd_vars.Fabrikteile + 1
	end
	if IsObjectiveActive("C_Fabrikle") and not IsObjectiveCompleted("C_Fabrikle", "Player") and msd_vars.Fabrikle == 1 then
		RunSpawn("Enemy", {"Rus_2_smg", }, "Spawn_02", "C_Fabrikle", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_Pak_7,6", }, "Spawn_02", "C_Fabrikle", "", true, true, {}, false, 10)
		msd_vars.Fabrikle = msd_vars.Fabrikle + 1
	end
	if IsObjectiveActive("C_Fabrikle") and not IsObjectiveCompleted("C_Fabrikle", "Player") and msd_vars.Fabrikle == 2 then
		RunSpawn("Enemy", {"Rus_2_smg", }, "Spawn_02", "C_Fabrikle", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_Pak_7,6", }, "Spawn_02", "C_Fabrikle", "", true, true, {}, false, 10)
		msd_vars.Fabrikle = msd_vars.Fabrikle + 1
	end
	if GroupSeeEnemyNow("C_Fabrikle") then
		SetGroupBehaviour("C_Fabrikle", true, nil, true, true, nil, true, true, true, true, nil)
		UnloadTransports("C_Fabrikle")
	end
	if NumGroupUnits("C_Fabrikle", 0, false, false, false) > 0 then
		MoveGroupToZone("C_Fabrikle", "C_21", true, false)
	end
end

function func_C_Fabrikle()
	if IsObjectiveActive("C_Fabrikle") and not IsObjectiveCompleted("C_Fabrikle", "Player") and msd_vars.Fabrikle == 0 then
		RunSpawn("Enemy", {"Rus_3Panzer", }, "Spawn_02", "C_Fabrikle", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_Pak_7,6", }, "Spawn_02", "C_Fabrikle", "", true, true, {}, false, 10)
		msd_vars.Fabrikle = msd_vars.Fabrikle + 1
	end
	if IsObjectiveActive("C_Fabrikle") and not IsObjectiveCompleted("C_Fabrikle", "Player") and msd_vars.Fabrikle == 1 then
		RunSpawn("Enemy", {"Rus_2_smg", }, "Spawn_02", "C_Fabrikle", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_6_mann", }, "Spawn_02", "C_Fabrikle", "", true, true, {}, false, 10)
		msd_vars.Fabrikle = msd_vars.Fabrikle + 1
	end
	if IsObjectiveActive("C_Fabrikle") and not IsObjectiveCompleted("C_Fabrikle", "Player") and msd_vars.Fabrikle == 2 then
		RunSpawn("Enemy", {"Rus_10_Mann", }, "Spawn_02", "C_Fabrikle", "", true, true, {}, false, 10)
		RunSpawn("Enemy", {"Rus_Su76", }, "Spawn_02", "C_Fabrikle", "", true, true, {}, false, 10)
		msd_vars.Fabrikle = msd_vars.Fabrikle + 1
	end
	if GroupSeeEnemyNow("C_Fabrikle") then
		SetGroupBehaviour("C_Fabrikle", true, nil, true, true, nil, true, true, true, true, nil)
		UnloadTransports("C_Fabrikle")
	end
	if NumGroupUnits("C_Fabrikle", 0, false, false, false) > 0 then
		MoveGroupToZone("C_Fabrikle", "C_11_Fabrik", true, false)
	end
end

