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
};
_information.SetMessage(Loc.GetString("comp-storage-window-weight",
("percent", 0),
("weight", 0),
("maxWeight", 0),
("size", SharedItemSystem.GetItemSizeLocale(ItemSize.Normal))));
vBox.AddChild(_information);

View File

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

View File

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

View File

@@ -1,4 +1,3 @@
using System.Diagnostics.CodeAnalysis;
using System.Linq;
using Content.Shared.ActionBlocker;
using Content.Shared.CombatMode;
@@ -473,6 +472,8 @@ public abstract class SharedStorageSystem : EntitySystem
return false;
}
if (!_stackQuery.TryGetComponent(insertEnt, out var stack) || !HasSpaceInStacks(uid, stack.StackTypeId))
{
if (item.Size > GetMaxItemSize((uid, storageComp)))
{
reason = "comp-storage-too-big";
@@ -499,6 +500,7 @@ public abstract class SharedStorageSystem : EntitySystem
reason = "comp-storage-insufficient-capacity";
return false;
}
}
reason = null;
return true;
@@ -554,7 +556,7 @@ public abstract class SharedStorageSystem : EntitySystem
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;
if (!_stack.TryAdd(insertEnt, ent, insertStack, containedStack))
@@ -571,18 +573,24 @@ public abstract class SharedStorageSystem : EntitySystem
}
// Still stackable remaining
if (insertStack.Count > 0)
if (toInsertCount > 0)
{
// Try to insert it as a new stack.
if (!CanInsert(uid, insertEnt, out _, storageComp) ||
!storageComp.Container.Insert(insertEnt))
{
UpdateUI(uid, storageComp);
// If we also didn't do any stack fills above then just end
// otherwise play sound and update UI anyway.
if (toInsertCount == insertStack.Count)
return false;
}
}
else
{
UpdateUI(uid, storageComp);
}
}
// Non-stackable but no insertion for reasons.
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.
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>
@@ -697,7 +726,9 @@ public abstract class SharedStorageSystem : EntitySystem
// 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
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)

View File

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

View File

@@ -47,7 +47,6 @@
components:
- type: StorageFill
contents:
- id: BoxSurvivalBrigmedic
- id: Flash
- type: entity

View File

@@ -61,7 +61,6 @@
components:
- type: StorageFill
contents:
- id: BoxSurvivalBrigmedic
- id: Flash
- type: entity

View File

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

View File

@@ -56,26 +56,6 @@
- state: internals
- 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
name: survival box
parent: BoxCardboard

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -7,7 +7,7 @@
- type: Sprite
sprite: Clothing/Back/Duffels/duffel.rsi
- type: Storage
maxItemSize: Large
maxItemSize: Huge
maxTotalWeight: 40
- type: ClothingSpeedModifier
walkModifier: 1
@@ -230,7 +230,7 @@
- type: Item
size: Ginormous
- type: Storage
maxItemSize: Large
maxItemSize: Huge
maxTotalWeight: 56 #14 normal-sized items.
- type: ClothingSpeedModifier
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.
components:
- type: Storage
maxItemSize: Large
maxItemSize: Huge
maxTotalWeight: 40
- type: ClothingSpeedModifier
walkModifier: 1

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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