Merge branch 'master' of github.com:space-wizards/space-station-14 into replace-sounds-with-sound-specifier

This commit is contained in:
ShadowCommander
2021-08-10 15:17:58 -07:00
52 changed files with 834 additions and 407 deletions

View File

@@ -0,0 +1,9 @@
using Content.Shared.Climbing;
namespace Content.Client.Climbing
{
public sealed class ClimbingSystem : SharedClimbSystem
{
}
}

View File

@@ -1,6 +1,7 @@
using System.Collections.Generic;
using System.Linq;
using Content.Server.Climbing.Components;
using Content.Shared.Climbing;
using Content.Shared.GameTicking;
using JetBrains.Annotations;
using Robust.Shared.GameObjects;
@@ -8,7 +9,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Climbing
{
[UsedImplicitly]
internal sealed class ClimbSystem : EntitySystem
internal sealed class ClimbSystem : SharedClimbSystem
{
private readonly HashSet<ClimbingComponent> _activeClimbers = new();

View File

@@ -41,7 +41,7 @@ namespace Content.Server.Climbing.Components
}
}
protected override bool OwnerIsTransitioning
public override bool OwnerIsTransitioning
{
get => base.OwnerIsTransitioning;
set

View File

@@ -25,16 +25,6 @@ namespace Content.Shared.ActionBlocker
var ev = new MovementAttemptEvent(entity);
RaiseLocalEvent(entity.Uid, ev);
foreach (var blocker in entity.GetAllComponents<IActionBlocker>())
{
if (!blocker.CanMove())
{
ev.Cancel();
break;
}
}
return !ev.Cancelled;
}

View File

@@ -10,9 +10,6 @@ namespace Content.Shared.ActionBlocker
[Obsolete("Use events instead")]
public interface IActionBlocker
{
[Obsolete("Use MoveAttemptEvent instead")]
bool CanMove() => true;
[Obsolete("Use InteractAttemptEvent instead")]
bool CanInteract() => true;

View File

@@ -36,11 +36,6 @@ namespace Content.Shared.Buckle.Components
public abstract bool TryBuckle(IEntity? user, IEntity to);
bool IActionBlocker.CanMove()
{
return !Buckled;
}
bool IActionBlocker.CanChangeDirection()
{
return !Buckled;

View File

@@ -1,4 +1,5 @@
using Content.Shared.Buckle.Components;
using Content.Shared.Movement;
using Content.Shared.Standing;
using Content.Shared.Throwing;
using Robust.Shared.GameObjects;
@@ -15,6 +16,13 @@ namespace Content.Shared.Buckle
SubscribeLocalEvent<SharedBuckleComponent, DownAttemptEvent>(HandleDown);
SubscribeLocalEvent<SharedBuckleComponent, StandAttemptEvent>(HandleStand);
SubscribeLocalEvent<SharedBuckleComponent, ThrowPushbackAttemptEvent>(HandleThrowPushback);
SubscribeLocalEvent<SharedBuckleComponent, MovementAttemptEvent>(HandleMove);
}
private void HandleMove(EntityUid uid, SharedBuckleComponent component, MovementAttemptEvent args)
{
if (component.Buckled)
args.Cancel();
}
private void HandleStand(EntityUid uid, SharedBuckleComponent component, StandAttemptEvent args)

View File

@@ -0,0 +1,20 @@
using Content.Shared.Movement;
using Robust.Shared.GameObjects;
namespace Content.Shared.Climbing
{
public abstract class SharedClimbSystem : EntitySystem
{
public override void Initialize()
{
base.Initialize();
SubscribeLocalEvent<SharedClimbingComponent, MovementAttemptEvent>(HandleMoveAttempt);
}
private void HandleMoveAttempt(EntityUid uid, SharedClimbingComponent component, MovementAttemptEvent args)
{
if (component.OwnerIsTransitioning)
args.Cancel();
}
}
}

View File

@@ -29,10 +29,8 @@ namespace Content.Shared.Climbing
}
}
bool IActionBlocker.CanMove() => !OwnerIsTransitioning;
[ViewVariables]
protected virtual bool OwnerIsTransitioning
public virtual bool OwnerIsTransitioning
{
get => _ownerIsTransitioning;
set

View File

@@ -14,8 +14,6 @@ namespace Content.Shared.Cuffs.Components
{
public override string Name => "Cuffable";
[ComponentDependency] private readonly SharedPullableComponent? _pullable = default!;
[ViewVariables]
public bool CanStillInteract { get; set; } = true;
@@ -28,8 +26,6 @@ namespace Content.Shared.Cuffs.Components
bool IActionBlocker.CanAttack() => CanStillInteract;
bool IActionBlocker.CanEquip() => CanStillInteract;
bool IActionBlocker.CanUnequip() => CanStillInteract;
bool IActionBlocker.CanMove() => _pullable == null || !_pullable.BeingPulled || CanStillInteract;
#endregion
[Serializable, NetSerializable]

View File

@@ -1,4 +1,5 @@
using Content.Shared.Cuffs.Components;
using Content.Shared.Movement;
using Content.Shared.Pulling.Components;
using Robust.Shared.GameObjects;
@@ -10,6 +11,15 @@ namespace Content.Shared.Cuffs
{
base.Initialize();
SubscribeLocalEvent<SharedCuffableComponent, StopPullingEvent>(HandleStopPull);
SubscribeLocalEvent<SharedCuffableComponent, MovementAttemptEvent>(HandleMoveAttempt);
}
private void HandleMoveAttempt(EntityUid uid, SharedCuffableComponent component, MovementAttemptEvent args)
{
if (component.CanStillInteract || !ComponentManager.TryGetComponent(uid, out SharedPullableComponent? pullable) || !pullable.BeingPulled)
return;
args.Cancel();
}
private void HandleStopPull(EntityUid uid, SharedCuffableComponent component, StopPullingEvent args)

View File

@@ -338,11 +338,6 @@ namespace Content.Shared.MobState.Components
return CurrentState?.CanInteract() ?? true;
}
bool IActionBlocker.CanMove()
{
return CurrentState?.CanMove() ?? true;
}
bool IActionBlocker.CanUse()
{
return CurrentState?.CanUse() ?? true;

View File

@@ -1,4 +1,6 @@
using Content.Shared.MobState.Components;
using Content.Shared.MobState.State;
using Content.Shared.Movement;
using Content.Shared.Pulling.Events;
using Robust.Shared.GameObjects;
@@ -11,6 +13,7 @@ namespace Content.Shared.MobState.EntitySystems
base.Initialize();
SubscribeLocalEvent<SharedMobStateComponent, StartPullAttemptEvent>(OnStartPullAttempt);
SubscribeLocalEvent<SharedMobStateComponent, MovementAttemptEvent>(OnMoveAttempt);
}
private void OnStartPullAttempt(EntityUid uid, SharedMobStateComponent component, StartPullAttemptEvent args)
@@ -18,5 +21,18 @@ namespace Content.Shared.MobState.EntitySystems
if(component.IsIncapacitated())
args.Cancel();
}
private void OnMoveAttempt(EntityUid uid, SharedMobStateComponent component, MovementAttemptEvent args)
{
switch (component.CurrentState)
{
case SharedCriticalMobState:
case SharedDeadMobState:
args.Cancel();
return;
default:
return;
}
}
}
}

View File

@@ -39,11 +39,6 @@ namespace Content.Shared.MobState.State
return true;
}
public virtual bool CanMove()
{
return true;
}
public virtual bool CanUse()
{
return true;

View File

@@ -41,11 +41,6 @@ namespace Content.Shared.MobState.State
return false;
}
public override bool CanMove()
{
return false;
}
public override bool CanUse()
{
return false;

View File

@@ -49,11 +49,6 @@ namespace Content.Shared.MobState.State
return false;
}
public override bool CanMove()
{
return false;
}
public override bool CanUse()
{
return false;

View File

@@ -27,11 +27,6 @@ namespace Content.Shared.MobState.State
return true;
}
public override bool CanMove()
{
return true;
}
public override bool CanUse()
{
return true;

View File

@@ -323,8 +323,6 @@ namespace Content.Shared.Stunnable
}
#region ActionBlockers
public bool CanMove() => (!Stunned);
public bool CanInteract() => (!Stunned);
public bool CanUse() => (!Stunned);

View File

@@ -1,3 +1,4 @@
using Content.Shared.Movement;
using JetBrains.Annotations;
using Robust.Shared.GameObjects;
@@ -6,6 +7,18 @@ namespace Content.Shared.Stunnable
[UsedImplicitly]
internal sealed class StunSystem : EntitySystem
{
public override void Initialize()
{
base.Initialize();
SubscribeLocalEvent<SharedStunnableComponent, MovementAttemptEvent>(HandleMoveAttempt);
}
private void HandleMoveAttempt(EntityUid uid, SharedStunnableComponent component, MovementAttemptEvent args)
{
if (component.Stunned)
args.Cancel();
}
public override void Update(float frameTime)
{
base.Update(frameTime);

View File

@@ -1739,3 +1739,15 @@ Entries:
- {message: Made the cloning pod and medical scanner constructible, type: Add}
id: 310
time: '2021-08-08T20:21:19.0000000+00:00'
- author: TimrodDX
changes:
- {message: Fixed the light in the captain's bathroom and the inner windoor at the
science desk., type: Tweak}
id: 311
time: '2021-08-10T00:28:11.0000000+00:00'
- author: Swept
changes:
- {message: Most belts now have restrictions for what can be inserted into them,
type: Add}
id: 312
time: '2021-08-10T20:36:01.0000000+00:00'

View File

@@ -11,40 +11,49 @@ tilemap:
4: floor_asteroid_coarse_sand_dug
5: floor_asteroid_sand
6: floor_asteroid_tile
7: floor_dark
8: floor_elevator_shaft
9: floor_freezer
10: floor_gold
11: floor_green_circuit
12: floor_hydro
13: floor_lino
14: floor_mono
15: floor_reinforced
16: floor_rock_vault
17: floor_showroom
18: floor_snow
19: floor_steel
20: floor_steel_dirty
21: floor_techmaint
22: floor_white
23: floor_wood
24: lattice
25: plating
26: underplating
7: floor_blue
8: floor_dark
9: floor_elevator_shaft
10: floor_freezer
11: floor_glass
12: floor_gold
13: floor_green_circuit
14: floor_hydro
15: floor_lino
16: floor_mono
17: floor_reinforced
18: floor_rglass
19: floor_rock_vault
20: floor_showroom
21: floor_snow
22: floor_steel
23: floor_steel_dirty
24: floor_techmaint
25: floor_warning1
26: floor_warning2
27: floor_white
28: floor_white_warning1
29: floor_white_warning2
30: floor_wood
31: lattice
32: plating
33: underplating
grids:
- settings:
chunksize: 16
tilesize: 1
snapsize: 1
chunks:
- ind: "-1,-1"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEwAAAA==
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFgAAAA==
entities:
- uid: 0
components:
- parent: null
pos: 0,0
type: Transform
- index: 0
type: MapGrid
- linearDamping: 0.05
fixtures: []
bodyType: Dynamic
type: Physics
...

View File

@@ -1253,6 +1253,10 @@ entities:
type: Transform
- containers:
CloningPod-bodyContainer: !type:ContainerSlot {}
machine_board: !type:Container
ents: []
machine_parts: !type:Container
ents: []
type: ContainerContainer
- uid: 152
type: CableHV
@@ -12362,6 +12366,10 @@ entities:
- -16,0
- -16,-16
id: grid_chunk--1--1
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12370,6 +12378,10 @@ entities:
- -16,16
- -16,0
id: grid_chunk--1-0
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12378,6 +12390,10 @@ entities:
- 0,0
- 0,-16
id: grid_chunk-0--1
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12386,6 +12402,10 @@ entities:
- 0,16
- 0,0
id: grid_chunk-0-0
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12394,6 +12414,10 @@ entities:
- 16,16
- 16,0
id: grid_chunk-1-0
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12402,6 +12426,10 @@ entities:
- 0,32
- 0,16
id: grid_chunk-0-1
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12410,6 +12438,10 @@ entities:
- -32,16
- -32,0
id: grid_chunk--2-0
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12418,6 +12450,10 @@ entities:
- 16,0
- 16,-16
id: grid_chunk-1--1
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12426,6 +12462,10 @@ entities:
- 0,-16
- 0,-32
id: grid_chunk-0--2
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12434,6 +12474,10 @@ entities:
- 16,-16
- 16,-27
id: grid_chunk-1--2
mask:
- MapGrid
layer:
- MapGrid
mass: 143
- shape: !type:PolygonShape
vertices:
@@ -12442,6 +12486,10 @@ entities:
- -16,32
- -16,16
id: grid_chunk--1-1
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12450,6 +12498,10 @@ entities:
- -3,34
- -3,32
id: grid_chunk--1-2
mask:
- MapGrid
layer:
- MapGrid
mass: 6
- shape: !type:PolygonShape
vertices:
@@ -12458,6 +12510,10 @@ entities:
- 16,17
- 16,16
id: grid_chunk-1-1
mask:
- MapGrid
layer:
- MapGrid
mass: 2
- shape: !type:PolygonShape
vertices:
@@ -12466,6 +12522,10 @@ entities:
- 0,34
- 0,32
id: grid_chunk-0-2
mask:
- MapGrid
layer:
- MapGrid
mass: 20
- shape: !type:PolygonShape
vertices:
@@ -12474,6 +12534,10 @@ entities:
- 32,16
- 32,0
id: grid_chunk-2-0
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12482,6 +12546,10 @@ entities:
- 48,15
- 48,0
id: grid_chunk-3-0
mask:
- MapGrid
layer:
- MapGrid
mass: 60
- shape: !type:PolygonShape
vertices:
@@ -12490,6 +12558,10 @@ entities:
- 32,0
- 32,-16
id: grid_chunk-2--1
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12498,6 +12570,10 @@ entities:
- -16,-16
- -16,-31
id: grid_chunk--1--2
mask:
- MapGrid
layer:
- MapGrid
mass: 240
- shape: !type:PolygonShape
vertices:
@@ -12506,6 +12582,10 @@ entities:
- -26,-16
- -26,-28
id: grid_chunk--2--2
mask:
- MapGrid
layer:
- MapGrid
mass: 120
- shape: !type:PolygonShape
vertices:
@@ -12514,6 +12594,10 @@ entities:
- -32,0
- -32,-16
id: grid_chunk--2--1
mask:
- MapGrid
layer:
- MapGrid
mass: 256
- shape: !type:PolygonShape
vertices:
@@ -12522,6 +12606,10 @@ entities:
- -42,16
- -42,0
id: grid_chunk--3-0
mask:
- MapGrid
layer:
- MapGrid
mass: 160
- shape: !type:PolygonShape
vertices:
@@ -12530,6 +12618,10 @@ entities:
- -40,0
- -40,-13
id: grid_chunk--3--1
mask:
- MapGrid
layer:
- MapGrid
mass: 104
- shape: !type:PolygonShape
vertices:
@@ -12538,6 +12630,10 @@ entities:
- 48,0
- 48,-16
id: grid_chunk-3--1
mask:
- MapGrid
layer:
- MapGrid
mass: 128
- shape: !type:PolygonShape
vertices:
@@ -12546,6 +12642,10 @@ entities:
- 40,-16
- 40,-32
id: grid_chunk-2--2
mask:
- MapGrid
layer:
- MapGrid
mass: 128
- shape: !type:PolygonShape
vertices:
@@ -12554,6 +12654,10 @@ entities:
- 48,-16
- 48,-32
id: grid_chunk-3--2
mask:
- MapGrid
layer:
- MapGrid
mass: 176
- shape: !type:PolygonShape
vertices:
@@ -12562,6 +12666,10 @@ entities:
- 48,-32
- 48,-34
id: grid_chunk-3--3
mask:
- MapGrid
layer:
- MapGrid
mass: 22
- shape: !type:PolygonShape
vertices:
@@ -12570,6 +12678,10 @@ entities:
- 40,-32
- 40,-34
id: grid_chunk-2--3
mask:
- MapGrid
layer:
- MapGrid
mass: 16
- shape: !type:PolygonShape
vertices:
@@ -12578,6 +12690,10 @@ entities:
- -28,27
- -28,16
id: grid_chunk--2-1
mask:
- MapGrid
layer:
- MapGrid
mass: 132
bodyType: Dynamic
type: Physics
@@ -14097,10 +14213,9 @@ entities:
parent: 853
type: Transform
- uid: 1050
type: ChairOfficeLight
type: Window
components:
- rot: 1.5707963705062866 rad
pos: -0.5,-14.5
- pos: 0.5,-14.5
parent: 853
type: Transform
- uid: 1051
@@ -18437,6 +18552,10 @@ entities:
type: Transform
- containers:
MedicalScanner-bodyContainer: !type:ContainerSlot {}
machine_board: !type:Container
ents: []
machine_parts: !type:Container
ents: []
type: ContainerContainer
- uid: 1545
type: CrateMaterialSteel
@@ -41319,10 +41438,9 @@ entities:
- airBlocked: False
type: Airtight
- uid: 4019
type: WindoorMedicalLocked
type: Firelock
components:
- rot: -1.5707963267948966 rad
pos: 0.5,-15.5
- pos: 0.5,-15.5
parent: 853
type: Transform
- uid: 4020
@@ -50170,9 +50288,10 @@ entities:
- canCollide: False
type: Physics
- uid: 5083
type: WallSolid
type: WindoorScienceLocked
components:
- pos: 0.5,-14.5
- rot: -1.5707963267948966 rad
pos: 0.5,-15.5
parent: 853
type: Transform
- uid: 5084
@@ -50589,9 +50708,9 @@ entities:
parent: 853
type: Transform
- uid: 5135
type: Firelock
type: LowWall
components:
- pos: 0.5,-15.5
- pos: 0.5,-14.5
parent: 853
type: Transform
- uid: 5136
@@ -50690,4 +50809,23 @@ entities:
- pos: -3.5,7.5
parent: 853
type: Transform
- uid: 5148
type: ChairOfficeLight
components:
- rot: 1.5707963267948966 rad
pos: -0.5,-15.5
parent: 853
type: Transform
- uid: 5149
type: CableApcExtension
components:
- anchored: True
rot: 1.5707963267948966 rad
pos: 10.5,26.5
parent: 853
type: Transform
- visible: False
type: Sprite
- canCollide: False
type: Physics
...

View File

@@ -13,23 +13,25 @@
- type: Storage
capacity: 40
# TODO: Fill this out more.
# whitelist:
# tags:
# - Wirecutter
# - Crowbar
# - CrowbarRed
# - Screwdriver
# - Flashlight
# - Welder
# - Wrench
# - Painter
# - GeigerCounter
# - Flare
# - Coilsofwire
# -
# -
# components:
# - SignalLinker
whitelist:
tags:
- Wirecutter
- Crowbar
- Screwdriver
- Flashlight
- Wrench
# - Painter
# - GeigerCounter
- Flare
- CableCoil
- CigPack
components:
- SignalLinker
- RCD
- RCDAmmo
- Welder
- Radio
- PowerCell
- type: ItemCounter
mapLayers:
cutters_red:
@@ -72,25 +74,31 @@
- type: Clothing
sprite: Clothing/Belt/ce.rsi
- type: Storage
# TODO: Fill this out more.
# whitelist:
# tags:
# - Wirecutter
# - Crowbar
# - CrowbarRed
# - Screwdriver
# - Flashlight
# - Welder
# - Wrench
# - Painter
# - GeigerCounter
# - Flare
# - Coilsofwire
# -
# -
# components:
# - SignalLinker
capacity: 100
# TODO: Fill this out more.
whitelist:
tags:
- Wirecutter
- Crowbar
- Screwdriver
- Flashlight
- Wrench
# - Painter
# - GeigerCounter
- Flare
- CableCoil
- Powerdrill
- JawsOfLife
- CigPack
components:
- SignalLinker
- RCD
- RCDAmmo
- Welder
- Flash
- Radio
- Handcuff
- PowerCell
- type: ItemCounter
mapLayers:
drill:
@@ -142,6 +150,17 @@
sprite: Clothing/Belt/assault.rsi
- type: Storage
capacity: 40
whitelist:
tags:
- CigPack
- Taser
components:
- Stunbaton
- FlashOnTrigger
- Flash
- Handcuff
- RangedMagazine
- Ammo
- type: ItemCounter
mapLayers:
flashbang:
@@ -169,6 +188,14 @@
sprite: Clothing/Belt/janitor.rsi
- type: Storage
capacity: 40
whitelist:
tags:
- Wrench
- Bottle
- Spray
- Soap
- Flashlight
- CigPack
- type: ItemCounter
mapLayers:
bottle:
@@ -179,6 +206,10 @@
whitelist:
tags:
- Spray
wrench:
whitelist:
tags:
- Wrench
- type: Appearance
visuals:
- type: MappedItemVisualizer
@@ -196,6 +227,20 @@
sprite: Clothing/Belt/medical.rsi
- type: Storage
capacity: 40
whitelist:
tags:
- Wrench
- Bottle
- Spray
- Brutepack
- Gauze
- Ointment
- CigPack
components:
- Hypospray
- Pill
- SurgeryTool
- Radio
- type: ItemCounter
mapLayers:
bottle:
@@ -242,27 +287,29 @@
- type: Clothing
sprite: Clothing/Belt/plant.rsi
- type: Storage
# whitelist:
# tags:
# - BotanyHoe
# - PlantAnalyzer
# - BotanyHoe
# - BotanyShovel
# - PlantBGone
# - Bottle
# components:
# - Seed
capacity: 40
whitelist:
tags:
- BotanyHoe
# - PlantAnalyzer
- BotanyHoe
- BotanyShovel
- PlantBGone
- Bottle
- CigPack
components:
- Seed
- Smoking
- type: ItemCounter
mapLayers:
hatchet:
whitelist:
tags:
- BotanyHatchet
hydro:
whitelist:
tags:
- PlantAnalyzer # Dunno what to put here, should be aight.
# hydro:
# whitelist:
# tags:
# - PlantAnalyzer # Dunno what to put here, should be aight.
hoe:
whitelist:
tags:
@@ -296,6 +343,15 @@
sprite: Clothing/Belt/security.rsi
- type: Storage
capacity: 40
whitelist:
tags:
- CigPack
- Taser
components:
- Stunbaton
- FlashOnTrigger
- Flash
- Handcuff
- type: ItemCounter
mapLayers:
flashbang:
@@ -324,11 +380,58 @@
sprite: Clothing/Belt/sheath.rsi
- type: Storage
capacity: 15
whitelist:
tags:
- CaptainSabre
- Baguette
- Carrot
- Crowbar
- Katana
- Machete
- CombatKnife
- RodMetal1
- Spear
components:
- Mop
- type: StorageFill
contents:
- id: CaptainSabre
- type: ItemCounter
mapLayers:
sheath-bag:
whitelist:
tags:
- Baguette
sheath-carrot:
whitelist:
tags:
- Carrot
sheath-crowbar:
whitelist:
tags:
- Crowbar
sheath-crowbarr:
whitelist:
tags:
- CrowbarRed
sheath-katana:
whitelist:
tags:
- Katana
sheath-knife:
whitelist:
tags:
- Machete
- CombatKnife
sheath-mop:
whitelist:
components:
- Mop
sheath-rod:
whitelist:
tags:
- RodMetal1
- Spear
sheath-sabre:
whitelist:
tags:
@@ -350,7 +453,10 @@
- type: Clothing
sprite: Clothing/Belt/bandolier.rsi
- type: Storage
capacity: 40
capacity: 60
whitelist:
tags:
- ShotgunShell
- type: entity
parent: ClothingBeltBase

View File

@@ -317,6 +317,9 @@
id: FoodBreadBaguette
description: Bon appétit!
components:
- type: Tag
tags:
- Baguette
- type: Sprite
state: baguette
# Tastes like France.

View File

@@ -142,6 +142,9 @@
id: FoodCarrot
description: It's good for the eyes!
components:
- type: Tag
tags:
- Carrot
- type: Food
- type: SolutionContainer
contents:

View File

@@ -4,87 +4,90 @@
name: cigarette pack
abstract: true
components:
- type: Storage
capacity: 6
- type: Item
size: 6
- type: StorageFill
contents:
- id: Cigarette
amount: 6
- type: StorageCounter
countTag: Cigarette
- type: Appearance
visuals:
- type: BagOpenCloseVisualizer
openIcon: open
- type: StackVisualizer
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/visualizer.rsi
composite: true
stackLayers:
- cig1
- cig2
- cig3
- cig4
- cig5
- cig6
- type: Tag
tags:
- CigPack
- type: Storage
capacity: 6
- type: Item
size: 6
- type: StorageFill
contents:
- id: Cigarette
amount: 6
- type: StorageCounter
countTag: Cigarette
- type: Appearance
visuals:
- type: BagOpenCloseVisualizer
openIcon: open
- type: StackVisualizer
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/visualizer.rsi
composite: true
stackLayers:
- cig1
- cig2
- cig3
- cig4
- cig5
- cig6
- type: entity
id: CigPackGreen
parent: CigPackBase
name: Spessman's Smokes packet
description: "A label on the packaging reads, 'Wouldn't a slow death make a change?'"
description: A label on the packaging reads, Wouldn't a slow death make a change?
components:
- type: Sprite
netsync: false
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/green.rsi
layers:
- state: closed
- type: Item
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/green.rsi
size: 6
- type: Sprite
netsync: false
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/green.rsi
layers:
- state: closed
- type: Item
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/green.rsi
size: 6
- type: entity
id: CigPackRed
parent: CigPackBase
name: DromedaryCo packet
description: "The most popular brand of Space Cigarettes, sponsors of the Space Olympics."
description: The most popular brand of Space Cigarettes, sponsors of the Space Olympics.
components:
- type: Sprite
netsync: false
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/red.rsi
layers:
- state: closed
- type: Item
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/red.rsi
size: 6
- type: Sprite
netsync: false
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/red.rsi
layers:
- state: closed
- type: Item
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/red.rsi
size: 6
- type: entity
id: CigPackBlue
parent: CigPackBase
name: AcmeCo packet
description: "For those who somehow want to obtain the record for the most amount of cancerous tumors."
description: For those who somehow want to obtain the record for the most amount of cancerous tumors.
components:
- type: Sprite
netsync: false
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/blue.rsi
layers:
- state: closed
- type: Item
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/blue.rsi
size: 6
- type: Sprite
netsync: false
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/blue.rsi
layers:
- state: closed
- type: Item
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/blue.rsi
size: 6
- type: entity
id: CigPackBlack
parent: CigPackBase
name: Nomads packet
description: "Nomads's extra strong, for when your life is more extra hard."
description: Nomads's extra strong, for when your life is more extra hard.
components:
- type: Sprite
netsync: false
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/black.rsi
layers:
- state: closed
- type: Item
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/black.rsi
size: 6
- type: Sprite
netsync: false
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/black.rsi
layers:
- state: closed
- type: Item
sprite: Objects/Consumable/Smokeables/Cigarettes/Packs/black.rsi
size: 6

View File

@@ -7,20 +7,20 @@
name: cigar
description: "A brown roll of tobacco and... well, you're not quite sure."
components:
- type: Smoking
duration: 70
- type: Sprite
sprite: Objects/Consumable/Smokeables/Cigars/cigar.rsi
netsync: false
state: unlit-icon
- type: Tag
tags:
- Cigar
- type: Clothing
sprite: Objects/Consumable/Smokeables/Cigars/cigar.rsi
Slots: [ mask ]
HeldPrefix: unlit
size: 1
- type: Smoking
duration: 70
- type: Sprite
sprite: Objects/Consumable/Smokeables/Cigars/cigar.rsi
netsync: false
state: unlit-icon
- type: Tag
tags:
- Cigar
- type: Clothing
sprite: Objects/Consumable/Smokeables/Cigars/cigar.rsi
Slots: [ mask ]
HeldPrefix: unlit
size: 1
- type: entity
id: CigarGold
@@ -28,12 +28,12 @@
name: premium Havanian cigar
description: "A cigar fit for only the best of the best."
components:
- type: Sprite
sprite: Objects/Consumable/Smokeables/Cigars/cigar-gold.rsi
netsync: false
state: unlit-icon
- type: Clothing
sprite: Objects/Consumable/Smokeables/Cigars/cigar-gold.rsi
Slots: [ mask ]
HeldPrefix: unlit
size: 1
- type: Sprite
sprite: Objects/Consumable/Smokeables/Cigars/cigar-gold.rsi
netsync: false
state: unlit-icon
- type: Clothing
sprite: Objects/Consumable/Smokeables/Cigars/cigar-gold.rsi
Slots: [ mask ]
HeldPrefix: unlit
size: 1

View File

@@ -46,6 +46,9 @@
name: metal rod
suffix: Single
components:
- type: Tag
tags:
- RodMetal1
- type: Sprite
state: rods
- type: Stack

View File

@@ -14,7 +14,6 @@
- type: Sprite
sprite: Objects/Misc/handcuffs.rsi
state: handcuff
- type: Clothing
sprite: Objects/Misc/handcuffs.rsi
Slots: [belt]

View File

@@ -4,6 +4,9 @@
parent: BaseItem
description: A cheap bar of soap. Doesn't smell.
components:
- type: Tag
tags:
- Soap
- type: Sprite
sprite: Objects/Specific/Janitorial/soap.rsi
state: soap

View File

@@ -1,9 +1,12 @@
- type: entity
name: ointment
description: "Used to treat those nasty burns."
description: Used to treat those nasty burns.
parent: BaseItem
id: Ointment
components:
- type: Tag
tags:
- Ointment
- type: Sprite
sprite: Objects/Specific/Medical/medical.rsi
state: ointment
@@ -17,24 +20,30 @@
- type: entity
name: bruise pack
description: "A therapeutic gel pack and bandages designed to treat blunt-force trauma."
description: A therapeutic gel pack and bandages designed to treat blunt-force trauma.
parent: Ointment
id: Brutepack
components:
- type: Sprite
state: brutepack
- type: Healing
heal:
Blunt: 10
- type: Stack
stackType: Brutepack
- type: Tag
tags:
- Brutepack
- type: Sprite
state: brutepack
- type: Healing
heal:
Blunt: 10
- type: Stack
stackType: Brutepack
- type: entity
name: roll of gauze
description: "Some sterile gauze to wrap around bloody stumps."
description: Some sterile gauze to wrap around bloody stumps.
parent: Ointment
id: Gauze
components:
- type: Tag
tags:
- Gauze
- type: Sprite
state: gauze
- type: Healing

View File

@@ -9,16 +9,18 @@
name: cable stack
suffix: Full
components:
- type: Stack
stackType: Cable
- type: Sprite
sprite: Objects/Tools/cable-coils.rsi
netsync: false
- type: Item
sprite: Objects/Tools/cable-coils.rsi
- type: CablePlacer
- type: Clickable
- type: Tag
tags:
- CableCoil
- type: Stack
stackType: Cable
- type: Sprite
sprite: Objects/Tools/cable-coils.rsi
netsync: false
- type: Item
sprite: Objects/Tools/cable-coils.rsi
- type: CablePlacer
- type: Clickable
- type: entity
id: CableHVStack
@@ -26,35 +28,35 @@
name: HV cable coil
suffix: Full
components:
- type: Stack
stackType: CableHV
- type: Sprite
state: coilhv-30
- type: Item
size: 10
HeldPrefix: coilhv
- type: CablePlacer
cablePrototypeID: CableHV
blockingCableType: HighVoltage
- type: Appearance
visuals:
- type: StackVisualizer
stackLayers:
- coilhv-10
- coilhv-20
- coilhv-30
- type: Stack
stackType: CableHV
- type: Sprite
state: coilhv-30
- type: Item
size: 10
HeldPrefix: coilhv
- type: CablePlacer
cablePrototypeID: CableHV
blockingCableType: HighVoltage
- type: Appearance
visuals:
- type: StackVisualizer
stackLayers:
- coilhv-10
- coilhv-20
- coilhv-30
- type: entity
parent: CableHVStack
id: CableHVStack1
suffix: 1
components:
- type: Sprite
state: coilhv-10
- type: Item
size: 3
- type: Stack
count: 1
- type: Sprite
state: coilhv-10
- type: Item
size: 3
- type: Stack
count: 1
- type: entity
parent: CableStack
@@ -63,33 +65,33 @@
description: Low-Voltage stack of wires for connecting APCs to machines and other purposes.
suffix: Full
components:
- type: Sprite
state: coillv-30
- type: Item
size: 10
HeldPrefix: coillv
- type: CablePlacer
cablePrototypeID: CableApcExtension
blockingCableType: Apc
- type: Appearance
visuals:
- type: StackVisualizer
stackLayers:
- coillv-10
- coillv-20
- coillv-30
- type: Sprite
state: coillv-30
- type: Item
size: 10
HeldPrefix: coillv
- type: CablePlacer
cablePrototypeID: CableApcExtension
blockingCableType: Apc
- type: Appearance
visuals:
- type: StackVisualizer
stackLayers:
- coillv-10
- coillv-20
- coillv-30
- type: entity
parent: CableApcStack
id: CableApcStack1
suffix: 1
components:
- type: Sprite
state: coillv-10
- type: Item
size: 3
- type: Stack
count: 1
- type: Sprite
state: coillv-10
- type: Item
size: 3
- type: Stack
count: 1
- type: entity
parent: CableStack
@@ -97,32 +99,32 @@
name: MV cable coil
suffix: Full
components:
- type: Stack
stackType: CableMV
- type: Sprite
state: coilmv-30
- type: Item
size: 10
HeldPrefix: coilmv
- type: CablePlacer
cablePrototypeID: CableMV
blockingCableType: MediumVoltage
- type: Appearance
visuals:
- type: StackVisualizer
stackLayers:
- coilmv-10
- coilmv-20
- coilmv-30
- type: Stack
stackType: CableMV
- type: Sprite
state: coilmv-30
- type: Item
size: 10
HeldPrefix: coilmv
- type: CablePlacer
cablePrototypeID: CableMV
blockingCableType: MediumVoltage
- type: Appearance
visuals:
- type: StackVisualizer
stackLayers:
- coilmv-10
- coilmv-20
- coilmv-30
- type: entity
parent: CableMVStack
id: CableMVStack1
suffix: 1
components:
- type: Sprite
state: coilmv-10
- type: Item
size: 3
- type: Stack
count: 1
- type: Sprite
state: coilmv-10
- type: Item
size: 3
- type: Stack
count: 1

View File

@@ -1,77 +1,80 @@
- type: entity
name: emergency flare # todo: we need some sort of IgnitionSourceComponent we can add to this, so when it's lit it will cause fires when touching fuel
parent: BaseItem
id: FlareBase
id: Flare
description: A flare that produces a very bright light for a short while. Point the flame away from yourself.
components:
- type: ExpendableLight
spentName: spent flare
spentDesc: It looks like this flare has burnt out. What a bummer.
glowDuration: 150
fadeOutDuration: 4
iconStateOn: flare_unlit
iconStateSpent: flare_spent
turnOnBehaviourID: turn_on
fadeOutBehaviourID: fade_out
litSound:
path: /Audio/Items/Flare/flare_on.ogg
loopedSound: /Audio/Items/Flare/flare_burn.ogg
- type: Sprite
sprite: Objects/Misc/flare.rsi
layers:
- state: flare_base
- state: flare_burn
color: "#FFFFFF"
visible: false
shader: unshaded
- state: flare_unlit
color: "#FF0000"
- type: Icon
sprite: Objects/Misc/flare.rsi
state: icon
- type: Item
sprite: Objects/Misc/flare.rsi
color: "#FF0000"
HeldPrefix: unlit
- type: Appearance
visuals:
- type: ExpendableLightVisualizer
- type: PointLight
enabled: false
color: "#FF8080"
radius: 1.0
energy: 9.0
- type: LightBehaviour
behaviours:
- !type:RandomizeBehaviour # immediately make it bright and flickery
id: turn_on
interpolate: Nearest
minDuration: 0.02
maxDuration: 0.06
startValue: 6.0
endValue: 9.0
property: Energy
isLooped: true
- !type:FadeBehaviour # have the radius start small and get larger as it starts to burn
id: turn_on
interpolate: Linear
maxDuration: 8.0
startValue: 1.0
endValue: 6.0
property: Radius
- !type:RandomizeBehaviour # weaker flicker as it fades out
id: fade_out
interpolate: Nearest
minDuration: 0.02
maxDuration: 0.06
startValue: 4.0
endValue: 8.0
property: Energy
isLooped: true
- !type:FadeBehaviour # fade out radius as it burns out
id: fade_out
interpolate: Linear
maxDuration: 4.0
startValue: 6.0
endValue: 1.0
property: Radius
- type: Tag
tags:
- Flare
- type: ExpendableLight
spentName: spent flare
spentDesc: It looks like this flare has burnt out. What a bummer.
glowDuration: 150
fadeOutDuration: 4
iconStateOn: flare_unlit
iconStateSpent: flare_spent
turnOnBehaviourID: turn_on
fadeOutBehaviourID: fade_out
litSound:
path: /Audio/Items/Flare/flare_on.ogg
loopedSound: /Audio/Items/Flare/flare_burn.ogg
- type: Sprite
sprite: Objects/Misc/flare.rsi
layers:
- state: flare_base
- state: flare_burn
color: "#FFFFFF"
visible: false
shader: unshaded
- state: flare_unlit
color: "#FF0000"
- type: Icon
sprite: Objects/Misc/flare.rsi
state: icon
- type: Item
sprite: Objects/Misc/flare.rsi
color: "#FF0000"
HeldPrefix: unlit
- type: Appearance
visuals:
- type: ExpendableLightVisualizer
- type: PointLight
enabled: false
color: "#FF8080"
radius: 1.0
energy: 9.0
- type: LightBehaviour
behaviours:
- !type:RandomizeBehaviour # immediately make it bright and flickery
id: turn_on
interpolate: Nearest
minDuration: 0.02
maxDuration: 0.06
startValue: 6.0
endValue: 9.0
property: Energy
isLooped: true
- !type:FadeBehaviour # have the radius start small and get larger as it starts to burn
id: turn_on
interpolate: Linear
maxDuration: 8.0
startValue: 1.0
endValue: 6.0
property: Radius
- !type:RandomizeBehaviour # weaker flicker as it fades out
id: fade_out
interpolate: Nearest
minDuration: 0.02
maxDuration: 0.06
startValue: 4.0
endValue: 8.0
property: Energy
isLooped: true
- !type:FadeBehaviour # fade out radius as it burns out
id: fade_out
interpolate: Linear
maxDuration: 4.0
startValue: 6.0
endValue: 1.0
property: Radius

View File

@@ -4,25 +4,28 @@
id: FlashlightLantern
description: It lights the way to freedom.
components:
- type: HandheldLight
- type: ItemActions
actions:
- actionType: ToggleLight
- type: PowerCellSlot
startingCellType: PowerCellSmallHigh
- type: Sprite
sprite: Objects/Tools/flashlight.rsi
layers:
- state: lantern_off
- state: HandheldLightOnOverlay
shader: unshaded
visible: false
- type: Item
sprite: Objects/Tools/flashlight.rsi
HeldPrefix: off
- type: PointLight
enabled: false
radius: 3
- type: Appearance
visuals:
- type: FlashLightVisualizer
- type: Tag
tags:
- Flashlight
- type: HandheldLight
- type: ItemActions
actions:
- actionType: ToggleLight
- type: PowerCellSlot
startingCellType: PowerCellSmallHigh
- type: Sprite
sprite: Objects/Tools/flashlight.rsi
layers:
- state: lantern_off
- state: HandheldLightOnOverlay
shader: unshaded
visible: false
- type: Item
sprite: Objects/Tools/flashlight.rsi
HeldPrefix: off
- type: PointLight
enabled: false
radius: 3
- type: Appearance
visuals:
- type: FlashLightVisualizer

View File

@@ -122,6 +122,7 @@
components:
- type: Tag
tags:
- Crowbar
- CrowbarRed
- type: Sprite
sprite: Objects/Tools/crowbar_red.rsi

View File

@@ -4,6 +4,9 @@
parent: BaseItem
abstract: true
components:
- type: Tag
tags:
- ShotgunShell
- type: Ammo
caliber: Shotgun
ammoSpread: 40

View File

@@ -126,6 +126,9 @@
id: TaserGun
description: A low-capacity, energy-based stun gun used by security teams to subdue targets at range.
components:
- type: Tag
tags:
- Taser
- type: Sprite
netsync: false
sprite: Objects/Weapons/Guns/Battery/taser.rsi

View File

@@ -3,6 +3,9 @@
id: BaseKnife
abstract: true
components:
- type: Tag
tags:
- Knife
- type: Utensil
types:
- Knife
@@ -21,11 +24,13 @@
id: KitchenKnife
description: A general purpose Chef's Knife made by Asters Merchant Guild. Guaranteed to stay sharp for years to come..
components:
- type: Tag
tags:
- Knife
- type: Sprite
sprite: Objects/Weapons/Melee/kitchen_knife.rsi
size: 2
state: icon
- type: Item
size: 10
sprite: Objects/Weapons/Melee/kitchen_knife.rsi
@@ -38,11 +43,13 @@
id: ButchCleaver
description: A huge blade used for chopping and chopping up meat. This includes clowns and clown-by-products.
components:
- type: Tag
tags:
- Knife
- type: Sprite
sprite: Objects/Weapons/Melee/cleaver.rsi
size: 4
state: butch
- type: MeleeWeapon
damage: 15
- type: Item
@@ -56,6 +63,10 @@
id: CombatKnife
description: A deadly knife intended for melee confrontations.
components:
- type: Tag
tags:
- CombatKnife
- Knife
- type: Sprite
sprite: Objects/Weapons/Melee/combat_knife.rsi
size: 2

View File

@@ -4,6 +4,9 @@
id: Spear
description: Definition of a Classic. Keeping murder affordable since 200,000 BCE.
components:
- type: Tag
tags:
- Spear
- type: Sprite
sprite: Objects/Weapons/Melee/spear.rsi
state: spear

View File

@@ -23,6 +23,9 @@
id: Katana
description: Ancient craftwork made with not so ancient plasteel.
components:
- type: Tag
tags:
- Katana
- type: Sprite
sprite: Objects/Weapons/Melee/katana.rsi
state: icon
@@ -39,6 +42,9 @@
id: Machete
description: A large, vicious looking blade.
components:
- type: Tag
tags:
- Machete
- type: Sprite
sprite: Objects/Weapons/Melee/machete.rsi
state: icon

View File

@@ -34,9 +34,9 @@
Plastic: 50
- type: latheRecipe
id: FlareBase
id: Flare
icon: Objects/Misc/flare.rsi
result: FlareBase
result: Flare
completetime: 500
materials:
Plastic: 50

View File

@@ -1,3 +1,9 @@
- type: Tag
id: Baguette
- type: Tag
id: Brutepack
- type: Tag
id: BotanyHatchet
@@ -13,12 +19,21 @@
- type: Tag
id: Bottle
- type: Tag
id: CableCoil
- type: Tag
id: Carrot
- type: Tag
id: CanPilot
- type: Tag
id: CaptainSabre
- type: Tag
id: CigPack
- type: Tag
id: Crayon
@@ -55,6 +70,9 @@
- type: Tag
id: ConveyorAssembly
- type: Tag
id: CombatKnife
- type: Tag
id: DoorElectronics
@@ -73,9 +91,18 @@
- type: Tag
id: FirelockElectronics
- type: Tag
id: Flare
- type: Tag
id: Flashlight
- type: Tag
id: FootstepSound
- type: Tag
id: Gauze
- type: Tag
id: GlassBeaker
@@ -91,12 +118,24 @@
- type: Tag
id: JawsOfLife
- type: Tag
id: Katana
- type: Tag
id: Knife
- type: Tag
id: Machete
- type: Tag
id: MonkeyCube
- type: Tag
id: NoSpinOnThrow
- type: Tag
id: Ointment
- type: Tag
id: Ore
@@ -115,6 +154,9 @@
- type: Tag
id: Powerdrill
- type: Tag
id: RodMetal1
- type: Tag
id: RollingPaper
@@ -124,12 +166,24 @@
- type: Tag
id: Sheet
- type: Tag
id: ShotgunShell
- type: Tag
id: Shovel
- type: Tag
id: Soap
- type: Tag
id: Spray
- type: Tag
id: Spear
- type: Tag
id: Taser
- type: Tag
id: Wall

View File

@@ -15,6 +15,30 @@
"name": "sheath-sabre-equipped-BELT",
"directions": 4
},
{
"name": "sheath-bag"
},
{
"name": "sheath-carrot"
},
{
"name": "sheath-crowbar"
},
{
"name": "sheath-crowbarr"
},
{
"name": "sheath-katana"
},
{
"name": "sheath-knife"
},
{
"name": "sheath-mop"
},
{
"name": "sheath-rod"
},
{
"name": "sheath-sabre"
},

Binary file not shown.

After

Width:  |  Height:  |  Size: 202 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 241 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 263 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 202 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 B