Fix simplemob missing stamina hud (#94420)

## About The Pull Request

Since simplemobs can be dealt stamina damage
(https://github.com/tgstation/tgstation/pull/90675)
gives simplemobs who take stamina damage a stamina bar - Since it's
missing

Simplemobs who can't take stamina damage still wont be able to see the
hud - so don't worry about clutter/miss information

## Why It's Good For The Game

Simplemobs have a missing stamina hud

## Changelog

🆑 ArchBTW
fix: Gives eligible sentient simplemobs a stamina hud
/🆑

Co-authored-by: glue0000 <230859540+glue0000@users.noreply.github.com>
This commit is contained in:
archbtw
2025-12-12 18:44:33 -07:00
committed by GitHub
co-authored by glue0000
parent 51267a0447
commit ffec786117
3 changed files with 31 additions and 28 deletions
+3
View File
@@ -22,3 +22,6 @@
//mob health doll! assumes whatever sprite the mob is
healthdoll = new /atom/movable/screen/healthdoll/living(null, src)
infodisplay += healthdoll
stamina = new /atom/movable/screen/stamina(null, src)
infodisplay += stamina
-28
View File
@@ -650,34 +650,6 @@
else
hud_used.healths.icon_state = "health6"
/mob/living/carbon/update_stamina_hud(shown_stamina_loss)
if(!client || !hud_used?.stamina)
return
var/stam_crit_threshold = maxHealth - crit_threshold
if(stat == DEAD)
hud_used.stamina.icon_state = "stamina_dead"
else
if(shown_stamina_loss == null)
shown_stamina_loss = get_stamina_loss()
if(shown_stamina_loss >= stam_crit_threshold)
hud_used.stamina.icon_state = "stamina_crit"
else if(shown_stamina_loss > maxHealth*0.8)
hud_used.stamina.icon_state = "stamina_5"
else if(shown_stamina_loss > maxHealth*0.6)
hud_used.stamina.icon_state = "stamina_4"
else if(shown_stamina_loss > maxHealth*0.4)
hud_used.stamina.icon_state = "stamina_3"
else if(shown_stamina_loss > maxHealth*0.2)
hud_used.stamina.icon_state = "stamina_2"
else if(shown_stamina_loss > 0)
hud_used.stamina.icon_state = "stamina_1"
else
hud_used.stamina.icon_state = "stamina_full"
/mob/living/carbon/proc/update_spacesuit_hud_icon(cell_state = "empty")
hud_used?.spacesuit?.icon_state = "spacesuit_[cell_state]"
+28
View File
@@ -1432,6 +1432,34 @@
SEND_SIGNAL(src, COMSIG_LIVING_STAMINA_UPDATE)
update_stamina_hud()
/mob/living/update_stamina_hud(shown_stamina_loss)
if(!client || !hud_used?.stamina)
return
var/stam_crit_threshold = maxHealth - crit_threshold
if(stat == DEAD)
hud_used.stamina.icon_state = "stamina_dead"
else
if(shown_stamina_loss == null)
shown_stamina_loss = get_stamina_loss()
if(shown_stamina_loss >= stam_crit_threshold)
hud_used.stamina.icon_state = "stamina_crit"
else if(shown_stamina_loss > maxHealth*0.8)
hud_used.stamina.icon_state = "stamina_5"
else if(shown_stamina_loss > maxHealth*0.6)
hud_used.stamina.icon_state = "stamina_4"
else if(shown_stamina_loss > maxHealth*0.4)
hud_used.stamina.icon_state = "stamina_3"
else if(shown_stamina_loss > maxHealth*0.2)
hud_used.stamina.icon_state = "stamina_2"
else if(shown_stamina_loss > 0)
hud_used.stamina.icon_state = "stamina_1"
else
hud_used.stamina.icon_state = "stamina_full"
/mob/living/carbon/alien/update_stamina()
return