mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-10 22:54:32 +01:00
Makes all toy figurines tiny and refactors the code behind it (#15368)
* Makes toy figures tiny and refactors the code behind it * Apply suggestions from code review Co-authored-by: dearmochi <shenesis@gmail.com> * atom_say and capitalize names * Web edit baby * Merge conflict fixes * Init instead of New * prize_ball instead of mechball * prize_ball should not be a figure. Revert but keep the Init change Co-authored-by: joep van der velden <15887760+farie82@users.noreply.github.com> Co-authored-by: dearmochi <shenesis@gmail.com>
This commit is contained in:
@@ -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"
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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" = (
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
},
|
||||
|
||||
@@ -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" = (
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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
|
||||
|
||||
+222
-240
@@ -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, "<span class='notice'>You play with [src].</span>")
|
||||
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, "<span class='notice'>You play with [src].</span>")
|
||||
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("<span class='danger'>[bicon(src)] [message]</span>")
|
||||
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, "<span class='notice'>You pull the string on [src].</span>")
|
||||
playsound(user, 'sound/creatures/hoot.ogg', 25, 1)
|
||||
visible_message("<span class='danger'>[bicon(src)] [message]</span>")
|
||||
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, "<span class='notice'>You pull the string on [src].</span>")
|
||||
playsound(user, 'sound/creatures/caw.ogg', 25, 1)
|
||||
visible_message("<span class='danger'>[bicon(src)] [message]</span>")
|
||||
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, "<span class='warning'>You stop feeding \the [O] into \the [src]'s mini-input.</span>")
|
||||
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("<span class='notice'>[user] pulls back the string on [src].</span>")
|
||||
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, "<span class='warning'>The string on [src] hasn't rewound all the way!</span>")
|
||||
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("<span class='notice'>[bicon(src)] [src] says \"[toysay]\".</span>")
|
||||
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("<span class='notice'>[user] pulls back the string on [src].</span>")
|
||||
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, "<span class='warning'>The string on [src] hasn't rewound all the way!</span>")
|
||||
|
||||
/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, "<span class='notice'>You pull the string on [src].</span>")
|
||||
playsound(src, 'sound/creatures/hoot.ogg', 25, TRUE)
|
||||
atom_say("<span class='danger'>[message]</span>")
|
||||
|
||||
/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, "<span class='notice'>You pull the string on [src].</span>")
|
||||
playsound(src, 'sound/creatures/caw.ogg', 25, TRUE)
|
||||
atom_say("<span class='danger'>[message]</span>")
|
||||
|
||||
/*
|
||||
* 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, "<span class='notice'>You play with [src].</span>")
|
||||
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 //
|
||||
//////////////////////////////////////////////////////
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user