Advertisement
BERKYT

Wave of map Dotahammer

Mar 20th, 2021 (edited)
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 19.50 KB | None | 0 0
  1. --Script By: BERKYT
  2. --Links: VK: https://vk.com/b_e_r_k_y_t Discord: https://discord.gg/amMreCC YouTube: https://www.youtube.com/channel/UCaPBjmrAYO6p-ksHNaymwLg?view_as=subscriber
  3. --The script is distributed freely, provided that the author of the script is indicated - BERKYT
  4.  
  5. import("ScarUtil.scar")
  6. import("WXPScarUtil.scar")
  7.  
  8. function OnGameSetup()
  9.    
  10.     --Players
  11.     g_Player1 = World_GetPlayerAt(0)
  12.     g_Player_attack_1 = World_GetPlayerAt(6)
  13.     g_Player_attack_2 = World_GetPlayerAt(7)
  14.     g_Player3 = World_GetPlayerAt(2)
  15.    
  16.     Setup_Player(6, "BERKYT", "space_marine_race", 0)
  17.     Setup_Player(7, "BERKYT", "chaos_marine_race", 1)
  18.                
  19.     Misc_PlayerTeamColor(g_Player_attack_1, "default_1")
  20.     Misc_PlayerTeamColor(g_Player_attack_2, "default_5")
  21.     --Warriors
  22.     g_light_infantry = "guard_squad_guardsmen"
  23.     g_base_warrior = "guard_squad_hellhound"
  24.     g_base_warrior_2 = "guard_squad_guardsmen"
  25.     g_support_warrior = "guard_squad_psyker"
  26.     --g_support_warrior_2 = "guard_squad_kasrkin"
  27.     g_support_warrior_2 = "space_marine_squad_tactical"
  28.     g_heavy_support_warrior = "guard_squad_ogryns"
  29.     g_heavy_warrior = "guard_squad_sentinel_advance_sp"
  30.     --g_super_heavy_warrior = "guard_squad_ogryns"
  31.     g_super_heavy_warrior = "space_marine_squad_assault"
  32.     g_light_tank = "guard_squad_chimera"
  33.     g_light_tank_2 = "guard_squad_basilisk"
  34.     g_heavy_tank = "guard_squad_lemanruss"
  35.     g_relic_warrior = "guard_squad_baneblade"
  36.     g_hero = "guard_squad_command_squad"
  37.     g_hero_2 = "guard_squad_assassin"
  38.    
  39.     --Reinforcement warriors
  40.     g_reinforcement_light_warrior = "guard_squad_guardsmen"
  41.     g_reinforcement_heavy_warrior = "guard_squad_kasrkin"
  42.     g_reinforcement_tank = "guard_squad_lemanruss"
  43.    
  44.     --Interval
  45.     g_interval = 5
  46.     g_interval_s_s = 4 * 60
  47.     --g_interval_s_s = 15
  48.    
  49.     --Squads
  50.     g_sg_wave_troops_team_1_1 = "sg_wave_troops_1_1"
  51.     g_sg_wave_troops_team_1_2 = "sg_wave_troops_1_2"
  52.     g_sg_wave_troops_team_1_3 = "sg_wave_troops_1_3"
  53.    
  54.     g_sg_wave_troops_team_2_1 = "sg_wave_troops_2_1"
  55.     g_sg_wave_troops_team_2_2 = "sg_wave_troops_2_2"
  56.     g_sg_wave_troops_team_2_3 = "sg_wave_troops_2_3"
  57.    
  58.     --Markers
  59.     g_mkr_spawn_wave = "mkr_spawn_from"
  60.     g_mkr_attack_wave_team_1 = "mkr_Attack_wave_1_2"   
  61.    
  62.     --Integer
  63.     g_timer_wave_team_1_1 = 0
  64.     g_timer_wave_team_1_2 = 0
  65.     g_timer_wave_team_1_3 = 0
  66.    
  67.     g_timer_wave_team_2_1 = 0
  68.     g_timer_wave_team_2_2 = 0
  69.     g_timer_wave_team_2_3 = 0
  70.    
  71.     g_timer_s_s_team_1_1 = 0
  72.     g_timer_s_s_team_1_2 = 0
  73.     g_timer_s_s_team_1_3 = 0
  74.    
  75.     g_timer_s_s_team_2_1 = 0
  76.     g_timer_s_s_team_2_2 = 0
  77.     g_timer_s_s_team_2_3 = 0
  78.    
  79.     g_count_waves = 20
  80.    
  81.     g_global_timer = 0
  82.     --g_global_timer = 30 * 60
  83.    
  84.     --Boolean
  85.     g_check_exists_wave_team_1_1 = false
  86.     g_check_exists_wave_team_1_2 = false
  87.     g_check_exists_wave_team_1_3 = false
  88.    
  89.     g_check_exists_wave_team_2_1 = false
  90.     g_check_exists_wave_team_2_2 = false
  91.     g_check_exists_wave_team_2_3 = false
  92.    
  93.     g_check_exists_wave_1 = false
  94.    
  95.     g_check_s_s_team_1 = false
  96.     g_check_s_s_team_2 = false
  97.    
  98.     g_check_s_s_bool_team_1 = false
  99.     g_check_s_s_bool_team_2 = false
  100.    
  101.     g_Check_See_Sp_1 = false
  102.    
  103.    
  104.     --Varios
  105.     g_check = 0
  106.    
  107.     g_check_s_s_hp_team_1_1 = nil
  108.     g_check_s_s_hp_team_1_2 = nil
  109.     g_check_s_s_hp_team_1_3 = nil
  110.    
  111.     g_check_s_s_hp_team_2_1 = nil
  112.     g_check_s_s_hp_team_2_2 = nil
  113.     g_check_s_s_hp_team_2_3 = nil
  114.    
  115.     g_check_s_s_hp_2 = nil
  116.     g_sgroupid = nil
  117.    
  118. end
  119.  
  120. function OnInit()
  121.    
  122.     Delete_Hq()
  123.     Rule_SetupMusicPlaylist()
  124.     --FOW_RevealAll()
  125.     --Player_SetAllResources(g_Player1, 250000, 250000)
  126.    
  127.     Fade_Start(3, true)
  128.    
  129.     Cpu_Enable(g_Player_attack_1, false)
  130.     Cpu_Enable(g_Player_attack_2, false)
  131.    
  132.     Rule_AddInterval(Wave, 1)
  133.     Rule_AddInterval(Timer, 1)
  134.     Rule_AddInterval(CheckingSquadStuck, 1)
  135.     Rule_AddInterval(Checking_Triggers, 1)
  136.    
  137. end
  138.  
  139. Scar_AddInit(OnInit)
  140.  
  141.  
  142. function Checking_Triggers()
  143.     if (playerHasAnySquadAtMarker(g_Player_attack_1, "mkr_Point_1")) then
  144.         Cmd_AttackMoveMarker(g_sg_wave_troops_team_1_2, "mkr_Attack_wave_1_2") 
  145.     end
  146.    
  147.     if (playerHasAnySquadAtMarker(g_Player_attack_1, "mkr_Point_2")) then
  148.         Cmd_AttackMoveMarker(g_sg_wave_troops_team_1_3, "mkr_Attack_wave_1_3") 
  149.     end
  150.    
  151.     if (playerHasAnySquadAtMarker(g_Player_attack_2, "mkr_Point_1")) then
  152.         Cmd_AttackMoveMarker(g_sg_wave_troops_team_2_2, "mkr_Attack_wave_2_2") 
  153.     end
  154.    
  155.     if (playerHasAnySquadAtMarker(g_Player_attack_2, "mkr_Point_2")) then
  156.         Cmd_AttackMoveMarker(g_sg_wave_troops_team_2_3, "mkr_Attack_wave_2_3") 
  157.     end
  158. end
  159.  
  160. function Wave()
  161.  
  162.     if g_check_exists_wave_team_1_1 and g_timer_wave_team_1_1 == g_interval and EGroup_GetAvgHealth("Eg_Barrak_team_1") ~= 0 then
  163.        
  164.         g_check_s_s_team_1 = true
  165.         g_check_s_s_bool_team_1 = true
  166.         g_check_exists_wave_team_1_1 = false
  167.        
  168.         g_timer_s_s_team_1_1 = 0
  169.        
  170.         SGroup_CreateIfNotFound(g_sg_wave_troops_team_1_1)
  171.         if SGroup_GetAvgHealth(g_sg_wave_troops_team_1_1) == 0 then
  172.        
  173.             Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_1, g_support_warrior_2, "mkr_Spawn_wave_1",1 + g_check, 999)
  174.             Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_1, g_super_heavy_warrior, "mkr_Spawn_wave_1", 2 + g_check, 999)
  175.            
  176.             if g_global_timer > 5 * 60 then
  177.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_1, "space_marine_squad_dreadnought", "mkr_Spawn_wave_1",1, 999)
  178.             end
  179.            
  180.             if g_global_timer > 10 * 60 then
  181.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_1, "space_marine_squad_predator", "mkr_Spawn_wave_1",1, 999)
  182.             end
  183.            
  184.             if g_global_timer > 30 * 60 then
  185.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_1, "space_marine_squad_grey_knights", "mkr_Spawn_wave_1",1, 999)
  186.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_1, "space_marine_squad_land_raider", "mkr_Spawn_wave_1",1, 999)
  187.             end
  188.             SGroup_AddLeaders(g_sg_wave_troops_team_1_1)
  189.             Cmd_AttackMoveMarker(g_sg_wave_troops_team_1_1, "mkr_Attack_wave_1_1") 
  190.         end
  191.     end
  192.    
  193.     if g_check_exists_wave_team_1_2 and g_timer_wave_team_1_2 == g_interval and EGroup_GetAvgHealth("Eg_Barrak_team_1") ~= 0 then
  194.    
  195.         g_check_s_s_team_1 = true
  196.         g_check_s_s_bool_team_1 = true
  197.         g_check_exists_wave_team_1_2 = false
  198.        
  199.         g_timer_s_s_team_1_2 = 0
  200.         SGroup_CreateIfNotFound(g_sg_wave_troops_team_1_2)
  201.         if SGroup_GetAvgHealth(g_sg_wave_troops_team_1_2) == 0 then
  202.        
  203.             Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_2, g_support_warrior_2, "mkr_Spawn_wave_1",1 + g_check, 999)
  204.             Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_2, g_super_heavy_warrior, "mkr_Spawn_wave_1", 2 + g_check, 999)
  205.            
  206.             if g_global_timer > 5 * 60 then
  207.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_2, "space_marine_squad_dreadnought", "mkr_Spawn_wave_1",1, 999)
  208.             end
  209.            
  210.             if g_global_timer > 10 * 60 then
  211.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_2, "space_marine_squad_predator", "mkr_Spawn_wave_1",1, 999)
  212.             end
  213.            
  214.             if g_global_timer > 30 * 60 then
  215.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_2, "space_marine_squad_grey_knights", "mkr_Spawn_wave_1",1, 999)
  216.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_2, "space_marine_squad_land_raider", "mkr_Spawn_wave_1",1, 999)
  217.             end
  218.             SGroup_AddLeaders(g_sg_wave_troops_team_1_2)
  219.             Cmd_AttackMoveMarker(g_sg_wave_troops_team_1_2, "mkr_Point_1")
  220.         end    
  221.     end
  222.        
  223.     if g_check_exists_wave_team_1_3 and g_timer_wave_team_1_3 == g_interval and EGroup_GetAvgHealth("Eg_Barrak_team_1") ~= 0  then
  224.    
  225.         g_check_s_s_team_1 = true
  226.         g_check_s_s_bool_team_1 = true
  227.         g_check_exists_wave_team_1_3 = false
  228.        
  229.         g_timer_s_s_team_1_3 = 0
  230.         SGroup_CreateIfNotFound(g_sg_wave_troops_team_1_3)
  231.         if SGroup_GetAvgHealth(g_sg_wave_troops_team_1_3) == 0 then
  232.  
  233.             Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_3, g_support_warrior_2, "mkr_Spawn_wave_1",1 + g_check, 999)
  234.             Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_3, g_super_heavy_warrior, "mkr_Spawn_wave_1", 2 + g_check, 999)
  235.            
  236.             if g_global_timer > 5 * 60 then
  237.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_3, "space_marine_squad_dreadnought", "mkr_Spawn_wave_1",1, 999)
  238.             end
  239.                    
  240.             if g_global_timer > 10 * 60 then
  241.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_3, "space_marine_squad_predator", "mkr_Spawn_wave_1",1, 999)
  242.             end
  243.            
  244.             if g_global_timer > 30 * 60 then
  245.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_3, "space_marine_squad_grey_knights", "mkr_Spawn_wave_1",1, 999)
  246.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_1, g_sg_wave_troops_team_1_3, "space_marine_squad_land_raider", "mkr_Spawn_wave_1",1, 999)
  247.             end
  248.            
  249.             SGroup_AddLeaders(g_sg_wave_troops_team_1_3)
  250.             Cmd_AttackMoveMarker(g_sg_wave_troops_team_1_3, "mkr_Point_2")
  251.         end
  252.        
  253.     end
  254.    
  255.     if g_check_exists_wave_team_2_1 and g_timer_wave_team_2_1 == g_interval and EGroup_GetAvgHealth("Eg_Barrak_team_2") ~= 0 then
  256.        
  257.         g_check_s_s_team_2 = true
  258.         g_check_s_s_bool_team_2 = true
  259.         g_check_exists_wave_team_2_1 = false
  260.        
  261.         g_timer_s_s_team_2_1 = 0
  262.        
  263.         SGroup_CreateIfNotFound(g_sg_wave_troops_team_2_1)
  264.         if SGroup_GetAvgHealth(g_sg_wave_troops_team_2_1) == 0 then
  265.        
  266.             Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_1, "chaos_marine_squad", "mkr_Spawn_wave_2",1 + g_check, 999)
  267.             Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_1, "chaos_squad_raptor", "mkr_Spawn_wave_2", 2 + g_check, 999)
  268.            
  269.             if g_global_timer > 5 * 60 then
  270.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_1, "chaos_squad_dreadnought", "mkr_Spawn_wave_2",1, 999)
  271.             end
  272.            
  273.             if g_global_timer > 10 * 60 then
  274.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_1, "chaos_squad_predator", "mkr_Spawn_wave_2",1, 999)
  275.             end
  276.            
  277.             if g_global_timer > 30 * 60 then
  278.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_1, "chaos_squad_khorne_berserker", "mkr_Spawn_wave_2",1, 999)
  279.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_1, "chaos_squad_bloodthirster", "mkr_Spawn_wave_2",1, 999)
  280.             end
  281.            
  282.             SGroup_AddLeaders(g_sg_wave_troops_team_2_1)
  283.             Cmd_AttackMoveMarker(g_sg_wave_troops_team_2_1, "mkr_Attack_wave_2_1") 
  284.         end
  285.     end
  286.    
  287.     if g_check_exists_wave_team_2_2 and g_timer_wave_team_2_2 == g_interval and EGroup_GetAvgHealth("Eg_Barrak_team_2") ~= 0  then
  288.        
  289.         g_check_s_s_team_2 = true
  290.         g_check_s_s_bool_team_2 = true
  291.         g_check_exists_wave_team_2_2 = false
  292.        
  293.         g_timer_s_s_team_2_2 = 0
  294.        
  295.         SGroup_CreateIfNotFound(g_sg_wave_troops_team_2_2)
  296.         if SGroup_GetAvgHealth(g_sg_wave_troops_team_2_2) == 0 then
  297.        
  298.             Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_2, "chaos_marine_squad", "mkr_Spawn_wave_2",1 + g_check, 999)
  299.             Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_2, "chaos_squad_raptor", "mkr_Spawn_wave_2", 2 + g_check, 999)
  300.            
  301.             if g_global_timer > 5 * 60 then
  302.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_2, "chaos_squad_dreadnought", "mkr_Spawn_wave_2",1, 999)
  303.             end
  304.                
  305.             if g_global_timer > 10 * 60 then
  306.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_2, "chaos_squad_predator", "mkr_Spawn_wave_2",1, 999)
  307.             end
  308.            
  309.             if g_global_timer > 30 * 60 then
  310.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_2, "chaos_squad_khorne_berserker", "mkr_Spawn_wave_2",1, 999)
  311.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_2, "chaos_squad_bloodthirster", "mkr_Spawn_wave_2",1, 999)
  312.             end
  313.                
  314.             SGroup_AddLeaders(g_sg_wave_troops_team_2_2)
  315.             Cmd_AttackMoveMarker(g_sg_wave_troops_team_2_2, "mkr_Point_1")
  316.         end    
  317.     end
  318.    
  319.     if g_check_exists_wave_team_2_3 and g_timer_wave_team_2_3 == g_interval and EGroup_GetAvgHealth("Eg_Barrak_team_2") ~= 0  then
  320.        
  321.         g_check_s_s_team_2 = true
  322.         g_check_s_s_bool_team_2 = true
  323.         g_check_exists_wave_team_2_3 = false
  324.        
  325.         g_timer_s_s_team_2_3 = 0
  326.        
  327.         SGroup_CreateIfNotFound(g_sg_wave_troops_team_2_3)
  328.         if SGroup_GetAvgHealth(g_sg_wave_troops_team_2_3) == 0 then
  329.        
  330.             Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_3, "chaos_marine_squad", "mkr_Spawn_wave_2",1 + g_check, 999)
  331.             Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_3, "chaos_squad_raptor", "mkr_Spawn_wave_2", 2 + g_check, 999)
  332.            
  333.             if g_global_timer > 5 * 60 then
  334.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_3, "chaos_squad_dreadnought", "mkr_Spawn_wave_2",1, 999)
  335.             end
  336.                    
  337.             if g_global_timer > 10 * 60 then
  338.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_3, "chaos_squad_predator", "mkr_Spawn_wave_2",1, 999)
  339.             end
  340.            
  341.             if g_global_timer > 30 * 60 then
  342.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_3, "chaos_squad_khorne_berserker", "mkr_Spawn_wave_2",1, 999)
  343.                 Util_CreateSquadsAtMarkerEx(g_Player_attack_2, g_sg_wave_troops_team_2_3, "chaos_squad_bloodthirster", "mkr_Spawn_wave_2",1, 999)
  344.             end
  345.            
  346.             SGroup_AddLeaders(g_sg_wave_troops_team_2_3)
  347.             Cmd_AttackMoveMarker(g_sg_wave_troops_team_2_3, "mkr_Point_2")
  348.         end
  349.        
  350.     end
  351.    
  352. end
  353.  
  354. function Timer()
  355.  
  356.     g_global_timer = g_global_timer + 1
  357.    
  358.            
  359.     if (math.mod(g_global_timer, 20 * 60) == 0) then
  360.         print("g_global_timer = "..g_global_timer)
  361.         g_check = g_check + 1
  362.     end
  363.    
  364.     SGroup_CreateIfNotFound(g_sg_wave_troops_team_1_1)
  365.    
  366.     if SGroup_GetAvgHealth(g_sg_wave_troops_team_1_1) == 0 then
  367.         g_check_exists_wave_team_1_1 = true
  368.         g_timer_wave_team_1_1 = g_timer_wave_team_1_1 + 1
  369.        
  370.         if g_timer_wave_team_1_1 > g_interval then
  371.             g_timer_wave_team_1_1 = 0
  372.         end
  373.     end
  374.    
  375.     SGroup_CreateIfNotFound(g_sg_wave_troops_team_1_2)
  376.    
  377.     if SGroup_GetAvgHealth(g_sg_wave_troops_team_1_2) == 0 then
  378.         g_check_exists_wave_team_1_2 = true
  379.         g_timer_wave_team_1_2 = g_timer_wave_team_1_2 + 1
  380.        
  381.         if g_timer_wave_team_1_2 > g_interval then
  382.             g_timer_wave_team_1_2 = 0
  383.         end
  384.     end
  385.    
  386.     SGroup_CreateIfNotFound(g_sg_wave_troops_team_1_3)
  387.    
  388.     if SGroup_GetAvgHealth(g_sg_wave_troops_team_1_3) == 0 then
  389.         g_check_exists_wave_team_1_3 = true
  390.         g_timer_wave_team_1_3 = g_timer_wave_team_1_3 + 1
  391.        
  392.         if g_timer_wave_team_1_3 > g_interval then
  393.             g_timer_wave_team_1_3 = 0
  394.         end
  395.     end
  396.    
  397.     SGroup_CreateIfNotFound(g_sg_wave_troops_team_2_1)
  398.    
  399.     if SGroup_GetAvgHealth(g_sg_wave_troops_team_2_1) == 0 then
  400.         g_check_exists_wave_team_2_1 = true
  401.         g_timer_wave_team_2_1 = g_timer_wave_team_2_1 + 1
  402.        
  403.         if g_timer_wave_team_2_1 > g_interval then
  404.             g_timer_wave_team_2_1 = 0
  405.         end
  406.     end
  407.        
  408.     SGroup_CreateIfNotFound(g_sg_wave_troops_team_2_2)
  409.    
  410.     if SGroup_GetAvgHealth(g_sg_wave_troops_team_2_2) == 0 then
  411.         g_check_exists_wave_team_2_2 = true
  412.         g_timer_wave_team_2_2 = g_timer_wave_team_2_2 + 1
  413.        
  414.         if g_timer_wave_team_2_2 > g_interval then
  415.             g_timer_wave_team_2_2 = 0
  416.         end
  417.     end
  418.    
  419.     SGroup_CreateIfNotFound(g_sg_wave_troops_team_2_3)
  420.    
  421.     if SGroup_GetAvgHealth(g_sg_wave_troops_team_2_3) == 0 then
  422.         g_check_exists_wave_team_2_3 = true
  423.         g_timer_wave_team_2_3 = g_timer_wave_team_2_3 + 1
  424.        
  425.         if g_timer_wave_team_2_3 > g_interval then
  426.             g_timer_wave_team_2_3 = 0
  427.         end
  428.     end
  429. end
  430.  
  431. function CheckingSquadStuck()
  432.  
  433.     if g_check_s_s_team_1 then
  434.         SGroup_CreateIfNotFound(g_sg_wave_troops_team_1_1)
  435.        
  436.         if SGroup_IsUnderAttack(g_sg_wave_troops_team_1_1, false) == false then
  437.             g_timer_s_s_team_1_1 = g_timer_s_s_team_1_1 + 1
  438.             if g_timer_s_s_team_1_1 == g_interval_s_s then
  439.                 g_check_s_s_team_1 = false
  440.                 SGroup_DestroyAllSquads(g_sg_wave_troops_team_1_1)
  441.             end
  442.         else
  443.             g_timer_s_s_team_1_1 = 0
  444.             g_check_s_s_hp_team_1_1 = SGroup_GetAvgHealth(g_sg_wave_troops_team_1_1)
  445.         end    
  446.        
  447.         SGroup_CreateIfNotFound(g_sg_wave_troops_team_1_2)
  448.        
  449.         if SGroup_IsUnderAttack(g_sg_wave_troops_team_1_2, false) == false then
  450.             g_timer_s_s_team_1_2 = g_timer_s_s_team_1_2 + 1
  451.             if g_timer_s_s_team_1_2 == g_interval_s_s then
  452.                 g_check_s_s_team_1 = false
  453.                 SGroup_DestroyAllSquads(g_sg_wave_troops_team_1_2)
  454.             end
  455.         else
  456.             g_timer_s_s_team_1_2 = 0
  457.             g_check_s_s_hp_team_1_2 = SGroup_GetAvgHealth(g_sg_wave_troops_team_1_2)
  458.         end    
  459.        
  460.         SGroup_CreateIfNotFound(g_sg_wave_troops_team_1_3)
  461.        
  462.         if SGroup_IsUnderAttack(g_sg_wave_troops_team_1_3, false) == false then
  463.             g_timer_s_s_team_1_3 = g_timer_s_s_team_1_3 + 1
  464.             if g_timer_s_s_team_1_3 == g_interval_s_s then
  465.                 g_check_s_s_team_1 = false
  466.                 SGroup_DestroyAllSquads(g_sg_wave_troops_team_1_3)
  467.             end
  468.         else
  469.             g_timer_s_s_team_1_3 = 0
  470.             g_check_s_s_hp_team_1_3 = SGroup_GetAvgHealth(g_sg_wave_troops_team_1_3)
  471.         end
  472.        
  473.     end
  474.    
  475.     if g_check_s_s_team_2 then
  476.         SGroup_CreateIfNotFound(g_sg_wave_troops_team_2_1)
  477.        
  478.         if SGroup_IsUnderAttack(g_sg_wave_troops_team_2_1, false) == false then
  479.             g_timer_s_s_team_2_1 = g_timer_s_s_team_2_1 + 1
  480.             if g_timer_s_s_team_2_1 == g_interval_s_s then
  481.                 g_check_s_s_team_2 = false
  482.                 SGroup_DestroyAllSquads(g_sg_wave_troops_team_2_1)
  483.             end
  484.         else
  485.             g_timer_s_s_team_2_1 = 0
  486.             g_check_s_s_hp_team_2_1 = SGroup_GetAvgHealth(g_sg_wave_troops_team_2_1)
  487.         end
  488.        
  489.         SGroup_CreateIfNotFound(g_sg_wave_troops_team_2_2)
  490.        
  491.         if SGroup_IsUnderAttack(g_sg_wave_troops_team_2_2, false) == false then
  492.             g_timer_s_s_team_2_2 = g_timer_s_s_team_2_2 + 1
  493.             if g_timer_s_s_team_2_2 == g_interval_s_s then
  494.                 g_check_s_s_team_2 = false
  495.                 SGroup_DestroyAllSquads(g_sg_wave_troops_team_2_2)
  496.             end
  497.         else
  498.             g_timer_s_s_team_2_2 = 0
  499.             g_check_s_s_hp_team_2_2 = SGroup_GetAvgHealth(g_sg_wave_troops_team_2_2)
  500.         end
  501.         SGroup_CreateIfNotFound(g_sg_wave_troops_team_2_3)
  502.        
  503.         if SGroup_IsUnderAttack(g_sg_wave_troops_team_2_3, false) == false then
  504.             g_timer_s_s_team_2_3 = g_timer_s_s_team_2_3 + 1
  505.             if g_timer_s_s_team_2_3 == g_interval_s_s then
  506.                 g_check_s_s_team_2 = false
  507.                 SGroup_DestroyAllSquads(g_sg_wave_troops_team_2_3)
  508.             end
  509.         else
  510.             g_timer_s_s_team_2_3 = 0
  511.             g_check_s_s_hp_team_2_3 = SGroup_GetAvgHealth(g_sg_wave_troops_team_2_3)
  512.         end
  513.     end
  514.    
  515. end
  516.  
  517. function Delete_Hq()
  518.  
  519.     local i1 = 0
  520.     local eg = "rjgrfjlrefvrfgftgb"
  521.     local sg = "brjrfgbkfgnf3243re"
  522.    
  523.     if (Marker_Exists("mkr_BERKYT_script_deleteEntities", "basic_marker")) then
  524.        
  525.         for i1 = 1, World_GetPlayerCount() do
  526.            
  527.             Player_GetAllEntitiesNearMarker(World_GetPlayerAt(i1 - 1), eg, "mkr_BERKYT_script_deleteEntities")
  528.            
  529.             EGroup_DestroyAllEntities(eg)
  530.             EGroup_Destroy(eg)
  531.         end
  532.        
  533.     else
  534.         print("<Berkyt's Map> (Error) Can't remove entities because special marker not exists!")
  535.     end
  536.    
  537.     if (Marker_Exists("mkr_BERKYT_script_deleteSquads", "basic_marker")) then
  538.        
  539.         for i1 = 1, World_GetPlayerCount() do
  540.            
  541.             Player_GetAllSquadsNearMarker(World_GetPlayerAt(i1 - 1), sg, "mkr_BERKYT_script_deleteSquads")
  542.            
  543.             SGroup_DestroyAllSquads(sg)
  544.             SGroup_Destroy(sg)
  545.         end
  546.        
  547.     else
  548.         print("<Berkyt's Map> (Error) Can't remove squads because special marker not exists!")
  549.     end
  550.    
  551. end
  552.  
  553.  
  554. function Rule_SetupMusicPlaylist()
  555.  
  556.     Util_MissionTitle("By: BERKYT")
  557.    
  558.     t_ambient_sound = {"ambient_desert"}
  559.    
  560.     Playlist_Manager( PC_Ambient, t_ambient_sound, true, true , {2, 4})
  561.    
  562.     --Util_CreateSquadsAtMarkerEx(g_Player1, "423423234423423645rttrh", "guard_squad_baneblade", "mkr_Spawn_wave_2",5, 999)
  563. end
  564.  
  565. function playerHasAnySquadAtMarker(playerId, mkr)
  566.     local sgName = "sg_phasam_17684187"
  567.  
  568.     SGroup_CreateIfNotFound(sgName)
  569.     SGroup_Clear(sgName)
  570.     Player_GetAllSquadsNearMarker(playerId, sgName, mkr)
  571.  
  572.     if (SGroup_Count(sgName) > 0) then
  573.         return true
  574.     end
  575.  
  576.     return false
  577. end
  578.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement