Skip to content

Commit

Permalink
tongue - 20 10 23
Browse files Browse the repository at this point in the history
  • Loading branch information
DrDuckedGoose committed Oct 20, 2023
1 parent 7c5996b commit 0634635
Show file tree
Hide file tree
Showing 5 changed files with 14 additions and 9 deletions.
2 changes: 1 addition & 1 deletion _maps/_basemap.dm
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
//#define LOWMEMORYMODE //uncomment this to load centcom and runtime station and thats it.
#define LOWMEMORYMODE //uncomment this to load centcom and runtime station and thats it.

#include "map_files\generic\CentCom.dmm"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,6 @@
species_l_leg = /obj/item/bodypart/l_leg/pumpkin_man
species_r_leg = /obj/item/bodypart/r_leg/pumpkin_man

///Ref to overlay for carved face
var/mutable_appearance/carved_overlay

//Only allow race roundstart on Halloween
/datum/species/pod/pumpkin_man/check_roundstart_eligible()
if(SSevents.holidays && SSevents.holidays[HALLOWEEN])
Expand Down Expand Up @@ -63,15 +60,14 @@
/datum/species/pod/pumpkin_man/proc/handle_carving(datum/_source, mob/living/_user, obj/item/_item)
//Check if the item is sharp - give owner a random face if applicable
var/mob/living/carbon/human/M = _source
var/obj/item/head = M.get_bodypart(BODY_ZONE_HEAD)
var/obj/item/bodypart/head/pumpkin_man/head = M.get_bodypart(BODY_ZONE_HEAD)
if(_item.is_sharp() && head?.item_flags & ISCARVABLE && _user.a_intent == INTENT_HELP && _user.zone_selected == BODY_ZONE_HEAD)
to_chat(_user, "<span class='notice'>You begin to carve a face into [_source]...</span>")
//Do after for *flourish*
if(do_after(_user, 3 SECONDS))
//Reset overlays
M.cut_overlay(carved_overlay)
carved_overlay = mutable_appearance('icons/mob/pumpkin_faces.dmi', "face[rand(0, 8)]", layer = BODY_LAYER) //Every so slightly above the mob, but below features
M.add_overlay(carved_overlay)
head.carved_state = "face[rand(0, 8)]"
M.update_body_parts_head_only()
to_chat(_user, "<span class='notice'>You carve a face into [_source].</span>")
//Adjust the tongue
var/obj/item/organ/tongue/podperson/pumpkin/P = M.internal_organs_slot[ORGAN_SLOT_TONGUE]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -515,6 +515,13 @@
is_dimorphic = FALSE
should_draw_greyscale = FALSE
item_flags = ISCARVABLE
///What state is our carved face
var/carved_state

/obj/item/bodypart/head/pumpkin_man/get_limb_icon(dropped)
. = ..()
if(carved_state)
. += image('icons/mob/pumpkin_faces.dmi', carved_state, -BODY_LAYER)

/obj/item/bodypart/chest/pumpkin_man
limb_id = "pumpkin_man"
Expand Down
4 changes: 3 additions & 1 deletion code/modules/surgery/organs/tongue.dm
Original file line number Diff line number Diff line change
Expand Up @@ -373,5 +373,7 @@
/obj/item/organ/tongue/podperson/pumpkin/handle_speech(datum/source, list/speech_args)
var/message = speech_args[SPEECH_MESSAGE]
if((message[1] != "*" || message[1] != "#") && !carved)
message = "[message]"
message = "..."
to_chat(owner, "<span class='warning'>Something is covering your mouth!</span>")
to_chat(owner, "<span class='notice'>Try carving your mouth open.</span>")
speech_args[SPEECH_MESSAGE] = message
Binary file modified icons/mob/pumpkin_faces.dmi
Binary file not shown.

0 comments on commit 0634635

Please sign in to comment.