More Storage Rebalancing (#21373)

* the changes...

* eek
This commit is contained in:
Nemanja
2023-11-01 19:19:41 -04:00
committed by GitHub
parent 9e7cac2ac9
commit 85f09cae86
66 changed files with 189 additions and 202 deletions

View File

@@ -67,7 +67,8 @@ namespace Content.Client.Storage.UI
VerticalAlignment = VAlignment.Center VerticalAlignment = VAlignment.Center
}; };
_information.SetMessage(Loc.GetString("comp-storage-window-weight", _information.SetMessage(Loc.GetString("comp-storage-window-weight",
("percent", 0), ("weight", 0),
("maxWeight", 0),
("size", SharedItemSystem.GetItemSizeLocale(ItemSize.Normal)))); ("size", SharedItemSystem.GetItemSizeLocale(ItemSize.Normal))));
vBox.AddChild(_information); vBox.AddChild(_information);

View File

@@ -89,15 +89,15 @@ public enum ItemSize
/// <summary> /// <summary>
/// Items that are too large to fit inside of standard bags, but can worn in exterior slots or placed in custom containers. /// Items that are too large to fit inside of standard bags, but can worn in exterior slots or placed in custom containers.
/// </summary> /// </summary>
Large = 16, Large = 8,
/// <summary> /// <summary>
/// Items that are too large to place inside of any kind of container. /// Items that are too large to place inside of any kind of container.
/// </summary> /// </summary>
Huge = 24, Huge = 16,
/// <summary> /// <summary>
/// Picture furry gf /// Picture furry gf
/// </summary> /// </summary>
Ginormous = 48 Ginormous = 32
} }

View File

@@ -329,6 +329,9 @@ namespace Content.Shared.Stacks
if (!Resolve(insertEnt, ref insertStack) || !Resolve(targetEnt, ref targetStack)) if (!Resolve(insertEnt, ref insertStack) || !Resolve(targetEnt, ref targetStack))
return false; return false;
if (insertStack.StackTypeId != targetStack.StackTypeId)
return false;
var available = GetAvailableSpace(targetStack); var available = GetAvailableSpace(targetStack);
if (available <= 0) if (available <= 0)

View File

@@ -1,4 +1,3 @@
using System.Diagnostics.CodeAnalysis;
using System.Linq; using System.Linq;
using Content.Shared.ActionBlocker; using Content.Shared.ActionBlocker;
using Content.Shared.CombatMode; using Content.Shared.CombatMode;
@@ -473,32 +472,35 @@ public abstract class SharedStorageSystem : EntitySystem
return false; return false;
} }
if (item.Size > GetMaxItemSize((uid, storageComp))) if (!_stackQuery.TryGetComponent(insertEnt, out var stack) || !HasSpaceInStacks(uid, stack.StackTypeId))
{ {
reason = "comp-storage-too-big"; if (item.Size > GetMaxItemSize((uid, storageComp)))
return false; {
} reason = "comp-storage-too-big";
return false;
}
if (TryComp<StorageComponent>(insertEnt, out var insertStorage) if (TryComp<StorageComponent>(insertEnt, out var insertStorage)
&& GetMaxItemSize((insertEnt, insertStorage)) >= GetMaxItemSize((uid, storageComp))) && GetMaxItemSize((insertEnt, insertStorage)) >= GetMaxItemSize((uid, storageComp)))
{ {
reason = "comp-storage-too-big"; reason = "comp-storage-too-big";
return false; return false;
} }
if (storageComp.MaxSlots != null) if (storageComp.MaxSlots != null)
{ {
if (storageComp.Container.ContainedEntities.Count >= storageComp.MaxSlots) if (storageComp.Container.ContainedEntities.Count >= storageComp.MaxSlots)
{
reason = "comp-storage-insufficient-capacity";
return false;
}
}
else if (SharedItemSystem.GetItemSizeWeight(item.Size) + GetCumulativeItemSizes(uid, storageComp) > storageComp.MaxTotalWeight)
{ {
reason = "comp-storage-insufficient-capacity"; reason = "comp-storage-insufficient-capacity";
return false; return false;
} }
} }
else if (SharedItemSystem.GetItemSizeWeight(item.Size) + GetCumulativeItemSizes(uid, storageComp) > storageComp.MaxTotalWeight)
{
reason = "comp-storage-insufficient-capacity";
return false;
}
reason = null; reason = null;
return true; return true;
@@ -554,7 +556,7 @@ public abstract class SharedStorageSystem : EntitySystem
foreach (var ent in storageComp.Container.ContainedEntities) foreach (var ent in storageComp.Container.ContainedEntities)
{ {
if (!_stackQuery.TryGetComponent(ent, out var containedStack) || !insertStack.StackTypeId.Equals(containedStack.StackTypeId)) if (!_stackQuery.TryGetComponent(ent, out var containedStack))
continue; continue;
if (!_stack.TryAdd(insertEnt, ent, insertStack, containedStack)) if (!_stack.TryAdd(insertEnt, ent, insertStack, containedStack))
@@ -571,18 +573,24 @@ public abstract class SharedStorageSystem : EntitySystem
} }
// Still stackable remaining // Still stackable remaining
if (insertStack.Count > 0) if (toInsertCount > 0)
{ {
// Try to insert it as a new stack. // Try to insert it as a new stack.
if (!CanInsert(uid, insertEnt, out _, storageComp) || if (!CanInsert(uid, insertEnt, out _, storageComp) ||
!storageComp.Container.Insert(insertEnt)) !storageComp.Container.Insert(insertEnt))
{ {
UpdateUI(uid, storageComp);
// If we also didn't do any stack fills above then just end // If we also didn't do any stack fills above then just end
// otherwise play sound and update UI anyway. // otherwise play sound and update UI anyway.
if (toInsertCount == insertStack.Count) if (toInsertCount == insertStack.Count)
return false; return false;
} }
} }
else
{
UpdateUI(uid, storageComp);
}
} }
// Non-stackable but no insertion for reasons. // Non-stackable but no insertion for reasons.
else if (!storageComp.Container.Insert(insertEnt)) else if (!storageComp.Container.Insert(insertEnt))
@@ -657,11 +665,32 @@ public abstract class SharedStorageSystem : EntitySystem
//todo maybe this shouldn't be authoritative over weight? idk. //todo maybe this shouldn't be authoritative over weight? idk.
if (uid.Comp.MaxSlots != null) if (uid.Comp.MaxSlots != null)
{ {
return uid.Comp.Container.ContainedEntities.Count < uid.Comp.MaxSlots; return uid.Comp.Container.ContainedEntities.Count < uid.Comp.MaxSlots || HasSpaceInStacks(uid);
} }
return GetCumulativeItemSizes(uid, uid.Comp) < uid.Comp.MaxTotalWeight; return GetCumulativeItemSizes(uid, uid.Comp) < uid.Comp.MaxTotalWeight || HasSpaceInStacks(uid);
}
private bool HasSpaceInStacks(Entity<StorageComponent?> uid, string? stackType = null)
{
if (!Resolve(uid, ref uid.Comp))
return false;
foreach (var contained in uid.Comp.Container.ContainedEntities)
{
if (!_stackQuery.TryGetComponent(contained, out var stack))
continue;
if (stackType != null && !stack.StackTypeId.Equals(stackType))
continue;
if (_stack.GetAvailableSpace(stack) == 0)
continue;
return true;
}
return false;
} }
/// <summary> /// <summary>
@@ -697,7 +726,9 @@ public abstract class SharedStorageSystem : EntitySystem
// if there is no max item size specified, the value used // if there is no max item size specified, the value used
// is one below the item size of the storage entity, clamped at ItemSize.Tiny // is one below the item size of the storage entity, clamped at ItemSize.Tiny
return (ItemSize) Math.Max((int) item.Size - 1, 1); var sizes = Enum.GetValues<ItemSize>().ToList();
var currentSizeIndex = sizes.IndexOf(item.Size);
return sizes[Math.Max(currentSizeIndex - 1, 0)];
} }
public FixedPoint2 GetStorageFillPercentage(Entity<StorageComponent?> uid) public FixedPoint2 GetStorageFillPercentage(Entity<StorageComponent?> uid)

View File

@@ -317,6 +317,8 @@
name: death squad backpack name: death squad backpack
description: Holds the kit of CentComm's most feared agents. description: Holds the kit of CentComm's most feared agents.
components: components:
- type: Storage
maxTotalWeight: 56
- type: StorageFill - type: StorageFill
contents: contents:
- id: BoxSurvivalEngineering - id: BoxSurvivalEngineering

View File

@@ -27,7 +27,7 @@
- id: BoxSurvivalSecurity - id: BoxSurvivalSecurity
- id: Flash - id: Flash
- id: MagazinePistol - id: MagazinePistol
- type: entity - type: entity
noSpawn: true noSpawn: true
parent: ClothingBackpackDuffelSecurity parent: ClothingBackpackDuffelSecurity
@@ -47,7 +47,6 @@
components: components:
- type: StorageFill - type: StorageFill
contents: contents:
- id: BoxSurvivalBrigmedic
- id: Flash - id: Flash
- type: entity - type: entity

View File

@@ -41,7 +41,7 @@
- id: BoxSurvivalSecurity - id: BoxSurvivalSecurity
- id: Flash - id: Flash
- id: MagazinePistol - id: MagazinePistol
- type: entity - type: entity
noSpawn: true noSpawn: true
parent: ClothingBackpackSatchelSecurity parent: ClothingBackpackSatchelSecurity
@@ -61,7 +61,6 @@
components: components:
- type: StorageFill - type: StorageFill
contents: contents:
- id: BoxSurvivalBrigmedic
- id: Flash - id: Flash
- type: entity - type: entity

View File

@@ -20,7 +20,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazinePistolCaselessRifle - id: MagazinePistolCaselessRifle
amount: 6 amount: 4
- type: entity - type: entity
name: box of .25 caseless (practice) magazines name: box of .25 caseless (practice) magazines
@@ -31,7 +31,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazinePistolCaselessRiflePractice - id: MagazinePistolCaselessRiflePractice
amount: 6 amount: 4
- type: entity - type: entity
name: box of .25 caseless (rubber) magazines name: box of .25 caseless (rubber) magazines
@@ -42,7 +42,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazineCaselessRifleRubber - id: MagazineCaselessRifleRubber
amount: 6 amount: 4
# LightRifle # LightRifle
- type: entity - type: entity
@@ -54,7 +54,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazineLightRifle - id: MagazineLightRifle
amount: 6 amount: 4
- type: entity - type: entity
name: box of .30 rifle (practice) magazines name: box of .30 rifle (practice) magazines
@@ -65,7 +65,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazineLightRiflePractice - id: MagazineLightRiflePractice
amount: 6 amount: 4
- type: entity - type: entity
name: box of .30 rifle (rubber) magazines name: box of .30 rifle (rubber) magazines
@@ -76,7 +76,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazineLightRifleRubber - id: MagazineLightRifleRubber
amount: 6 amount: 4
- type: entity - type: entity
name: box of Vector magazines name: box of Vector magazines
@@ -132,7 +132,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazinePistol - id: MagazinePistol
amount: 6 amount: 4
- type: entity - type: entity
name: box of pistol .35 auto (practice) magazines name: box of pistol .35 auto (practice) magazines
@@ -143,7 +143,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazinePistolPractice - id: MagazinePistolPractice
amount: 6 amount: 4
- type: entity - type: entity
name: box of pistol .35 auto (rubber) magazines name: box of pistol .35 auto (rubber) magazines
@@ -154,7 +154,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazinePistolRubber - id: MagazinePistolRubber
amount: 6 amount: 4
- type: entity - type: entity
name: box of machine pistol .35 auto magazines name: box of machine pistol .35 auto magazines
@@ -165,7 +165,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazinePistolHighCapacity - id: MagazinePistolHighCapacity
amount: 6 amount: 4
- type: entity - type: entity
name: box of machine pistol .35 auto (practice) magazines name: box of machine pistol .35 auto (practice) magazines
@@ -176,7 +176,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazinePistolHighCapacityPractice - id: MagazinePistolHighCapacityPractice
amount: 6 amount: 4
- type: entity - type: entity
name: box of machine pistol .35 auto (rubber) magazines name: box of machine pistol .35 auto (rubber) magazines
@@ -187,7 +187,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazinePistolHighCapacityRubber - id: MagazinePistolHighCapacityRubber
amount: 6 amount: 4
- type: entity - type: entity
@@ -233,7 +233,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazineShotgun - id: MagazineShotgun
amount: 6 amount: 4
- type: entity - type: entity
name: box of (.50 beanbag) ammo drums name: box of (.50 beanbag) ammo drums
@@ -244,7 +244,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazineShotgunBeanbag - id: MagazineShotgunBeanbag
amount: 6 amount: 4
- type: entity - type: entity
name: box of (.50 slug) ammo drums name: box of (.50 slug) ammo drums
@@ -255,7 +255,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazineShotgunSlug - id: MagazineShotgunSlug
amount: 6 amount: 4
- type: entity - type: entity
name: box of (.50 incendiary) ammo drums name: box of (.50 incendiary) ammo drums
@@ -266,7 +266,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazineShotgunIncendiary - id: MagazineShotgunIncendiary
amount: 6 amount: 4
# base BallisticAmmoProvider dispensers # base BallisticAmmoProvider dispensers
- type: entity - type: entity
@@ -396,7 +396,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazineRifle - id: MagazineRifle
amount: 6 amount: 4
- type: entity - type: entity
name: box of .20 rifle (practice) magazines name: box of .20 rifle (practice) magazines
@@ -407,7 +407,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazineRiflePractice - id: MagazineRiflePractice
amount: 6 amount: 4
- type: entity - type: entity
name: box of .20 rifle (rubber) magazines name: box of .20 rifle (rubber) magazines
@@ -418,4 +418,4 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MagazineRifleRubber - id: MagazineRifleRubber
amount: 6 amount: 4

View File

@@ -56,26 +56,6 @@
- state: internals - state: internals
- state: emergencytank - state: emergencytank
- type: entity
name: survival box
parent: BoxCardboard
id: BoxSurvivalBrigmedic
description: It's a box with basic internals inside.
suffix: MedSec
components:
- type: StorageFill
contents:
- id: ClothingMaskBreathMedicalSecurity
- id: EmergencyOxygenTankFilled
- id: SpaceMedipen
- id: EmergencyMedipen
- id: EmergencyMedipen
- id: FoodTinMRE
- type: Sprite
layers:
- state: internals
- state: emergencytank
- type: entity - type: entity
name: survival box name: survival box
parent: BoxCardboard parent: BoxCardboard

View File

@@ -16,7 +16,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: Mousetrap - id: Mousetrap
amount: 6 amount: 4
- type: Sprite - type: Sprite
layers: layers:
- state: box - state: box
@@ -102,7 +102,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: PassengerPDA - id: PassengerPDA
amount: 6 amount: 4
- type: Sprite - type: Sprite
layers: layers:
- state: box - state: box
@@ -117,7 +117,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: PassengerIDCard - id: PassengerIDCard
amount: 6 amount: 4
- type: Sprite - type: Sprite
layers: layers:
- state: box - state: box
@@ -132,7 +132,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: ClothingHeadsetGrey - id: ClothingHeadsetGrey
amount: 6 amount: 4
- type: Sprite - type: Sprite
layers: layers:
- state: box - state: box
@@ -212,17 +212,11 @@
- type: entity - type: entity
name: hatsune miku day box name: hatsune miku day bag
parent: BoxCardboard parent: ClothingBackpackDuffel
id: BoxPerformer id: BoxPerformer
description: Happy Hatsune Miku Day! description: Happy Hatsune Miku Day!
components: components:
- type: Storage
maxItemSize: Normal
whitelist:
components:
- Clothing
- Food
- type: StorageFill - type: StorageFill
contents: contents:
- id: ClothingShoesBootsPerformer - id: ClothingShoesBootsPerformer
@@ -278,7 +272,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: EncryptionKeyCommon - id: EncryptionKeyCommon
amount: 6 amount: 4
- type: Sprite - type: Sprite
layers: layers:
- state: box - state: box
@@ -296,7 +290,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: EncryptionKeyCargo - id: EncryptionKeyCargo
amount: 6 amount: 4
- type: entity - type: entity
name: engineering encryption key box name: engineering encryption key box
@@ -306,7 +300,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: EncryptionKeyEngineering - id: EncryptionKeyEngineering
amount: 6 amount: 4
- type: entity - type: entity
name: med-sci encryption key box name: med-sci encryption key box
@@ -316,7 +310,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: EncryptionKeyMedicalScience - id: EncryptionKeyMedicalScience
amount: 6 amount: 4
- type: entity - type: entity
name: medical encryption key box name: medical encryption key box
@@ -326,7 +320,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: EncryptionKeyMedical - id: EncryptionKeyMedical
amount: 6 amount: 4
- type: entity - type: entity
name: robotech encryption key box name: robotech encryption key box
@@ -336,7 +330,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: EncryptionKeyRobo - id: EncryptionKeyRobo
amount: 6 amount: 4
- type: entity - type: entity
name: science encryption key box name: science encryption key box
@@ -346,7 +340,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: EncryptionKeyScience - id: EncryptionKeyScience
amount: 6 amount: 4
- type: entity - type: entity
name: security encryption key box name: security encryption key box
@@ -356,7 +350,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: EncryptionKeySecurity - id: EncryptionKeySecurity
amount: 6 amount: 4
- type: entity - type: entity
name: service encryption key box name: service encryption key box
@@ -366,7 +360,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: EncryptionKeyService - id: EncryptionKeyService
amount: 6 amount: 4
- type: entity - type: entity
name: syndicate encryption key box name: syndicate encryption key box

View File

@@ -22,7 +22,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: PillCanister - id: PillCanister
amount: 6 amount: 4
- type: Sprite - type: Sprite
layers: layers:
- state: box - state: box
@@ -52,7 +52,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: ClothingMaskSterile - id: ClothingMaskSterile
amount: 6 amount: 4
- type: Sprite - type: Sprite
layers: layers:
- state: box - state: box
@@ -117,7 +117,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: BodyBag_Folded - id: BodyBag_Folded
amount: 5 amount: 4
- type: Sprite - type: Sprite
layers: layers:
- state: box - state: box

View File

@@ -7,7 +7,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: Handcuffs - id: Handcuffs
amount: 6 amount: 4
- type: Sprite - type: Sprite
layers: layers:
- state: box_security - state: box_security

View File

@@ -124,9 +124,10 @@
suffix: Filled suffix: Filled
components: components:
- type: Item - type: Item
size: Large size: Ginormous
- type: Storage - type: Storage
maxSlots: 8 maxSlots: 8
maxItemSize: Normal
- type: StorageFill - type: StorageFill
contents: contents:
- id: ExGrenade - id: ExGrenade

View File

@@ -16,9 +16,9 @@
suffix: SniperBundle suffix: SniperBundle
components: components:
- type: Item - type: Item
size: Huge size: Ginormous
- type: Storage - type: Storage
maxItemSize: Large maxItemSize: Huge
- type: StorageFill - type: StorageFill
contents: contents:
- id: WeaponSniperHristov - id: WeaponSniperHristov

View File

@@ -6,11 +6,8 @@
components: components:
- type: StorageFill - type: StorageFill
contents: contents:
- id: HandheldHealthAnalyzer
- id: Brutepack - id: Brutepack
amount: 2
- id: Ointment - id: Ointment
amount: 2
- id: Gauze - id: Gauze
- id: PillCanisterTricordrazine - id: PillCanisterTricordrazine
# see https://github.com/tgstation/blob/master/code/game/objects/items/storage/firstaid.dm for example contents # see https://github.com/tgstation/blob/master/code/game/objects/items/storage/firstaid.dm for example contents
@@ -22,11 +19,8 @@
components: components:
- type: StorageFill - type: StorageFill
contents: contents:
- id: RegenerativeMesh
amount: 2
- id: Ointment - id: Ointment
amount: 2 amount: 2
- id: SyringeSigynate
- id: PillCanisterKelotane - id: PillCanisterKelotane
- id: PillCanisterDermaline - id: PillCanisterDermaline
@@ -37,14 +31,10 @@
components: components:
- type: StorageFill - type: StorageFill
contents: contents:
- id: MedicatedSuture
- id: Brutepack - id: Brutepack
- id: Gauze - id: Gauze
- id: Bloodpack
- id: SyringeTranexamicAcid
- id: PillCanisterIron - id: PillCanisterIron
- id: PillCanisterCopper - id: PillCanisterCopper
- id: PillCanisterBicaridine
- type: entity - type: entity
id: MedkitToxinFilled id: MedkitToxinFilled
@@ -79,12 +69,9 @@
components: components:
- type: StorageFill - type: StorageFill
contents: contents:
- id: GeigerCounter
- id: SyringePhalanximine - id: SyringePhalanximine
- id: RadAutoInjector - id: RadAutoInjector
amount: 1
- id: EmergencyMedipen - id: EmergencyMedipen
amount: 1
- id: PillCanisterHyronalin - id: PillCanisterHyronalin
- type: entity - type: entity
@@ -95,9 +82,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: MedicatedSuture - id: MedicatedSuture
amount: 2
- id: RegenerativeMesh - id: RegenerativeMesh
amount: 2
- id: Bloodpack - id: Bloodpack
amount: 2 amount: 2
@@ -108,13 +93,11 @@
components: components:
- type: StorageFill - type: StorageFill
contents: contents:
- id: HandheldHealthAnalyzer
- id: MedicatedSuture - id: MedicatedSuture
- id: RegenerativeMesh - id: RegenerativeMesh
- id: SyringeEphedrine - id: SyringeEphedrine
- id: BruteAutoInjector - id: BruteAutoInjector
- id: BurnAutoInjector - id: BurnAutoInjector
- id: EmergencyMedipen
- type: entity - type: entity
id: StimkitFilled id: StimkitFilled

View File

@@ -8,13 +8,13 @@
sprite: Clothing/Back/Backpacks/backpack.rsi sprite: Clothing/Back/Backpacks/backpack.rsi
state: icon state: icon
- type: Item - type: Item
size: Large size: Huge
- type: Clothing - type: Clothing
quickEquip: false quickEquip: false
slots: slots:
- back - back
- type: Storage - type: Storage
maxItemSize: Large maxItemSize: Huge
maxTotalWeight: 28 maxTotalWeight: 28
- type: ContainerContainer - type: ContainerContainer
containers: containers:
@@ -263,7 +263,7 @@
- type: Item - type: Item
size: Ginormous size: Ginormous
- type: Storage - type: Storage
maxItemSize: Large maxItemSize: Huge
maxTotalWeight: 56 #14 normal-sized items. maxTotalWeight: 56 #14 normal-sized items.
- type: entity - type: entity

View File

@@ -7,7 +7,7 @@
- type: Sprite - type: Sprite
sprite: Clothing/Back/Duffels/duffel.rsi sprite: Clothing/Back/Duffels/duffel.rsi
- type: Storage - type: Storage
maxItemSize: Large maxItemSize: Huge
maxTotalWeight: 40 maxTotalWeight: 40
- type: ClothingSpeedModifier - type: ClothingSpeedModifier
walkModifier: 1 walkModifier: 1
@@ -230,7 +230,7 @@
- type: Item - type: Item
size: Ginormous size: Ginormous
- type: Storage - type: Storage
maxItemSize: Large maxItemSize: Huge
maxTotalWeight: 56 #14 normal-sized items. maxTotalWeight: 56 #14 normal-sized items.
- type: ClothingSpeedModifier - type: ClothingSpeedModifier
sprintModifier: 1 # makes its stats identical to other variants of bag of holding sprintModifier: 1 # makes its stats identical to other variants of bag of holding
@@ -242,7 +242,7 @@
description: A duffel bag containing a variety of biological containment equipment. description: A duffel bag containing a variety of biological containment equipment.
components: components:
- type: Storage - type: Storage
maxItemSize: Large maxItemSize: Huge
maxTotalWeight: 40 maxTotalWeight: 40
- type: ClothingSpeedModifier - type: ClothingSpeedModifier
walkModifier: 1 walkModifier: 1

View File

@@ -170,5 +170,5 @@
- type: Item - type: Item
size: Ginormous size: Ginormous
- type: Storage - type: Storage
maxItemSize: Large maxItemSize: Huge
maxTotalWeight: 56 #14 normal-sized items. maxTotalWeight: 56 #14 normal-sized items.

View File

@@ -33,7 +33,7 @@
sprite: Clothing/Back/Backpacks/waterbackpack.rsi sprite: Clothing/Back/Backpacks/waterbackpack.rsi
state: icon state: icon
- type: Item - type: Item
size: Huge size: Ginormous
- type: Clothing - type: Clothing
slots: BACK slots: BACK
sprite: Clothing/Back/Backpacks/waterbackpack.rsi sprite: Clothing/Back/Backpacks/waterbackpack.rsi

View File

@@ -25,7 +25,7 @@
maxSlots: 7 maxSlots: 7
maxItemSize: Normal maxItemSize: Normal
- type: Item - type: Item
size: Huge size: Ginormous
- type: ContainerContainer - type: ContainerContainer
containers: containers:
storagebase: !type:Container storagebase: !type:Container

View File

@@ -416,7 +416,7 @@
- type: Clothing - type: Clothing
sprite: Clothing/Belt/bandolier.rsi sprite: Clothing/Belt/bandolier.rsi
- type: Item - type: Item
size: Large size: Huge
- type: Storage - type: Storage
whitelist: whitelist:
tags: tags:
@@ -461,7 +461,7 @@
- type: Clothing - type: Clothing
sprite: Clothing/Belt/syndieholster.rsi sprite: Clothing/Belt/syndieholster.rsi
- type: Item - type: Item
size: Large size: Huge
- type: Storage - type: Storage
whitelist: whitelist:
components: components:
@@ -524,7 +524,7 @@
- type: Clothing - type: Clothing
sprite: Clothing/Belt/militarywebbingmed.rsi sprite: Clothing/Belt/militarywebbingmed.rsi
- type: Item - type: Item
size: Large size: Huge
- type: entity - type: entity
parent: ClothingBeltBase parent: ClothingBeltBase

View File

@@ -15,7 +15,7 @@
id: ClothingOuterBaseLarge id: ClothingOuterBaseLarge
components: components:
- type: Item - type: Item
size: Large size: Huge
- type: Clothing - type: Clothing
slots: slots:
- outerClothing - outerClothing
@@ -70,7 +70,7 @@
walkModifier: 0.4 walkModifier: 0.4
sprintModifier: 0.6 sprintModifier: 0.6
- type: Item - type: Item
size: Huge size: Ginormous
- type: Armor - type: Armor
modifiers: modifiers:
coefficients: coefficients:
@@ -105,7 +105,7 @@
walkModifier: 0.8 walkModifier: 0.8
sprintModifier: 0.8 sprintModifier: 0.8
- type: Item - type: Item
size: Large size: Huge
- type: entity - type: entity
parent: ClothingOuterBase parent: ClothingOuterBase
@@ -128,7 +128,7 @@
id: ClothingOuterBaseMedium id: ClothingOuterBaseMedium
components: components:
- type: Item - type: Item
size: Large size: Huge
- type: Clothing - type: Clothing
slots: slots:
- outerClothing - outerClothing

View File

@@ -431,7 +431,7 @@
- type: Sprite - type: Sprite
sprite: Clothing/OuterClothing/Hardsuits/syndicate.rsi sprite: Clothing/OuterClothing/Hardsuits/syndicate.rsi
- type: Item - type: Item
size: Large size: Huge
- type: Clothing - type: Clothing
sprite: Clothing/OuterClothing/Hardsuits/syndicate.rsi sprite: Clothing/OuterClothing/Hardsuits/syndicate.rsi
- type: PressureProtection - type: PressureProtection

View File

@@ -172,7 +172,7 @@
graph: SupplyBot graph: SupplyBot
node: bot node: bot
- type: Storage - type: Storage
maxItemSize: Large maxItemSize: Huge
maxTotalWeight: 40 maxTotalWeight: 40
- type: UserInterface - type: UserInterface
interfaces: interfaces:

View File

@@ -13,6 +13,8 @@
- type: Item - type: Item
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/green.rsi sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/green.rsi
size: Normal size: Normal
- type: Storage
maxSlots: 6
- type: StorageFill - type: StorageFill
contents: contents:
- id: CigPackGreen - id: CigPackGreen

View File

@@ -9,6 +9,6 @@
layers: layers:
- state: icon - state: icon
- type: Item - type: Item
size: Huge size: Ginormous
- type: StaticPrice - type: StaticPrice
price: 0 price: 0

View File

@@ -236,7 +236,7 @@
state: box state: box
- type: Storage - type: Storage
maxSlots: 7 maxSlots: 7
maxTotalWeight: 7 maxItemSize: Tiny
- type: Item - type: Item
sprite: Objects/Fun/crayons.rsi sprite: Objects/Fun/crayons.rsi
size: Small size: Small

View File

@@ -7,9 +7,10 @@
sprite: Objects/Storage/boxes.rsi sprite: Objects/Storage/boxes.rsi
- type: Item - type: Item
sprite: Objects/Storage/boxes.rsi sprite: Objects/Storage/boxes.rsi
size: Normal size: Large
- type: Storage - type: Storage
maxTotalWeight: 12 maxTotalWeight: 8
maxItemSize: Small
- type: ContainerContainer - type: ContainerContainer
containers: containers:
storagebase: !type:Container storagebase: !type:Container

View File

@@ -5,10 +5,9 @@
description: Useful for carrying items in your hands. description: Useful for carrying items in your hands.
components: components:
- type: Item - type: Item
size: Large size: Ginormous
- type: Storage - type: Storage
maxSlots: 4 maxTotalWeight: 24
maxTotalWeight: 16
- type: Tag - type: Tag
tags: tags:
- Briefcase - Briefcase
@@ -33,7 +32,7 @@
description: Useful for carrying items in your hands. description: Useful for carrying items in your hands.
components: components:
- type: Item - type: Item
size: Large size: Huge
- type: Storage - type: Storage
maxSlots: 6 maxSlots: 6
maxTotalWeight: 24 maxTotalWeight: 24

View File

@@ -11,7 +11,7 @@
map: [ "enabled" ] map: [ "enabled" ]
- type: Item - type: Item
sprite: Objects/Misc/fire_extinguisher.rsi sprite: Objects/Misc/fire_extinguisher.rsi
size: Small size: Normal
- type: SolutionContainerManager - type: SolutionContainerManager
solutions: solutions:
spray: spray:

View File

@@ -62,8 +62,6 @@
id: Zipties id: Zipties
parent: Handcuffs parent: Handcuffs
components: components:
- type: Item
size: Tiny
- type: Handcuff - type: Handcuff
breakoutTime: 20 # halfway between improvised cablecuffs and metal ones breakoutTime: 20 # halfway between improvised cablecuffs and metal ones
cuffedRSI: Objects/Misc/cablecuffs.rsi # cablecuffs will look fine cuffedRSI: Objects/Misc/cablecuffs.rsi # cablecuffs will look fine
@@ -90,7 +88,7 @@
abstract: true abstract: true
components: components:
- type: Item - type: Item
size: Tiny size: Small
- type: Tag - type: Tag
tags: tags:
- Trash - Trash

View File

@@ -39,6 +39,7 @@
- type: Item - type: Item
sprite: Objects/Specific/Medical/implanter.rsi sprite: Objects/Specific/Medical/implanter.rsi
heldPrefix: 0 heldPrefix: 0
size: Small
- type: Appearance - type: Appearance
- type: GenericVisualizer - type: GenericVisualizer
visuals: visuals:
@@ -97,7 +98,6 @@
components: components:
- type: Item - type: Item
sprite: Objects/Specific/Medical/syndi_implanter.rsi sprite: Objects/Specific/Medical/syndi_implanter.rsi
size: Tiny
- type: Sprite - type: Sprite
sprite: Objects/Specific/Medical/syndi_implanter.rsi sprite: Objects/Specific/Medical/syndi_implanter.rsi
state: implanter1 state: implanter1

View File

@@ -4,10 +4,6 @@
id: MonkeyCubeBox id: MonkeyCubeBox
description: Drymate brand monkey cubes. Just add water! description: Drymate brand monkey cubes. Just add water!
components: components:
- type: Storage
whitelist:
tags:
- MonkeyCube
- type: StorageFill - type: StorageFill
contents: contents:
- id: MonkeyCubeWrapped - id: MonkeyCubeWrapped
@@ -23,6 +19,8 @@
id: MonkeyCubeWrapped id: MonkeyCubeWrapped
description: Unwrap this to get a monkey cube. description: Unwrap this to get a monkey cube.
components: components:
- type: Item
size: Tiny
- type: SpawnItemsOnUse - type: SpawnItemsOnUse
items: items:
- id: MonkeyCube - id: MonkeyCube
@@ -69,6 +67,8 @@
- type: Sprite - type: Sprite
sprite: Objects/Misc/monkeycube.rsi sprite: Objects/Misc/monkeycube.rsi
state: wrapper state: wrapper
- type: Item
size: Tiny
- type: Tag - type: Tag
tags: tags:
- MonkeyCube - MonkeyCube

View File

@@ -119,7 +119,7 @@
components: components:
- Hands # no use giving a mouse a storage implant, but a monkey is another story... - Hands # no use giving a mouse a storage implant, but a monkey is another story...
- type: Item - type: Item
size: Huge size: Ginormous
- type: Storage - type: Storage
maxSlots: 4 maxSlots: 4
maxItemSize: Small maxItemSize: Small

View File

@@ -5,7 +5,7 @@
description: A flatpack used for constructing an antimatter engine reactor. Use a multitool to unpack it. description: A flatpack used for constructing an antimatter engine reactor. Use a multitool to unpack it.
components: components:
- type: Item - type: Item
size: Small size: Normal
sprite: Objects/Power/AME/ame_part.rsi sprite: Objects/Power/AME/ame_part.rsi
- type: Sprite - type: Sprite
sprite: Objects/Power/AME/ame_part.rsi sprite: Objects/Power/AME/ame_part.rsi

View File

@@ -5,7 +5,7 @@
description: Drains immense amounts of electricity from the grid. description: Drains immense amounts of electricity from the grid.
components: components:
- type: Item - type: Item
size: Large size: Huge
- type: NodeContainer - type: NodeContainer
examinable: true examinable: true
nodes: nodes:

View File

@@ -4,7 +4,7 @@
name: solar assembly part name: solar assembly part
components: components:
- type: Item - type: Item
size: Small size: Normal
- type: Sprite - type: Sprite
sprite: Objects/Power/solar_parts.rsi sprite: Objects/Power/solar_parts.rsi
state: solar_assembly_parts state: solar_assembly_parts

View File

@@ -10,7 +10,7 @@
state: riot-icon state: riot-icon
- type: Item - type: Item
sprite: Objects/Weapons/Melee/shields.rsi sprite: Objects/Weapons/Melee/shields.rsi
size: Huge size: Ginormous
heldPrefix: riot heldPrefix: riot
- type: Blocking - type: Blocking
passiveBlockModifier: passiveBlockModifier:

View File

@@ -5,7 +5,7 @@
description: A forensic pad for collecting fingerprints or fibers. description: A forensic pad for collecting fingerprints or fibers.
components: components:
- type: Item - type: Item
size: Tiny size: Small
- type: ForensicPad - type: ForensicPad
- type: Sprite - type: Sprite
sprite: Objects/Misc/bureaucracy.rsi sprite: Objects/Misc/bureaucracy.rsi

View File

@@ -47,6 +47,8 @@
- key: enum.StorageUiKey.Key - key: enum.StorageUiKey.Key
type: StorageBoundUserInterface type: StorageBoundUserInterface
- type: Storage - type: Storage
maxItemSize: Normal
maxTotalWeight: 40
- type: TileFrictionModifier - type: TileFrictionModifier
modifier: 0.4 # makes it slide modifier: 0.4 # makes it slide

View File

@@ -13,7 +13,7 @@
slots: slots:
- belt - belt
- type: Item - type: Item
size: Huge size: Ginormous
- type: Storage - type: Storage
maxSlots: 15 maxSlots: 15
quickInsert: true quickInsert: true

View File

@@ -44,7 +44,7 @@
abstract: true abstract: true
components: components:
- type: Item - type: Item
size: Huge size: Ginormous
- type: entity - type: entity
parent: BaseRipleyPart parent: BaseRipleyPart
@@ -172,7 +172,7 @@
abstract: true abstract: true
components: components:
- type: Item - type: Item
size: Huge size: Ginormous
- type: entity - type: entity
parent: BaseHonkerPart parent: BaseHonkerPart
@@ -300,7 +300,7 @@
abstract: true abstract: true
components: components:
- type: Item - type: Item
size: Large size: Huge
- type: entity - type: entity
parent: BaseHamtrPart parent: BaseHamtrPart

View File

@@ -7,7 +7,7 @@
sprite: Objects/Specific/Mech/mecha_equipment.rsi sprite: Objects/Specific/Mech/mecha_equipment.rsi
- type: Item - type: Item
sprite: Objects/Specific/Mech/mecha_equipment.rsi sprite: Objects/Specific/Mech/mecha_equipment.rsi
size: Huge size: Ginormous
- type: MechEquipment - type: MechEquipment
- type: GuideHelp - type: GuideHelp
guides: guides:

View File

@@ -291,7 +291,6 @@
map: ["enum.SolutionContainerLayers.Fill"] map: ["enum.SolutionContainerLayers.Fill"]
- type: Item - type: Item
sprite: Objects/Specific/Medical/medipen.rsi sprite: Objects/Specific/Medical/medipen.rsi
size: Small
- type: SolutionContainerManager - type: SolutionContainerManager
solutions: solutions:
pen: pen:
@@ -346,7 +345,6 @@
map: ["enum.SolutionContainerLayers.Fill"] map: ["enum.SolutionContainerLayers.Fill"]
- type: Item - type: Item
sprite: Objects/Specific/Medical/medipen.rsi sprite: Objects/Specific/Medical/medipen.rsi
size: Tiny
- type: SolutionContainerManager - type: SolutionContainerManager
solutions: solutions:
pen: pen:

View File

@@ -8,9 +8,10 @@
sprite: Objects/Specific/Medical/firstaidkits.rsi sprite: Objects/Specific/Medical/firstaidkits.rsi
state: firstaid state: firstaid
- type: Storage - type: Storage
maxTotalWeight: 15 maxTotalWeight: 8
maxItemSize: Small
- type: Item - type: Item
size: Normal size: Large
sprite: Objects/Specific/Medical/firstaidkits.rsi sprite: Objects/Specific/Medical/firstaidkits.rsi
heldPrefix: firstaid heldPrefix: firstaid
- type: Tag - type: Tag

View File

@@ -14,9 +14,9 @@
slots: slots:
- belt - belt
- type: Item - type: Item
size: Huge size: Ginormous
- type: Storage - type: Storage
maxSlots: 5 maxSlots: 10
maxItemSize: Normal maxItemSize: Normal
quickInsert: true quickInsert: true
areaInsert: true areaInsert: true

View File

@@ -40,6 +40,7 @@
- type: Item - type: Item
sprite: Objects/Misc/flare.rsi sprite: Objects/Misc/flare.rsi
heldPrefix: unlit heldPrefix: unlit
size: Tiny
- type: Appearance - type: Appearance
- type: PointLight - type: PointLight
enabled: false enabled: false

View File

@@ -37,7 +37,7 @@
state: icon state: icon
- type: Item - type: Item
sprite: Objects/Tanks/Jetpacks/blue.rsi sprite: Objects/Tanks/Jetpacks/blue.rsi
size: Large size: Huge
- type: UserInterface - type: UserInterface
interfaces: interfaces:
- key: enum.SharedGasTankUiKey.Key - key: enum.SharedGasTankUiKey.Key

View File

@@ -12,7 +12,7 @@
maxItemSize: Normal maxItemSize: Normal
maxTotalWeight: 14 maxTotalWeight: 14
- type: Item - type: Item
size: Huge size: Ginormous
- type: ItemCooldown - type: ItemCooldown
- type: MeleeWeapon - type: MeleeWeapon
damage: damage:
@@ -116,7 +116,7 @@
- type: Item - type: Item
sprite: Objects/Tools/Toolboxes/toolbox_syn.rsi sprite: Objects/Tools/Toolboxes/toolbox_syn.rsi
- type: Storage - type: Storage
maxItemSize: Large maxItemSize: Huge
maxTotalWeight: 28 maxTotalWeight: 28
- type: MeleeWeapon - type: MeleeWeapon
damage: damage:

View File

@@ -5,7 +5,7 @@
components: components:
- type: Sprite - type: Sprite
- type: Item - type: Item
size: Large size: Huge
- type: Clothing - type: Clothing
sprite: Objects/Weapons/Guns/Battery/laser_retro.rsi sprite: Objects/Weapons/Guns/Battery/laser_retro.rsi
quickEquip: false quickEquip: false

View File

@@ -7,7 +7,7 @@
components: components:
- type: Sprite - type: Sprite
- type: Item - type: Item
size: Huge size: Ginormous
- type: Gun - type: Gun
fireRate: 20 fireRate: 20
selectedMode: FullAuto selectedMode: FullAuto

View File

@@ -7,7 +7,7 @@
components: components:
- type: Sprite - type: Sprite
- type: Item - type: Item
size: Large size: Huge
- type: Clothing - type: Clothing
sprite: Objects/Weapons/Guns/LMGs/l6.rsi sprite: Objects/Weapons/Guns/LMGs/l6.rsi
quickEquip: false quickEquip: false

View File

@@ -12,7 +12,7 @@
slots: slots:
- Back - Back
- type: Item - type: Item
size: Large size: Huge
- type: StaticPrice - type: StaticPrice
price: 500 price: 500
- type: ContainerContainer - type: ContainerContainer

View File

@@ -7,7 +7,7 @@
components: components:
- type: Sprite - type: Sprite
- type: Item - type: Item
size: Large size: Huge
- type: Clothing - type: Clothing
sprite: Objects/Weapons/Guns/Rifles/ak.rsi sprite: Objects/Weapons/Guns/Rifles/ak.rsi
quickEquip: false quickEquip: false

View File

@@ -7,7 +7,7 @@
components: components:
- type: Sprite - type: Sprite
- type: Item - type: Item
size: Normal size: Huge
- type: Clothing - type: Clothing
sprite: Objects/Weapons/Guns/SMGs/atreides.rsi sprite: Objects/Weapons/Guns/SMGs/atreides.rsi
quickEquip: false quickEquip: false

View File

@@ -57,6 +57,8 @@
map: ["enum.GunVisualLayers.Base"] map: ["enum.GunVisualLayers.Base"]
- state: mag-0 - state: mag-0
map: ["enum.GunVisualLayers.Mag"] map: ["enum.GunVisualLayers.Mag"]
- type: Item
size: Large
- type: Clothing - type: Clothing
sprite: Objects/Weapons/Guns/Shotguns/bulldog.rsi sprite: Objects/Weapons/Guns/Shotguns/bulldog.rsi
quickEquip: false quickEquip: false

View File

@@ -10,7 +10,7 @@
- state: base - state: base
map: ["enum.GunVisualLayers.Base"] map: ["enum.GunVisualLayers.Base"]
- type: Item - type: Item
size: Large size: Huge
- type: Clothing - type: Clothing
sprite: Objects/Weapons/Guns/Snipers/bolt_gun_wood.rsi sprite: Objects/Weapons/Guns/Snipers/bolt_gun_wood.rsi
quickEquip: false quickEquip: false

View File

@@ -12,7 +12,7 @@
map: [ "tank" ] map: [ "tank" ]
visible: false visible: false
- type: Item - type: Item
size: Large size: Huge
- type: Clothing - type: Clothing
quickEquip: false quickEquip: false
slots: slots:
@@ -124,10 +124,10 @@
suffix: Admeme suffix: Admeme
components: components:
- type: Item - type: Item
size: Huge size: Ginormous
- type: Storage - type: Storage
maxSlots: 100 maxSlots: 100
maxItemSize: Huge maxItemSize: Ginormous
maxTotalWeight: 1600 maxTotalWeight: 1600
whitelist: whitelist:
tags: [] #dodging a test fail like the IRS tags: [] #dodging a test fail like the IRS

View File

@@ -75,7 +75,7 @@
Slash: 12 Slash: 12
Structural: 30 Structural: 30
- type: Item - type: Item
size: Huge size: Ginormous
- type: Clothing - type: Clothing
sprite: Objects/Weapons/Melee/cult_halberd.rsi sprite: Objects/Weapons/Melee/cult_halberd.rsi
quickEquip: false quickEquip: false

View File

@@ -29,7 +29,7 @@
Slash: 10.5 Slash: 10.5
Structural: 60 Structural: 60
- type: Item - type: Item
size: Huge size: Ginormous
- type: Clothing - type: Clothing
sprite: Objects/Weapons/Melee/fireaxe.rsi sprite: Objects/Weapons/Melee/fireaxe.rsi
quickEquip: false quickEquip: false

View File

@@ -20,6 +20,7 @@
path: /Audio/Weapons/bladeslice.ogg path: /Audio/Weapons/bladeslice.ogg
- type: Sprite - type: Sprite
- type: Item - type: Item
size: Small
- type: Tool - type: Tool
qualities: qualities:
- Slicing - Slicing
@@ -39,7 +40,6 @@
sprite: Objects/Weapons/Melee/kitchen_knife.rsi sprite: Objects/Weapons/Melee/kitchen_knife.rsi
state: icon state: icon
- type: Item - type: Item
size: Small
sprite: Objects/Weapons/Melee/kitchen_knife.rsi sprite: Objects/Weapons/Melee/kitchen_knife.rsi
- type: GuideHelp - type: GuideHelp
guides: guides:
@@ -64,7 +64,7 @@
types: types:
Slash: 10 Slash: 10
- type: Item - type: Item
size: Small size: Normal
sprite: Objects/Weapons/Melee/cleaver.rsi sprite: Objects/Weapons/Melee/cleaver.rsi
- type: GuideHelp - type: GuideHelp
guides: guides:
@@ -82,7 +82,6 @@
- Knife - Knife
- type: Sprite - type: Sprite
sprite: Objects/Weapons/Melee/combat_knife.rsi sprite: Objects/Weapons/Melee/combat_knife.rsi
size: Tiny
state: icon state: icon
- type: MeleeWeapon - type: MeleeWeapon
wideAnimationRotation: -135 wideAnimationRotation: -135
@@ -91,7 +90,6 @@
types: types:
Slash: 10 Slash: 10
- type: Item - type: Item
size: Small
sprite: Objects/Weapons/Melee/combat_knife.rsi sprite: Objects/Weapons/Melee/combat_knife.rsi
- type: DisarmMalus - type: DisarmMalus
malus: 0.225 malus: 0.225
@@ -104,10 +102,8 @@
components: components:
- type: Sprite - type: Sprite
sprite: Objects/Weapons/Melee/survival_knife.rsi sprite: Objects/Weapons/Melee/survival_knife.rsi
size: Tiny
state: icon state: icon
- type: Item - type: Item
size: Small
sprite: Objects/Weapons/Melee/survival_knife.rsi sprite: Objects/Weapons/Melee/survival_knife.rsi
- type: entity - type: entity
@@ -118,7 +114,6 @@
components: components:
- type: Sprite - type: Sprite
sprite: Objects/Weapons/Melee/kukri_knife.rsi sprite: Objects/Weapons/Melee/kukri_knife.rsi
size: Tiny
state: icon state: icon
- type: MeleeWeapon - type: MeleeWeapon
attackRate: 1.0 attackRate: 1.0
@@ -126,7 +121,6 @@
types: types:
Slash: 15 Slash: 15
- type: Item - type: Item
size: Small
sprite: Objects/Weapons/Melee/kukri_knife.rsi sprite: Objects/Weapons/Melee/kukri_knife.rsi
- type: entity - type: entity
@@ -145,7 +139,6 @@
node: icon node: icon
- type: Sprite - type: Sprite
sprite: Objects/Weapons/Melee/shiv.rsi sprite: Objects/Weapons/Melee/shiv.rsi
size: Tiny
state: icon state: icon
- type: MeleeWeapon - type: MeleeWeapon
attackRate: 1.5 attackRate: 1.5
@@ -153,7 +146,6 @@
types: types:
Slash: 5.5 Slash: 5.5
- type: Item - type: Item
size: Tiny #as much as a regular glass shard
sprite: Objects/Weapons/Melee/shiv.rsi sprite: Objects/Weapons/Melee/shiv.rsi
- type: DisarmMalus - type: DisarmMalus
malus: 0.225 malus: 0.225
@@ -167,8 +159,6 @@
- type: Construction - type: Construction
graph: ReinforcedShiv graph: ReinforcedShiv
node: icon node: icon
size: Tiny
state: icon
- type: MeleeWeapon - type: MeleeWeapon
attackRate: 1.5 attackRate: 1.5
damage: damage:

View File

@@ -57,7 +57,7 @@
Slash: 2.5 Slash: 2.5
- type: GunRequiresWield - type: GunRequiresWield
- type: Item - type: Item
size: Huge size: Ginormous
- type: DisarmMalus - type: DisarmMalus
- type: Tool - type: Tool
qualities: qualities:
@@ -112,4 +112,4 @@
wideAnimationRotation: -135 wideAnimationRotation: -135
attackRate: 1.25 attackRate: 1.25
- type: Item - type: Item
size: Huge size: Ginormous

View File

@@ -47,7 +47,7 @@
types: types:
Piercing: 15 Piercing: 15
- type: Item - type: Item
size: Huge size: Ginormous
- type: Clothing - type: Clothing
quickEquip: false quickEquip: false
slots: slots:

View File

@@ -26,7 +26,7 @@
- type: ItemCooldown - type: ItemCooldown
- type: Item - type: Item
heldPrefix: off heldPrefix: off
size: Large size: Huge
- type: Clothing - type: Clothing
sprite: Objects/Weapons/Melee/stunprod.rsi sprite: Objects/Weapons/Melee/stunprod.rsi
quickEquip: false quickEquip: false

View File

@@ -9,7 +9,7 @@
sprite: Objects/Tools/Toolboxes/toolbox_red.rsi sprite: Objects/Tools/Toolboxes/toolbox_red.rsi
state: icon state: icon
- type: Item - type: Item
size: Huge size: Ginormous
sprite: Objects/Tools/Toolboxes/toolbox_red.rsi sprite: Objects/Tools/Toolboxes/toolbox_red.rsi
- type: MeleeWeapon - type: MeleeWeapon
wideAnimationRotation: -135 wideAnimationRotation: -135

View File

@@ -305,7 +305,7 @@
map: ["foldedLayer"] map: ["foldedLayer"]
visible: false visible: false
- type: Item - type: Item
size: Large size: Huge
- type: Appearance - type: Appearance
- type: MeleeWeapon - type: MeleeWeapon
damage: damage: