Merge pull request #1148 from ariaworld/comfy-erp

[QOL] No hunger/thirst loss for standing still after 5 minutes! (for ERP) + Allows Protolathe-printing 30 stock parts at once.
This commit is contained in:
BongaTheProto
2024-05-16 21:57:38 -05:00
committed by GitHub
6 changed files with 24 additions and 3 deletions

View File

@@ -1618,8 +1618,19 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
//
H.update_inv_wear_suit()
//SPLURT: If you haven't walked into a different tile in 5 minutes, don't drain hunger/thirst.
if(H.client && (((world.time - H.client?.last_move)) > 5 MINUTES))
if(!H.insanelycomfy)
to_chat(H, span_notice("You feel comfy."))
H.insanelycomfy = TRUE
else if(H.insanelycomfy)
to_chat(H, span_notice("You no longer feel comfy."))
H.insanelycomfy = FALSE
//SPLURT ADDITION
// nutrition decrease and satiety
if (H.nutrition > 0 && H.stat != DEAD && !HAS_TRAIT(H, TRAIT_NOHUNGER))
if (H.nutrition > 0 && H.stat != DEAD && !HAS_TRAIT(H, TRAIT_NOHUNGER) && !H.insanelycomfy)
// THEY HUNGER
var/hunger_rate = HUNGER_FACTOR
var/datum/component/mood/mood = H.GetComponent(/datum/component/mood)

View File

@@ -108,7 +108,7 @@
/obj/item/projectile/beam/pulse/on_hit(atom/target, blocked = FALSE)
. = ..()
if (!QDELETED(target) && (isturf(target) || istype(target, /obj/structure/)))
if (!QDELETED(target) && (isturf(target) || istype(target, /obj/structure)))
target.ex_act(EXPLODE_HEAVY)
/obj/item/projectile/beam/pulse/shotgun

View File

@@ -305,6 +305,9 @@
l += "<A href='?src=[REF(src)];build=[D.id];amount=5'>x5</A>[RDSCREEN_NOBREAK]"
if(c >= 10)
l += "<A href='?src=[REF(src)];build=[D.id];amount=10'>x10</A>[RDSCREEN_NOBREAK]"
//SPLURT EDIT: Print x30 stock parts at once
if(c >= 30 && selected_category == "Stock Parts")
l += "<A href='?src=[REF(src)];build=[D.id];amount=30'>x30</A>[RDSCREEN_NOBREAK]"
l += "[temp_material][sec_text][RDSCREEN_NOBREAK]"
else
l += "<span class='linkOff'>[D.name]</span>[temp_material][sec_text][RDSCREEN_NOBREAK]"

View File

@@ -376,6 +376,9 @@ Nothing else in the console has ID requirements.
l += "<A href='?src=[REF(src)];build=[D.id];amount=5'>x5</A>[RDSCREEN_NOBREAK]"
if(c >= 10)
l += "<A href='?src=[REF(src)];build=[D.id];amount=10'>x10</A>[RDSCREEN_NOBREAK]"
//SPLURT EDIT: Print x30 stock parts at once
if(c >= 30 && selected_category == "Stock Parts")
l += "<A href='?src=[REF(src)];build=[D.id];amount=30'>x30</A>[RDSCREEN_NOBREAK]"
l += "[temp_material][RDSCREEN_NOBREAK]"
else
l += "<span class='linkOff'>[D.name]</span>[temp_material][RDSCREEN_NOBREAK]"

View File

@@ -26,7 +26,7 @@
return
// A lot of this is just copied and pasted from the handle_digestion proc
if (H.thirst > 0 && H.stat != DEAD && !HAS_TRAIT(H, TRAIT_NOTHIRST))
if (H.thirst > 0 && H.stat != DEAD && !HAS_TRAIT(H, TRAIT_NOTHIRST) && !H.insanelycomfy)
// THEY ~~HUNGER~~ THIRST
var/thirst_rate = THIRST_FACTOR
/*

View File

@@ -1,5 +1,9 @@
#define PROTOLOCK_ALL_ACCESS CONFIG_GET(flag/protolock_all_access)
/mob/living/carbon/human
///This player has been standing still for very long and are probably roleplaying. They won't use up nutrition/thirst until they start moving again.
var/insanelycomfy = FALSE
/mob/Initialize()
. = ..()
create_player_panel()