feat(hs): apply mapped class buffs to team on statue break

This commit is contained in:
Acentech Dev
2026-07-21 00:15:52 +03:00
parent 712773c332
commit ceacc11446
2 changed files with 108 additions and 1 deletions

View File

@@ -81,4 +81,19 @@ public class HeykelSavasiContextTests
Assert.That(state.GetWinner(), Is.EqualTo(HeykelSavasiTeam.Blue));
Assert.That(state.GetProgress(HeykelSavasiTeam.Red), Is.EqualTo(0));
}
/// <summary>
/// Verifies the fixed statue-index -> <c>MagicEffectDefinition.Number</c> mapping used by
/// <c>HeykelSavasiContext.ApplyStatueBuffToTeamAsync</c> to grant the attacking team a class buff
/// when a statue breaks: GreaterDamage, GreaterDefense, SoulBarrier, CriticalDamageIncrease,
/// WizEnhance (0x52), IgnoreDefense (129). The 7th statue (index 6) intentionally has no entry -
/// breaking it is the win condition, not a buff trigger.
/// </summary>
[Test]
public void StatueBuffMap_HasSixEntriesInExpectedOrder()
{
Assert.That(
HeykelSavasiContext.StatueBuffEffectNumbersForTest,
Is.EqualTo(new short[] { 1, 2, 4, 5, 0x52, 129 }));
}
}