Unrevivable trait (#24226)

* unrevivable trait + remove unclonable remnants

* cleanup

* change to hascomp
This commit is contained in:
Scribbles0
2024-01-19 18:22:15 -08:00
committed by GitHub
parent ac809c4929
commit 7a2e500f68
7 changed files with 27 additions and 23 deletions

View File

@@ -195,19 +195,6 @@ namespace Content.Server.Cloning
if (_configManager.GetCVar(CCVars.BiomassEasyMode))
cloningCost = (int) Math.Round(cloningCost * EasyModeCloningCost);
// Check if they have the uncloneable trait
if (TryComp<UncloneableComponent>(bodyToClone, out _))
{
if (clonePod.ConnectedConsole != null)
{
_chatSystem.TrySendInGameICMessage(clonePod.ConnectedConsole.Value,
Loc.GetString("cloning-console-uncloneable-trait-error"),
InGameICChatType.Speak, false);
}
return false;
}
// biomass checks
var biomassAmount = _material.GetMaterialAmount(uid, clonePod.RequiredMaterial);

View File

@@ -6,6 +6,7 @@ using Content.Server.EUI;
using Content.Server.Ghost;
using Content.Server.Popups;
using Content.Server.PowerCell;
using Content.Server.Traits.Assorted;
using Content.Shared.Damage;
using Content.Shared.DoAfter;
using Content.Shared.Interaction;
@@ -221,6 +222,11 @@ public sealed class DefibrillatorSystem : EntitySystem
_chatManager.TrySendInGameICMessage(uid, Loc.GetString("defibrillator-rotten"),
InGameICChatType.Speak, true);
}
else if (HasComp<UnrevivableComponent>(target))
{
_chatManager.TrySendInGameICMessage(uid, Loc.GetString("defibrillator-unrevivable"),
InGameICChatType.Speak, true);
}
else
{
if (_mobState.IsDead(target, mob))

View File

@@ -1,10 +0,0 @@
namespace Content.Server.Traits.Assorted;
/// <summary>
/// This is used for the uncloneable trait.
/// </summary>
[RegisterComponent]
public sealed partial class UncloneableComponent : Component
{
}

View File

@@ -0,0 +1,10 @@
namespace Content.Server.Traits.Assorted;
/// <summary>
/// This is used for the urevivable trait.
/// </summary>
[RegisterComponent]
public sealed partial class UnrevivableComponent : Component
{
}