From 550f36fad733aebbe479683dcf2664529b64b637 Mon Sep 17 00:00:00 2001 From: Kashargul <144968721+Kashargul@users.noreply.github.com> Date: Sun, 27 Apr 2025 21:19:59 +0200 Subject: [PATCH] Somemissingthings (#17615) * cleans up some comments * ... * . * somemissing things * that too * make this nicer * . * . --- code/__defines/_reagents.dm | 15 --------------- code/game/objects/items.dm | 8 ++++---- code/game/objects/items_vr.dm | 15 ++++++++++++++- .../client/preference_setup/loadout/loadout.dm | 2 +- code/modules/mob/living/voice/voice.dm | 7 +++++-- code/modules/power/singularity/act.dm | 2 +- 6 files changed, 25 insertions(+), 24 deletions(-) diff --git a/code/__defines/_reagents.dm b/code/__defines/_reagents.dm index d22187b05e7..f88f49a06fd 100644 --- a/code/__defines/_reagents.dm +++ b/code/__defines/_reagents.dm @@ -1353,18 +1353,3 @@ #define REAGENT_ID_SLIMEBONEFIXER "slime_bone_fixer" #define REAGENT_SLIMEORGANFIXER "Agent C" #define REAGENT_ID_SLIMEORGANFIXER "slime_organ_fixer" - -// Vore Belly Options - -#define REAGENT_ID_WATER_BELLY "water_liquidbelly" -#define REAGENT_ID_MILK_BELLY "milk_liquidbelly" -#define REAGENT_ID_CREAM_BELLY "cream_liquidbelly" -#define REAGENT_ID_HONEY_BELLY "honey_liquidbelly" -#define REAGENT_ID_CHERRYJELLY_BELLY "cherry_liquidbelly" -#define REAGENT_ID_STOMACID_BELLY "stomacid_liquidbelly" -#define REAGENT_ID_DIETSTOMACID_BELLY "diet_stomacid_liquidbelly" -#define REAGENT_ID_CLEANER_BELLY "cleaner_liquidbelly" -#define REAGENT_ID_LUBE_BELLY "lube_liquidbelly" -#define REAGENT_ID_BIOMASS_BELLY "biomass_liquidbelly" -#define REAGENT_ID_CONCENTRATEDRADIUM_BELLY "cradium_liquidbelly" -#define REAGENT_ID_TRICORDRAZINE_BELLY "tricordrazine_liquidbelly" diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 1cfc32bd757..e6adb775c83 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -427,13 +427,13 @@ if(user.client) user.client.screen |= src if(user.pulling == src) user.stop_pulling() if(("[slot]" in slot_flags_enumeration) && (slot_flags & slot_flags_enumeration["[slot]"])) - if(equip_sound) + if(equip_sound && !muffled_by_belly(user)) playsound(src, equip_sound, 20, preference = /datum/preference/toggle/pickup_sounds) - else + else if(!muffled_by_belly(user)) playsound(src, drop_sound, 20, preference = /datum/preference/toggle/pickup_sounds) else if(slot == slot_l_hand || slot == slot_r_hand) - playsound(src, pickup_sound, 20, preference = /datum/preference/toggle/pickup_sounds) - return + if(!muffled_by_belly(user)) + playsound(src, pickup_sound, 20, preference = /datum/preference/toggle/pickup_sounds) /// Gives one of our item actions to a mob, when equipped to a certain slot /obj/item/proc/give_item_action(datum/action/action, mob/to_who, slot) diff --git a/code/game/objects/items_vr.dm b/code/game/objects/items_vr.dm index c2bd92cbea6..d3ad72e21ba 100644 --- a/code/game/objects/items_vr.dm +++ b/code/game/objects/items_vr.dm @@ -3,7 +3,7 @@ var/list/warned_of_possession //Checks to see who has been informed this item is possessed. -/obj/item/proc/inhabit_item(var/mob/candidate, var/candidate_name, var/mob/living/candidate_original_form) +/obj/item/proc/inhabit_item(var/mob/candidate, var/candidate_name, var/mob/living/candidate_original_form, var/is_item_tf = FALSE) //This makes it so that any object in the game can have something put in it like the cursed sword! //This means the proc can also be manually called by admin commands. //Handle moving the person into the object. @@ -25,3 +25,16 @@ listening_objects |= src remove_verb(new_voice, /mob/living/voice/verb/change_name) //No changing your name! Bad! remove_verb(new_voice, /mob/living/voice/verb/hang_up) //Also you can't hang up. You are the item! + src.item_tf_spawnpoint_used() + // Let the inhabitor know what happened to them + if(!istype(src, /obj/item/communicator) && is_item_tf) + new_voice.item_tf = is_item_tf // allows items to use /me + new_voice.emote_type = 1 + to_chat(new_voice,span_notice("You have become [src]!")) + +/obj/item/proc/muffled_by_belly(var/mob/user) + if(isbelly(user.loc)) + var/obj/belly/B = user.loc + if(B.mode_flags & DM_FLAG_MUFFLEITEMS) + return TRUE + return FALSE diff --git a/code/modules/client/preference_setup/loadout/loadout.dm b/code/modules/client/preference_setup/loadout/loadout.dm index 3c9f3d88f0f..46b87bedf85 100644 --- a/code/modules/client/preference_setup/loadout/loadout.dm +++ b/code/modules/client/preference_setup/loadout/loadout.dm @@ -279,7 +279,7 @@ var/list/gear_datums = list() if(!description) var/obj/O = path description = initial(O.desc) - gear_tweaks = list(gear_tweak_free_name, gear_tweak_free_desc) + gear_tweaks = list(gear_tweak_free_name, gear_tweak_free_desc, GLOB.gear_tweak_item_tf_spawn, GLOB.gear_tweak_free_matrix_recolor) /datum/gear_data var/path diff --git a/code/modules/mob/living/voice/voice.dm b/code/modules/mob/living/voice/voice.dm index 694bd228d3f..55c6d20ad37 100644 --- a/code/modules/mob/living/voice/voice.dm +++ b/code/modules/mob/living/voice/voice.dm @@ -4,6 +4,7 @@ desc = "How are you examining me?" see_invisible = SEE_INVISIBLE_LIVING var/obj/item/communicator/comm = null + var/item_tf = FALSE emote_type = 2 //This lets them emote through containers. The communicator has a image feed of the person calling them so... @@ -140,5 +141,7 @@ return ..() /mob/living/voice/custom_emote(var/m_type = VISIBLE_MESSAGE, var/message = null, var/range = world.view) - if(!comm) return - ..(m_type,message,comm.video_range) + if(comm) + ..(m_type,message,comm.video_range) + else if(item_tf) + ..(m_type,message,range) diff --git a/code/modules/power/singularity/act.dm b/code/modules/power/singularity/act.dm index acc2b4d7cc8..1d369182f4b 100644 --- a/code/modules/power/singularity/act.dm +++ b/code/modules/power/singularity/act.dm @@ -99,7 +99,7 @@ for(var/obj/O in contents) if(O.level != 1) continue - if(O.invisibility == 101) + if(O.invisibility == INVISIBILITY_ABSTRACT) O.singularity_act(src, current_size) ChangeTurf(get_base_turf_by_area(src)) return 2