feat(tvt): per-character scoreboard (kills, statues, statue damage)
Server: new 0xFD HeykelSavasiScoreboard packet + view plugin; HeykelSavasiContext tracks per-player kills (Player.AfterKilledPlayerAsync hook), statues broken (OnDestructibleDied), and statue damage (AttackableNpcBase.AttackByAsync hook); broadcast top-8 by damage (desc) every ~1s, omitting zero-damage characters.
This commit is contained in:
@@ -142,6 +142,13 @@ public abstract class AttackableNpcBase : NonPlayerCharacter, IAttackable
|
||||
{
|
||||
await player.ApplyMaceMasteryStunEffectAsync(this).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
// ADAMU-CUSTOM: TvT Event -> record per-character statue damage for the event scoreboard.
|
||||
if (this.Definition.ObjectKind == NpcObjectKind.Destructible
|
||||
&& player.CurrentMiniGame is MiniGames.HeykelSavasiContext heykelDamageGame)
|
||||
{
|
||||
heykelDamageGame.RecordStatueDamage(player, this, (uint)hitInfo.HealthDamage);
|
||||
}
|
||||
}
|
||||
|
||||
if (attacker as IPlayerSurrogate is { } playerSurrogate)
|
||||
|
||||
Reference in New Issue
Block a user