diff --git a/README.md b/README.md index a8eded13..5d70a27e 100644 --- a/README.md +++ b/README.md @@ -205,6 +205,7 @@ * Plane parts are shared in coop * Plane parts must be all acquired to craft * Plane fuel automatically picked up +* Players no longer respawn in the Acid Trap ### Buried * Power automatically on diff --git a/scripts/zm/main/_zm_reimagined.gsc b/scripts/zm/main/_zm_reimagined.gsc index 929c5c27..06bf3c10 100644 --- a/scripts/zm/main/_zm_reimagined.gsc +++ b/scripts/zm/main/_zm_reimagined.gsc @@ -14,15 +14,15 @@ main() init() { - thread onplayerconnect(); - setscoreboardcolumns_gametype(); set_lethal_grenade_init(); disable_solo_revive(); + prison_remove_acid_trap_player_spawn(); prison_plane_set_need_all_pieces(); prison_plane_set_pieces_shared(); + level thread onplayerconnect(); level thread post_all_players_spawned(); } @@ -4775,6 +4775,31 @@ town_move_staminup_machine() maps/mp/zombies/_zm_power::add_powered_item( maps/mp/zombies/_zm_power::perk_power_on, ::perk_power_off, maps/mp/zombies/_zm_power::perk_range, maps/mp/zombies/_zm_power::cost_low_if_local, 0, powered_on, use_trigger ); } +prison_remove_acid_trap_player_spawn() +{ + if(level.script != "zm_prison") + { + return; + } + + spawn_points = maps/mp/gametypes_zm/_zm_gametype::get_player_spawns_for_gametype(); + foreach(spawn_point in spawn_points) + { + if(spawn_point.script_noteworthy == "zone_cafeteria") + { + spawn_array = getstructarray( spawn_point.target, "targetname" ); + foreach(spawn in spawn_array) + { + if(spawn.origin == (2536, 9704, 1360)) + { + arrayremovevalue(spawn_array, spawn); + return; + } + } + } + } +} + prison_plane_set_need_all_pieces() { if(!(is_classic() && level.scr_zm_map_start_location == "prison"))