Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Module Construction Update #472

Merged
merged 4 commits into from
Jan 10, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions Content.Shared/Cuffs/Components/HandcuffComponent.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,12 @@ public sealed partial class HandcuffComponent : Component
[DataField, ViewVariables(VVAccess.ReadWrite)]
public bool NoRot = false;

/// <summary>
/// Should the cuff be removed when used? (This will always give zipties to the target, i should do another system clone or move it to its own comp but so far, this works)
/// </summary>
[DataField]
public bool RemoveOnUse = true;

/// <summary>
/// The time it takes to cuff an entity.
/// </summary>
Expand Down
10 changes: 8 additions & 2 deletions Content.Shared/Cuffs/SharedCuffableSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -453,7 +453,13 @@ public bool TryAddNewCuffs(EntityUid target, EntityUid user, EntityUid handcuff,
return false;

// Success!
_hands.TryDrop(user, handcuff);
if (cuff.RemoveOnUse)
_hands.TryDrop(user, handcuff);
else
{
handcuff = Spawn("Zipties", Transform(user).Coordinates);
EnsureComp<HandcuffComponent>(handcuff);
}

_container.Insert(handcuff, component.Container);
UpdateHeldItems(target, handcuff, component);
Expand Down Expand Up @@ -739,4 +745,4 @@ private sealed partial class AddCuffDoAfterEvent : SimpleDoAfterEvent
{
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -646,7 +646,6 @@
- HeadBorgService
- TorsoBorgService
- Quadborgendoskeleton
- BaseSecModule
dynamicRecipes:
- ProximitySensor
- BorgModuleLightReplacer
Expand Down Expand Up @@ -817,6 +816,9 @@
- WeaponLaserCarbinePractice
- Zipties
- ShockCollar
- BorgModuleStun
- BorgModuleKill
- BorgModuleInvestigation
- ShadowkinRestraints
# DeltaV - .38 special ammo - Add various .38 special ammo to security techfab
- MagazineBoxSpecial
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,6 @@
- Common
- Science
- type: ActiveRadio
- type: Body
prototype: Primate
requiredLegs: 1 # TODO: More than 1 leg
- type: BorgChassis
maxModules: 4
moduleWhitelist:
Expand All @@ -48,10 +45,10 @@
- type: Speech
speechVerb: Robotic
- type: LayingDown
- type: SiliconLawProvider
- type: SiliconLawProvider
laws: Qborg
- type: LeashAnchor # Floofstation

- type: entity
id: BorgChassisQuadCC
parent: BorgChassisQuad
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,41 +10,37 @@
- type: entity
id: BorgModuleStun
parent: [ BaseBorgModuleSecurity, BaseProviderBorgModule ]
name: A Module "incapable of causing harm if used correctly"
name: Disabler cyborg Module
description: A Module "incapable of causing harm if used correctly"
components:
- type: Sprite
sprite: Floof/Objects/Specific/Robotics/borgmodule.rsi
layers:
- state: security
- state: icon-stun
- type: Construction
graph: BorgmoduleDisabler
node: icon
- type: ItemBorgModule
items:
- WeaponBorgDisabler
- BorgStunbaton
- BorgFlash
- BorgZipties

- type: entity
id: BorgModuleKill
parent: [ BaseBorgModuleSecurity, BaseProviderBorgModule ]
name: combat cyborg module
name: Combat cyborg module
components:
- type: Sprite
sprite: Floof/Objects/Specific/Robotics/borgmodule.rsi
layers:
- state: security
- state: icon-kill
- type: Construction
graph: BorgmoduleCombat
node: icon
- type: ItemBorgModule
items:
- WeaponAdvancedLaser
- WeaponborgPistolMk58
- CombatKnife

- type: entity
id: BorgModuleInvestigation
parent: [ BaseBorgModuleSecurity, BaseProviderBorgModule ]
Expand All @@ -55,15 +51,12 @@
layers:
- state: security
- state: icon-investigation
# - type: Construction
# graph: BorgModuleInvestigation
# node: icon
- type: ItemBorgModule
items:
- ForensicScanner
- DetectivePDA
- SecurityWhistle

- type: entity
id: BorgModuleadvancedmeasures
parent: [ BaseBorgModuleSecurity, BaseProviderBorgModule ]
Expand All @@ -76,26 +69,6 @@
- state: icon-Advmeasures
- type: ItemBorgModule
items:
- WeaponEnergyShotgun
- WeaponBorgEnergyShotgun
- BorgWeaponXrayCannon

- type: entity
id: BaseSecModule
parent: BaseItem
name: blank security borg module
description: A piece of tech that gives cyborgs new abilities.
components:
- type: Item
storedRotation: -90
- type: Sprite
sprite: Floof/Objects/Specific/Robotics/borgmodule.rsi
layers:
- state: security
- type: StaticPrice
price: 100
- type: Tag
tags:
- BorgModuleGeneric
- type: GuideHelp
guides:
- Cyborgs
Comment on lines -82 to -101
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pray!


Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,26 @@
path: /Audio/Weapons/Guns/Gunshots/kinetic_accel.ogg
fireOnDropChance: 1

- type: entity
id: BorgZipties
suffix: Robot
parent: Zipties
components:
- type: Handcuff
removeOnUse: false
breakoutTime: 3
cuffedRSI: Objects/Misc/cablecuffs.rsi # cablecuffs will look fine
bodyIconState: body-overlay
breakOnRemove: true
brokenPrototype: ZiptiesBroken
startCuffSound:
path: /Audio/Items/Handcuffs/ziptie_start.ogg
endCuffSound:
path: /Audio/Items/Handcuffs/ziptie_end.ogg
startUncuffSound:
path: /Audio/Items/Handcuffs/rope_start.ogg
endUncuffSound:
path: /Audio/Items/Handcuffs/rope_breakout.ogg
startBreakoutSound:
path: /Audio/Items/Handcuffs/rope_takeoff.ogg
uncuffEasierWhenLarge: true

This file was deleted.

44 changes: 0 additions & 44 deletions Resources/Prototypes/Recipes/Construction/tools.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,47 +42,3 @@
icon: { sprite: Objects/Devices/gates.rsi, state: power_sensor }
objectType: Item

- type: construction
name: Disabler Module
id: BorgModuleStun
graph: BorgmoduleDisabler
startNode: start
targetNode: icon
category: construction-category-tools
description: A nonlethal module for security borg
icon: { sprite: Floof/Objects/Specific/Robotics/borgmodule.rsi, state: icon-stun }
objectType: Item

- type: construction
name: Combat Module
id: BorgModuleKill
graph: BorgmoduleCombat
startNode: start
targetNode: icon
category: construction-category-tools
description: A lethal module for security borg
icon: { sprite: Floof/Objects/Specific/Robotics/borgmodule.rsi, state: icon-kill }
objectType: Item

#- type: construction
#name: Investigation
#id: BorgModuleInvestigation
#graph: BorgModuleInvestigation
#startNode: start
#targetNode: icon
#category: construction-category-tools
#description: A lethal module for security borg
#icon: { sprite: Floof/Objects/Specific/Robotics/borgmodule.rsi, state: icon-investigation }
#objectType: Item


# - type: construction
# name: Advanced Combat Module
# id: BorgModuleadvancedmeasures
# graph: BorgmoduleAdvMeasures
# startNode: start
# targetNode: power_sensor
# category: construction-category-tools
# description: A power network checking device for signals.
# icon: { sprite: Objects/Devices/gates.rsi, state: power_sensor }
# objectType: Item
11 changes: 0 additions & 11 deletions Resources/Prototypes/Recipes/Lathes/robotics.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,17 +16,6 @@
Glass: 100
Plastic: 200
Steel: 100

- type: latheRecipe
id: BaseSecModule
result: BaseSecModule
category: Robotics
completetime: 3
materials:
Steel: 500
Glass: 500
Plastic: 250
Gold: 50

- type: latheRecipe
id: CyborgEndoskeleton
Expand Down
30 changes: 30 additions & 0 deletions Resources/Prototypes/Recipes/Lathes/security.yml
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,36 @@
Steel: 1500
Glass: 1000
Gold: 850

- type: latheRecipe
id: BorgModuleStun
result: BorgModuleStun
category: Weapons
completetime: 5
materials:
Steel: 700
Glass: 500
Plastic: 200

- type: latheRecipe
id: BorgModuleKill
result: BorgModuleKill
category: Weapons
completetime: 5
materials:
Steel: 1500
Glass: 1000
Gold: 850

- type: latheRecipe
id: BorgModuleInvestigation
result: BorgModuleInvestigation
category: Weapons
completetime: 5
materials:
Steel: 1500
Glass: 1000
Gold: 850

# - type: latheRecipe
# id: WeaponEnergyShotgun
Expand Down
Loading