Make item size scale with stack size (#17623)

* Make stack count affect item size

* and the test, too

* readd this check

* vwoom

* huh

* if you ever read this commit message ping me on discord in #contributors

* changerinos
This commit is contained in:
Nemanja
2023-06-25 11:44:37 -04:00
committed by GitHub
parent 0d086df2e5
commit 5c60a27c7c
39 changed files with 399 additions and 81 deletions

View File

@@ -38,9 +38,7 @@ namespace Content.Client.Stack
return; return;
} }
// Dirty the UI now that the stack count has changed. component.UiUpdateNeeded = true;
if (component is StackComponent clientComp)
clientComp.UiUpdateNeeded = true;
} }
private void OnAppearanceChange(EntityUid uid, StackComponent comp, ref AppearanceChangeEvent args) private void OnAppearanceChange(EntityUid uid, StackComponent comp, ref AppearanceChangeEvent args)

View File

@@ -0,0 +1,42 @@
using System.Threading.Tasks;
using Content.Server.Storage.Components;
using Content.Shared.Item;
using Content.Shared.Stacks;
using NUnit.Framework;
using Robust.Shared.GameObjects;
using Robust.Shared.Prototypes;
namespace Content.IntegrationTests.Tests;
[TestFixture]
public sealed class StackTest
{
[Test]
public async Task StackCorrectItemSize()
{
await using var pairTracker = await PoolManager.GetServerClient(new PoolSettings{NoClient = true});
var server = pairTracker.Pair.Server;
var protoManager = server.ResolveDependency<IPrototypeManager>();
var compFact = server.ResolveDependency<IComponentFactory>();
Assert.Multiple(() =>
{
foreach (var entity in PoolManager.GetEntityPrototypes<StackComponent>(server))
{
if (!entity.TryGetComponent<StackComponent>(out var stackComponent, compFact) ||
!entity.TryGetComponent<ItemComponent>(out var itemComponent, compFact))
continue;
if (!protoManager.TryIndex<StackPrototype>(stackComponent.StackTypeId, out var stackProto) ||
stackProto.ItemSize == null)
continue;
var expectedSize = stackProto.ItemSize * stackComponent.Count;
Assert.That(itemComponent.Size, Is.EqualTo(expectedSize), $"Prototype id: {entity.ID} has an item size of {itemComponent.Size} but expected size of {expectedSize}.");
}
});
await pairTracker.CleanReturnAsync();
}
}

View File

@@ -50,13 +50,10 @@ namespace Content.Server.Stack
if (!Resolve(uid, ref stack)) if (!Resolve(uid, ref stack))
return null; return null;
if (stack.StackTypeId == null)
return null;
// Get a prototype ID to spawn the new entity. Null is also valid, although it should rarely be picked... // Get a prototype ID to spawn the new entity. Null is also valid, although it should rarely be picked...
var prototype = _prototypeManager.TryIndex<StackPrototype>(stack.StackTypeId, out var stackType) var prototype = _prototypeManager.TryIndex<StackPrototype>(stack.StackTypeId, out var stackType)
? stackType.Spawn ? stackType.Spawn
: Prototype(stack.Owner)?.ID; : Prototype(uid)?.ID;
// Try to remove the amount of things we want to split from the original stack... // Try to remove the amount of things we want to split from the original stack...
if (!Use(uid, amount, stack)) if (!Use(uid, amount, stack))
@@ -113,7 +110,7 @@ namespace Content.Server.Stack
private void OnStackAlternativeInteract(EntityUid uid, StackComponent stack, GetVerbsEvent<AlternativeVerb> args) private void OnStackAlternativeInteract(EntityUid uid, StackComponent stack, GetVerbsEvent<AlternativeVerb> args)
{ {
if (!args.CanAccess || !args.CanInteract || args.Hands == null) if (!args.CanAccess || !args.CanInteract || args.Hands == null || stack.Count == 1)
return; return;
AlternativeVerb halve = new() AlternativeVerb halve = new()
@@ -158,7 +155,7 @@ namespace Content.Server.Stack
if (amount <= 0) if (amount <= 0)
{ {
PopupSystem.PopupCursor(Loc.GetString("comp-stack-split-too-small"), userUid, PopupType.Medium); Popup.PopupCursor(Loc.GetString("comp-stack-split-too-small"), userUid, PopupType.Medium);
return; return;
} }
@@ -171,9 +168,9 @@ namespace Content.Server.Stack
_storage.UpdateStorageUI(container.Owner, storage); _storage.UpdateStorageUI(container.Owner, storage);
} }
HandsSystem.PickupOrDrop(userUid, split); Hands.PickupOrDrop(userUid, split);
PopupSystem.PopupCursor(Loc.GetString("comp-stack-split"), userUid); Popup.PopupCursor(Loc.GetString("comp-stack-split"), userUid);
} }
} }
} }

View File

@@ -1,16 +1,18 @@
using Content.Shared.CombatMode; using Content.Shared.CombatMode;
using Content.Shared.Hands.EntitySystems; using Content.Shared.Hands.EntitySystems;
using Content.Shared.Interaction; using Content.Shared.Interaction;
using Content.Shared.Inventory.Events; using Content.Shared.Stacks;
using Content.Shared.Verbs; using Content.Shared.Verbs;
using Robust.Shared.Containers; using Robust.Shared.Containers;
using Robust.Shared.GameStates; using Robust.Shared.GameStates;
using Robust.Shared.Prototypes;
using Robust.Shared.Utility; using Robust.Shared.Utility;
namespace Content.Shared.Item; namespace Content.Shared.Item;
public abstract class SharedItemSystem : EntitySystem public abstract class SharedItemSystem : EntitySystem
{ {
[Dependency] private readonly IPrototypeManager _prototype = default!;
[Dependency] private readonly SharedHandsSystem _handsSystem = default!; [Dependency] private readonly SharedHandsSystem _handsSystem = default!;
[Dependency] private readonly SharedCombatModeSystem _combatMode = default!; [Dependency] private readonly SharedCombatModeSystem _combatMode = default!;
[Dependency] protected readonly SharedContainerSystem Container = default!; [Dependency] protected readonly SharedContainerSystem Container = default!;
@@ -20,6 +22,7 @@ public abstract class SharedItemSystem : EntitySystem
base.Initialize(); base.Initialize();
SubscribeLocalEvent<ItemComponent, GetVerbsEvent<InteractionVerb>>(AddPickupVerb); SubscribeLocalEvent<ItemComponent, GetVerbsEvent<InteractionVerb>>(AddPickupVerb);
SubscribeLocalEvent<ItemComponent, InteractHandEvent>(OnHandInteract); SubscribeLocalEvent<ItemComponent, InteractHandEvent>(OnHandInteract);
SubscribeLocalEvent<ItemComponent, StackCountChangedEvent>(OnStackCountChanged);
SubscribeLocalEvent<ItemComponent, ComponentGetState>(OnGetState); SubscribeLocalEvent<ItemComponent, ComponentGetState>(OnGetState);
SubscribeLocalEvent<ItemComponent, ComponentHandleState>(OnHandleState); SubscribeLocalEvent<ItemComponent, ComponentHandleState>(OnHandleState);
@@ -29,7 +32,7 @@ public abstract class SharedItemSystem : EntitySystem
public void SetSize(EntityUid uid, int size, ItemComponent? component = null) public void SetSize(EntityUid uid, int size, ItemComponent? component = null)
{ {
if (!Resolve(uid, ref component)) if (!Resolve(uid, ref component, false))
return; return;
component.Size = size; component.Size = size;
@@ -75,6 +78,18 @@ public abstract class SharedItemSystem : EntitySystem
args.Handled = _handsSystem.TryPickup(args.User, uid, animateUser: false); args.Handled = _handsSystem.TryPickup(args.User, uid, animateUser: false);
} }
private void OnStackCountChanged(EntityUid uid, ItemComponent component, StackCountChangedEvent args)
{
if (!TryComp<StackComponent>(uid, out var stack))
return;
if (!_prototype.TryIndex<StackPrototype>(stack.StackTypeId, out var stackProto) ||
stackProto.ItemSize is not { } size)
return;
SetSize(uid, args.NewCount * size, component);
}
private void OnHandleState(EntityUid uid, ItemComponent component, ref ComponentHandleState args) private void OnHandleState(EntityUid uid, ItemComponent component, ref ComponentHandleState args)
{ {
if (args.Current is not ItemComponentState state) if (args.Current is not ItemComponentState state)

View File

@@ -2,6 +2,7 @@ using Content.Shared.Examine;
using Content.Shared.Hands.Components; using Content.Shared.Hands.Components;
using Content.Shared.Hands.EntitySystems; using Content.Shared.Hands.EntitySystems;
using Content.Shared.Interaction; using Content.Shared.Interaction;
using Content.Shared.Item;
using Content.Shared.Popups; using Content.Shared.Popups;
using JetBrains.Annotations; using JetBrains.Annotations;
using Robust.Shared.GameStates; using Robust.Shared.GameStates;
@@ -19,11 +20,11 @@ namespace Content.Shared.Stacks
[Dependency] private readonly IPrototypeManager _prototype = default!; [Dependency] private readonly IPrototypeManager _prototype = default!;
[Dependency] private readonly IViewVariablesManager _vvm = default!; [Dependency] private readonly IViewVariablesManager _vvm = default!;
[Dependency] protected readonly SharedAppearanceSystem Appearance = default!; [Dependency] protected readonly SharedAppearanceSystem Appearance = default!;
[Dependency] protected readonly SharedHandsSystem HandsSystem = default!; [Dependency] protected readonly SharedHandsSystem Hands = default!;
[Dependency] protected readonly SharedTransformSystem Xform = default!; [Dependency] protected readonly SharedTransformSystem Xform = default!;
[Dependency] private readonly EntityLookupSystem _entityLookup = default!; [Dependency] private readonly EntityLookupSystem _entityLookup = default!;
[Dependency] private readonly SharedPhysicsSystem _physics = default!; [Dependency] private readonly SharedPhysicsSystem _physics = default!;
[Dependency] protected readonly SharedPopupSystem PopupSystem = default!; [Dependency] protected readonly SharedPopupSystem Popup = default!;
public override void Initialize() public override void Initialize()
{ {
@@ -75,18 +76,18 @@ namespace Content.Shared.Stacks
switch (transfered) switch (transfered)
{ {
case > 0: case > 0:
PopupSystem.PopupCoordinates($"+{transfered}", popupPos, Filter.Local(), false); Popup.PopupCoordinates($"+{transfered}", popupPos, Filter.Local(), false);
if (GetAvailableSpace(recipientStack) == 0) if (GetAvailableSpace(recipientStack) == 0)
{ {
PopupSystem.PopupCoordinates(Loc.GetString("comp-stack-becomes-full"), Popup.PopupCoordinates(Loc.GetString("comp-stack-becomes-full"),
popupPos.Offset(new Vector2(0, -0.5f)), Filter.Local(), false); popupPos.Offset(new Vector2(0, -0.5f)), Filter.Local(), false);
} }
break; break;
case 0 when GetAvailableSpace(recipientStack) == 0: case 0 when GetAvailableSpace(recipientStack) == 0:
PopupSystem.PopupCoordinates(Loc.GetString("comp-stack-already-full"), popupPos, Filter.Local(), false); Popup.PopupCoordinates(Loc.GetString("comp-stack-already-full"), popupPos, Filter.Local(), false);
break; break;
} }
} }
@@ -133,12 +134,12 @@ namespace Content.Shared.Stacks
if (!Resolve(item, ref itemStack, false)) if (!Resolve(item, ref itemStack, false))
{ {
// This isn't even a stack. Just try to pickup as normal. // This isn't even a stack. Just try to pickup as normal.
HandsSystem.PickupOrDrop(user, item, handsComp: hands); Hands.PickupOrDrop(user, item, handsComp: hands);
return; return;
} }
// This is shit code until hands get fixed and give an easy way to enumerate over items, starting with the currently active item. // This is shit code until hands get fixed and give an easy way to enumerate over items, starting with the currently active item.
foreach (var held in HandsSystem.EnumerateHeld(user, hands)) foreach (var held in Hands.EnumerateHeld(user, hands))
{ {
TryMergeStacks(item, held, out _, donorStack: itemStack); TryMergeStacks(item, held, out _, donorStack: itemStack);
@@ -146,7 +147,7 @@ namespace Content.Shared.Stacks
return; return;
} }
HandsSystem.PickupOrDrop(user, item, handsComp: hands); Hands.PickupOrDrop(user, item, handsComp: hands);
} }
public virtual void SetCount(EntityUid uid, int amount, StackComponent? component = null) public virtual void SetCount(EntityUid uid, int amount, StackComponent? component = null)

View File

@@ -2,8 +2,8 @@
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
using Robust.Shared.Utility; using Robust.Shared.Utility;
namespace Content.Shared.Stacks namespace Content.Shared.Stacks;
{
[Prototype("stack")] [Prototype("stack")]
public sealed class StackPrototype : IPrototype public sealed class StackPrototype : IPrototype
{ {
@@ -37,5 +37,11 @@ namespace Content.Shared.Stacks
/// </summary> /// </summary>
[DataField("maxCount")] [DataField("maxCount")]
public int? MaxCount { get; } public int? MaxCount { get; }
/// <summary>
/// The size of an individual unit of this stack.
/// </summary>
[DataField("itemSize")]
public int? ItemSize;
} }
}

View File

@@ -1928,7 +1928,7 @@ entities:
type: Transform type: Transform
- canCollide: False - canCollide: False
type: Physics type: Physics
- proto: MedkitCombatFilled - proto: MedkitCombat
entities: entities:
- uid: 172 - uid: 172
components: components:

View File

@@ -191,6 +191,8 @@
id: BoxHugHealing id: BoxHugHealing
description: A special box for sensitive people. description: A special box for sensitive people.
components: components:
- type: Storage
capacity: 30
- type: Sprite - type: Sprite
layers: layers:
- state: box_hug - state: box_hug
@@ -200,7 +202,7 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: Brutepack - id: Brutepack
amount: 6 amount: 3
- type: Tag - type: Tag
tags: tags:
- BoxHug - BoxHug

View File

@@ -75,9 +75,9 @@
- id: Brutepack - id: Brutepack
amount: 2 amount: 2
- id: Ointment - id: Ointment
amount: 2 amount: 1
- id: Bloodpack - id: Bloodpack
amount: 2 amount: 1
- id: Gauze - id: Gauze
- id: EmergencyMedipen #You never know what people are going to latejoin into - id: EmergencyMedipen #You never know what people are going to latejoin into

View File

@@ -30,14 +30,14 @@
- id: Screwdriver - id: Screwdriver
- id: Crowbar - id: Crowbar
- id: Wirecutter - id: Wirecutter
- id: CableApcStack - id: CableApcStack10
- id: CableMVStack - id: CableMVStack10
- id: trayScanner - id: trayScanner
prob: 0.9 prob: 0.9
- id: ClothingHandsGlovesColorYellow - id: ClothingHandsGlovesColorYellow
prob: 0.05 prob: 0.05
orGroup: GlovesOrWires orGroup: GlovesOrWires
- id: CableHVStack - id: CableHVStack10
orGroup: GlovesOrWires orGroup: GlovesOrWires
- type: entity - type: entity

View File

@@ -238,6 +238,7 @@
- type: Clothing - type: Clothing
sprite: Clothing/Belt/medical.rsi sprite: Clothing/Belt/medical.rsi
- type: Storage - type: Storage
capacity: 60
whitelist: whitelist:
tags: tags:
- Wrench - Wrench

View File

@@ -9,11 +9,11 @@
tags: tags:
- RollingPaper - RollingPaper
- CigFilter - CigFilter
capacity: 16 capacity: 20
- type: StorageFill - type: StorageFill
contents: contents:
- id: PaperRolling - id: PaperRolling
amount: 8 amount: 4
- type: Sprite - type: Sprite
sprite: Objects/Consumable/Smokeables/Cigarettes/paper.rsi sprite: Objects/Consumable/Smokeables/Cigarettes/paper.rsi
state: cigpapers state: cigpapers
@@ -35,9 +35,9 @@
- type: StorageFill - type: StorageFill
contents: contents:
- id: PaperRolling - id: PaperRolling
amount: 8 amount: 2
- id: CigaretteFilter - id: CigaretteFilter
amount: 8 amount: 2
- type: entity - type: entity
id: PaperRolling id: PaperRolling
@@ -54,7 +54,7 @@
state: cigpaper state: cigpaper
- type: Item - type: Item
sprite: Objects/Consumable/Smokeables/Cigarettes/paper.rsi sprite: Objects/Consumable/Smokeables/Cigarettes/paper.rsi
size: 2 size: 5
- type: Tag - type: Tag
tags: tags:
- RollingPaper - RollingPaper
@@ -68,6 +68,8 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
id: CigaretteFilter id: CigaretteFilter
@@ -84,7 +86,7 @@
state: cigfilter state: cigfilter
- type: Item - type: Item
sprite: Objects/Consumable/Smokeables/Cigarettes/paper.rsi sprite: Objects/Consumable/Smokeables/Cigarettes/paper.rsi
size: 2 size: 10
- type: Tag - type: Tag
tags: tags:
- CigFilter - CigFilter
@@ -97,3 +99,5 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 2

View File

@@ -9,6 +9,7 @@
sprite: Objects/Materials/Sheets/glass.rsi sprite: Objects/Materials/Sheets/glass.rsi
- type: Item - type: Item
sprite: Objects/Materials/Sheets/glass.rsi sprite: Objects/Materials/Sheets/glass.rsi
size: 30
- type: StaticPrice - type: StaticPrice
price: 0 price: 0
- type: ItemStatus - type: ItemStatus
@@ -83,6 +84,8 @@
- type: Stack - type: Stack
stackType: Glass stackType: Glass
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: SheetGlassBase parent: SheetGlassBase
@@ -148,6 +151,8 @@
- type: Stack - type: Stack
stackType: ReinforcedGlass stackType: ReinforcedGlass
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: SheetGlassBase parent: SheetGlassBase
@@ -173,6 +178,7 @@
map: ["base"] map: ["base"]
- type: Item - type: Item
heldPrefix: pglass heldPrefix: pglass
size: 30
- type: Construction - type: Construction
graph: Glass graph: Glass
node: SheetPGlass node: SheetPGlass
@@ -210,6 +216,8 @@
- type: Stack - type: Stack
stackType: PlasmaGlass stackType: PlasmaGlass
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: SheetPGlass parent: SheetPGlass
@@ -250,6 +258,8 @@
- type: Stack - type: Stack
stackType: ReinforcedPlasmaGlass stackType: ReinforcedPlasmaGlass
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: SheetGlassBase parent: SheetGlassBase
@@ -312,6 +322,8 @@
- type: Stack - type: Stack
stackType: UraniumGlass stackType: UraniumGlass
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: SheetUGlass parent: SheetUGlass
@@ -351,3 +363,5 @@
- type: Stack - type: Stack
stackType: ReinforcedUraniumGlass stackType: ReinforcedUraniumGlass
count: 1 count: 1
- type: Item
size: 1

View File

@@ -8,6 +8,7 @@
sprite: Objects/Materials/Sheets/metal.rsi sprite: Objects/Materials/Sheets/metal.rsi
- type: Item - type: Item
sprite: Objects/Materials/Sheets/metal.rsi sprite: Objects/Materials/Sheets/metal.rsi
size: 30
- type: StaticPrice - type: StaticPrice
price: 0 price: 0
- type: ItemStatus - type: ItemStatus
@@ -63,6 +64,8 @@
name: steel name: steel
suffix: Single suffix: Single
components: components:
- type: Item
size: 1
- type: Sprite - type: Sprite
state: steel state: steel
- type: Stack - type: Stack
@@ -106,3 +109,5 @@
- type: Stack - type: Stack
stackType: Plasteel stackType: Plasteel
count: 1 count: 1
- type: Item
size: 1

View File

@@ -8,6 +8,7 @@
sprite: Objects/Materials/Sheets/other.rsi sprite: Objects/Materials/Sheets/other.rsi
- type: Item - type: Item
sprite: Objects/Materials/Sheets/other.rsi sprite: Objects/Materials/Sheets/other.rsi
size: 30
- type: ItemStatus - type: ItemStatus
- type: Tag - type: Tag
tags: tags:
@@ -56,6 +57,8 @@
state: paper state: paper
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: SheetOtherBase parent: SheetOtherBase
@@ -104,6 +107,8 @@
state: plasma state: plasma
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: SheetOtherBase parent: SheetOtherBase
@@ -134,6 +139,7 @@
map: ["base"] map: ["base"]
- type: Item - type: Item
heldPrefix: plastic heldPrefix: plastic
size: 30
- type: Appearance - type: Appearance
- type: entity - type: entity
@@ -144,6 +150,8 @@
components: components:
- type: Sprite - type: Sprite
state: plastic state: plastic
- type: Item
size: 1
- type: Stack - type: Stack
count: 1 count: 1
@@ -192,6 +200,8 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: SheetOtherBase parent: SheetOtherBase
@@ -233,3 +243,5 @@
state: meat state: meat
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1

View File

@@ -8,6 +8,7 @@
sprite: Objects/Materials/ingots.rsi sprite: Objects/Materials/ingots.rsi
- type: Item - type: Item
sprite: Objects/Materials/ingots.rsi sprite: Objects/Materials/ingots.rsi
size: 30
- type: StaticPrice - type: StaticPrice
price: 0 price: 0
- type: ItemStatus - type: ItemStatus
@@ -62,6 +63,8 @@
state: gold state: gold
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: IngotBase parent: IngotBase
@@ -99,3 +102,5 @@
state: silver state: silver
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1

View File

@@ -8,6 +8,7 @@
sprite: Objects/Materials/materials.rsi sprite: Objects/Materials/materials.rsi
- type: Item - type: Item
sprite: Objects/Materials/materials.rsi sprite: Objects/Materials/materials.rsi
size: 30
- type: ItemStatus - type: ItemStatus
- type: Tag - type: Tag
tags: tags:
@@ -47,6 +48,8 @@
- state: cardboard_3 - state: cardboard_3
map: ["base"] map: ["base"]
- type: Appearance - type: Appearance
- type: Item
size: 30
- type: entity - type: entity
parent: MaterialCardboard parent: MaterialCardboard
@@ -57,6 +60,8 @@
state: cardboard state: cardboard
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: MaterialBase parent: MaterialBase
@@ -103,6 +108,8 @@
- state: cloth_3 - state: cloth_3
map: ["base"] map: ["base"]
- type: Appearance - type: Appearance
- type: Item
size: 30
- type: entity - type: entity
parent: MaterialCloth parent: MaterialCloth
@@ -113,6 +120,8 @@
state: cloth state: cloth
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: MaterialBase parent: MaterialBase
@@ -150,6 +159,8 @@
state: durathread state: durathread
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: MaterialBase parent: MaterialBase
@@ -184,6 +195,8 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: MaterialBase parent: MaterialBase
@@ -205,6 +218,8 @@
- type: GuideHelp - type: GuideHelp
guides: guides:
- Cloning - Cloning
- type: Item
size: 100
- type: entity - type: entity
parent: MaterialBiomass parent: MaterialBiomass
@@ -213,6 +228,8 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
# Following not used currently # Following not used currently
- type: entity - type: entity
@@ -255,6 +272,7 @@
state: diamond state: diamond
- type: Item - type: Item
heldPrefix: diamond heldPrefix: diamond
size: 60
- type: entity - type: entity
parent: MaterialDiamond parent: MaterialDiamond
@@ -263,6 +281,8 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 2
- type: entity - type: entity
parent: MaterialBase parent: MaterialBase
@@ -283,6 +303,9 @@
- state: cotton_3 - state: cotton_3
map: ["base"] map: ["base"]
- type: Appearance - type: Appearance
- type: Item
size: 30
- type: entity - type: entity
parent: MaterialCotton parent: MaterialCotton
@@ -293,6 +316,8 @@
state: cotton state: cotton
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: MaterialBase parent: MaterialBase
@@ -343,6 +368,8 @@
- ReagentId: Honk - ReagentId: Honk
Quantity: 5 Quantity: 5
- type: Appearance - type: Appearance
- type: Item
size: 20
- type: entity - type: entity
parent: MaterialBananium parent: MaterialBananium
@@ -353,3 +380,5 @@
state: bananium state: bananium
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 2

View File

@@ -8,7 +8,7 @@
sprite: Objects/Materials/ore.rsi sprite: Objects/Materials/ore.rsi
- type: Item - type: Item
sprite: Objects/Materials/ore.rsi sprite: Objects/Materials/ore.rsi
size: 30 size: 60
- type: ItemStatus - type: ItemStatus
- type: Tag - type: Tag
tags: tags:
@@ -58,6 +58,8 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 2
- type: entity - type: entity
parent: OreBase parent: OreBase
@@ -81,6 +83,8 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 2
- type: entity - type: entity
parent: OreBase parent: OreBase
@@ -104,6 +108,8 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 2
- type: entity - type: entity
parent: OreBase parent: OreBase
@@ -127,6 +133,8 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 2
- type: entity - type: entity
parent: OreBase parent: OreBase
@@ -150,6 +158,8 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 2
- type: entity - type: entity
parent: OreBase parent: OreBase
@@ -173,6 +183,8 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 2
- type: entity - type: entity
@@ -197,3 +209,5 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 2

View File

@@ -44,7 +44,8 @@
layers: layers:
- state: rods_5 - state: rods_5
map: ["base"] map: ["base"]
# - type: Item - type: Item
size: 30
# heldPrefix: rods # heldPrefix: rods
- type: Construction - type: Construction
graph: MetalRod graph: MetalRod
@@ -73,3 +74,5 @@
state: rods state: rods
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1

View File

@@ -10,7 +10,6 @@
size: 30 size: 30
- type: Storage - type: Storage
capacity: 30 capacity: 30
size: 10
- type: ContainerContainer - type: ContainerContainer
containers: containers:
storagebase: !type:Container storagebase: !type:Container

View File

@@ -62,6 +62,8 @@
- type: Tag - type: Tag
tags: tags:
- Smokable - Smokable
- type: Item
size: 1
- type: entity - type: entity
name: tobacco leaves name: tobacco leaves
@@ -118,3 +120,5 @@
- type: Tag - type: Tag
tags: tags:
- Smokable - Smokable
- type: Item
size: 1

View File

@@ -6,6 +6,7 @@
- type: Sprite - type: Sprite
sprite: Objects/Specific/Medical/medical.rsi sprite: Objects/Specific/Medical/medical.rsi
- type: Item - type: Item
size: 10
sprite: Objects/Specific/Medical/medical.rsi sprite: Objects/Specific/Medical/medical.rsi
heldPrefix: ointment heldPrefix: ointment
# Inherited # Inherited
@@ -17,6 +18,7 @@
description: Used to treat those nasty burns. Less effective on caustic burns. description: Used to treat those nasty burns. Less effective on caustic burns.
parent: BaseHealingItem parent: BaseHealingItem
id: Ointment id: Ointment
suffix: Full
components: components:
- type: Tag - type: Tag
tags: tags:
@@ -47,16 +49,20 @@
- type: entity - type: entity
id: Ointment1 id: Ointment1
parent: Ointment parent: Ointment
suffix: Single
components: components:
- type: Stack - type: Stack
stackType: Ointment stackType: Ointment
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
name: bruise pack 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: BaseHealingItem parent: BaseHealingItem
id: Brutepack id: Brutepack
suffix: Full
components: components:
- type: Tag - type: Tag
tags: tags:
@@ -82,16 +88,20 @@
- type: entity - type: entity
id: Brutepack1 id: Brutepack1
parent: Brutepack parent: Brutepack
suffix: Single
components: components:
- type: Stack - type: Stack
stackType: Brutepack stackType: Brutepack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
name: blood pack name: blood pack
description: Contains a groundbreaking universal blood replacement created by Nanotrasen's advanced medical science. description: Contains a groundbreaking universal blood replacement created by Nanotrasen's advanced medical science.
parent: BaseHealingItem parent: BaseHealingItem
id: Bloodpack id: Bloodpack
suffix: Full
components: components:
- type: Tag - type: Tag
tags: tags:
@@ -120,6 +130,7 @@
description: Some sterile gauze to wrap around bloody stumps. description: Some sterile gauze to wrap around bloody stumps.
parent: BaseHealingItem parent: BaseHealingItem
id: Gauze id: Gauze
suffix: Full
components: components:
- type: Tag - type: Tag
tags: tags:
@@ -150,9 +161,12 @@
- type: entity - type: entity
id: Gauze1 id: Gauze1
parent: Gauze parent: Gauze
suffix: Single
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
name: aloe cream name: aloe cream

View File

@@ -8,9 +8,9 @@
sprite: Objects/Specific/Medical/firstaidkits.rsi sprite: Objects/Specific/Medical/firstaidkits.rsi
state: firstaid state: firstaid
- type: Storage - type: Storage
capacity: 35 capacity: 60
- type: Item - type: Item
size: 35 size: 60
sprite: Objects/Specific/Medical/firstaidkits.rsi sprite: Objects/Specific/Medical/firstaidkits.rsi
heldPrefix: firstaid heldPrefix: firstaid
- type: Tag - type: Tag

View File

@@ -10,6 +10,7 @@
state: telecrystal state: telecrystal
- type: Item - type: Item
sprite: Objects/Specific/Syndicate/telecrystal.rsi sprite: Objects/Specific/Syndicate/telecrystal.rsi
size: 20
- type: Stack - type: Stack
count: 20 count: 20
stackType: Telecrystal stackType: Telecrystal
@@ -28,6 +29,8 @@
components: components:
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: Telecrystal parent: Telecrystal
@@ -36,6 +39,8 @@
components: components:
- type: Stack - type: Stack
count: 5 count: 5
- type: Item
size: 5
- type: entity - type: entity
parent: Telecrystal parent: Telecrystal
@@ -44,6 +49,8 @@
components: components:
- type: Stack - type: Stack
count: 10 count: 10
- type: Item
size: 10
# Uplinks # Uplinks
- type: entity - type: entity

View File

@@ -19,7 +19,7 @@
sprite: Objects/Tools/cable-coils.rsi sprite: Objects/Tools/cable-coils.rsi
- type: Item - type: Item
sprite: Objects/Tools/cable-coils.rsi sprite: Objects/Tools/cable-coils.rsi
size: 10 size: 30
- type: CablePlacer - type: CablePlacer
- type: Clickable - type: Clickable
- type: StaticPrice - type: StaticPrice
@@ -53,6 +53,18 @@
blockingWireType: HighVoltage blockingWireType: HighVoltage
- type: Appearance - type: Appearance
- type: entity
parent: CableHVStack
id: CableHVStack10
suffix: 10
components:
- type: Sprite
state: coilhv-10
- type: Stack
count: 10
- type: Item
size: 10
- type: entity - type: entity
parent: CableHVStack parent: CableHVStack
id: CableHVStack1 id: CableHVStack1
@@ -62,6 +74,8 @@
state: coilhv-10 state: coilhv-10
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: CableStack parent: CableStack
@@ -89,6 +103,18 @@
blockingWireType: MediumVoltage blockingWireType: MediumVoltage
- type: Appearance - type: Appearance
- type: entity
parent: CableMVStack
id: CableMVStack10
suffix: 10
components:
- type: Sprite
state: coilmv-10
- type: Stack
count: 10
- type: Item
size: 10
- type: entity - type: entity
parent: CableMVStack parent: CableMVStack
id: CableMVStack1 id: CableMVStack1
@@ -98,6 +124,8 @@
state: coilmv-10 state: coilmv-10
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1
- type: entity - type: entity
parent: CableStack parent: CableStack
@@ -124,6 +152,18 @@
blockingWireType: Apc blockingWireType: Apc
- type: Appearance - type: Appearance
- type: entity
parent: CableApcStack
id: CableApcStack10
suffix: 10
components:
- type: Sprite
state: coillv-10
- type: Stack
count: 10
- type: Item
size: 10
- type: entity - type: entity
parent: CableApcStack parent: CableApcStack
id: CableApcStack1 id: CableApcStack1
@@ -133,3 +173,5 @@
state: coillv-10 state: coillv-10
- type: Stack - type: Stack
count: 1 count: 1
- type: Item
size: 1

View File

@@ -13,7 +13,7 @@
state: item_wall state: item_wall
- type: Item - type: Item
sprite: Objects/Misc/inflatable_wall.rsi sprite: Objects/Misc/inflatable_wall.rsi
size: 5 size: 10
- type: SpawnAfterInteract - type: SpawnAfterInteract
prototype: InflatableWall prototype: InflatableWall
doAfter: 1 doAfter: 1
@@ -39,7 +39,7 @@
state: item_door state: item_door
- type: Item - type: Item
sprite: Objects/Misc/inflatable_door.rsi sprite: Objects/Misc/inflatable_door.rsi
size: 5 size: 4
- type: SpawnAfterInteract - type: SpawnAfterInteract
prototype: InflatableDoor prototype: InflatableDoor
doAfter: 1 doAfter: 1
@@ -58,7 +58,7 @@
- type: Sprite - type: Sprite
state: item_wall state: item_wall
- type: Item - type: Item
size: 5 size: 1
- type: Stack - type: Stack
count: 1 count: 1
@@ -70,6 +70,6 @@
- type: Sprite - type: Sprite
state: item_door state: item_door
- type: Item - type: Item
size: 5 size: 1
- type: Stack - type: Stack
count: 1 count: 1

View File

@@ -4,6 +4,7 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/glass.rsi, state: glass } icon: { sprite: /Textures/Objects/Materials/Sheets/glass.rsi, state: glass }
spawn: SheetGlass1 spawn: SheetGlass1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: ReinforcedGlass id: ReinforcedGlass
@@ -11,6 +12,7 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/glass.rsi, state: rglass } icon: { sprite: /Textures/Objects/Materials/Sheets/glass.rsi, state: rglass }
spawn: SheetRGlass1 spawn: SheetRGlass1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: PlasmaGlass id: PlasmaGlass
@@ -18,6 +20,7 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/glass.rsi, state: pglass } icon: { sprite: /Textures/Objects/Materials/Sheets/glass.rsi, state: pglass }
spawn: SheetPGlass1 spawn: SheetPGlass1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: ReinforcedPlasmaGlass id: ReinforcedPlasmaGlass
@@ -25,6 +28,7 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/glass.rsi, state: rpglass } icon: { sprite: /Textures/Objects/Materials/Sheets/glass.rsi, state: rpglass }
spawn: SheetRPGlass1 spawn: SheetRPGlass1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: UraniumGlass id: UraniumGlass
@@ -32,6 +36,7 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/glass.rsi, state: uglass } icon: { sprite: /Textures/Objects/Materials/Sheets/glass.rsi, state: uglass }
spawn: SheetUGlass1 spawn: SheetUGlass1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: ReinforcedUraniumGlass id: ReinforcedUraniumGlass
@@ -39,3 +44,4 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/glass.rsi, state: ruglass } icon: { sprite: /Textures/Objects/Materials/Sheets/glass.rsi, state: ruglass }
spawn: SheetRUGlass1 spawn: SheetRUGlass1
maxCount: 30 maxCount: 30
itemSize: 1

View File

@@ -4,6 +4,7 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/metal.rsi, state: steel } icon: { sprite: /Textures/Objects/Materials/Sheets/metal.rsi, state: steel }
spawn: SheetSteel1 spawn: SheetSteel1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: Plasteel id: Plasteel
@@ -11,3 +12,4 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/metal.rsi, state: plasteel } icon: { sprite: /Textures/Objects/Materials/Sheets/metal.rsi, state: plasteel }
spawn: SheetPlasteel1 spawn: SheetPlasteel1
maxCount: 30 maxCount: 30
itemSize: 1

View File

@@ -4,6 +4,7 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/other.rsi, state: paper } icon: { sprite: /Textures/Objects/Materials/Sheets/other.rsi, state: paper }
spawn: SheetPaper1 spawn: SheetPaper1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: Plasma id: Plasma
@@ -11,6 +12,7 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/other.rsi, state: plasma } icon: { sprite: /Textures/Objects/Materials/Sheets/other.rsi, state: plasma }
spawn: SheetPlasma1 spawn: SheetPlasma1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: Plastic id: Plastic
@@ -18,6 +20,7 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/other.rsi, state: plastic } icon: { sprite: /Textures/Objects/Materials/Sheets/other.rsi, state: plastic }
spawn: SheetPlastic1 spawn: SheetPlastic1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: Uranium id: Uranium
@@ -25,3 +28,4 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/other.rsi, state: uranium } icon: { sprite: /Textures/Objects/Materials/Sheets/other.rsi, state: uranium }
spawn: SheetUranium1 spawn: SheetUranium1
maxCount: 30 maxCount: 30
itemSize: 1

View File

@@ -3,3 +3,4 @@
name: telecrystal name: telecrystal
icon: Objects/Specific/Syndicate/telecrystal.rsi icon: Objects/Specific/Syndicate/telecrystal.rsi
spawn: Telecrystal1 spawn: Telecrystal1
itemSize: 1

View File

@@ -4,6 +4,7 @@
icon: { sprite: "/Textures/Objects/Materials/ingots.rsi", state: gold } icon: { sprite: "/Textures/Objects/Materials/ingots.rsi", state: gold }
spawn: IngotGold1 spawn: IngotGold1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: Silver id: Silver
@@ -11,3 +12,4 @@
icon: { sprite: "/Textures/Objects/Materials/ingots.rsi", state: silver } icon: { sprite: "/Textures/Objects/Materials/ingots.rsi", state: silver }
spawn: IngotSilver1 spawn: IngotSilver1
maxCount: 30 maxCount: 30
itemSize: 1

View File

@@ -4,6 +4,7 @@
icon: { sprite: /Textures/Objects/Misc/monkeycube.rsi, state: cube } icon: { sprite: /Textures/Objects/Misc/monkeycube.rsi, state: cube }
spawn: MaterialBiomass1 spawn: MaterialBiomass1
maxCount: 100 maxCount: 100
itemSize: 1
- type: stack - type: stack
id: WoodPlank id: WoodPlank
@@ -11,6 +12,7 @@
icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: wood } icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: wood }
spawn: MaterialWoodPlank1 spawn: MaterialWoodPlank1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: Cardboard id: Cardboard
@@ -18,6 +20,7 @@
icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: cardboard } icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: cardboard }
spawn: MaterialCardboard1 spawn: MaterialCardboard1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: Cloth id: Cloth
@@ -25,6 +28,7 @@
icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: cloth } icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: cloth }
spawn: MaterialCloth1 spawn: MaterialCloth1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: Durathread id: Durathread
@@ -32,6 +36,7 @@
icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: durathread } icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: durathread }
spawn: MaterialDurathread1 spawn: MaterialDurathread1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: Diamond id: Diamond
@@ -39,6 +44,7 @@
icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: diamond } icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: diamond }
spawn: MaterialDiamond1 spawn: MaterialDiamond1
maxCount: 30 maxCount: 30
itemSize: 2
- type: stack - type: stack
id: Cotton id: Cotton
@@ -46,6 +52,7 @@
icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: cotton } icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: cotton }
spawn: MaterialCotton1 spawn: MaterialCotton1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: Bananium id: Bananium
@@ -53,6 +60,7 @@
icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: bananium } icon: { sprite: /Textures/Objects/Materials/materials.rsi, state: bananium }
spawn: MaterialBananium1 spawn: MaterialBananium1
maxCount: 10 maxCount: 10
itemSize: 2
- type: stack - type: stack
id: MeatSheets id: MeatSheets
@@ -60,3 +68,4 @@
icon: { sprite: /Textures/Objects/Materials/Sheets/meaterial.rsi, state: meat } icon: { sprite: /Textures/Objects/Materials/Sheets/meaterial.rsi, state: meat }
spawn: MaterialSheetMeat1 spawn: MaterialSheetMeat1
maxCount: 30 maxCount: 30
itemSize: 1

View File

@@ -4,6 +4,7 @@
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: gold } icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: gold }
spawn: GoldOre1 spawn: GoldOre1
maxCount: 30 maxCount: 30
itemSize: 2
- type: stack - type: stack
id: SteelOre id: SteelOre
@@ -11,6 +12,7 @@
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: iron } icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: iron }
spawn: SteelOre1 spawn: SteelOre1
maxCount: 30 maxCount: 30
itemSize: 2
- type: stack - type: stack
id: PlasmaOre id: PlasmaOre
@@ -18,6 +20,7 @@
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: plasma } icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: plasma }
spawn: PlasmaOre1 spawn: PlasmaOre1
maxCount: 30 maxCount: 30
itemSize: 2
- type: stack - type: stack
id: SilverOre id: SilverOre
@@ -25,6 +28,7 @@
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: silver } icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: silver }
spawn: SilverOre1 spawn: SilverOre1
maxCount: 30 maxCount: 30
itemSize: 2
- type: stack - type: stack
id: SpaceQuartz id: SpaceQuartz
@@ -32,6 +36,7 @@
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: spacequartz } icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: spacequartz }
spawn: SpaceQuartz1 spawn: SpaceQuartz1
maxCount: 30 maxCount: 30
itemSize: 2
- type: stack - type: stack
id: UraniumOre id: UraniumOre
@@ -39,6 +44,7 @@
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: uranium } icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: uranium }
spawn: UraniumOre1 spawn: UraniumOre1
maxCount: 30 maxCount: 30
itemSize: 2
- type: stack - type: stack
@@ -47,3 +53,4 @@
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: bananium } icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: bananium }
spawn: BananiumOre1 spawn: BananiumOre1
maxCount: 30 maxCount: 30
itemSize: 2

View File

@@ -4,3 +4,4 @@
icon: { sprite: /Textures/Objects/Materials/parts.rsi, state: rods } icon: { sprite: /Textures/Objects/Materials/parts.rsi, state: rods }
spawn: PartRodMetal1 spawn: PartRodMetal1
maxCount: 30 maxCount: 30
itemSize: 1

View File

@@ -5,6 +5,7 @@
name: pancake name: pancake
spawn: FoodBakedPancake spawn: FoodBakedPancake
maxCount: 3 maxCount: 3
itemSize: 1
# Food Containers # Food Containers
@@ -14,6 +15,7 @@
icon: { sprite: Objects/Consumable/Food/Baked/pizza.rsi, state: box } icon: { sprite: Objects/Consumable/Food/Baked/pizza.rsi, state: box }
spawn: FoodBoxPizza spawn: FoodBoxPizza
maxCount: 30 maxCount: 30
itemSize: 10
# Smokeables # Smokeables
@@ -23,6 +25,7 @@
icon: { sprite: /Textures/Objects/Consumable/Smokeables/Cigarettes/paper.rsi, state: cigpaper } icon: { sprite: /Textures/Objects/Consumable/Smokeables/Cigarettes/paper.rsi, state: cigpaper }
spawn: PaperRolling spawn: PaperRolling
maxCount: 5 maxCount: 5
itemSize: 1
- type: stack - type: stack
id: CigaretteFilter id: CigaretteFilter
@@ -30,6 +33,7 @@
icon: { sprite: /Textures/Objects/Consumable/Smokeables/Cigarettes/paper.rsi, state: cigfilter } icon: { sprite: /Textures/Objects/Consumable/Smokeables/Cigarettes/paper.rsi, state: cigfilter }
spawn: CigaretteFilter spawn: CigaretteFilter
maxCount: 5 maxCount: 5
itemSize: 2
- type: stack - type: stack
id: GroundTobacco id: GroundTobacco
@@ -37,13 +41,15 @@
icon: { sprite: /Textures/Objects/Misc/reagent_fillings.rsi, state: powderpile } icon: { sprite: /Textures/Objects/Misc/reagent_fillings.rsi, state: powderpile }
spawn: GroundTobacco spawn: GroundTobacco
maxCount: 5 maxCount: 5
itemSize: 1
- type: stack - type: stack
id: GroundCannabis id: GroundCannabis
name: ground cannabis name: ground cannabis
icon: { sprite: /Textures/Objects/Misc/reagent_fillings.rsi, state: powderpile } icon: { sprite: /Textures/Objects/Misc/reagent_fillings.rsi, state: powderpile }
spawn: GroundCannabis spawn: GroundCannabis
maxCount: 5 maxCount:
itemSize: 1
- type: stack - type: stack
id: LeavesTobaccoDried id: LeavesTobaccoDried
@@ -51,6 +57,7 @@
icon: { sprite: /Textures/Objects/Specific/Hydroponics/tobacco.rsi, state: dried } icon: { sprite: /Textures/Objects/Specific/Hydroponics/tobacco.rsi, state: dried }
spawn: LeavesTobaccoDried spawn: LeavesTobaccoDried
maxCount: 5 maxCount: 5
itemSize: 5
- type: stack - type: stack
id: LeavesCannabisDried id: LeavesCannabisDried
@@ -58,3 +65,4 @@
icon: { sprite: /Textures/Objects/Specific/Hydroponics/tobacco.rsi, state: dried } icon: { sprite: /Textures/Objects/Specific/Hydroponics/tobacco.rsi, state: dried }
spawn: LeavesCannabisDried spawn: LeavesCannabisDried
maxCount: 5 maxCount: 5
itemSize: 5

View File

@@ -1,11 +1,14 @@
# they're uninflated by default so they're tiny
- type: stack - type: stack
id: InflatableWall id: InflatableWall
name: inflatable wall name: inflatable wall
spawn: InflatableWallStack1 spawn: InflatableWallStack1
maxCount: 10 maxCount: 10
itemSize: 1
- type: stack - type: stack
id: InflatableDoor id: InflatableDoor
name: inflatable door name: inflatable door
spawn: InflatableDoorStack1 spawn: InflatableDoorStack1
maxCount: 4 maxCount: 4
itemSize: 1

View File

@@ -3,315 +3,368 @@
name: steel tile name: steel tile
spawn: FloorTileItemSteel spawn: FloorTileItemSteel
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileMetalDiamond id: FloorTileMetalDiamond
name: steel tile name: steel tile
spawn: FloorTileItemMetalDiamond spawn: FloorTileItemMetalDiamond
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileWood id: FloorTileWood
name: wood floor name: wood floor
spawn: FloorTileItemWood spawn: FloorTileItemWood
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileWhite id: FloorTileWhite
name: white tile name: white tile
spawn: FloorTileItemWhite spawn: FloorTileItemWhite
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileDark id: FloorTileDark
name: dark tile name: dark tile
spawn: FloorTileItemDark spawn: FloorTileItemDark
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileTechmaint id: FloorTileTechmaint
name: techmaint floor name: techmaint floor
spawn: FloorTileItemTechmaint spawn: FloorTileItemTechmaint
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileFreezer id: FloorTileFreezer
name: freezer tile name: freezer tile
spawn: FloorTileItemFreezer spawn: FloorTileItemFreezer
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileShowroom id: FloorTileShowroom
name: showroom tile name: showroom tile
spawn: FloorTileItemShowroom spawn: FloorTileItemShowroom
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileGCircuit id: FloorTileGCircuit
name: green-circuit floor name: green-circuit floor
spawn: FloorTileItemGCircuit spawn: FloorTileItemGCircuit
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileGold id: FloorTileGold
name: gold floor name: gold floor
spawn: FloorTileItemGold spawn: FloorTileItemGold
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileReinforced id: FloorTileReinforced
name: reinforced tile name: reinforced tile
spawn: FloorTileItemReinforced spawn: FloorTileItemReinforced
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileMono id: FloorTileMono
name: mono tile name: mono tile
spawn: FloorTileItemMono spawn: FloorTileItemMono
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileLino id: FloorTileLino
name: linoleum floor name: linoleum floor
spawn: FloorTileItemLino spawn: FloorTileItemLino
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileHydro id: FloorTileHydro
name: hydro tile name: hydro tile
spawn: FloorTileItemHydro spawn: FloorTileItemHydro
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileDirty id: FloorTileDirty
name: dirty tile name: dirty tile
spawn: FloorTileItemDirty spawn: FloorTileItemDirty
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackShuttleWhite id: FloorTileStackShuttleWhite
name: white shuttle tile name: white shuttle tile
spawn: FloorTileItemShuttleWhite spawn: FloorTileItemShuttleWhite
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackShuttleBlue id: FloorTileStackShuttleBlue
name: blue shuttle tile name: blue shuttle tile
spawn: FloorTileItemShuttleBlue spawn: FloorTileItemShuttleBlue
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackShuttleOrange id: FloorTileStackShuttleOrange
name: orange shuttle tile name: orange shuttle tile
spawn: FloorTileItemShuttleOrange spawn: FloorTileItemShuttleOrange
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackShuttlePurple id: FloorTileStackShuttlePurple
name: purple shuttle tile name: purple shuttle tile
spawn: FloorTileItemShuttlePurple spawn: FloorTileItemShuttlePurple
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackShuttleRed id: FloorTileStackShuttleRed
name: red shuttle tile name: red shuttle tile
spawn: FloorTileItemShuttleRed spawn: FloorTileItemShuttleRed
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackEighties id: FloorTileStackEighties
name: eighties floor tile name: eighties floor tile
spawn: FloorTileItemEighties spawn: FloorTileItemEighties
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackArcadeBlue id: FloorTileStackArcadeBlue
name: blue arcade tile name: blue arcade tile
spawn: FloorTileItemArcadeBlue spawn: FloorTileItemArcadeBlue
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackArcadeBlue2 id: FloorTileStackArcadeBlue2
name: blue arcade tile name: blue arcade tile
spawn: FloorTileItemArcadeBlue2 spawn: FloorTileItemArcadeBlue2
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackArcadeRed id: FloorTileStackArcadeRed
name: red arcade tile name: red arcade tile
spawn: FloorTileItemArcadeRed spawn: FloorTileItemArcadeRed
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorCarpetRed id: FloorCarpetRed
name: red carpet tile name: red carpet tile
spawn: FloorCarpetItemRed spawn: FloorCarpetItemRed
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorCarpetBlack id: FloorCarpetBlack
name: block carpet tile name: block carpet tile
spawn: FloorCarpetItemBlack spawn: FloorCarpetItemBlack
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorCarpetBlue id: FloorCarpetBlue
name: blue carpet tile name: blue carpet tile
spawn: FloorCarpetItemBlue spawn: FloorCarpetItemBlue
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorCarpetGreen id: FloorCarpetGreen
name: green carpet tile name: green carpet tile
spawn: FloorCarpetItemGreen spawn: FloorCarpetItemGreen
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorCarpetOrange id: FloorCarpetOrange
name: orange carpet tile name: orange carpet tile
spawn: FloorCarpetItemOrange spawn: FloorCarpetItemOrange
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorCarpetSkyBlue id: FloorCarpetSkyBlue
name: skyblue carpet tile name: skyblue carpet tile
spawn: FloorCarpetItemSkyBlue spawn: FloorCarpetItemSkyBlue
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorCarpetPurple id: FloorCarpetPurple
name: purple carpet tile name: purple carpet tile
spawn: FloorCarpetItemPurple spawn: FloorCarpetItemPurple
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorCarpetPink id: FloorCarpetPink
name: pink carpet tile name: pink carpet tile
spawn: FloorCarpetItemPink spawn: FloorCarpetItemPink
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackCarpetClown id: FloorTileStackCarpetClown
name: clown carpet tile name: clown carpet tile
spawn: FloorTileItemCarpetClown spawn: FloorTileItemCarpetClown
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackCarpetOffice id: FloorTileStackCarpetOffice
name: office carpet tile name: office carpet tile
spawn: FloorTileItemCarpetOffice spawn: FloorTileItemCarpetOffice
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackBoxing id: FloorTileStackBoxing
name: boxing ring tile name: boxing ring tile
spawn: FloorTileItemBoxing spawn: FloorTileItemBoxing
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileStackGym id: FloorTileStackGym
name: gym floor tile name: gym floor tile
spawn: FloorTileItemGym spawn: FloorTileItemGym
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileElevatorShaft id: FloorTileElevatorShaft
name: elevator shaft tile name: elevator shaft tile
spawn: FloorTileItemElevatorShaft spawn: FloorTileItemElevatorShaft
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileRockVault id: FloorTileRockVault
name: rock vault tile name: rock vault tile
spawn: FloorTileItemRockVault spawn: FloorTileItemRockVault
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileBlue id: FloorTileBlue
name: blue floor tile name: blue floor tile
spawn: FloorTileItemBlue spawn: FloorTileItemBlue
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileBar id: FloorTileBar
name: item bar floor tile name: item bar floor tile
spawn: FloorTileItemBar spawn: FloorTileItemBar
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileClown id: FloorTileClown
name: clown floor tile name: clown floor tile
spawn: FloorTileItemClown spawn: FloorTileItemClown
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileMime id: FloorTileMime
name: mime floor tile name: mime floor tile
spawn: FloorTileItemMime spawn: FloorTileItemMime
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileKitchen id: FloorTileKitchen
name: kitchen floor tile name: kitchen floor tile
spawn: FloorTileItemKitchen spawn: FloorTileItemKitchen
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileLaundry id: FloorTileLaundry
name: laundry floor tile name: laundry floor tile
spawn: FloorTileItemLaundry spawn: FloorTileItemLaundry
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileSilver id: FloorTileSilver
name: silver floor tile name: silver floor tile
spawn: FloorTileItemSilver spawn: FloorTileItemSilver
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileBCircuit id: FloorTileBCircuit
name: bcircuit floor tile name: bcircuit floor tile
spawn: FloorTileItemBCircuit spawn: FloorTileItemBCircuit
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileGrass id: FloorTileGrass
name: grass floor tile name: grass floor tile
spawn: FloorTileItemGrass spawn: FloorTileItemGrass
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileGrassJungle id: FloorTileGrassJungle
name: grass jungle floor tile name: grass jungle floor tile
spawn: FloorTileItemGrassJungle spawn: FloorTileItemGrassJungle
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileSnow id: FloorTileSnow
name: snow floor tile name: snow floor tile
spawn: FloorTileItemSnow spawn: FloorTileItemSnow
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileWoodPattern id: FloorTileWoodPattern
name: wood pattern floor name: wood pattern floor
spawn: FloorTileItemWoodPattern spawn: FloorTileItemWoodPattern
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileFlesh id: FloorTileFlesh
name: flesh floor name: flesh floor
spawn: FloorTileItemFlesh spawn: FloorTileItemFlesh
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileSteelMaint id: FloorTileSteelMaint
name: steel maint floor name: steel maint floor
spawn: FloorTileItemSteelMaint spawn: FloorTileItemSteelMaint
maxCount: 30 maxCount: 30
itemSize: 5
- type: stack - type: stack
id: FloorTileGratingMaint id: FloorTileGratingMaint
name: grating maint floor name: grating maint floor
spawn: FloorTileItemGratingMaint spawn: FloorTileItemGratingMaint
maxCount: 30 maxCount: 30
itemSize: 5

View File

@@ -4,6 +4,7 @@
icon: { sprite: "/Textures/Objects/Specific/Medical/medical.rsi", state: ointment } icon: { sprite: "/Textures/Objects/Specific/Medical/medical.rsi", state: ointment }
spawn: Ointment spawn: Ointment
maxCount: 10 maxCount: 10
itemSize: 1
- type: stack - type: stack
id: AloeCream id: AloeCream
@@ -11,6 +12,7 @@
icon: { sprite: "/Textures/Objects/Specific/Hydroponics/aloe.rsi", state: cream } icon: { sprite: "/Textures/Objects/Specific/Hydroponics/aloe.rsi", state: cream }
spawn: AloeCream spawn: AloeCream
maxCount: 10 maxCount: 10
itemSize: 1
- type: stack - type: stack
id: Gauze id: Gauze
@@ -18,6 +20,7 @@
icon: { sprite: "/Textures/Objects/Specific/Medical/medical.rsi", state: gauze } icon: { sprite: "/Textures/Objects/Specific/Medical/medical.rsi", state: gauze }
spawn: Gauze spawn: Gauze
maxCount: 10 maxCount: 10
itemSize: 1
- type: stack - type: stack
id: Brutepack id: Brutepack
@@ -25,6 +28,7 @@
icon: { sprite: "/Textures/Objects/Specific/Medical/medical.rsi", state: gauze } icon: { sprite: "/Textures/Objects/Specific/Medical/medical.rsi", state: gauze }
spawn: Brutepack spawn: Brutepack
maxCount: 10 maxCount: 10
itemSize: 1
- type: stack - type: stack
id: Bloodpack id: Bloodpack
@@ -32,3 +36,4 @@
icon: { sprite: "/Textures/Objects/Specific/Medical/medical.rsi", state: bloodpack } icon: { sprite: "/Textures/Objects/Specific/Medical/medical.rsi", state: bloodpack }
spawn: Bloodpack spawn: Bloodpack
maxCount: 10 maxCount: 10
itemSize: 1

View File

@@ -4,6 +4,7 @@
icon: { sprite: "/Textures/Objects/Tools/cable-coils.rsi", state: coil-30 } icon: { sprite: "/Textures/Objects/Tools/cable-coils.rsi", state: coil-30 }
spawn: CableApcStack1 spawn: CableApcStack1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: CableMV id: CableMV
@@ -11,6 +12,7 @@
icon: { sprite: "/Textures/Objects/Tools/cable-coils.rsi", state: coilmv-30 } icon: { sprite: "/Textures/Objects/Tools/cable-coils.rsi", state: coilmv-30 }
spawn: CableMVStack1 spawn: CableMVStack1
maxCount: 30 maxCount: 30
itemSize: 1
- type: stack - type: stack
id: CableHV id: CableHV
@@ -18,3 +20,4 @@
icon: { sprite: "/Textures/Objects/Tools/cable-coils.rsi", state: coilhv-30 } icon: { sprite: "/Textures/Objects/Tools/cable-coils.rsi", state: coilhv-30 }
spawn: CableHVStack1 spawn: CableHVStack1
maxCount: 30 maxCount: 30
itemSize: 1