using Content.Shared.Nutrition.EntitySystems;
using Content.Shared.Nutrition.Prototypes;
using Content.Shared.Popups;
+using Content.Shared.Storage.Components;
using Content.Shared.Tag;
using Robust.Server.GameObjects;
using Robust.Shared.Prototypes;
return false;
}
+ // Prevents plushies with items hidden in them from being added to prevent deletion of items
+ // If more of these types of checks need to be added, this should be changed to an event or something.
+ if (TryComp<SecretStashComponent>(element, out var stashComponent) && stashComponent.ItemContainer.Count != 0)
+ {
+ return false;
+ }
+
//Generate new visual layer
var flip = start.Comp.AllowHorizontalFlip && _random.Prob(0.5f);
var layer = new FoodSequenceVisualLayer(elementIndexed,
food-sequence-burger-content-extradimensional-orange = 3d
food-sequence-burger-content-world-pea = peace
+# COTTON BURGERS
+
+food-sequence-cotton-burger-gen = {$content}burger
+
+food-sequence-cotton-burger-content-cotton-bol = cotton
+food-sequence-cotton-burger-content-pyrotton-bol = pyro
+food-sequence-cotton-burger-content-plushie-throngler = throngle
+food-sequence-cotton-burger-content-plushie-ghost = spooky
+food-sequence-cotton-burger-content-plushie-revenant = spookier
+food-sequence-cotton-burger-content-plushie-bee = buzzzy
+food-sequence-cotton-burger-content-plushie-hamptr = hampt
+food-sequence-cotton-burger-content-plushie-nukie = nukie
+food-sequence-cotton-burger-content-plushie-rouny = rouny
+food-sequence-cotton-burger-content-plushie-lamp = lamp
+food-sequence-cotton-burger-content-plushie-arachnid = spider
+food-sequence-cotton-burger-content-plushie-lizard = weh
+food-sequence-cotton-burger-content-plushie-experiment = experimental
+food-sequence-cotton-burger-content-plushie-spacelizard = space
+food-sequence-cotton-burger-content-plushie-lizard-inversed = hew
+food-sequence-cotton-burger-content-plushie-diona = dion
+food-sequence-cotton-burger-content-plushie-shark = shonk
+food-sequence-cotton-burger-content-plushie-ratvar = ratvarian
+food-sequence-cotton-burger-content-plushie-narsie = nar'
+food-sequence-cotton-burger-content-plushie-carp = carp
+food-sequence-cotton-burger-content-plushie-magicarp = magi
+food-sequence-cotton-burger-content-plushie-holocarp = holo
+food-sequence-cotton-burger-content-plushie-slime = slime
+food-sequence-cotton-burger-content-plushie-snake = snek
+food-sequence-cotton-burger-content-plushie-mouse = mouse
+food-sequence-cotton-burger-content-plushie-vox = skree
+food-sequence-cotton-burger-content-plushie-atmosian = atmos
+food-sequence-cotton-burger-content-plushie-xeno = xeno
+food-sequence-cotton-burger-content-plushie-penguin = peng
+food-sequence-cotton-burger-content-plushie-human = uristmc
+food-sequence-cotton-burger-content-plushie-moth = fluff
+food-sequence-cotton-burger-content-plushie-ian = corgi
+food-sequence-cotton-burger-content-among-pequeno = sus
+
# TACO
food-sequence-taco-gen = taco with {$content}
--- /dev/null
+# Cotton Bun
+
+- type: entity
+ parent: FoodBreadSliceBase
+ id: FoodCottonBun
+ name: cotton bun
+ description: A cotton hamburger bun. Soft, round and convenient to hold.
+ components:
+ - type: Food
+ requiresSpecialDigestion: true
+ - type: Sprite
+ sprite: Objects/Consumable/Food/cottonburger.rsi
+ layers:
+ - state: cottonbun
+ - type: SolutionContainerManager
+ solutions:
+ food:
+ maxVol: 10
+ reagents:
+ - ReagentId: Nutriment
+ Quantity: 3.33
+ - ReagentId: Fiber
+ Quantity: 3.33
+ - type: Butcherable
+ butcherDelay: 1
+ spawned:
+ - id: FoodCottonBunTop
+ amount: 1
+ - id: FoodCottonBunBottom
+ amount: 1
+ - type: Tag
+ tags:
+ - ClothMade
+ - Bread
+ - Slice
+
+
+- type: entity
+ parent: FoodBreadSliceBase
+ id: FoodCottonBunBottom
+ name: cotton bottom bun
+ description: It's time for moths to experience the burger tower.
+ components:
+ - type: Item
+ size: Normal #patch until there is an adequate resizing system in place
+ - type: Food
+ requiresSpecialDigestion: true
+ - type: Sprite
+ drawdepth: Mobs
+ noRot: true
+ sprite: Objects/Consumable/Food/cottonburger.rsi
+ layers:
+ - state: cottonbun_bottom
+ - map: ["foodSequenceLayers"]
+ - type: FoodSequenceStartPoint
+ key: CottonBurger
+ maxLayers: 10
+ startPosition: 0, 0
+ offset: 0, 0.07
+ minLayerOffset: -0.05, 0
+ maxLayerOffset: 0.05, 0
+ nameGeneration: food-sequence-cotton-burger-gen
+ - type: Appearance
+ - type: FoodMetamorphableByAdding
+ - type: SolutionContainerManager
+ solutions:
+ food:
+ maxVol: 5
+ canReact: false # Dont want cause reactions inside burgers after merging ingredients
+ reagents:
+ - ReagentId: Nutriment
+ Quantity: 1.665
+ - ReagentId: Fiber
+ Quantity: 1.665
+ - type: Tag
+ tags:
+ - ClothMade
+ - Bread
+ - Slice
+
+- type: entity
+ parent: FoodBreadSliceBase
+ id: FoodCottonBunTop
+ name: cotton top bun
+ description: The perfect finish for your fibrous burger tower.
+ components:
+ - type: Food
+ requiresSpecialDigestion: true
+ - type: Sprite
+ sprite: Objects/Consumable/Food/cottonburger.rsi
+ layers:
+ - state: cottonbun_top
+ - type: SolutionContainerManager
+ solutions:
+ food:
+ maxVol: 5
+ reagents:
+ - ReagentId: Nutriment
+ Quantity: 1.665
+ - ReagentId: Fiber
+ Quantity: 1.665
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: CottonBunTopBurger
+ - type: Tag
+ tags:
+ - ClothMade
+ - Bread
+ - Slice
- type: Tag
tags:
- Slice
+ - ClothMade
- type: Construction
graph: DoughRopeCotton
node: start
Quantity: 1.5
- ReagentId: Fiber
Quantity: 3.5
+ - type: Tag
+ tags:
+ - ClothMade
+ - Ingredient
- type: entity
name: raw pastry base
tags:
- ClothMade
- CottonBoll
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: CottonBol
- type: entity
name: pyrotton boll
- CottonBoll
- type: Extractable
grindableSolutionName: food
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: PyrottonBol
- type: entity
name: cherry
- type: Item
size: Ginormous
sprite: Objects/Weapons/Melee/Throngler-in-hand.rsi
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: ThronglerPlushie
+
- type: entity
parent: BasePlushie
accumulatorRatio: 0.5
maxSpeed: 1
minSpeed: 0.25
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: GhostPlushie
- type: entity
parent: PlushieGhost
- type: Construction
graph: PlushieGhostRevenant
node: plushie
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: RevenantPlushie
- type: entity
parent: BasePlushie
equippedPrefix: bee
slots:
- HEAD
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: BeePlushie
- type: entity
parent: BasePlushie
wideAnimationRotation: 180
soundHit:
path: /Audio/Items/Toys/mousesqueek.ogg
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: HamptrPlushie
- type: entity
parent: PlushieBee
components:
- type: Sprite
state: plushie_nuke
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: NukiePlushie
- type: entity
parent: BasePlushie
- type: Sprite
state: plushie_rouny
- type: Rotatable
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: RounyPlushie
- type: entity
parent: BasePlushie
radius: 1.5
energy: 2
netsync: false
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: LampPlushie
- type: entity
parent: BasePlushie
wideAnimationRotation: 180
soundHit:
path: /Audio/Voice/Arachnid/arachnid_laugh.ogg
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: ArachnidPlushie
- type: entity
parent: BasePlushie
- ClothMade
- Payload
- PlushieLizard
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: LizardPlushie
- type: entity
parent: BasePlushie
equippedPrefix: expi
slots:
- HEAD
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: ExperimentPlushie
- type: entity
parent: PlushieLizard
head:
- state: spacelizard-equipped-HELMET
offset: "0, 0.03"
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: SpaceLizardPlushie
- type: entity
parent: PlushieLizard
equippedPrefix: lizard-inversed
slots:
- HEAD
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: InversedLizardPlushie
- type: entity
- LowImpassable
- type: CollisionWake
enabled: false
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: DionaPlushie
- type: entity
parent: BasePlushie
tags:
- PlushieSharkBlue
- Payload
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: BlueSharkPlushie
- type: entity
parent: PlushieSharkBlue
tags:
- PlushieSharkPink
- Payload
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: PinkSharkPlushie
- type: entity
parent: PlushieSharkBlue
tags:
- PlushieSharkGrey
- Payload
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: GreySharkPlushie
- type: entity
parent: BasePlushie
size: Normal
- type: Sprite
state: plushie_ratvar
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: RatvarPlushie
- type: entity
parent: BasePlushie
size: Normal
- type: Sprite
state: narplush
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: NarPlushie
- type: entity
parent: BasePlushie
- Payload
- ClothMade
- PlushieCarp
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: CarpPlushie
- type: entity
parent: PlushieCarp
components:
- type: Sprite
state: magicplush
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: MagicarpPlushie
- type: entity
parent: PlushieCarp
components:
- type: Sprite
state: holoplush
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: HolocarpPlushie
- type: entity
parent: BasePlushie
wideAnimationRotation: 180
soundHit:
path: /Audio/Voice/Slime/slime_squish.ogg
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: SlimePlushie
- type: entity
parent: BasePlushie
- NECK
- type: Speech
speechVerb: Reptilian # for pais (In the secret stash)
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: SnakePlushie
- type: entity
parent: BasePlushie
equippedPrefix: mouse
slots:
- HEAD
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: MousePlushie
- type: entity
parent: BasePlushie
wideAnimationRotation: 180
soundHit:
path: /Audio/Voice/Vox/shriek1.ogg
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: VoxPlushie
- type: entity
parent: BasePlushie
components:
- type: Sprite
state: plushie_atmosian
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: AtmosianPlushie
- type: entity
parent: BasePlushie
wideAnimationRotation: 180
soundHit:
path: /Audio/Weapons/Xeno/alien_spitacid.ogg
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: XenoPlushie
- type: entity
parent: BasePlushie
components:
- type: Sprite
state: plushie_penguin
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: PenguinPlushie
- type: entity
parent: BasePlushie
- type: EmitSoundOnTrigger
sound:
path: /Audio/Voice/Human/malescream_5.ogg
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: HumanPlushie
- type: entity
parent: BasePlushie
requiresSpecialDigestion: true
useSound:
path: /Audio/Voice/Moth/moth_chitter.ogg
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: MothPlushie
## Rubber
requiresSpecialDigestion: true
useSound:
path: /Audio/Items/Toys/ian.ogg
+ - type: FoodSequenceElement
+ entries:
+ CottonBurger: IanPlushie
## Toyweapons
available:
- enum.DamageStateVisualLayers.Base:
base: Sixteen
+# - type: FoodSequenceElement - does not work with randomized sprites
+# entries:
+# CottonBurger: AmongPequeno
+
- type: entity
parent: BaseItem
sprites:
- sprite: Objects/Specific/Hydroponics/anomaly_berry.rsi
state: produce
+
+# Cotton Top Bun
+
+- type: foodSequenceElement
+ id: CottonBunTopBurger
+ final: true
+ sprites:
+ - sprite: Objects/Consumable/Food/cottonburger.rsi
+ state: cottonbun_top
+ tags:
+ - Bun
+ - ClothMade
+
+# Cotton Bol
+
+- type: foodSequenceElement
+ id: CottonBol
+ name: food-sequence-cotton-burger-content-cotton-bol
+ sprites:
+ - sprite: Objects/Specific/Hydroponics/cotton.rsi
+ state: produce
+
+# Pyrotton Bol
+
+- type: foodSequenceElement
+ id: PyrottonBol
+ name: food-sequence-cotton-burger-content-pyrotton-bol
+ sprites:
+ - sprite: Objects/Specific/Hydroponics/pyrotton.rsi
+ state: produce
+
+# Throngler Plushie
+
+- type: foodSequenceElement
+ id: ThronglerPlushie
+ scale: 0.75, 0.75
+ name: food-sequence-cotton-burger-content-plushie-throngler
+ sprites:
+ - sprite: Objects/Weapons/Melee/ThronglerPlushie.rsi
+ state: icon
+
+# Ghost Plushie
+
+- type: foodSequenceElement
+ id: GhostPlushie
+ name: food-sequence-cotton-burger-content-plushie-ghost
+ scale: 0.8, 0.8
+ sprites:
+ - sprite: Mobs/Ghosts/ghost_human.rsi
+ state: icon
+ noRot: true
+
+# Revenant Plushie
+
+- type: foodSequenceElement
+ id: RevenantPlushie
+ name: food-sequence-cotton-burger-content-plushie-revenant
+ scale: 0.75, 0.75
+ sprites:
+ - sprite: Mobs/Ghosts/revenant.rsi
+ state: icon
+ noRot: true
+
+# Bee Plushie
+
+- type: foodSequenceElement
+ id: BeePlushie
+ name: food-sequence-cotton-burger-content-plushie-bee
+ scale: 0.75, 0.75
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_h
+
+# Hamptr Plushie
+
+- type: foodSequenceElement
+ id: HamptrPlushie
+ name: food-sequence-cotton-burger-content-plushie-hamptr
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_hampter
+
+# Nukie Plushie
+
+- type: foodSequenceElement
+ id: NukiePlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-nukie
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_nuke
+
+# Rouny Plushie
+
+- type: foodSequenceElement
+ id: RounyPlushie
+ name: food-sequence-cotton-burger-content-plushie-rouny
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_rouny
+
+# Lamp Plushie
+
+- type: foodSequenceElement
+ id: LampPlushie
+ name: food-sequence-cotton-burger-content-plushie-lamp
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_lamp
+
+# Arachnid Plushie
+
+- type: foodSequenceElement
+ id: ArachnidPlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-arachnid
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_arachnid
+
+# Lizard Plushies
+
+- type: foodSequenceElement
+ id: LizardPlushie
+ name: food-sequence-cotton-burger-content-plushie-lizard #Weh!
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_lizard
+
+- type: foodSequenceElement
+ id: SpaceLizardPlushie
+ name: food-sequence-cotton-burger-content-plushie-spacelizard
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_spacelizard
+
+- type: foodSequenceElement
+ id: InversedLizardPlushie
+ name: food-sequence-cotton-burger-content-plushie-lizard-inversed #Hew!
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_lizard_inversed
+
+# Experiment Plushie
+
+- type: foodSequenceElement
+ id: ExperimentPlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-experiment
+ sprites:
+ - sprite: Objects/Fun/expiplush.rsi
+ state: expi
+
+#Diona Plushie
+
+- type: foodSequenceElement
+ id: DionaPlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-diona
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_diona
+
+#Shark Plushies
+
+- type: foodSequenceElement
+ id: BlueSharkPlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-shark
+ sprites:
+ - sprite: Objects/Fun/sharkplush.rsi
+ state: blue
+
+- type: foodSequenceElement
+ id: PinkSharkPlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-shark
+ sprites:
+ - sprite: Objects/Fun/sharkplush.rsi
+ state: pink
+
+- type: foodSequenceElement
+ id: GreySharkPlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-shark
+ sprites:
+ - sprite: Objects/Fun/sharkplush.rsi
+ state: grey
+
+#Ratvar Plushie
+
+- type: foodSequenceElement
+ id: RatvarPlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-ratvar
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_ratvar
+
+#Nar'sie Plushie
+
+- type: foodSequenceElement
+ id: NarPlushie
+ scale: 0.75, 0.75
+ name: food-sequence-cotton-burger-content-plushie-narsie
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: narplush
+
+#Carp Plushies
+
+- type: foodSequenceElement
+ id: CarpPlushie
+ name: food-sequence-cotton-burger-content-plushie-carp
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: carpplush
+
+- type: foodSequenceElement
+ id: MagicarpPlushie
+ name: food-sequence-cotton-burger-content-plushie-magicarp
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: magicplush
+
+- type: foodSequenceElement
+ id: HolocarpPlushie
+ name: food-sequence-cotton-burger-content-plushie-holocarp
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: holoplush
+
+#Slime Plushie
+
+- type: foodSequenceElement
+ id: SlimePlushie
+ name: food-sequence-cotton-burger-content-plushie-slime
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_slime
+
+#Snake Plushie
+
+- type: foodSequenceElement
+ id: SnakePlushie
+ name: food-sequence-cotton-burger-content-plushie-snake
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_snake
+
+#Mouse Plushie
+
+- type: foodSequenceElement
+ id: MousePlushie
+ name: food-sequence-cotton-burger-content-plushie-mouse
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: toy_mouse
+
+#Vox Plushie
+
+- type: foodSequenceElement
+ id: VoxPlushie
+ name: food-sequence-cotton-burger-content-plushie-vox
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_vox
+
+#Atmosian Plushie
+
+- type: foodSequenceElement
+ id: AtmosianPlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-atmosian
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_atmosian
+
+#Xeno Plushie
+
+- type: foodSequenceElement
+ id: XenoPlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-xeno
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_xeno
+
+#Penguin Plushie
+
+- type: foodSequenceElement
+ id: PenguinPlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-penguin
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_penguin
+
+#Human Plushie
+
+- type: foodSequenceElement
+ id: HumanPlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-human
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_human
+
+#Moth Plushie
+
+- type: foodSequenceElement
+ id: MothPlushie
+ scale: 0.8, 0.8
+ name: food-sequence-cotton-burger-content-plushie-moth
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: plushie_moth
+
+#Ian Plushie
+
+- type: foodSequenceElement
+ id: IanPlushie
+ name: food-sequence-cotton-burger-content-plushie-ian
+ sprites:
+ - sprite: Objects/Fun/toys.rsi
+ state: ian
+
+#Among pequeño - does not work with randomized sprites
+
+#- type: foodSequenceElement
+# id: AmongPequeno
+# name: food-sequence-cotton-burger-content-among-pequeno
+# sprites:
+# - sprite: Objects/Fun/pequeno.rsi
solids:
FoodDoughSlice: 1 # one third of a standard bread dough recipe
+- type: microwaveMealRecipe
+ id: RecipeCottonBun
+ name: cotton bun recipe
+ result: FoodCottonBun
+ time: 5
+ group: Breads
+ solids:
+ FoodDoughCottonSlice: 1
+
#Bagels
- type: microwaveMealRecipe
id: RecipeBagel
- type: Tag
id: CottonBoll
+- type: Tag
+ id: CottonBurger
+
- type: Tag
id: Cow
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Created by Wolfkey. Modified from bun taken from tgstation and modified by Swept and potato1234x at https://github.com/tgstation/tgstation/commit/40d75cc340c63582fb66ce15bf75a36115f6bdaa, and Top and bottom bun edited by TheShuEd",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "cottonbun"
+ },
+ {
+ "name": "cottonbun_top"
+ },
+ {
+ "name": "cottonbun_bottom"
+ }
+ ]
+}