diff --git a/_maps/map_files/Delta/delta.dmm b/_maps/map_files/Delta/delta.dmm
index b58ccef8007..3044c74d784 100644
--- a/_maps/map_files/Delta/delta.dmm
+++ b/_maps/map_files/Delta/delta.dmm
@@ -1801,7 +1801,7 @@
"ajD" = (
/obj/structure/table/reinforced,
/obj/item/clipboard,
-/obj/item/toy/figure/assistant,
+/obj/item/toy/figure/crew/assistant,
/turf/simulated/floor/mineral/titanium/blue,
/area/shuttle/arrival/station)
"ajF" = (
@@ -6509,7 +6509,7 @@
/area/maintenance/fsmaint)
"avr" = (
/obj/structure/table/wood,
-/obj/item/toy/figure/wizard,
+/obj/item/toy/figure/crew/wizard,
/turf/simulated/floor/plasteel{
dir = 5;
icon_state = "dark"
@@ -8191,7 +8191,7 @@
"ayn" = (
/obj/structure/table/reinforced,
/obj/item/clipboard,
-/obj/item/toy/figure/janitor,
+/obj/item/toy/figure/crew/janitor,
/obj/machinery/status_display{
pixel_y = 32
},
@@ -12391,7 +12391,7 @@
"aGE" = (
/obj/structure/table/wood,
/obj/item/clipboard,
-/obj/item/toy/figure/bartender,
+/obj/item/toy/figure/crew/bartender,
/obj/machinery/status_display{
pixel_y = 32
},
@@ -16218,7 +16218,7 @@
},
/obj/structure/table,
/obj/item/clipboard,
-/obj/item/toy/figure/syndie,
+/obj/item/toy/figure/crew/syndie,
/turf/simulated/floor/plasteel{
dir = 1;
icon_state = "redcorner"
@@ -17268,7 +17268,7 @@
"aPS" = (
/obj/structure/table/wood,
/obj/item/clipboard,
-/obj/item/toy/figure/clown,
+/obj/item/toy/figure/crew/clown,
/turf/simulated/floor/plasteel{
icon_state = "redbluefull"
},
@@ -19193,7 +19193,7 @@
"aTz" = (
/obj/structure/table,
/obj/item/clipboard,
-/obj/item/toy/figure/qm,
+/obj/item/toy/figure/crew/qm,
/turf/simulated/floor/plasteel{
dir = 1;
icon_state = "brown"
@@ -20648,7 +20648,7 @@
"aWb" = (
/obj/structure/table/wood,
/obj/item/clipboard,
-/obj/item/toy/figure/mime,
+/obj/item/toy/figure/crew/mime,
/turf/simulated/floor/plasteel{
icon_state = "cafeteria"
},
@@ -23497,7 +23497,7 @@
"baZ" = (
/obj/structure/table,
/obj/item/clipboard,
-/obj/item/toy/figure/cargotech,
+/obj/item/toy/figure/crew/cargotech,
/turf/simulated/floor/plasteel{
icon_state = "brown"
},
@@ -25689,7 +25689,7 @@
},
/obj/structure/table,
/obj/item/clipboard,
-/obj/item/toy/figure/miner,
+/obj/item/toy/figure/crew/miner,
/obj/machinery/firealarm{
dir = 4;
pixel_x = -28
@@ -26683,7 +26683,7 @@
"bhB" = (
/obj/structure/table/glass,
/obj/item/clipboard,
-/obj/item/toy/figure/botanist,
+/obj/item/toy/figure/crew/botanist,
/obj/machinery/newscaster{
pixel_y = 32
},
@@ -28744,7 +28744,7 @@
},
/obj/structure/table/reinforced,
/obj/item/clipboard,
-/obj/item/toy/figure/chef,
+/obj/item/toy/figure/crew/chef,
/obj/effect/decal/warning_stripes/yellow/hollow,
/turf/simulated/floor/plasteel,
/area/crew_quarters/kitchen)
@@ -30078,7 +30078,7 @@
"bnZ" = (
/obj/structure/table/reinforced,
/obj/item/clipboard,
-/obj/item/toy/figure/atmos,
+/obj/item/toy/figure/crew/atmos,
/obj/machinery/atmospherics/pipe/simple/visible/cyan,
/obj/machinery/atmospherics/pipe/simple/visible/purple{
dir = 4
@@ -33622,7 +33622,7 @@
"buk" = (
/obj/structure/table/wood,
/obj/item/clipboard,
-/obj/item/toy/figure/hos,
+/obj/item/toy/figure/crew/hos,
/turf/simulated/floor/plasteel{
dir = 1;
icon_state = "vault"
@@ -41429,7 +41429,7 @@
"bHJ" = (
/obj/structure/table/wood,
/obj/item/clipboard,
-/obj/item/toy/figure/detective,
+/obj/item/toy/figure/crew/detective,
/obj/structure/extinguisher_cabinet{
pixel_x = -28
},
@@ -42313,7 +42313,7 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/structure/table/wood,
/obj/item/clipboard,
-/obj/item/toy/figure/captain,
+/obj/item/toy/figure/crew/captain,
/turf/simulated/floor/plasteel{
icon_state = "wood"
},
@@ -46151,7 +46151,7 @@
},
/obj/structure/table/reinforced,
/obj/item/clipboard,
-/obj/item/toy/figure/ce,
+/obj/item/toy/figure/crew/ce,
/turf/simulated/floor/plasteel{
dir = 8;
icon_state = "neutralfull"
@@ -46746,7 +46746,7 @@
dir = 8
},
/obj/item/clipboard,
-/obj/item/toy/figure/warden,
+/obj/item/toy/figure/crew/warden,
/turf/simulated/floor/plasteel{
dir = 8;
icon_state = "red"
@@ -50936,7 +50936,7 @@
/obj/structure/table/reinforced,
/obj/machinery/light,
/obj/item/clipboard,
-/obj/item/toy/figure/borg,
+/obj/item/toy/figure/crew/borg,
/turf/simulated/floor/plasteel{
dir = 8;
icon_state = "vault"
@@ -52345,7 +52345,7 @@
"caH" = (
/obj/structure/table/wood,
/obj/item/clipboard,
-/obj/item/toy/figure/lawyer,
+/obj/item/toy/figure/crew/lawyer,
/turf/simulated/floor/plasteel{
icon_state = "wood"
},
@@ -53273,7 +53273,7 @@
/obj/item/reagent_containers/food/drinks/bottle/absinthe/premium,
/obj/item/lighter/zippo/nt_rep,
/obj/item/storage/fancy/cigarettes/cigpack_robustgold,
-/obj/item/toy/figure/captain,
+/obj/item/toy/figure/crew/captain,
/turf/simulated/floor/plasteel{
icon_state = "grimy"
},
@@ -54021,7 +54021,7 @@
dir = 1
},
/obj/item/clipboard,
-/obj/item/toy/figure/hop,
+/obj/item/toy/figure/crew/hop,
/turf/simulated/floor/plasteel{
icon_state = "wood"
},
@@ -54428,7 +54428,7 @@
pixel_x = -32
},
/obj/item/clipboard,
-/obj/item/toy/figure/secofficer,
+/obj/item/toy/figure/crew/secofficer,
/turf/simulated/floor/plasteel{
dir = 8;
icon_state = "red"
@@ -58316,7 +58316,7 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/structure/table/wood,
/obj/item/clipboard,
-/obj/item/toy/figure/ian,
+/obj/item/toy/figure/crew/ian,
/obj/item/radio/intercom{
dir = 4;
pixel_x = 28
@@ -58829,7 +58829,7 @@
"cmO" = (
/obj/structure/table/reinforced,
/obj/item/clipboard,
-/obj/item/toy/figure/engineer,
+/obj/item/toy/figure/crew/engineer,
/obj/effect/decal/warning_stripes/yellow/hollow,
/turf/simulated/floor/plasteel{
dir = 6;
@@ -61100,7 +61100,7 @@
pixel_x = 24
},
/obj/item/clipboard,
-/obj/item/toy/figure/librarian,
+/obj/item/toy/figure/crew/librarian,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/turf/simulated/floor/plasteel{
icon_state = "grimy"
@@ -66661,7 +66661,7 @@
},
/obj/structure/table/wood,
/obj/item/clipboard,
-/obj/item/toy/figure/dsquad,
+/obj/item/toy/figure/crew/dsquad,
/turf/simulated/floor/plasteel{
icon_state = "grimy"
},
@@ -77297,7 +77297,7 @@
"cVF" = (
/obj/structure/table/glass,
/obj/item/clipboard,
-/obj/item/toy/figure/chemist,
+/obj/item/toy/figure/crew/chemist,
/turf/simulated/floor/plasteel{
dir = 1;
icon_state = "whitegreencorner"
@@ -78826,7 +78826,7 @@
/obj/structure/table/glass,
/obj/machinery/light/small,
/obj/item/clipboard,
-/obj/item/toy/figure/md,
+/obj/item/toy/figure/crew/md,
/obj/machinery/camera{
c_tag = "Medbay Front Desk";
dir = 1;
@@ -79846,7 +79846,7 @@
"daK" = (
/obj/structure/table,
/obj/item/clipboard,
-/obj/item/toy/figure/scientist,
+/obj/item/toy/figure/crew/scientist,
/turf/simulated/floor/plasteel{
dir = 10;
icon_state = "whitepurple"
@@ -86974,7 +86974,7 @@
pixel_y = -2
},
/obj/item/clipboard,
-/obj/item/toy/figure/rd,
+/obj/item/toy/figure/crew/rd,
/obj/effect/decal/warning_stripes/yellow/hollow,
/turf/simulated/floor/plasteel,
/area/crew_quarters/hor)
@@ -89999,7 +89999,7 @@
"duf" = (
/obj/structure/table/reinforced,
/obj/item/clipboard,
-/obj/item/toy/figure/roboticist,
+/obj/item/toy/figure/crew/roboticist,
/obj/machinery/door_control{
id = "robodesk";
name = "Robotics Desk Shutters";
@@ -90123,7 +90123,7 @@
pixel_x = -32
},
/obj/item/clipboard,
-/obj/item/toy/figure/cmo,
+/obj/item/toy/figure/crew/cmo,
/turf/simulated/floor/plasteel,
/area/medical/cmo)
"dus" = (
@@ -96909,7 +96909,7 @@
},
/obj/structure/table/glass,
/obj/item/clipboard,
-/obj/item/toy/figure/virologist,
+/obj/item/toy/figure/crew/virologist,
/turf/simulated/floor/plasteel{
dir = 1;
icon_state = "whitegreencorner"
@@ -103477,7 +103477,7 @@
"dUO" = (
/obj/structure/table/wood,
/obj/item/clipboard,
-/obj/item/toy/figure/chaplain,
+/obj/item/toy/figure/crew/chaplain,
/obj/machinery/firealarm{
dir = 4;
pixel_x = -28
@@ -104869,7 +104869,7 @@
"dYb" = (
/obj/structure/table/glass,
/obj/item/clipboard,
-/obj/item/toy/figure/geneticist,
+/obj/item/toy/figure/crew/geneticist,
/turf/simulated/floor/plasteel{
dir = 1;
icon_state = "whitepurplecorner"
diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm
index 4b7dfc791e7..3d7df7c1bd2 100644
--- a/_maps/map_files/MetaStation/MetaStation.dmm
+++ b/_maps/map_files/MetaStation/MetaStation.dmm
@@ -24428,7 +24428,7 @@
pixel_x = 4;
pixel_y = 4
},
-/obj/item/toy/figure/cargotech,
+/obj/item/toy/figure/crew/cargotech,
/turf/simulated/floor/plasteel{
dir = 5;
icon_state = "cafeteria"
@@ -30265,7 +30265,7 @@
})
"bnL" = (
/obj/structure/table,
-/obj/item/toy/figure/clown,
+/obj/item/toy/figure/crew/clown,
/obj/item/reagent_containers/food/snacks/baguette,
/turf/simulated/floor/plasteel{
icon_state = "dark"
@@ -35946,7 +35946,7 @@
/obj/item/reagent_containers/food/drinks/bottle/absinthe/premium,
/obj/item/lighter/zippo/nt_rep,
/obj/item/storage/fancy/cigarettes/cigpack_robustgold,
-/obj/item/toy/figure/captain,
+/obj/item/toy/figure/crew/captain,
/turf/simulated/floor/carpet,
/area/crew_quarters/captain{
name = "\improper Captain's Quarters"
@@ -46649,7 +46649,7 @@
/turf/simulated/floor/plasteel,
/area/atmos)
"bUp" = (
-/obj/item/toy/figure/mime,
+/obj/item/toy/figure/crew/mime,
/turf/simulated/floor/plasteel{
icon_state = "dark"
},
@@ -48134,7 +48134,7 @@
/area/crew_quarters/theatre)
"bXq" = (
/obj/machinery/light/small,
-/obj/item/toy/prize/honk{
+/obj/item/toy/figure/mech/honk{
pixel_y = 12
},
/obj/structure/table/wood,
diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm
index 210d381f45e..5ac556f1c12 100644
--- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm
+++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm
@@ -181,7 +181,7 @@
/obj/item/tank/internals/emergency_oxygen,
/obj/item/trash/candy,
/obj/effect/turf_decal/sand,
-/obj/item/toy/figure/bartender,
+/obj/item/toy/figure/crew/bartender,
/turf/simulated/floor/beach/sand,
/area/ruin/powered/beach)
"aK" = (
diff --git a/_maps/map_files/RandomRuins/SpaceRuins/spacebar.dmm b/_maps/map_files/RandomRuins/SpaceRuins/spacebar.dmm
index 6ce2e01e341..e30204f0684 100644
--- a/_maps/map_files/RandomRuins/SpaceRuins/spacebar.dmm
+++ b/_maps/map_files/RandomRuins/SpaceRuins/spacebar.dmm
@@ -80,7 +80,7 @@
})
"at" = (
/obj/structure/table,
-/obj/item/toy/figure/bartender,
+/obj/item/toy/figure/crew/bartender,
/turf/simulated/floor/wood,
/area/ruin/powered{
name = "Space Bar"
diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm
index 32c981f6190..7b84d793f76 100644
--- a/_maps/map_files/cyberiad/cyberiad.dmm
+++ b/_maps/map_files/cyberiad/cyberiad.dmm
@@ -9425,7 +9425,7 @@
},
/area/maintenance/fsmaint)
"avc" = (
-/obj/item/toy/figure/secofficer,
+/obj/item/toy/figure/crew/secofficer,
/turf/simulated/floor/plasteel{
icon_state = "floorgrime"
},
@@ -10260,7 +10260,7 @@
/area/maintenance/fsmaint)
"awE" = (
/obj/structure/table,
-/obj/item/toy/griffin,
+/obj/item/toy/figure/griffin,
/turf/simulated/floor/plating,
/area/maintenance/fsmaint)
"awF" = (
@@ -11016,12 +11016,12 @@
/area/maintenance/fsmaint)
"ayf" = (
/obj/structure/table,
-/obj/item/toy/figure/hos,
+/obj/item/toy/figure/crew/hos,
/turf/simulated/floor/plating,
/area/maintenance/fsmaint)
"ayg" = (
/obj/structure/table,
-/obj/item/toy/owl,
+/obj/item/toy/figure/owl,
/turf/simulated/floor/plating,
/area/maintenance/fsmaint)
"ayh" = (
@@ -14672,7 +14672,7 @@
/area/maintenance/auxsolarport)
"aFU" = (
/obj/structure/table,
-/obj/item/toy/figure/detective,
+/obj/item/toy/figure/crew/detective,
/obj/machinery/light/small{
dir = 8
},
@@ -45458,7 +45458,7 @@
/obj/item/reagent_containers/food/drinks/bottle/absinthe/premium,
/obj/item/lighter/zippo/nt_rep,
/obj/item/storage/fancy/cigarettes/cigpack_robustgold,
-/obj/item/toy/figure/captain,
+/obj/item/toy/figure/crew/captain,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/turf/simulated/floor/carpet,
/area/crew_quarters/captain/bedroom)
diff --git a/_maps/map_files/generic/Lavaland.dmm b/_maps/map_files/generic/Lavaland.dmm
index 6af4e45cc6e..02e8c553456 100644
--- a/_maps/map_files/generic/Lavaland.dmm
+++ b/_maps/map_files/generic/Lavaland.dmm
@@ -4713,7 +4713,7 @@
/obj/effect/decal/cleanable/cobweb2,
/obj/structure/table,
/obj/effect/decal/cleanable/dirt,
-/obj/item/toy/figure/assistant,
+/obj/item/toy/figure/crew/assistant,
/obj/machinery/light/small{
dir = 4
},
diff --git a/_maps/map_files/generic/centcomm.dmm b/_maps/map_files/generic/centcomm.dmm
index 232552a43b5..595d0cbda74 100644
--- a/_maps/map_files/generic/centcomm.dmm
+++ b/_maps/map_files/generic/centcomm.dmm
@@ -20,7 +20,7 @@
/turf/simulated/wall/indestructible/riveted,
/area/space)
"ag" = (
-/obj/item/toy/figure/syndie,
+/obj/item/toy/figure/crew/syndie,
/turf/simulated/floor/plating/asteroid/snow/airless,
/area/syndicate_mothership)
"ai" = (
diff --git a/code/datums/outfits/outfit_admin.dm b/code/datums/outfits/outfit_admin.dm
index c42fb4f2dfe..8a7763410bf 100644
--- a/code/datums/outfits/outfit_admin.dm
+++ b/code/datums/outfits/outfit_admin.dm
@@ -484,7 +484,7 @@
head = /obj/item/clothing/head/xenos
glasses = /obj/item/clothing/glasses/thermal
l_pocket = /obj/item/tank/internals/emergency_oxygen/double
- r_pocket = /obj/item/toy/toy_xeno
+ r_pocket = /obj/item/toy/figure/xeno
backpack_contents = list(
/obj/item/storage/box/survival = 1,
/obj/item/clothing/head/welding = 1,
diff --git a/code/game/objects/items/random_items.dm b/code/game/objects/items/random_items.dm
index 305d896a791..2e91f668265 100644
--- a/code/game/objects/items/random_items.dm
+++ b/code/game/objects/items/random_items.dm
@@ -4,12 +4,12 @@
/obj/item/toy/random
name = "Random Toy"
-/obj/item/toy/random/New()
+/obj/item/toy/random/Initialize(mapload)
..()
- var/list/types = list(/obj/item/gun/projectile/shotgun/toy/crossbow, /obj/item/toy/balloon,/obj/item/toy/spinningtoy,/obj/item/reagent_containers/spray/waterflower) + subtypesof(/obj/item/toy/prize)
+ var/list/types = list(/obj/item/gun/projectile/shotgun/toy/crossbow, /obj/item/toy/balloon,/obj/item/toy/spinningtoy,/obj/item/reagent_containers/spray/waterflower) + subtypesof(/obj/item/toy/figure/mech)
var/T = pick(types)
new T(loc)
- qdel(src)
+ return INITIALIZE_HINT_QDEL
// -------------------------------------
// Random cleanables, clearly this makes sense
diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm
index 9515c51a054..9cacf2e8d65 100644
--- a/code/game/objects/items/toys.dm
+++ b/code/game/objects/items/toys.dm
@@ -310,96 +310,6 @@
new /obj/item/toy/snappop/phoenix(get_turf(src))
qdel(src)
-
-/*
- * Mech prizes
- */
-/obj/item/toy/prize
- icon = 'icons/obj/toy.dmi'
- icon_state = "ripleytoy"
- var/cooldown = 0
-
-//all credit to skasi for toy mech fun ideas
-/obj/item/toy/prize/attack_self(mob/user as mob)
- if(cooldown < world.time - 8)
- to_chat(user, "You play with [src].")
- playsound(user, 'sound/mecha/mechstep.ogg', 20, 1)
- cooldown = world.time
-
-/obj/item/toy/prize/attack_hand(mob/user as mob)
- if(loc == user)
- if(cooldown < world.time - 8)
- to_chat(user, "You play with [src].")
- playsound(user, 'sound/mecha/mechturn.ogg', 20, 1)
- cooldown = world.time
- return
- ..()
-
-/obj/random/mech
- name = "Random Mech Prize"
- desc = "This is a random prize"
- icon = 'icons/obj/toy.dmi'
- icon_state = "ripleytoy"
-
-/obj/random/mech/item_to_spawn()
- return pick(subtypesof(/obj/item/toy/prize)) //exclude the base type.
-
-/obj/item/toy/prize/ripley
- name = "toy ripley"
- desc = "Mini-Mecha action figure! Collect them all! 1/11. This one is a ripley, a mining and engineering mecha."
-
-/obj/item/toy/prize/fireripley
- name = "toy firefighting ripley"
- desc = "Mini-Mecha action figure! Collect them all! 2/11. This one is a firefighter ripley, a fireproof mining and engineering mecha."
- icon_state = "fireripleytoy"
-
-/obj/item/toy/prize/deathripley
- name = "toy deathsquad ripley"
- desc = "Mini-Mecha action figure! Collect them all! 3/11. This one is the black ripley used by the hero of DeathSquad, that TV drama about loose-cannon ERT officers!"
- icon_state = "deathripleytoy"
-
-/obj/item/toy/prize/gygax
- name = "toy gygax"
- desc = "Mini-Mecha action figure! Collect them all! 4/11. This one is the speedy gygax combat mecha. Zoom zoom, pew pew!"
- icon_state = "gygaxtoy"
-
-/obj/item/toy/prize/durand
- name = "toy durand"
- desc = "Mini-Mecha action figure! Collect them all! 5/11. This one is the heavy durand combat mecha. Stomp stomp!"
- icon_state = "durandprize"
-
-/obj/item/toy/prize/honk
- name = "toy H.O.N.K."
- desc = "Mini-Mecha action figure! Collect them all! 6/11. This one is the infamous H.O.N.K mech!"
- icon_state = "honkprize"
-
-/obj/item/toy/prize/marauder
- name = "toy marauder"
- desc = "Mini-Mecha action figure! Collect them all! 7/11. This one is the powerful marauder combat mecha! Run for cover!"
- icon_state = "marauderprize"
-
-/obj/item/toy/prize/seraph
- name = "toy seraph"
- desc = "Mini-Mecha action figure! Collect them all! 8/11. This one is the powerful seraph combat mecha! Someone's in trouble!"
- icon_state = "seraphprize"
-
-/obj/item/toy/prize/mauler
- name = "toy mauler"
- desc = "Mini-Mecha action figure! Collect them all! 9/11. This one is the deadly mauler combat mecha! Look out!"
- icon_state = "maulerprize"
-
-/obj/item/toy/prize/odysseus
- name = "toy odysseus"
- desc = "Mini-Mecha action figure! Collect them all! 10/11. This one is the spindly, syringe-firing odysseus medical mecha."
- icon_state = "odysseusprize"
-
-/obj/item/toy/prize/phazon
- name = "toy phazon"
- desc = "Mini-Mecha action figure! Collect them all! 11/11. This one is the mysterious Phazon combat mecha! Nobody's safe!"
- icon_state = "phazonprize"
-
-
-
/*
|| A Deck of Cards for playing various games of chance ||
*/
@@ -1242,48 +1152,10 @@
user.loc.visible_message("[bicon(src)] [message]")
sleep(10)
-/obj/item/toy/owl
- name = "owl action figure"
- desc = "An action figure modeled after 'The Owl', defender of justice."
- icon = 'icons/obj/toy.dmi'
- icon_state = "owlprize"
- w_class = WEIGHT_CLASS_SMALL
- var/cooldown = 0
-
-/obj/item/toy/owl/attack_self(mob/user)
- if(!cooldown) //for the sanity of everyone
- var/message = pick("You won't get away this time, Griffin!", "Stop right there, criminal!", "Hoot! Hoot!", "I am the night!")
- to_chat(user, "You pull the string on [src].")
- playsound(user, 'sound/creatures/hoot.ogg', 25, 1)
- visible_message("[bicon(src)] [message]")
- cooldown = 1
- spawn(30) cooldown = 0
- return
- ..()
-
-/obj/item/toy/griffin
- name = "griffin action figure"
- desc = "An action figure modeled after 'The Griffin', criminal mastermind."
- icon = 'icons/obj/toy.dmi'
- icon_state = "griffinprize"
- w_class = WEIGHT_CLASS_SMALL
- var/cooldown = 0
-
-/obj/item/toy/griffin/attack_self(mob/user)
- if(!cooldown) //for the sanity of everyone
- var/message = pick("You can't stop me, Owl!", "My plan is flawless! The vault is mine!", "Caaaawwww!", "You will never catch me!")
- to_chat(user, "You pull the string on [src].")
- playsound(user, 'sound/creatures/caw.ogg', 25, 1)
- visible_message("[bicon(src)] [message]")
- cooldown = 1
- spawn(30) cooldown = 0
- return
- ..()
-
// DND Character minis. Use the naming convention (type)character for the icon states.
/obj/item/toy/character
icon = 'icons/obj/toy.dmi'
- w_class = WEIGHT_CLASS_SMALL
+ w_class = WEIGHT_CLASS_TINY
pixel_z = 5
/obj/item/toy/character/alien
@@ -1392,35 +1264,6 @@
to_chat(user, "You stop feeding \the [O] into \the [src]'s mini-input.")
else ..()
-/*
- * Xenomorph action figure
- */
-
-/obj/item/toy/toy_xeno
- icon = 'icons/obj/toy.dmi'
- icon_state = "toy_xeno"
- name = "xenomorph action figure"
- desc = "MEGA presents the new Xenos Isolated action figure! Comes complete with realistic sounds! Pull back string to use."
- w_class = WEIGHT_CLASS_SMALL
- bubble_icon = "alien"
- var/cooldown = 0
-
-/obj/item/toy/toy_xeno/attack_self(mob/user)
- if(cooldown <= world.time)
- cooldown = (world.time + 50) //5 second cooldown
- user.visible_message("[user] pulls back the string on [src].")
- icon_state = "[initial(icon_state)]_used"
- sleep(5)
- atom_say("Hiss!")
- var/list/possible_sounds = list('sound/voice/hiss1.ogg', 'sound/voice/hiss2.ogg', 'sound/voice/hiss3.ogg', 'sound/voice/hiss4.ogg')
- playsound(get_turf(src), pick(possible_sounds), 50, 1)
- spawn(45)
- if(src)
- icon_state = "[initial(icon_state)]"
- else
- to_chat(user, "The string on [src] hasn't rewound all the way!")
- return
-
/obj/item/toy/russian_revolver
name = "russian revolver"
desc = "for fun and games!"
@@ -1562,7 +1405,7 @@
icon_state = "nuketoy"
/obj/random/figure/item_to_spawn()
- return pick(subtypesof(/obj/item/toy/figure))
+ return pick(subtypesof(/obj/item/toy/figure/crew))
/obj/item/toy/figure
@@ -1570,235 +1413,374 @@
desc = "A \"Space Life\" brand... wait, what the hell is this thing?"
icon = 'icons/obj/toy.dmi'
icon_state = "nuketoy"
+ w_class = WEIGHT_CLASS_TINY
var/cooldown = 0
+ var/cooldown_time = 3 SECONDS
+
+/obj/item/toy/figure/attack_self(mob/user)
+ ..()
+ if(cooldown < world.time)
+ cooldown = world.time + cooldown_time
+ activate(user)
+ else
+ on_cooldown(user)
+
+/obj/item/toy/figure/proc/activate(mob/user)
+ return
+
+/obj/item/toy/figure/proc/on_cooldown(mob/user)
+ return
+
+/obj/item/toy/figure/crew
var/toysay = "What the fuck did you do?"
-/obj/item/toy/figure/New()
- ..()
- desc = "A \"Space Life\" brand [name]"
+/obj/item/toy/figure/crew/activate(mob/user)
+ atom_say(toysay)
+ playsound(user, 'sound/machines/click.ogg', 20, TRUE)
-/obj/item/toy/figure/attack_self(mob/user as mob)
- if(cooldown < world.time)
- cooldown = (world.time + 30) //3 second cooldown
- user.visible_message("[bicon(src)] [src] says \"[toysay]\".")
- playsound(user, 'sound/machines/click.ogg', 20, 1)
-
-/obj/item/toy/figure/cmo
- name = "Chief Medical Officer action figure"
+/obj/item/toy/figure/crew/cmo
+ name = "\improper Chief Medical Officer action figure"
desc = "The ever-suffering CMO, from Space Life's SS12 figurine collection."
icon_state = "cmo"
toysay = "Suit sensors!"
-/obj/item/toy/figure/assistant
- name = "Assistant action figure"
+/obj/item/toy/figure/crew/assistant
+ name = "\improper Assistant action figure"
desc = "The faceless, hairless scourge of the station, from Space Life's SS12 figurine collection."
icon_state = "assistant"
toysay = "Grey tide station wide!"
-/obj/item/toy/figure/atmos
- name = "Atmospheric Technician action figure"
+/obj/item/toy/figure/crew/atmos
+ name = "\improper Atmospheric Technician action figure"
desc = "The faithful atmospheric technician, from Space Life's SS12 figurine collection."
icon_state = "atmos"
toysay = "Glory to Atmosia!"
-/obj/item/toy/figure/bartender
- name = "Bartender action figure"
+/obj/item/toy/figure/crew/bartender
+ name = "\improper Bartender action figure"
desc = "The suave bartender, from Space Life's SS12 figurine collection."
icon_state = "bartender"
toysay = "Wheres my monkey?"
-/obj/item/toy/figure/borg
- name = "Cyborg action figure"
+/obj/item/toy/figure/crew/borg
+ name = "\improper Cyborg action figure"
desc = "The iron-willed cyborg, from Space Life's SS12 figurine collection."
icon_state = "borg"
toysay = "I. LIVE. AGAIN."
-/obj/item/toy/figure/botanist
- name = "Botanist action figure"
+/obj/item/toy/figure/crew/botanist
+ name = "\improper Botanist action figure"
desc = "The drug-addicted botanist, from Space Life's SS12 figurine collection."
icon_state = "botanist"
toysay = "Dude, I see colors..."
-/obj/item/toy/figure/captain
- name = "Captain action figure"
+/obj/item/toy/figure/crew/captain
+ name = "\improper Captain action figure"
desc = "The inept captain, from Space Life's SS12 figurine collection."
icon_state = "captain"
toysay = "Crew, the Nuke Disk is safely up my ass."
-/obj/item/toy/figure/cargotech
- name = "Cargo Technician action figure"
+/obj/item/toy/figure/crew/cargotech
+ name = "\improper Cargo Technician action figure"
desc = "The hard-working cargo tech, from Space Life's SS12 figurine collection."
icon_state = "cargotech"
toysay = "For Cargonia!"
-/obj/item/toy/figure/ce
- name = "Chief Engineer action figure"
+/obj/item/toy/figure/crew/ce
+ name = "\improper Chief Engineer action figure"
desc = "The expert Chief Engineer, from Space Life's SS12 figurine collection."
icon_state = "ce"
toysay = "Wire the solars!"
-/obj/item/toy/figure/chaplain
- name = "Chaplain action figure"
+/obj/item/toy/figure/crew/chaplain
+ name = "\improper Chaplain action figure"
desc = "The obsessed Chaplain, from Space Life's SS12 figurine collection."
icon_state = "chaplain"
toysay = "Gods make me a killing machine please!"
-/obj/item/toy/figure/chef
- name = "Chef action figure"
+/obj/item/toy/figure/crew/chef
+ name = "\improper Chef action figure"
desc = "The cannibalistic chef, from Space Life's SS12 figurine collection."
icon_state = "chef"
toysay = "I swear it's not human meat."
-/obj/item/toy/figure/chemist
- name = "Chemist action figure"
+/obj/item/toy/figure/crew/chemist
+ name = "\improper Chemist action figure"
desc = "The legally dubious Chemist, from Space Life's SS12 figurine collection."
icon_state = "chemist"
toysay = "Get your pills!"
-/obj/item/toy/figure/clown
- name = "Clown action figure"
+/obj/item/toy/figure/crew/clown
+ name = "\improper Clown action figure"
desc = "The mischevious Clown, from Space Life's SS12 figurine collection."
icon_state = "clown"
toysay = "Honk!"
-/obj/item/toy/figure/ian
- name = "Ian action figure"
+/obj/item/toy/figure/crew/ian
+ name = "\improper Ian action figure"
desc = "The adorable corgi, from Space Life's SS12 figurine collection."
icon_state = "ian"
toysay = "Arf!"
-/obj/item/toy/figure/detective
- name = "Detective action figure"
+/obj/item/toy/figure/crew/detective
+ name = "\improper Detective action figure"
desc = "The clever detective, from Space Life's SS12 figurine collection."
icon_state = "detective"
toysay = "This airlock has grey jumpsuit and insulated glove fibers on it."
-/obj/item/toy/figure/dsquad
- name = "Death Squad Officer action figure"
+/obj/item/toy/figure/crew/dsquad
+ name = "\improper Death Squad Officer action figure"
desc = "It's a member of the DeathSquad, a TV drama where loose-cannon ERT officers face up against the threats of the galaxy! It's from Space Life's special edition SS12 figurine collection."
icon_state = "dsquad"
toysay = "Eliminate all threats!"
-/obj/item/toy/figure/engineer
- name = "Engineer action figure"
+/obj/item/toy/figure/crew/engineer
+ name = "\improper Engineer action figure"
desc = "The frantic engineer, from Space Life's SS12 figurine collection."
icon_state = "engineer"
toysay = "Oh god, the singularity is loose!"
-/obj/item/toy/figure/geneticist
- name = "Geneticist action figure"
+/obj/item/toy/figure/crew/geneticist
+ name = "\improper Geneticist action figure"
desc = "The balding geneticist, from Space Life's SS12 figurine collection."
icon_state = "geneticist"
toysay = "I'm not qualified for this job."
-/obj/item/toy/figure/hop
- name = "Head of Personnel action figure"
+/obj/item/toy/figure/crew/hop
+ name = "\improper Head of Personnel action figure"
desc = "The officious Head of Personnel, from Space Life's SS12 figurine collection."
icon_state = "hop"
toysay = "Papers, please!"
-/obj/item/toy/figure/hos
- name = "Head of Security action figure"
+/obj/item/toy/figure/crew/hos
+ name = "\improper Head of Security action figure"
desc = "The bloodlust-filled Head of Security, from Space Life's SS12 figurine collection."
icon_state = "hos"
toysay = "Space law? What?"
-/obj/item/toy/figure/qm
- name = "Quartermaster action figure"
+/obj/item/toy/figure/crew/qm
+ name = "\improper Quartermaster action figure"
desc = "The nationalistic Quartermaster, from Space Life's SS12 figurine collection."
icon_state = "qm"
toysay = "Hail Cargonia!"
-/obj/item/toy/figure/janitor
- name = "Janitor action figure"
+/obj/item/toy/figure/crew/janitor
+ name = "\improper Janitor action figure"
desc = "The water-using Janitor, from Space Life's SS12 figurine collection."
icon_state = "janitor"
toysay = "Look at the signs, you idiot."
-/obj/item/toy/figure/lawyer
- name = "Internal Affairs Agent action figure"
+/obj/item/toy/figure/crew/lawyer
+ name = "\improper Internal Affairs Agent action figure"
desc = "The unappreciated Internal Affairs Agent, from Space Life's SS12 figurine collection."
icon_state = "lawyer"
toysay = "Standard Operating Procedure says they're guilty! Hacking is proof they're an Enemy of the Corporation!"
-/obj/item/toy/figure/librarian
- name = "Librarian action figure"
+/obj/item/toy/figure/crew/librarian
+ name = "\improper Librarian action figure"
desc = "The quiet Librarian, from Space Life's SS12 figurine collection."
icon_state = "librarian"
toysay = "One day while..."
-/obj/item/toy/figure/md
- name = "Medical Doctor action figure"
+/obj/item/toy/figure/crew/md
+ name = "\improper Medical Doctor action figure"
desc = "The stressed-out doctor, from Space Life's SS12 figurine collection."
icon_state = "md"
toysay = "The patient is already dead!"
-/obj/item/toy/figure/mime
- name = "Mime action figure"
+/obj/item/toy/figure/crew/mime
+ name = "\improper Mime action figure"
desc = "... from Space Life's SS12 figurine collection."
icon_state = "mime"
toysay = "..."
-/obj/item/toy/figure/miner
- name = "Shaft Miner action figure"
+/obj/item/toy/figure/crew/miner
+ name = "\improper Shaft Miner action figure"
desc = "The gun-toting Shaft Miner, from Space Life's SS12 figurine collection."
icon_state = "miner"
toysay = "Oh god it's eating my intestines!"
-/obj/item/toy/figure/ninja
- name = "Ninja action figure"
+/obj/item/toy/figure/crew/ninja
+ name = "\improper Ninja action figure"
desc = "It's the mysterious ninja! It's from Space Life's special edition SS12 figurine collection."
icon_state = "ninja"
toysay = "Oh god! Stop shooting, I'm friendly!"
-/obj/item/toy/figure/wizard
- name = "Wizard action figure"
+/obj/item/toy/figure/crew/wizard
+ name = "\improper Wizard action figure"
desc = "It's the deadly, spell-slinging wizard! It's from Space Life's special edition SS12 figurine collection."
icon_state = "wizard"
toysay = "Ei Nath!"
-/obj/item/toy/figure/rd
- name = "Research Director action figure"
+/obj/item/toy/figure/crew/rd
+ name = "\improper Research Director action figure"
desc = "The ambitious RD, from Space Life's SS12 figurine collection."
icon_state = "rd"
toysay = "Blowing all of the borgs!"
-/obj/item/toy/figure/roboticist
- name = "Roboticist action figure"
+/obj/item/toy/figure/crew/roboticist
+ name = "\improper Roboticist action figure"
desc = "The skillful Roboticist, from Space Life's SS12 figurine collection."
icon_state = "roboticist"
toysay = "He asked to be borged!"
-/obj/item/toy/figure/scientist
- name = "Scientist action figure"
+/obj/item/toy/figure/crew/scientist
+ name = "\improper Scientist action figure"
desc = "The mad Scientist, from Space Life's SS12 figurine collection."
icon_state = "scientist"
toysay = "Someone else must have made those bombs!"
-/obj/item/toy/figure/syndie
- name = "Nuclear Operative action figure"
+/obj/item/toy/figure/crew/syndie
+ name = "\improper Nuclear Operative action figure"
desc = "It's the red-suited Nuclear Operative! It's from Space Life's special edition SS12 figurine collection."
icon_state = "syndie"
toysay = "Get that fucking disk!"
-/obj/item/toy/figure/secofficer
- name = "Security Officer action figure"
+/obj/item/toy/figure/crew/secofficer
+ name = "\improper Security Officer action figure"
desc = "The power-tripping Security Officer, from Space Life's SS12 figurine collection."
icon_state = "secofficer"
toysay = "I am the law!"
-/obj/item/toy/figure/virologist
- name = "Virologist action figure"
+/obj/item/toy/figure/crew/virologist
+ name = "\improper Virologist action figure"
desc = "The pandemic-starting Virologist, from Space Life's SS12 figurine collection."
icon_state = "virologist"
toysay = "It's not my virus!"
-/obj/item/toy/figure/warden
- name = "Warden action figure"
+/obj/item/toy/figure/crew/warden
+ name = "\improper Warden action figure"
desc = "The amnesiac Warden, from Space Life's SS12 figurine collection."
icon_state = "warden"
toysay = "Execute him for breaking in!"
+/*
+ * Xenomorph action figure
+ */
+
+/obj/item/toy/figure/xeno
+ name = "\improper Xenomorph action figure"
+ desc = "MEGA presents the new Xenos Isolated action figure! Comes complete with realistic sounds! Pull back string to use."
+ icon_state = "toy_xeno"
+ bubble_icon = "alien"
+ cooldown_time = 5 SECONDS
+
+
+/obj/item/toy/figure/xeno/activate(mob/user)
+ user.visible_message("[user] pulls back the string on [src].")
+ icon_state = "[initial(icon_state)]_used"
+ addtimer(CALLBACK(src, .proc/hiss), 0.5 SECONDS)
+
+/obj/item/toy/figure/xeno/proc/hiss()
+ atom_say("Hiss!")
+ playsound(src, get_sfx("hiss"), 50, TRUE)
+ addtimer(CALLBACK(src, .proc/reset_icon), 4.5 SECONDS)
+
+/obj/item/toy/figure/xeno/proc/reset_icon()
+ icon_state = "[initial(icon_state)]"
+
+/obj/item/toy/figure/xeno/on_cooldown(mob/user)
+ to_chat(user, "The string on [src] hasn't rewound all the way!")
+
+/obj/item/toy/figure/owl
+ name = "\improper Owl action figure"
+ desc = "An action figure modeled after 'The Owl', defender of justice."
+ icon_state = "owlprize"
+
+/obj/item/toy/figure/owl/activate(mob/user)
+ var/message = pick("You won't get away this time, Griffin!", "Stop right there, criminal!", "Hoot! Hoot!", "I am the night!")
+ to_chat(user, "You pull the string on [src].")
+ playsound(src, 'sound/creatures/hoot.ogg', 25, TRUE)
+ atom_say("[message]")
+
+/obj/item/toy/figure/griffin
+ name = "\improper Griffin action figure"
+ desc = "An action figure modeled after 'The Griffin', criminal mastermind."
+ icon_state = "griffinprize"
+
+
+/obj/item/toy/figure/griffin/activate(mob/user)
+ var/message = pick("You can't stop me, Owl!", "My plan is flawless! The vault is mine!", "Caaaawwww!", "You will never catch me!")
+ to_chat(user, "You pull the string on [src].")
+ playsound(src, 'sound/creatures/caw.ogg', 25, TRUE)
+ atom_say("[message]")
+
+/*
+ * Mech prizes
+ */
+/obj/item/toy/figure/mech
+ icon_state = "ripleytoy"
+ cooldown_time = 8
+
+//all credit to skasi for toy mech fun ideas
+/obj/item/toy/figure/mech/activate(mob/user)
+ to_chat(user, "You play with [src].")
+ playsound(src, 'sound/mecha/mechstep.ogg', 20, TRUE)
+
+/obj/random/mech
+ name = "Random Mech Prize"
+ desc = "This is a random prize"
+ icon = 'icons/obj/toy.dmi'
+ icon_state = "ripleytoy"
+
+/obj/random/mech/item_to_spawn()
+ return pick(subtypesof(/obj/item/toy/figure/mech)) //exclude the base type.
+
+/obj/item/toy/figure/mech/ripley
+ name = "toy Ripley"
+ desc = "Mini-Mecha action figure! Collect them all! 1/11. This one is a ripley, a mining and engineering mecha."
+
+/obj/item/toy/figure/mech/fireripley
+ name = "toy Firefighting Ripley"
+ desc = "Mini-Mecha action figure! Collect them all! 2/11. This one is a firefighter ripley, a fireproof mining and engineering mecha."
+ icon_state = "fireripleytoy"
+
+/obj/item/toy/figure/mech/deathripley
+ name = "toy Death Squad Ripley"
+ desc = "Mini-Mecha action figure! Collect them all! 3/11. This one is the black ripley used by the hero of DeathSquad, that TV drama about loose-cannon ERT officers!"
+ icon_state = "deathripleytoy"
+
+/obj/item/toy/figure/mech/gygax
+ name = "toy Gygax"
+ desc = "Mini-Mecha action figure! Collect them all! 4/11. This one is the speedy gygax combat mecha. Zoom zoom, pew pew!"
+ icon_state = "gygaxtoy"
+
+/obj/item/toy/figure/mech/durand
+ name = "toy Durand"
+ desc = "Mini-Mecha action figure! Collect them all! 5/11. This one is the heavy durand combat mecha. Stomp stomp!"
+ icon_state = "durandprize"
+
+/obj/item/toy/figure/mech/honk
+ name = "toy H.O.N.K."
+ desc = "Mini-Mecha action figure! Collect them all! 6/11. This one is the infamous H.O.N.K mech!"
+ icon_state = "honkprize"
+
+/obj/item/toy/figure/mech/marauder
+ name = "toy Marauder"
+ desc = "Mini-Mecha action figure! Collect them all! 7/11. This one is the powerful marauder combat mecha! Run for cover!"
+ icon_state = "marauderprize"
+
+/obj/item/toy/figure/mech/seraph
+ name = "toy Seraph"
+ desc = "Mini-Mecha action figure! Collect them all! 8/11. This one is the powerful seraph combat mecha! Someone's in trouble!"
+ icon_state = "seraphprize"
+
+/obj/item/toy/figure/mech/mauler
+ name = "toy Mauler"
+ desc = "Mini-Mecha action figure! Collect them all! 9/11. This one is the deadly mauler combat mecha! Look out!"
+ icon_state = "maulerprize"
+
+/obj/item/toy/figure/mech/odysseus
+ name = "toy Odysseus"
+ desc = "Mini-Mecha action figure! Collect them all! 10/11. This one is the spindly, syringe-firing odysseus medical mecha."
+ icon_state = "odysseusprize"
+
+/obj/item/toy/figure/mech/phazon
+ name = "toy Phazon"
+ desc = "Mini-Mecha action figure! Collect them all! 11/11. This one is the mysterious Phazon combat mecha! Nobody's safe!"
+ icon_state = "phazonprize"
+
+
//////////////////////////////////////////////////////
// Magic 8-Ball / Conch //
//////////////////////////////////////////////////////
diff --git a/code/game/objects/items/weapons/gift_wrappaper.dm b/code/game/objects/items/weapons/gift_wrappaper.dm
index 48edcc826e6..ba96fc54aba 100644
--- a/code/game/objects/items/weapons/gift_wrappaper.dm
+++ b/code/game/objects/items/weapons/gift_wrappaper.dm
@@ -91,8 +91,8 @@
/obj/random/figure,
/obj/item/toy/minimeteor,
/obj/item/toy/redbutton,
- /obj/item/toy/owl,
- /obj/item/toy/griffin,
+ /obj/item/toy/figure/owl,
+ /obj/item/toy/figure/griffin,
/obj/item/clothing/head/blob,
/obj/item/id_decal/gold,
/obj/item/id_decal/silver,
diff --git a/code/modules/antagonists/traitor/contractor/datums/syndicate_contract.dm b/code/modules/antagonists/traitor/contractor/datums/syndicate_contract.dm
index d3847a6629b..ded185b75ab 100644
--- a/code/modules/antagonists/traitor/contractor/datums/syndicate_contract.dm
+++ b/code/modules/antagonists/traitor/contractor/datums/syndicate_contract.dm
@@ -30,7 +30,7 @@
/obj/item/reagent_containers/food/snacks/tatortot,
/obj/item/storage/box/fakesyndiesuit,
/obj/item/storage/fancy/cigarettes/cigpack_syndicate,
- /obj/item/toy/figure/syndie,
+ /obj/item/toy/figure/crew/syndie,
/obj/item/toy/nuke,
/obj/item/toy/plushie/nukeplushie,
/obj/item/toy/sword,
diff --git a/code/modules/arcade/arcade_prize.dm b/code/modules/arcade/arcade_prize.dm
index 3adc53684cf..18d149b39e9 100644
--- a/code/modules/arcade/arcade_prize.dm
+++ b/code/modules/arcade/arcade_prize.dm
@@ -10,8 +10,8 @@
var/opening = 0
var/possible_contents = list(/obj/random/carp_plushie, /obj/random/plushie, /obj/random/figure, /obj/item/toy/eight_ball, /obj/item/stack/tickets)
-/obj/item/toy/prizeball/New()
- ..()
+/obj/item/toy/prizeball/Initialize(mapload)
+ . = ..()
icon_state = pick("prizeball_1","prizeball_2","prizeball_3")
/obj/item/toy/prizeball/attack_self(mob/user as mob)
diff --git a/code/modules/arcade/prize_datums.dm b/code/modules/arcade/prize_datums.dm
index 9e402020242..8ffc59825cb 100644
--- a/code/modules/arcade/prize_datums.dm
+++ b/code/modules/arcade/prize_datums.dm
@@ -200,7 +200,7 @@ GLOBAL_DATUM_INIT(global_prizes, /datum/prizes, new())
/datum/prize_item/toy_xeno
name = "Xeno Action Figure"
desc = "A lifelike replica of the horrific xeno scourge."
- typepath = /obj/item/toy/toy_xeno
+ typepath = /obj/item/toy/figure/xeno
cost = 80
/datum/prize_item/rubberducky
@@ -272,13 +272,13 @@ GLOBAL_DATUM_INIT(global_prizes, /datum/prizes, new())
/datum/prize_item/owl
name = "Owl Action Figure"
desc = "Remember: heroes don't grief!"
- typepath = /obj/item/toy/owl
+ typepath = /obj/item/toy/figure/owl
cost = 125
/datum/prize_item/griffin
name = "Griffin Action Figure"
desc = "If you can't be the best, you can always be the WORST."
- typepath = /obj/item/toy/griffin
+ typepath = /obj/item/toy/figure/griffin
cost = 125
/datum/prize_item/codex_gigas
diff --git a/code/modules/mining/abandonedcrates.dm b/code/modules/mining/abandonedcrates.dm
index 19773358277..56c5c820559 100644
--- a/code/modules/mining/abandonedcrates.dm
+++ b/code/modules/mining/abandonedcrates.dm
@@ -61,7 +61,7 @@
if(53 to 54)
new /obj/item/toy/balloon(src)
if(55 to 56)
- var/newitem = pick(subtypesof(/obj/item/toy/prize))
+ var/newitem = pick(subtypesof(/obj/item/toy/figure/mech))
new newitem(src)
if(57 to 58)
new /obj/item/toy/syndicateballoon(src)