diff --git a/code/datums/supplypacks/misc.dm b/code/datums/supplypacks/misc.dm index 52534fd27e0..9feb0a607ca 100644 --- a/code/datums/supplypacks/misc.dm +++ b/code/datums/supplypacks/misc.dm @@ -89,7 +89,14 @@ /obj/item/toy/plushie/nukeplushie, /obj/item/toy/plushie/otter, /obj/item/toy/plushie/vox, - /obj/item/toy/plushie/shark) + /obj/item/toy/plushie/shark, + /obj/item/toy/plushie/dragon, + /obj/item/toy/plushie/dragon/green, + /obj/item/toy/plushie/dragon/purple, + /obj/item/toy/plushie/dragon/red_east, + /obj/item/toy/plushie/dragon/green_east, + /obj/item/toy/plushie/dragon/white_east, + /obj/item/toy/plushie/dragon/gold_east) //VOREStation Add End name = "Plushies Crate" desc = "Five random plushies from AlliCo's wide selection!" diff --git a/code/game/machinery/clawmachine.dm b/code/game/machinery/clawmachine.dm index efef1c8d8fa..04cfd83ad01 100644 --- a/code/game/machinery/clawmachine.dm +++ b/code/game/machinery/clawmachine.dm @@ -68,7 +68,14 @@ /obj/item/toy/plushie/otter, /obj/item/toy/plushie/shark, /obj/item/toy/plushie/tinytin, - /obj/item/toy/plushie/tinytin_sec + /obj/item/toy/plushie/tinytin_sec, + /obj/item/toy/plushie/dragon, + /obj/item/toy/plushie/dragon/green, + /obj/item/toy/plushie/dragon/purple, + /obj/item/toy/plushie/dragon/red_east, + /obj/item/toy/plushie/dragon/green_east, + /obj/item/toy/plushie/dragon/white_east, + /obj/item/toy/plushie/dragon/gold_east ) /obj/machinery/clawmachine/update_icon() diff --git a/code/game/objects/items/toys/toys_vr.dm b/code/game/objects/items/toys/toys_vr.dm index 40017ea1c6d..c817de2f8d8 100644 --- a/code/game/objects/items/toys/toys_vr.dm +++ b/code/game/objects/items/toys/toys_vr.dm @@ -1185,3 +1185,54 @@ H.put_in_inactive_hand(I) next_use = (world.time + 30 SECONDS) H.visible_message(span_notice("\The [H] pulls an acorn from \the [src]!")) + +/obj/item/toy/plushie/dragon + name = "dragon plushie" + desc = "A soft plushie in the shape of a dragon. How ferocious!" + icon = 'icons/obj/toy.dmi' + icon_state = "reddragon" + var/cooldown = FALSE + +/obj/item/toy/plushie/dragon/Initialize(mapload) + . = ..() + if (pokephrase != "Rawr~!") + pokephrase = pick("ROAR!", "RAWR!", "GAWR!", "GRR!", "GROAR!", "GRAH!", "Weh!", "Merp!") + +/obj/item/toy/plushie/dragon/attack_self(mob/user) + if(!cooldown) + switch(pokephrase) + if("Weh!") + playsound(user, 'sound/voice/weh.ogg', 20, 0) + if("Merp!") + playsound(user, 'sound/voice/merp.ogg', 20, 0) + else + playsound(user, 'sound/voice/roarbark.ogg', 20, 0) + cooldown = TRUE + addtimer(VARSET_CALLBACK(src, cooldown, FALSE), 5 SECONDS, TIMER_DELETE_ME) + return ..() + +/obj/item/toy/plushie/dragon/green + name = "green dragon plushie" + icon_state = "greendragon" + +/obj/item/toy/plushie/dragon/purple + name = "purple dragon plushie" + icon_state = "purpledragon" + +/obj/item/toy/plushie/dragon/white_east + name = "white eastern dragon plushie" + icon_state = "whiteeasterndragon" + +/obj/item/toy/plushie/dragon/red_east + name = "red eastern dragon plushie" + icon_state = "redeasterndragon" + +/obj/item/toy/plushie/dragon/green_east + name = "green eastern dragon plushie" + icon_state = "greeneasterndragon" + +/obj/item/toy/plushie/dragon/gold_east + name = "golden eastern dragon plushie" + desc = "A soft plushie of a shiny golden dragon. Made of Real* gold!" + icon_state = "goldeasterndragon" + pokephrase = "Rawr~!" diff --git a/code/game/objects/random/misc.dm b/code/game/objects/random/misc.dm index 60bcbe40cfa..d10a427e674 100644 --- a/code/game/objects/random/misc.dm +++ b/code/game/objects/random/misc.dm @@ -774,7 +774,14 @@ /obj/item/toy/plushie/borgplushie/drake/jani, /obj/item/toy/plushie/borgplushie/drake/eng, /obj/item/toy/plushie/borgplushie/drake/mine, - /obj/item/toy/plushie/borgplushie/drake/trauma))) + /obj/item/toy/plushie/borgplushie/drake/trauma)), + pick(list(/obj/item/toy/plushie/dragon, + /obj/item/toy/plushie/dragon/green, + /obj/item/toy/plushie/dragon/purple, + /obj/item/toy/plushie/dragon/red_east, + /obj/item/toy/plushie/dragon/green_east, + /obj/item/toy/plushie/dragon/white_east, + /obj/item/toy/plushie/dragon/gold_east))) /obj/random/plushielarge name = "random large plushie" diff --git a/code/modules/client/preference_setup/loadout/loadout_general.dm b/code/modules/client/preference_setup/loadout/loadout_general.dm index 3ad25d480af..1137055a8ab 100644 --- a/code/modules/client/preference_setup/loadout/loadout_general.dm +++ b/code/modules/client/preference_setup/loadout/loadout_general.dm @@ -85,6 +85,7 @@ blacklisted_types += subtypesof(/obj/item/toy/plushie/therapy) blacklisted_types += subtypesof(/obj/item/toy/plushie/fluff) blacklisted_types += /obj/item/toy/plushie/borgplushie/drake //VOREStation addition + blacklisted_types += /obj/item/toy/plushie/dragon/gold_east for(var/obj/item/toy/plushie/plushie_type as anything in subtypesof(/obj/item/toy/plushie) - blacklisted_types) plushies[initial(plushie_type.name)] = plushie_type gear_tweaks += new/datum/gear_tweak/path(sortAssoc(plushies)) diff --git a/code/modules/economy/vending_machines.dm b/code/modules/economy/vending_machines.dm index 240a5a43346..00c1fac7bd6 100644 --- a/code/modules/economy/vending_machines.dm +++ b/code/modules/economy/vending_machines.dm @@ -876,7 +876,14 @@ /obj/item/toy/plushie/shark = 1, /obj/item/toy/mistletoe = 1, /obj/item/toy/plushie/tinytin = 1, - /obj/item/toy/plushie/tinytin_sec = 1) + /obj/item/toy/plushie/tinytin_sec = 1, + /obj/item/toy/plushie/dragon = 1, + /obj/item/toy/plushie/dragon/green = 1, + /obj/item/toy/plushie/dragon/purple = 1, + /obj/item/toy/plushie/dragon/red_east = 1, + /obj/item/toy/plushie/dragon/green_east = 1, + /obj/item/toy/plushie/dragon/white_east = 1, + /obj/item/toy/plushie/dragon/gold_east = 1) premium = list(/obj/item/reagent_containers/food/drinks/bottle/champagne = 1, /obj/item/storage/trinketbox = 2) prices = list(/obj/item/storage/fancy/heartbox = 15, @@ -919,7 +926,14 @@ /obj/item/toy/plushie/shark = 50, /obj/item/toy/mistletoe = 50, /obj/item/toy/plushie/tinytin = 35, - /obj/item/toy/plushie/tinytin_sec = 50) + /obj/item/toy/plushie/tinytin_sec = 50, + /obj/item/toy/plushie/dragon = 50, + /obj/item/toy/plushie/dragon/green = 50, + /obj/item/toy/plushie/dragon/purple = 50, + /obj/item/toy/plushie/dragon/red_east = 50, + /obj/item/toy/plushie/dragon/green_east = 50, + /obj/item/toy/plushie/dragon/white_east = 50, + /obj/item/toy/plushie/dragon/gold_east = 500) /obj/machinery/vending/fishing diff --git a/code/modules/random_map/drop/drop_types.dm b/code/modules/random_map/drop/drop_types.dm index 34227180b05..c0e4aa7a83f 100644 --- a/code/modules/random_map/drop/drop_types.dm +++ b/code/modules/random_map/drop/drop_types.dm @@ -230,7 +230,14 @@ /obj/item/inflatable_duck, /obj/item/inflatable_duck, /obj/item/toy/plushie/tinytin, - /obj/item/toy/plushie/tinytin_sec) + /obj/item/toy/plushie/tinytin_sec, + /obj/item/toy/plushie/dragon, + /obj/item/toy/plushie/dragon/green, + /obj/item/toy/plushie/dragon/purple, + /obj/item/toy/plushie/dragon/red_east, + /obj/item/toy/plushie/dragon/green_east, + /obj/item/toy/plushie/dragon/white_east, + /obj/item/toy/plushie/dragon/gold_east) /datum/supply_drop_loot/christmas name = "Surplus Christmas Supplies" diff --git a/icons/obj/toy.dmi b/icons/obj/toy.dmi index 36cdaa347ec..0a6ae8240e3 100644 Binary files a/icons/obj/toy.dmi and b/icons/obj/toy.dmi differ