Skip to content

Commit

Permalink
anti-shadowkin handcuffs
Browse files Browse the repository at this point in the history
  • Loading branch information
DEATHB4DEFEAT committed Sep 18, 2023
1 parent 6f88662 commit 1d13340
Show file tree
Hide file tree
Showing 6 changed files with 34 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,8 @@ private void DarkSwap(EntityUid uid, ShadowkinDarkSwapPowerComponent component,
if (!_entity.HasComponent<ShadowkinComponent>(args.Performer))
return;

// Don't activate abilities if handcuffed
// TODO: Something like the Psionic Headcage to disable powers for Shadowkin
if (_entity.HasComponent<HandcuffComponent>(args.Performer))
// Don't activate abilities if specially handcuffed
if (_entity.TryGetComponent<HandcuffComponent>(args.Performer, out var cuffs) && cuffs.AntiShadowkin)
return;


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ private void Rest(EntityUid uid, ShadowkinRestPowerComponent component, Shadowki
return;

// Rest is a funny ability, keep it :)
// // Don't activate abilities if handcuffed
// if (_entity.HasComponent<HandcuffComponent>(args.Performer))
// // Don't activate abilities if specially handcuffed
// if (_entity.TryGetComponent<HandcuffComponent>(args.Performer, out var cuffs) && cuffs.AntiShadowkin)
// return;


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,9 +53,8 @@ private void Teleport(EntityUid uid, ShadowkinTeleportPowerComponent component,
if (!_entity.TryGetComponent<ShadowkinComponent>(args.Performer, out var comp))
return;

// Don't activate abilities if handcuffed
// TODO: Something like the Psionic Headcage to disable powers for Shadowkin
if (_entity.HasComponent<HandcuffComponent>(args.Performer))
// Don't activate abilities if specially handcuffed
if (_entity.TryGetComponent<HandcuffComponent>(args.Performer, out var cuffs) && cuffs.AntiShadowkin)
return;


Expand Down
6 changes: 6 additions & 0 deletions Content.Shared/Cuffs/Components/HandcuffComponent.cs
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,12 @@ public sealed class HandcuffComponent : Component

[DataField("endUncuffSound"), ViewVariables(VVAccess.ReadWrite)]
public SoundSpecifier EndUncuffSound = new SoundPathSpecifier("/Audio/Items/Handcuffs/cuff_takeoff_end.ogg");


// Parkstation-Shadowkin Start
[DataField("antiShadowkin")]
public bool AntiShadowkin = false;
// Parkstation-Shadowkin End
}

[Serializable, NetSerializable]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
- type: entity
parent: ClothingEyesBase
id: ClothingEyesGlassesShadowkinDarkWindow
name: darkened goggles # TODO: Temporary name?
name: darkened goggles
description: An unusual pair of goggles developed during a time of inhumane experimentation involving Shadowkin. They are designed to allow the wearer to peer into The Dark.
components:
- type: Sprite
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
- type: entity
parent: Handcuffs
id: ClothingOuterStraightJacketShadowkin
name: shadowkin straight jacket
description: One of the first creations after finding Shadowkin, these were used to contain the Shadowkin during research so they didn't teleport away.
components:
- type: Item
size: 20
- type: Handcuff
cuffedRSI: Clothing/OuterClothing/Misc/straight_jacket.rsi
breakoutTime: 40
damageOnResist:
types:
Blunt: 2
cuffTime: 5
uncuffTime: 5
stunBonus: 4
antiShadowkin: true
- type: Sprite
sprite: Clothing/OuterClothing/Misc/straight_jacket.rsi
state: icon

0 comments on commit 1d13340

Please sign in to comment.