mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-12 03:02:54 +00:00
Xenochimera Ferality Reduction while in belly
Xenochimera will now reduce ferality at a tickrate of 1 per Life tick while inside a belly, same as the hunger reduction if they're full. They will not experience hallucinations and will get safety messages while inside a belly, as well as the status indicator confirming they're safe even in a lit environment.
This commit is contained in:
@@ -45,6 +45,8 @@
|
|||||||
var/turf/T = get_turf(H)
|
var/turf/T = get_turf(H)
|
||||||
if(T.get_lumcount() <= 0.1)
|
if(T.get_lumcount() <= 0.1)
|
||||||
to_chat(usr, "<span class='notice'>You are slowly calming down in darkness' safety...</span>")
|
to_chat(usr, "<span class='notice'>You are slowly calming down in darkness' safety...</span>")
|
||||||
|
else if(isbelly(H.loc)) // CHOMPEdit: Safety message for if inside a belly.
|
||||||
|
to_chat(usr, "<span class='notice'>You are slowly calming down within the darkness of something's belly, listening to their body as it moves around you. ...safe...</span>")
|
||||||
else
|
else
|
||||||
to_chat(usr, "<span class='notice'>You are slowly calming down... But safety of darkness is much preferred.</span>")
|
to_chat(usr, "<span class='notice'>You are slowly calming down... But safety of darkness is much preferred.</span>")
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -205,6 +205,10 @@
|
|||||||
feral++
|
feral++
|
||||||
else
|
else
|
||||||
feral = max(0,--feral)
|
feral = max(0,--feral)
|
||||||
|
|
||||||
|
// Being in a belly decreases stress further. :9
|
||||||
|
if(feral && isbelly(H.loc))
|
||||||
|
feral = max(0,--feral)
|
||||||
|
|
||||||
//Set our real mob's var to our temp var
|
//Set our real mob's var to our temp var
|
||||||
H.feral = feral
|
H.feral = feral
|
||||||
@@ -233,8 +237,8 @@
|
|||||||
//This is basically the 'lite' version of the below block.
|
//This is basically the 'lite' version of the below block.
|
||||||
var/list/nearby = H.living_mobs(world.view)
|
var/list/nearby = H.living_mobs(world.view)
|
||||||
|
|
||||||
//Not in the dark and out in the open.
|
//Not in the dark, or a belly, and out in the open.
|
||||||
if(!darkish && isturf(H.loc))
|
if(!darkish && isturf(H.loc) && !isbelly(H.loc)) // CHOMPEdit: added specific check for if in belly
|
||||||
|
|
||||||
//Always handle feral if nobody's around and not in the dark.
|
//Always handle feral if nobody's around and not in the dark.
|
||||||
if(!nearby.len)
|
if(!nearby.len)
|
||||||
@@ -248,8 +252,8 @@
|
|||||||
update_xenochimera_hud(H, danger, feral_state)
|
update_xenochimera_hud(H, danger, feral_state)
|
||||||
return
|
return
|
||||||
|
|
||||||
// In the darkness or "hidden". No need for custom scene-protection checks as it's just an occational infomessage.
|
// In the darkness, "hidden", or in a belly. No need for custom scene-protection checks as it's just an occational infomessage.
|
||||||
if(darkish || !isturf(H.loc))
|
if(darkish || !isturf(H.loc) || isbelly(H.loc)) // CHOMPEdit: added specific check for if in belly
|
||||||
// If hurt, tell 'em to heal up
|
// If hurt, tell 'em to heal up
|
||||||
if (shock)
|
if (shock)
|
||||||
to_chat(H,"<span class='info'>This place seems safe, secure, hidden, a place to lick your wounds and recover...</span>")
|
to_chat(H,"<span class='info'>This place seems safe, secure, hidden, a place to lick your wounds and recover...</span>")
|
||||||
|
|||||||
Reference in New Issue
Block a user