Adds Parcel Wrap (#34471)

* Parcel Wrap

* fix TG sprite licenses
update attribution on modified `unwrapped` sprite to better conform to CC's guidance

* ContainerContainer test failure fix

* Just easy changes for now.

* Imagine building your code before pushing it for review

* The rest of the PR comments

* PR comments

* more comments + cargo orderability

* whitespace: deduplicated.

* use limitedcharges
replace mostly-duped client/server with if(onserver)

* cabinet perspective sprites

* web edit detected

fite me

* @ps3moira 's new sprites for me :)

* add a touch of attribution

* EmoGarbage Review

* Merge with master

* Merge with master

---------

Co-authored-by: EmoGarbage404 <retron404@gmail.com>
This commit is contained in:
Centronias
2025-04-26 16:24:25 -07:00
committed by GitHub
parent fd24e4bc5b
commit 90582f27ee
26 changed files with 675 additions and 0 deletions

View File

@@ -17,3 +17,13 @@
cost: 15000
category: cargoproduct-category-name-cargo
group: market
- type: cargoProduct
id: CargoParcelWrap
icon:
sprite: Objects/Misc/ParcelWrap/parcel_wrap.rsi
state: brown
product: CrateCargoParcelWrap
cost: 750
category: cargoproduct-category-name-cargo
group: market

View File

@@ -8,6 +8,17 @@
contents:
- id: ClothingOuterHardsuitLuxury
- type: entity
id: CrateCargoParcelWrap
parent: CrateGenericSteel
name: parcel wrap crate
description: All your parcel wrapping needs in one crate, containing three rolls of parcel wrap.
components:
- type: StorageFill
contents:
- id: ParcelWrap
amount: 3
- type: entity
id: CrateCargoGambling
name: the grand lottery $$$

View File

@@ -92,6 +92,7 @@
whitelist:
components:
- SecretStash
- WrappedParcel
- type: entity
parent: [ PersonalAI, BaseSyndicateContraband]

View File

@@ -0,0 +1,100 @@
- type: entity
parent: BaseItem
id: ParcelWrap
name: parcel wrap
description: Paper used contain items for transport.
components:
- type: Sprite
sprite: Objects/Misc/ParcelWrap/parcel_wrap.rsi
state: brown
- type: ParcelWrap
parcelPrototype: WrappedParcel
wrapDelay: 1.0
wrapSound:
path: /Audio/Items/Handcuffs/rope_start.ogg
params:
volume: -5
variation: 0.05
whitelist:
components:
- Item
blacklist:
components:
- NukeDisk # Don't try to hide the disk.
- WrappedParcel # No wrapping wrapped things.
tags:
- ParcelWrapBlacklist
- FakeNukeDisk # So you can't tell if the nuke disk is real or fake depending on if it can be wrapped or not.
- type: LimitedCharges
maxCharges: 30
- type: entity
parent: BaseItem
id: WrappedParcel
categories: [ HideSpawnMenu ]
name: wrapped parcel
description: Something wrapped up in paper. I wonder what's inside...
components:
- type: ContainerContainer
containers:
contents: !type:ContainerSlot
- type: Appearance
- type: GenericVisualizer
visuals:
enum.WrappedParcelVisuals.Size:
enum.WrappedParcelVisuals.Layer:
"Tiny": { state: "parcel-tiny" }
"Small": { state: "parcel-small" }
"Medium": { state: "parcel-medium" }
"Large": { state: "parcel-medium" }
"Huge": { state: "parcel-large" }
"Ginormous": { state: "parcel-large" }
- type: Sprite
sprite: Objects/Misc/ParcelWrap/wrapped_parcel.rsi
layers:
- state: parcel-medium
map: [ "enum.WrappedParcelVisuals.Layer" ]
- type: WrappedParcel
unwrapDelay: 0.5
unwrapSound:
path: /Audio/Effects/poster_broken.ogg
params:
volume: -4
unwrapTrash: ParcelWrapTrash
- type: Damageable
damageContainer: Inorganic
- type: Destructible
thresholds:
- trigger:
!type:DamageTypeTrigger
damageType: Slash
damage: 5
behaviors:
- !type:PlaySoundBehavior
sound:
path: /Audio/Effects/poster_broken.ogg
params:
volume: -4
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: Tag
tags:
- Recyclable # Parcel entity is recyclable, and when it's destroyed, it'll drop its contents.
- type: entity
parent: BaseItem
id: ParcelWrapTrash
categories: [ HideSpawnMenu ]
name: parcel wrap
description: The disappointing remnants of an unwrapped parcel.
components:
- type: Sprite
sprite: Objects/Misc/ParcelWrap/parcel_wrap_trash.rsi
layers:
- state: brown
- type: Tag
tags:
- Trash
- ParcelWrapBlacklist # No exponential wrapper trash-splosions.
- Recyclable
- type: SpaceGarbage

View File

@@ -957,6 +957,9 @@
- type: Tag
id: Pancake
- type: Tag
id: ParcelWrapBlacklist
- type: Tag
id: Payload # for grenade/bomb crafting