// ****************************** // Sgt.Angel's Spawn Protection Mod // for Counter-Strike: Source // www.alastairq.co.uk/eventscripts // ****************************** block load { // Enable Spawn Protection Mod? // 1 = Enabled // 0 = Disabled es_setinfo spawnprotect_enable 1 // Spawn Protection Time // Example: 10 = 10 Seconds es_setinfo spawnprotect_spawntime 10 // Colour Change // 1 = Change player colour when under Spawn Protection // 0 = No colour change when under Spawn Protection es_setinfo spawnprotect_colour 1 // Punish Spawn Attacker // 0 = No Punishment // 1 = Slay Attacker es_setinfo spawnprotect_punish 1 // Announce Spawn Protection is Enabled/Disabled // 1 = Enabled // 0 = Disabled es_setinfo spawnprotect_announce 1 // Announcement Method // 1 = Broadcasts a text message in the chat area // 2 = Broadcasts a text message in the centre of the screen es_setinfo spawnprotect_announce_method 1 // Filter Maps // 0 = Enable Spawn Protection for all maps // 1 = Only enable Spawn Protection for maps with 'surf' found in the name es_setinfo spawnprotect_filter 0 // Enable Warmup Timer // 1 = Enables Warmup Timer at the start of a new map // 0 = Disables Warmup Timer es_setinfo spawnprotect_warmup 1 // Warmup Timer Time // Example: 20 = 20 Seconds es_setinfo spawnprotect_warmuptime 20 // DO NOT EDIT ANYTHING BELOW UNLESS YOU KNOW WHAT YOUR DOING es_math spawnprotect_spawntime + server_var(mp_freezetime) es_setinfo spawnprotect_roundstart 0 es_setinfo spawnprotect_player 0 es_setinfo spawnprotect_startprotection 1 es_doblock corelib/noisy_on repeat create warmuptimer "es_xdoblock spawnprotect/warmup_msg" repeat create spawnprotecttimer "es_xdoblock spawnprotect/stop" es_makepublic spawnprotect_enable es_msg #multi #green[Spawn Protect]#default Spawn Protection Mod is now enabled } block unload { es_doblock corelib/noisy_off if(server_var(spawnprotect_roundstart) = 1) do { foreach player spawnprotect_player #all "es playerset health server_var(spawnprotect_player) 100" foreach player spawnprotect_player #all "es playerset color server_var(spawnprotect_player) 255 255 255" } es_msg #multi #green[Spawn Protect]#default Spawn Protection Mod is now disabled } event es_map_start { if(server_var(spawnprotect_enable) = 1) do { if(server_var(spawnprotect_filter) = 1) do { if("surf" in event_var(mapname)) do { if(server_var(spawnprotect_warmup) = 1) do { es_doblock spawnprotect/warmup_start } else do { es_doblock spawnprotect/enable } } else do { es_doblock spawnprotect/disable } } else do { if(server_var(spawnprotect_warmup) = 1) do { es_doblock spawnprotect/warmup_start } else do { es_doblock spawnprotect/enable } } } else do { es_doblock spawnprotect/disable } } block warmup_start { es_setinfo warmuptimer_time server_var(spawnprotect_warmuptime) repeat start warmuptimer 1 } block warmup_msg { es_centermsg server_var(warmuptimer_time) seconds left of warmup es_xmath warmuptimer_time - 1 if(server_var(warmuptimer_time) = 0) do { es_doblock spawnprotect/warmup_end } } block warmup_end { repeat delete warmuptimer es_doblock spawnprotect/enable } block enable { es_setinfo spawnprotect_startprotection 1 mp_restartgame 1 } block disable { es_setinfo spawnprotect_startprotection 0 } event player_activate { if(server_var(spawnprotect_enable) = 1) do { if(server_var(spawnprotect_startprotection) = 1) do { es_tell event_var(userid) #multi #green[Spawn Protect]#default This server is enabled with Spawn Protection Mod es_tell event_var(userid) #multi #green[Spawn Protect]#default Made by Sgt.Angel } else do { es_tell event_var(userid) #multi #green[Spawn Protect]#default This server has Spawn Protection Mod installed but is disabled because.. es_tell event_var(userid) #multi #green[Spawn Protect]#default 'surf' was not found in the mapname es_tell event_var(userid) #multi #green[Spawn Protect]#default Made by Sgt.Angel } } } event round_start { if(server_var(spawnprotect_enable) = 1) do { if(server_var(spawnprotect_startprotection) = 1) do { foreach player spawnprotect_player #all "es playerset health server_var(spawnprotect_player) 500" if(server_var(spawnprotect_colour) = 1) do { foreach player spawnprotect_player #all "es playerset color server_var(spawnprotect_player) 0 255 0" } es repeat start spawnprotecttimer server_var(spawnprotect_spawntime) 1 es_setinfo spawnprotect_roundstart 1 if(server_var(spawnprotect_announce) = 1) do { if(server_var(spawnprotect_announce_method) = 1) do { es_msg #multi #green[Spawn Protect]#default You are protected from spawn attacking! } else do { es_centermsg You are protected from spawn attacking! } } } } } event player_spawn { if(server_var(spawnprotect_enable) = 1) do { if(server_var(spawnprotect_roundstart) = 1) do { es playerset health event_var(userid) 500 if(server_var(spawnprotect_colour) = 1) do { es playerset color event_var(userid) 0 255 0 } if(server_var(spawnprotect_announce) = 1) do { if(server_var(spawnprotect_announce_method) = 1) do { es_tell event_var(userid) #multi #green[Spawn Protect]#default You are protected from spawn attacking! } else do { es_centermsg You are protected from spawn attacking! } } } } } event player_hurt { if(server_var(spawnprotect_roundstart) = 1) do { es playerset health event_var(userid) 500 if(server_var(spawnprotect_punish) = 1) do { es es_xsexec event_var(attacker) kill es_msg #multi #green[Spawn Protect]#default event_var(es_attackername) was slayed for spawn attacking! } } } block stop { es_setinfo spawnprotect_roundstart 0 foreach player spawnprotect_player #all "es playerset health server_var(spawnprotect_player) 100" if(server_var(spawnprotect_colour) = 1) do { foreach player spawnprotect_player #all "es playerset color server_var(spawnprotect_player) 255 255 255" } if(server_var(spawnprotect_announce) = 1) do { if(server_var(spawnprotect_announce_method) = 1) do { foreach player spawnprotect_player #all "es_tell server_var(spawnprotect_player) #multi #green[Spawn Protect]#default You are no longer protected!" } else do { es_centermsg You are no longer protected! } } }