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

Grief: added player kill feed

This commit is contained in:
Jbleezy
2021-12-05 20:16:46 -08:00
parent ecaadb253e
commit 69f554e4f2
2 changed files with 61 additions and 3 deletions

View File

@ -234,5 +234,6 @@
* Decreased stun time by enemy players from 0.75 seconds to 0.5 seconds
* Players can be stunned by enemy players while already stunned
* Points awarded for stunning enemy players that are damaged
* Added player kill feed
* Teams win rounds by getting all enemy players down
* First team to win 3 rounds wins the game

View File

@ -40,11 +40,25 @@ on_player_connect()
while ( 1 )
{
level waittill( "connected", player );
player set_team();
player [[ level.givecustomcharacters ]]();
player thread on_player_downed();
}
}
on_player_downed()
{
self endon( "disconnect" );
while(1)
{
self waittill( "player_downed" );
self thread kill_feed();
}
}
set_team()
{
teamplayersallies = countplayers( "allies");
@ -150,12 +164,25 @@ set_grief_vars()
level.grief_score = [];
level.grief_score["A"] = 0;
level.grief_score["B"] = 0;
level.game_mode_shellshock_time = 0.5;
flag_wait( "start_zombie_round_logic" ); // needs a wait
level.zombie_move_speed = 100;
}
kill_feed()
{
if(isDefined(self.last_griefed_by))
{
obituary(self, self.last_griefed_by.attacker, self.last_griefed_by.weapon, self.last_griefed_by.meansofdeath);
}
else
{
obituary(self, self, "none", "MOD_SUICIDE");
}
}
init_round_start_wait(time)
{
flag_clear("spawn_zombies");
@ -494,7 +521,7 @@ game_module_player_damage_callback( einflictor, eattacker, idamage, idflags, sme
}
}
if ( is_true( self._being_shellshocked ) || self maps/mp/zombies/_zm_laststand::player_is_in_laststand() )
if ( self maps/mp/zombies/_zm_laststand::player_is_in_laststand() )
{
return;
}
@ -536,15 +563,21 @@ game_module_player_damage_callback( einflictor, eattacker, idamage, idflags, sme
}
}
self thread add_grief_score(eattacker);
self thread do_game_mode_shellshock();
self playsound( "zmb_player_hit_ding" );
self thread add_grief_score(eattacker);
self thread store_damage_info(eattacker, sweapon, smeansofdeath);
}
}
do_game_mode_shellshock()
{
self shellshock( "grief_stab_zm", 0.5 );
self endon( "disconnect" );
self._being_shellshocked = 1;
self shellshock( "grief_stab_zm", level.game_mode_shellshock_time );
wait level.game_mode_shellshock_time;
self._being_shellshocked = 0;
}
add_grief_score(attacker)
@ -555,6 +588,30 @@ add_grief_score(attacker)
}
}
store_damage_info(attacker, weapon, meansofdeath)
{
self.last_griefed_by = spawnStruct();
self.last_griefed_by.attacker = attacker;
self.last_griefed_by.weapon = weapon;
self.last_griefed_by.meansofdeath = meansofdeath;
self thread remove_damage_info();
}
remove_damage_info()
{
self notify("new_griefer");
self endon("new_griefer");
self endon("disconnect");
while(is_true(self._being_shellshocked) || self.health < self.maxhealth)
{
wait_network_frame();
}
self.last_griefed_by = undefined;
}
unlimited_zombies()
{
while(1)