From 148e68b6b90357a9f209b033dbab545c9d506220 Mon Sep 17 00:00:00 2001 From: MS-crew <100300664+MS-crew@users.noreply.github.com> Date: Fri, 13 Jun 2025 21:05:59 +0300 Subject: [PATCH 1/5] Clean --- EXILED/Exiled.API/Enums/DamageType.cs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/EXILED/Exiled.API/Enums/DamageType.cs b/EXILED/Exiled.API/Enums/DamageType.cs index ae93c5c020..e1054e1f33 100644 --- a/EXILED/Exiled.API/Enums/DamageType.cs +++ b/EXILED/Exiled.API/Enums/DamageType.cs @@ -15,8 +15,7 @@ namespace Exiled.API.Enums /// Identifiers for types of damage. /// /// - /// - /// + /// /// public enum DamageType { @@ -275,4 +274,4 @@ public enum DamageType /// Scp127, } -} \ No newline at end of file +} From 5be2a15f6ec85bf3cefe0e76e5719925e1470f28 Mon Sep 17 00:00:00 2001 From: MS-crew <100300664+MS-crew@users.noreply.github.com> Date: Fri, 13 Jun 2025 21:08:22 +0300 Subject: [PATCH 2/5] Update GenericDamageHandler.cs --- .../Features/DamageHandlers/GenericDamageHandler.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/EXILED/Exiled.API/Features/DamageHandlers/GenericDamageHandler.cs b/EXILED/Exiled.API/Features/DamageHandlers/GenericDamageHandler.cs index bd858b3447..4d74256cca 100644 --- a/EXILED/Exiled.API/Features/DamageHandlers/GenericDamageHandler.cs +++ b/EXILED/Exiled.API/Features/DamageHandlers/GenericDamageHandler.cs @@ -12,6 +12,7 @@ namespace Exiled.API.Features.DamageHandlers using Footprinting; using Items; + using PlayerRoles; using PlayerRoles.PlayableScps.Scp096; using PlayerRoles.PlayableScps.Scp939; @@ -29,6 +30,7 @@ public class GenericDamageHandler : CustomReasonDamageHandler private Player player; private DamageType damageType; private DamageHandlerBase.CassieAnnouncement customCassieAnnouncement; + private bool overrideCassieForAllRole; /// /// Initializes a new instance of the class. @@ -40,11 +42,13 @@ public class GenericDamageHandler : CustomReasonDamageHandler /// Damage type. /// Custom cassie announcment. /// Text to provide to player death screen. - public GenericDamageHandler(Player player, Player attacker, float damage, DamageType damageType, DamageHandlerBase.CassieAnnouncement cassieAnnouncement, string damageText = null) + /// Whether to play Cassie for non-SCPs as well. + public GenericDamageHandler(Player player, Player attacker, float damage, DamageType damageType, DamageHandlerBase.CassieAnnouncement cassieAnnouncement, string damageText = null, bool overrideCassieForAllRole = false) : base(DamageTextDefault) { this.player = player; this.damageType = damageType; + this.overrideCassieForAllRole = overrideCassieForAllRole; cassieAnnouncement ??= DamageHandlerBase.CassieAnnouncement.Default; customCassieAnnouncement = cassieAnnouncement; @@ -237,7 +241,7 @@ public override HandlerOutput ApplyDamage(ReferenceHub ply) HandlerOutput output = base.ApplyDamage(ply); if (output is HandlerOutput.Death) { - if (customCassieAnnouncement?.Announcement != null) + if (customCassieAnnouncement?.Announcement != null && (overrideCassieForAllRole || ply.IsSCP())) { Cassie.Message(customCassieAnnouncement.Announcement); } From b70ba3ebfa45ed1d9f61d098a7324584c3202783 Mon Sep 17 00:00:00 2001 From: MS-crew <100300664+MS-crew@users.noreply.github.com> Date: Fri, 13 Jun 2025 21:10:58 +0300 Subject: [PATCH 3/5] Cleanup --- EXILED/Exiled.API/Features/Player.cs | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/EXILED/Exiled.API/Features/Player.cs b/EXILED/Exiled.API/Features/Player.cs index 4dfcf09409..1f62ef88cc 100644 --- a/EXILED/Exiled.API/Features/Player.cs +++ b/EXILED/Exiled.API/Features/Player.cs @@ -2133,19 +2133,10 @@ public int GetScpPreference(RoleTypeId roleType) /// The amount of damage to deal. /// The of the damage dealt. /// The cassie announcement to make if the damage kills the player. - public void Hurt(Player attacker, float amount, DamageType damageType = DamageType.Unknown, CassieAnnouncement cassieAnnouncement = null) => - Hurt(new GenericDamageHandler(this, attacker, amount, damageType, cassieAnnouncement)); - - /// - /// Hurts the player. - /// - /// The attacking player. - /// The amount of damage to deal. - /// The of the damage dealt. - /// The cassie announcement to make if the damage kills the player. - /// The death text to appear on screen. - public void Hurt(Player attacker, float amount, DamageType damageType = DamageType.Unknown, CassieAnnouncement cassieAnnouncement = null, string deathText = null) => - Hurt(new GenericDamageHandler(this, attacker, amount, damageType, cassieAnnouncement, deathText)); + /// The death text to appear on screen. + /// Whether to play Cassie for non-SCPs as well. + public void Hurt(Player attacker, float amount, DamageType damageType = DamageType.Unknown, CassieAnnouncement cassieAnnouncement = null, string deathText = null, bool overrideCassieForAllRole = false) => + Hurt(new GenericDamageHandler(this, attacker, amount, damageType, cassieAnnouncement, deathText, overrideCassieForAllRole)); /// /// Hurts the player. From 7e3bafe0a7c8e223f978802c66dde66fab45650f Mon Sep 17 00:00:00 2001 From: Yamato Date: Tue, 8 Jul 2025 00:10:20 +0200 Subject: [PATCH 4/5] Remove BreakingChange --- EXILED/Exiled.API/Features/Player.cs | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/EXILED/Exiled.API/Features/Player.cs b/EXILED/Exiled.API/Features/Player.cs index 07554d4a40..33b7432d21 100644 --- a/EXILED/Exiled.API/Features/Player.cs +++ b/EXILED/Exiled.API/Features/Player.cs @@ -2138,6 +2138,27 @@ public int GetScpPreference(RoleTypeId roleType) public void Hurt(Player attacker, float amount, DamageType damageType = DamageType.Unknown, CassieAnnouncement cassieAnnouncement = null, string deathText = null, bool overrideCassieForAllRole = false) => Hurt(new GenericDamageHandler(this, attacker, amount, damageType, cassieAnnouncement, deathText, overrideCassieForAllRole)); + /// + /// Hurts the player. + /// + /// The attacking player. + /// The amount of damage to deal. + /// The of the damage dealt. + /// The cassie announcement to make if the damage kills the player. + public void Hurt(Player attacker, float amount, DamageType damageType = DamageType.Unknown, CassieAnnouncement cassieAnnouncement = null) => + Hurt(new GenericDamageHandler(this, attacker, amount, damageType, cassieAnnouncement)); + + /// + /// Hurts the player. + /// + /// The attacking player. + /// The amount of damage to deal. + /// The of the damage dealt. + /// The cassie announcement to make if the damage kills the player. + /// The death text to appear on screen. + public void Hurt(Player attacker, float amount, DamageType damageType = DamageType.Unknown, CassieAnnouncement cassieAnnouncement = null, string deathText = null) => + Hurt(new GenericDamageHandler(this, attacker, amount, damageType, cassieAnnouncement, deathText)); + /// /// Hurts the player. /// From 79a574e498da754dc8fa8ecdcce2cf6e792928b1 Mon Sep 17 00:00:00 2001 From: Yamato Date: Tue, 8 Jul 2025 00:13:13 +0200 Subject: [PATCH 5/5] Fix Ambiguous when compiling --- EXILED/Exiled.API/Features/Player.cs | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/EXILED/Exiled.API/Features/Player.cs b/EXILED/Exiled.API/Features/Player.cs index 33b7432d21..d59b1c2cf7 100644 --- a/EXILED/Exiled.API/Features/Player.cs +++ b/EXILED/Exiled.API/Features/Player.cs @@ -2133,10 +2133,8 @@ public int GetScpPreference(RoleTypeId roleType) /// The amount of damage to deal. /// The of the damage dealt. /// The cassie announcement to make if the damage kills the player. - /// The death text to appear on screen. - /// Whether to play Cassie for non-SCPs as well. - public void Hurt(Player attacker, float amount, DamageType damageType = DamageType.Unknown, CassieAnnouncement cassieAnnouncement = null, string deathText = null, bool overrideCassieForAllRole = false) => - Hurt(new GenericDamageHandler(this, attacker, amount, damageType, cassieAnnouncement, deathText, overrideCassieForAllRole)); + public void Hurt(Player attacker, float amount, DamageType damageType = DamageType.Unknown, CassieAnnouncement cassieAnnouncement = null) => + Hurt(new GenericDamageHandler(this, attacker, amount, damageType, cassieAnnouncement)); /// /// Hurts the player. @@ -2145,8 +2143,9 @@ public void Hurt(Player attacker, float amount, DamageType damageType = DamageTy /// The amount of damage to deal. /// The of the damage dealt. /// The cassie announcement to make if the damage kills the player. - public void Hurt(Player attacker, float amount, DamageType damageType = DamageType.Unknown, CassieAnnouncement cassieAnnouncement = null) => - Hurt(new GenericDamageHandler(this, attacker, amount, damageType, cassieAnnouncement)); + /// The death text to appear on screen. + public void Hurt(Player attacker, float amount, DamageType damageType, CassieAnnouncement cassieAnnouncement, string deathText) => + Hurt(new GenericDamageHandler(this, attacker, amount, damageType, cassieAnnouncement, deathText)); /// /// Hurts the player. @@ -2155,9 +2154,10 @@ public void Hurt(Player attacker, float amount, DamageType damageType = DamageTy /// The amount of damage to deal. /// The of the damage dealt. /// The cassie announcement to make if the damage kills the player. - /// The death text to appear on screen. - public void Hurt(Player attacker, float amount, DamageType damageType = DamageType.Unknown, CassieAnnouncement cassieAnnouncement = null, string deathText = null) => - Hurt(new GenericDamageHandler(this, attacker, amount, damageType, cassieAnnouncement, deathText)); + /// The death text to appear on screen. + /// Whether to play Cassie for non-SCPs as well. + public void Hurt(Player attacker, float amount, DamageType damageType, CassieAnnouncement cassieAnnouncement, string deathText, bool overrideCassieForAllRole) => + Hurt(new GenericDamageHandler(this, attacker, amount, damageType, cassieAnnouncement, deathText, overrideCassieForAllRole)); /// /// Hurts the player.