Skip to content

Commit

Permalink
Adds a Plushie Delivery Beacon to the game. (#10398)
Browse files Browse the repository at this point in the history
* :·3

* fix

* among us sound not real :(

* among us plushie legs fix

* Update plushes.dmi

* Update plushes_lefthand.dmi

* 🐭

* Update plushes.dm

* gondola

* Update plushes.dmi

* Gondola

* Update plushes.dm

* Update plushes.dm

* Update plushes.dm

* Update plushes.dm

* fix

* YES!

* Final touches

* Update plushes.dm

* Update games.dm

* Trait change

* Update positive_quirk.dm

* Update positive_quirk.dm

* Update plushes.dmi

* Update plushes.dm

* Update plushes.dmi

* Update code/game/objects/items/plushes.dm

Co-authored-by: Dejaku51 <[email protected]>

* Update code/game/objects/items/plushes.dm

Co-authored-by: Lucy <[email protected]>

* Update code/game/objects/items/plushes.dm

Co-authored-by: Lucy <[email protected]>

* Summary (Required)

* Update code/datums/traits/positive_quirk.dm

Co-authored-by: itsmeow <[email protected]>

* removes nar'sie and rav'tar plushies

* Update games.dm

---------

Co-authored-by: RKz <[email protected]>
Co-authored-by: Dejaku51 <[email protected]>
Co-authored-by: Lucy <[email protected]>
Co-authored-by: itsmeow <[email protected]>
  • Loading branch information
5 people authored Jan 14, 2024
1 parent 4061fa3 commit 55965c3
Show file tree
Hide file tree
Showing 6 changed files with 95 additions and 3 deletions.
1 change: 1 addition & 0 deletions code/__DEFINES/traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -325,6 +325,7 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
#define TRAIT_GRABWEAKNESS "grab_weakness"
#define TRAIT_BRAIN_TUMOR "brain_tumor"
#define TRAIT_PROSKATER "pro_skater"
#define TRAIT_PLUSHIELOVER "plushie lover"

///Trait for dryable items
#define TRAIT_DRYABLE "trait_dryable"
Expand Down
20 changes: 19 additions & 1 deletion code/datums/traits/positive_quirk.dm
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@

/datum/quirk/musician
name = "Musician"
desc = "You can tune handheld musical instruments to play melodies that clear certain negative effects and soothe the soul."
desc = "You can tune handheld musical instruments to play melodies that clear certain negative effects and soothe the soul. You start with a delivery beacon."
icon = "guitar"
value = 1
mob_trait = TRAIT_MUSICIAN
Expand Down Expand Up @@ -284,3 +284,21 @@
/datum/quirk/proskater/on_spawn()
var/mob/living/carbon/human/H = quirk_target
H.equip_to_slot_or_del(new /obj/item/melee/skateboard/pro(H), ITEM_SLOT_BACKPACK)

/datum/quirk/plushielover
name = "Plushie Lover"
desc = "You love your squishy friends so much. You start with a plushie delivery beacon."
icon = "heart"
value = 1
mob_trait = TRAIT_PLUSHIELOVER
gain_text = "<span class='notice'>You can't wait to hug a plushie!.</span>"
lose_text = "<span class='danger'>You don't feel that passion for plushies anymore.</span>"

/datum/quirk/plushielover/on_spawn()
var/mob/living/carbon/human/H = quirk_target
var/obj/item/choice_beacon/radial/plushie/B = new(get_turf(H))
var/list/slots = list (
"backpack" = ITEM_SLOT_BACKPACK,
"hands" = ITEM_SLOT_HANDS,
)
H.equip_in_one_of_slots(B, slots , qdel_on_fail = TRUE)
71 changes: 71 additions & 0 deletions code/game/objects/items/plushes.dm
Original file line number Diff line number Diff line change
Expand Up @@ -721,6 +721,77 @@
desc = "Hgrgrhrhg cute."
icon_state = "flushplush"

/obj/item/choice_beacon/radial/plushie
name = "plushie delivery beacon"
desc = "Summon your new friend!"
icon_state = "gangtool-plushie"
var/static/list/plushie_list = list(
/obj/item/toy/plush/bubbleplush,
/obj/item/toy/plush/carpplushie,
/obj/item/toy/plush/snakeplushie,
/obj/item/toy/plush/lizardplushie,
/obj/item/toy/plush/slimeplushie,
/obj/item/toy/plush/nukeplushie,
/obj/item/toy/plush/awakenedplushie,
/obj/item/toy/plush/beeplushie,
/obj/item/toy/plush/crossed,
/obj/item/toy/plush/rouny,
/obj/item/toy/plush/runtime,
/obj/item/toy/plush/flushed,
/obj/item/toy/plush/gondola,
/obj/item/toy/plush/moth/atlas,
/obj/item/toy/plush/moth/bluespace,
/obj/item/toy/plush/moth/brown,
/obj/item/toy/plush/moth/clockwork,
/obj/item/toy/plush/moth/deadhead,
/obj/item/toy/plush/moth/firewatch,
/obj/item/toy/plush/moth/gothic,
/obj/item/toy/plush/moth/lovers,
/obj/item/toy/plush/moth/luna,
/obj/item/toy/plush/moth/monarch,
/obj/item/toy/plush/moth/moonfly,
/obj/item/toy/plush/moth/plasmafire,
/obj/item/toy/plush/moth/poison,
/obj/item/toy/plush/moth/punished,
/obj/item/toy/plush/moth/ragged,
/obj/item/toy/plush/moth/rainbow,
/obj/item/toy/plush/moth/redish,
/obj/item/toy/plush/moth/rosy,
/obj/item/toy/plush/moth/royal,
/obj/item/toy/plush/moth/snow,
/obj/item/toy/plush/moth/whitefly,
/obj/item/toy/plush/moth/witchwing
)

/obj/item/choice_beacon/radial/plushie/generate_options(mob/living/M)
var/list/item_list = generate_item_list()
if(!length(item_list))
return
var/choice = show_radial_menu(M, src, item_list, radius = 36, require_near = TRUE)
if(!QDELETED(src) && !(isnull(choice)) && !M.incapacitated() && in_range(M,src))
for(var/V in plushie_list)
var/atom/A = V
if(initial(A.name) == choice)
spawn_option(A,M)
uses--
if(!uses)
qdel(src)
else
balloon_alert(M, "[uses] use[uses > 1 ? "s" : ""] remaining")
to_chat(M, "<span class='notice'>[uses] use[uses > 1 ? "s" : ""] remaining on the [src].</span>")
return

/obj/item/choice_beacon/radial/plushie/generate_item_list()
var/static/list/item_list
if(!item_list)
item_list = list()
for(var/obj/item/toy/plush/I as() in plushie_list)
var/image/plushie_icon = image(initial(I.icon), initial(I.icon_state))
var/datum/radial_menu_choice/choice = new
choice.image = plushie_icon
item_list[initial(I.name)] = choice
return item_list

/////////////////
//DONATOR ITEMS//
/////////////////
Expand Down
2 changes: 1 addition & 1 deletion code/modules/instruments/items.dm
Original file line number Diff line number Diff line change
Expand Up @@ -239,7 +239,7 @@
/obj/item/choice_beacon/radial/music
name = "instrument delivery beacon"
desc = "Summon your tool of art."
icon_state = "gangtool-red"
icon_state = "gangtool-music"
var/static/list/instrument_list

/obj/item/choice_beacon/radial/music/Initialize(mapload)
Expand Down
4 changes: 3 additions & 1 deletion code/modules/vending/games.dm
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,9 @@
/obj/item/toy/cards/deck/cas/black = 3,
/obj/item/toy/cards/deck/unum = 3,
/obj/item/toy/cards/deck/tarot = 3,
/obj/item/hourglass = 2)
/obj/item/hourglass = 2
)

contraband = list(/obj/item/dice/fudge = 9,
/obj/item/instrument/musicalmoth = 1)
premium = list(/obj/item/melee/skateboard/pro = 3,
Expand Down
Binary file modified icons/obj/device.dmi
Binary file not shown.

0 comments on commit 55965c3

Please sign in to comment.