From 9dd31220b70e82b030c8a6af5aad500001f2b808 Mon Sep 17 00:00:00 2001 From: Thinbug <101073555+Thinbug0@users.noreply.github.com> Date: Sun, 18 Jan 2026 20:01:28 -0300 Subject: [PATCH] Magic 9 Ball (#42189) * hoping i didnt forget anythin * thingiess i forgor * fixies * first half of fixies * other half * sprite changes * more proper outline on the sprites * making the outline a tad more visible again * making it tiny * readding the yaml for the magic 9 ball * sprite update so its less flat and more shapey --- .../predictions/magic-9-ball-answers.ftl | 21 ++++++ .../VendingMachines/Inventories/games.yml | 1 + Resources/Prototypes/Datasets/predictions.yml | 5 ++ .../Entities/Markers/Spawners/Random/toy.yml | 1 + .../Prototypes/Entities/Objects/Fun/orbs.yml | 70 ++++++++++++++++++ .../Objects/Fun/Balls/magic9ball.rsi/icon.png | Bin 0 -> 282 bytes .../Fun/Balls/magic9ball.rsi/inhand-left.png | Bin 0 -> 469 bytes .../Fun/Balls/magic9ball.rsi/inhand-right.png | Bin 0 -> 471 bytes .../Fun/Balls/magic9ball.rsi/meta.json | 22 ++++++ 9 files changed, 120 insertions(+) create mode 100644 Resources/Locale/en-US/predictions/magic-9-ball-answers.ftl create mode 100644 Resources/Prototypes/Datasets/predictions.yml create mode 100644 Resources/Textures/Objects/Fun/Balls/magic9ball.rsi/icon.png create mode 100644 Resources/Textures/Objects/Fun/Balls/magic9ball.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Fun/Balls/magic9ball.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Fun/Balls/magic9ball.rsi/meta.json diff --git a/Resources/Locale/en-US/predictions/magic-9-ball-answers.ftl b/Resources/Locale/en-US/predictions/magic-9-ball-answers.ftl new file mode 100644 index 0000000000..25eee1ac23 --- /dev/null +++ b/Resources/Locale/en-US/predictions/magic-9-ball-answers.ftl @@ -0,0 +1,21 @@ +# Positive +magic-9-ball-1 = Yes +magic-9-ball-2 = YES!!!! +magic-9-ball-3 = Without a doubt +magic-9-ball-4 = It is certain +magic-9-ball-5 = Outlook good +magic-9-ball-6 = Positive +magic-9-ball-7 = Absolutely + +# Negative +magic-9-ball-8 = No +magic-9-ball-9 = NOOO!!!!!! +magic-9-ball-10 = No no no no no no no +magic-9-ball-11 = Nuh uh +magic-9-ball-12 = Nah +magic-9-ball-13 = Negative +magic-9-ball-14 = Absolutely not + +# Neutral +magic-9-ball-15 = Perchance +magic-9-ball-16 = I dunno diff --git a/Resources/Prototypes/Catalog/VendingMachines/Inventories/games.yml b/Resources/Prototypes/Catalog/VendingMachines/Inventories/games.yml index 0fe813178f..5dde9bdb4e 100644 --- a/Resources/Prototypes/Catalog/VendingMachines/Inventories/games.yml +++ b/Resources/Prototypes/Catalog/VendingMachines/Inventories/games.yml @@ -16,6 +16,7 @@ PaperCNCSheet: 6 MysteryFigureBox: 2 BooksBag: 3 + Magic9Ball: 2 contrabandInventory: Basketball: 1 FoodSnackBoritos: 3 diff --git a/Resources/Prototypes/Datasets/predictions.yml b/Resources/Prototypes/Datasets/predictions.yml new file mode 100644 index 0000000000..0cef76937e --- /dev/null +++ b/Resources/Prototypes/Datasets/predictions.yml @@ -0,0 +1,5 @@ +- type: localizedDataset + id: Magic9Ball + values: + prefix: magic-9-ball- + count: 16 diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/toy.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/toy.yml index 9ec48b32bb..d852cadfd8 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/toy.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/toy.yml @@ -294,6 +294,7 @@ - id: NukeDiskFake - id: DiceBag - id: SpectralLocator + - id: Magic9Ball - id: BarberScissors - id: SprayFlowerPin - id: ClothingShoesSkates diff --git a/Resources/Prototypes/Entities/Objects/Fun/orbs.yml b/Resources/Prototypes/Entities/Objects/Fun/orbs.yml index d155453186..86d645ee85 100644 --- a/Resources/Prototypes/Entities/Objects/Fun/orbs.yml +++ b/Resources/Prototypes/Entities/Objects/Fun/orbs.yml @@ -104,3 +104,73 @@ transmitFrequencyId: SurveillanceCamera - type: WiredNetworkConnection - type: SurveillanceCameraMonitor + +- type: entity + parent: BaseItem + id: Magic9Ball + name: magic 9 ball + description: An endless source of wisdom... Now with a speaker included! + components: + - type: Sprite + sprite: Objects/Fun/Balls/magic9ball.rsi + state: icon + - type: Item + size: Tiny + - type: TriggerOnActivate + - type: TriggerOnSignal + - type: UseDelay + delay: 5 + - type: UseDelayOnTrigger + - type: UseDelayTriggerCondition + - type: SpeakOnTrigger + pack: Magic9Ball + - type: Speech + speechSounds: Pai + - type: DeviceNetwork + deviceNetId: Wireless + receiveFrequencyId: BasicDevice + - type: WirelessNetworkConnection + range: 20 + - type: DeviceLinkSink + ports: + - Trigger + - type: SolutionContainerManager + solutions: + magic9ball: + maxVol: 20 + reagents: + - ReagentId: Ethanol + Quantity: 20 + - type: Damageable + damageContainer: Inorganic + - type: DamageOnLand + damage: + types: + Blunt: 10 + - type: EmitSoundOnLand + sound: + collection: GlassBreak + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 100 + behaviors: + - !type:DoActsBehavior + acts: [ "Destruction" ] + - trigger: + !type:DamageTrigger + damage: 20 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: GlassBreak + params: + volume: -4 + - !type:SpillBehavior + solution: magic9ball + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: PhysicalComposition + materialComposition: + Plastic: 50 diff --git a/Resources/Textures/Objects/Fun/Balls/magic9ball.rsi/icon.png b/Resources/Textures/Objects/Fun/Balls/magic9ball.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..4c7d10101cc5218c66f9a15680065535f02079a3 GIT binary patch literal 282 zcmV+#0pPx#)Ja4^R9J=W)3Hv&Fc8M^e=6qE1yH3tMP4sYl`RWP1_lOiNK7bVs0d3VNOfwvkx4pXBkrJ6mTk#u)S8WvPX2+iIF70LF2oD2n8)q~?+oLij$;IsHlV$GaQp zEIaSr)BP47pg+YAkhHl?(Y&X6{&EIO7W2 zlhg`5j{21JdnOTo>pab4&&=i%5&O*O0s;Teb%rf`S@P( zyrt_X@a7%s^!H084z0{@ytn`;!pP9EX8k4`8xuB#O-&ts#>XGnHoQ4}Fe;}#V5ipk z<@^lk`&iXBtKXStzaVV&!l<=O9i>*Mj+wRW-HpG0T5et6dj0iIi#|bD zL7=6}FKb?1?ErNQh^n9e>r>Lsm|ZsK6W6+KzNwRAxoE0;Kz=~n>)Tgv9AVk9yFS=H z*=A3H`SsmXx16`SS8ZLBFonK(q`?av+jT9*!TL! zAvOi3h~4M-Gpx=i|M+x{UFO%C{RtZ*7#N;?wp81k&d{IrwZ2qN(f4w$-vNoolTgTe~ HDWM4fh1-_)p`>TAH{Z0R8_BKh*!37LT3b>XrKmWY5@3BOX*Oe^O$FIN5z36l$ z+jV`P=!Y*sN3MR2)|*w3VzeScUVKWFo*ct0-qyPHtLk^Zvp2{(P<}d1XVd(%@&%yKN{bg}kDmu4cebSkRpfV%ozj2}F(yzSdu34Jpuql<#dnV&ju`sc{ zdZElh+l-hmx;T4T``c{{w0od#X3X4tQC81CFF