From: Princess Cheeseballs <66055347+Princess-Cheeseballs@users.noreply.github.com> Date: Mon, 8 Dec 2025 01:10:28 +0000 (-0800) Subject: Fix Bible Fast Healing (#41777) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=36e009f21ecb57fe6269a51c2a6cc4b7f07074e5;p=space-station-14.git Fix Bible Fast Healing (#41777) * broble * slightly cleaner I guess actually * im straight refactoring it, and by it, i mean.... my entity --------- Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> --- diff --git a/Content.Server/Bible/BibleSystem.cs b/Content.Server/Bible/BibleSystem.cs index eb11a465bd..813d808dbc 100644 --- a/Content.Server/Bible/BibleSystem.cs +++ b/Content.Server/Bible/BibleSystem.cs @@ -114,15 +114,18 @@ namespace Content.Server.Bible return; } + var userEnt = Identity.Entity(args.User, EntityManager); + var targetEnt = Identity.Entity(args.Target.Value, EntityManager); + // This only has a chance to fail if the target is not wearing anything on their head and is not a familiar. - if (!_invSystem.TryGetSlotEntity(args.Target.Value, "head", out var _) && !HasComp(args.Target.Value)) + if (!_invSystem.TryGetSlotEntity(args.Target.Value, "head", out _) && !HasComp(args.Target.Value)) { if (_random.Prob(component.FailChance)) { - var othersFailMessage = Loc.GetString(component.LocPrefix + "-heal-fail-others", ("user", Identity.Entity(args.User, EntityManager)), ("target", Identity.Entity(args.Target.Value, EntityManager)), ("bible", uid)); + var othersFailMessage = Loc.GetString(component.LocPrefix + "-heal-fail-others", ("user", userEnt), ("target", targetEnt), ("bible", uid)); _popupSystem.PopupEntity(othersFailMessage, args.User, Filter.PvsExcept(args.User), true, PopupType.SmallCaution); - var selfFailMessage = Loc.GetString(component.LocPrefix + "-heal-fail-self", ("target", Identity.Entity(args.Target.Value, EntityManager)), ("bible", uid)); + var selfFailMessage = Loc.GetString(component.LocPrefix + "-heal-fail-self", ("target", targetEnt), ("bible", uid)); _popupSystem.PopupEntity(selfFailMessage, args.User, args.User, PopupType.MediumCaution); _audio.PlayPvs(component.BibleHitSound, args.User); @@ -132,24 +135,25 @@ namespace Content.Server.Bible } } + string othersMessage; + string selfMessage; + if (_damageableSystem.TryChangeDamage(args.Target.Value, component.Damage, true, origin: uid)) { - var othersMessage = Loc.GetString(component.LocPrefix + "-heal-success-none-others", ("user", Identity.Entity(args.User, EntityManager)), ("target", Identity.Entity(args.Target.Value, EntityManager)), ("bible", uid)); - _popupSystem.PopupEntity(othersMessage, args.User, Filter.PvsExcept(args.User), true, PopupType.Medium); + othersMessage = Loc.GetString(component.LocPrefix + "-heal-success-others", ("user", userEnt), ("target", targetEnt), ("bible", uid)); + selfMessage = Loc.GetString(component.LocPrefix + "-heal-success-self", ("target", targetEnt), ("bible", uid)); - var selfMessage = Loc.GetString(component.LocPrefix + "-heal-success-none-self", ("target", Identity.Entity(args.Target.Value, EntityManager)), ("bible", uid)); - _popupSystem.PopupEntity(selfMessage, args.User, args.User, PopupType.Large); + _audio.PlayPvs(component.HealSoundPath, args.User); + _delay.TryResetDelay((uid, useDelay)); } else { - var othersMessage = Loc.GetString(component.LocPrefix + "-heal-success-others", ("user", Identity.Entity(args.User, EntityManager)), ("target", Identity.Entity(args.Target.Value, EntityManager)), ("bible", uid)); - _popupSystem.PopupEntity(othersMessage, args.User, Filter.PvsExcept(args.User), true, PopupType.Medium); - - var selfMessage = Loc.GetString(component.LocPrefix + "-heal-success-self", ("target", Identity.Entity(args.Target.Value, EntityManager)), ("bible", uid)); - _popupSystem.PopupEntity(selfMessage, args.User, args.User, PopupType.Large); - _audio.PlayPvs(component.HealSoundPath, args.User); - _delay.TryResetDelay((uid, useDelay)); + othersMessage = Loc.GetString(component.LocPrefix + "-heal-success-none-others", ("user", userEnt), ("target", targetEnt), ("bible", uid)); + selfMessage = Loc.GetString(component.LocPrefix + "-heal-success-none-self", ("target", targetEnt), ("bible", uid)); } + + _popupSystem.PopupEntity(othersMessage, args.User, Filter.PvsExcept(args.User), true, PopupType.Medium); + _popupSystem.PopupEntity(selfMessage, args.User, args.User, PopupType.Large); } private void AddSummonVerb(EntityUid uid, SummonableComponent component, GetVerbsEvent args)