1
0
mirror of https://github.com/JezuzLizard/BO2-Reimagined.git synced 2025-06-10 23:27:57 -05:00

Die Rise: zombies killed by an elevator no longer respawn

Die Rise: add purchase cost to call elevators
This commit is contained in:
Jbleezy
2023-04-20 17:15:55 -07:00
parent 4c71bedfec
commit 0dd38e9641
3 changed files with 31 additions and 5 deletions

View File

@ -584,11 +584,13 @@
### Die Rise
* Removed key
* Elevators and escape pod can be called without key
* Added purchase cost to call elevators and escape pod
* Elevators can be locked at their current floor
* Escape pod can be used with any amount of players
* Escape pod can be called up or down
* Moved weapon locker to the downstairs fridge
* Quick Revive elevator randomizes with Speed Cola and Who's Who elevators
* Zombies killed by an elevator no longer respawn
* Zombies are no longer killed while spawning in a stationary elevator
* Zombies no longer spawn in the Upper Blue Highrise zone when in the Green Highrise zone
* Zombies no longer spawn in the zone next to the Lower Orange Highrise zone when in the Lower Orange Highrise zone while the debris is closed

View File

@ -374,9 +374,6 @@ watch_for_elevator_during_faller_spawn()
{
playfx( level._effect["zomb_gib"], self.origin );
if ( !( isdefined( self.has_been_damaged_by_player ) && self.has_been_damaged_by_player ) && !( isdefined( self.is_leaper ) && self.is_leaper ) )
level.zombie_total++;
if ( isdefined( self.is_leaper ) && self.is_leaper )
{
self maps\mp\zombies\_zm_ai_leaper::leaper_cleanup();

View File

@ -173,6 +173,7 @@ elevator_call()
trig.floor = flevel;
}
trig.cost = 250;
trig usetriggerrequirelookat();
trig sethintstring( &"ZOMBIE_NEED_POWER" );
}
@ -194,6 +195,7 @@ elevator_call_think()
while ( 1 )
{
cost_active = 0;
if ( !self.elevator.body.is_moving && self.elevator maps\mp\zm_highrise_elevators::elevator_is_on_floor( self.floor ) && !is_true( self.elevator.body.start_location_wait ) )
{
if ( !is_true( self.elevator.body.elevator_stop ) )
@ -207,7 +209,8 @@ elevator_call_think()
}
else
{
self sethintstring( &"ZM_HIGHRISE_BUILD_KEYS" );
cost_active = 1;
self sethintstring( &"ZM_HIGHRISE_BUILD_KEYS", " [Cost: " + self.cost + "]" );
}
self trigger_on();
@ -219,6 +222,19 @@ elevator_call_think()
continue;
}
if ( cost_active )
{
if ( who.score < self.cost )
{
play_sound_at_pos( "no_purchase", self.origin );
who maps\mp\zombies\_zm_audio::create_and_play_dialog( "general", "door_deny" );
continue;
}
who maps\mp\zombies\_zm_score::minus_to_player_score( self.cost );
play_sound_at_pos( "purchase", self.origin );
}
self playsound( "zmb_elevator_ding" );
if ( !self.elevator.body.is_moving && self.elevator maps\mp\zm_highrise_elevators::elevator_is_on_floor( self.floor ) && !is_true( self.elevator.body.start_location_wait ) )
@ -317,8 +333,9 @@ escape_pod_call()
{
trig = getent( "escape_pod_key_console_trigger", "targetname" );
trig.cost = 750;
trig usetriggerrequirelookat();
trig sethintstring( &"ZM_HIGHRISE_BUILD_KEYS" );
trig sethintstring( &"ZM_HIGHRISE_BUILD_KEYS", " [Cost: " + trig.cost + "]" );
trig trigger_off();
trig thread escape_pod_call_think();
@ -339,6 +356,16 @@ escape_pod_call_think()
continue;
}
if ( who.score < self.cost )
{
play_sound_at_pos( "no_purchase", self.origin );
who maps\mp\zombies\_zm_audio::create_and_play_dialog( "general", "door_deny" );
continue;
}
who maps\mp\zombies\_zm_score::minus_to_player_score( self.cost );
play_sound_at_pos( "purchase", self.origin );
self trigger_off();
self maps\mp\zm_highrise_buildables::onuseplantobject_escapepodkey( who );