mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-26 05:27:01 +01:00
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise into BookClub
This commit is contained in:
@@ -28,7 +28,7 @@
|
||||
|
||||
//non-verbal languages are garbled if you can't see the speaker. Yes, this includes if they are inside a closet.
|
||||
if(language && (language.flags & NONVERBAL))
|
||||
if(!can_see()) //blind people can't see dumbass
|
||||
if(!has_vision()) //blind people can't see dumbass
|
||||
message = stars(message)
|
||||
|
||||
if(!speaker || !(speaker in view(src)))
|
||||
@@ -95,7 +95,7 @@
|
||||
|
||||
//non-verbal languages are garbled if you can't see the speaker. Yes, this includes if they are inside a closet.
|
||||
if(language && (language.flags & NONVERBAL))
|
||||
if(!can_see()) //blind people can't see dumbass
|
||||
if(!has_vision()) //blind people can't see dumbass
|
||||
message = stars(message)
|
||||
|
||||
if(!speaker || !(speaker in view(src)))
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
var/heat_protection = 0.5
|
||||
var/leaping = 0
|
||||
ventcrawler = 2
|
||||
|
||||
|
||||
var/list/alien_organs = list()
|
||||
|
||||
/mob/living/carbon/alien/New()
|
||||
@@ -163,8 +163,8 @@
|
||||
|
||||
show_stat_emergency_shuttle_eta()
|
||||
|
||||
/mob/living/carbon/alien/SetStunned(amount)
|
||||
..(amount)
|
||||
/mob/living/carbon/alien/SetStunned(amount, updating = 1, force = 0)
|
||||
..()
|
||||
if(!(status_flags & CANSTUN) && amount)
|
||||
// add some movement delay
|
||||
move_delay_add = min(move_delay_add + round(amount / 2), 10) // a maximum delay of 10
|
||||
|
||||
@@ -108,7 +108,7 @@
|
||||
sleep(2)//Runtime prevention (infinite bump() calls on hulks)
|
||||
step_towards(src,L)
|
||||
else
|
||||
weakened = 2
|
||||
Weaken(2, 1, 1)
|
||||
|
||||
toggle_leap(0)
|
||||
pounce_cooldown = !pounce_cooldown
|
||||
@@ -116,7 +116,7 @@
|
||||
pounce_cooldown = !pounce_cooldown
|
||||
else if(A.density && !A.CanPass(src))
|
||||
visible_message("<span class ='danger'>[src] smashes into [A]!</span>", "<span class ='alertalien'>[src] smashes into [A]!</span>")
|
||||
weakened = 2
|
||||
Weaken(2, 1, 1)
|
||||
|
||||
if(leaping)
|
||||
leaping = 0
|
||||
|
||||
@@ -66,8 +66,8 @@
|
||||
return 1
|
||||
|
||||
//UNCONSCIOUS. NO-ONE IS HOME
|
||||
if( (getOxyLoss() > 50) || (config.health_threshold_crit >= health) )
|
||||
if( health <= 20 && prob(1) )
|
||||
if((getOxyLoss() > 50) || (config.health_threshold_crit >= health))
|
||||
if(health <= 20 && prob(1))
|
||||
spawn(0)
|
||||
emote("gasp")
|
||||
if(!reagents.has_reagent("epinephrine"))
|
||||
@@ -75,14 +75,12 @@
|
||||
Paralyse(3)
|
||||
|
||||
if(paralysis)
|
||||
AdjustParalysis(-1)
|
||||
blinded = 1
|
||||
stat = UNCONSCIOUS
|
||||
else if(sleeping)
|
||||
AdjustSleeping(-1)
|
||||
blinded = 1
|
||||
stat = UNCONSCIOUS
|
||||
if( prob(10) && health )
|
||||
if(prob(10) && health)
|
||||
spawn(0)
|
||||
emote("hiss")
|
||||
//CONSCIOUS
|
||||
@@ -110,17 +108,6 @@
|
||||
else if(ear_damage < 25) //ear damage heals slowly under this threshold. otherwise you'll need earmuffs
|
||||
AdjustEarDamage(-0.05)
|
||||
|
||||
//Other
|
||||
if(stunned)
|
||||
AdjustStunned(-1)
|
||||
if(!stunned)
|
||||
update_icons()
|
||||
|
||||
if(weakened)
|
||||
weakened = max(weakened-1,0)
|
||||
if(!weakened)
|
||||
update_icons()
|
||||
|
||||
if(stuttering)
|
||||
AdjustStuttering(-1)
|
||||
|
||||
|
||||
@@ -35,11 +35,9 @@
|
||||
Paralyse(3)
|
||||
|
||||
if(paralysis)
|
||||
AdjustParalysis(-2)
|
||||
blinded = 1
|
||||
stat = UNCONSCIOUS
|
||||
else if(sleeping)
|
||||
AdjustSleeping(-1)
|
||||
blinded = 1
|
||||
stat = UNCONSCIOUS
|
||||
if( prob(10) && health )
|
||||
@@ -70,13 +68,6 @@
|
||||
else if(ear_damage < 25) //ear damage heals slowly under this threshold.
|
||||
AdjustEarDamage(-0.05)
|
||||
|
||||
//Other
|
||||
if(stunned)
|
||||
AdjustStunned(-1)
|
||||
|
||||
if(weakened)
|
||||
AdjustWeakened(-1)
|
||||
|
||||
if(stuttering)
|
||||
AdjustStuttering(-1)
|
||||
|
||||
|
||||
@@ -742,7 +742,7 @@ var/list/ventcrawl_machinery = list(/obj/machinery/atmospherics/unary/vent_pump,
|
||||
|
||||
/mob/living/carbon/resist_fire()
|
||||
fire_stacks -= 5
|
||||
weakened = max(weakened, 3)//We dont check for CANWEAKEN, I don't care how immune to weakening you are, if you're rolling on the ground, you're busy.
|
||||
Weaken(3, 1, 1) //We dont check for CANWEAKEN, I don't care how immune to weakening you are, if you're rolling on the ground, you're busy.
|
||||
update_canmove()
|
||||
spin(32,2)
|
||||
visible_message("<span class='danger'>[src] rolls on the floor, trying to put themselves out!</span>", \
|
||||
|
||||
@@ -840,9 +840,9 @@
|
||||
SetEyeBlurry(0)
|
||||
|
||||
else if(!vision || vision.is_broken()) // Vision organs cut out or broken? Permablind.
|
||||
EyeBlind(1)
|
||||
EyeBlind(2)
|
||||
blinded = 1
|
||||
EyeBlurry(1)
|
||||
EyeBlurry(2)
|
||||
|
||||
else
|
||||
//blindness
|
||||
@@ -859,7 +859,7 @@
|
||||
|
||||
//blurry sight
|
||||
if(vision.is_bruised()) // Vision organs impaired? Permablurry.
|
||||
EyeBlurry(1)
|
||||
EyeBlurry(2)
|
||||
|
||||
if(eye_blurry) // Blurry eyes heal slowly
|
||||
AdjustEyeBlurry(-1)
|
||||
|
||||
@@ -189,7 +189,7 @@
|
||||
if(SA_pp > SA_para_min) // Enough to make us paralysed for a bit
|
||||
H.Paralyse(3) // 3 gives them one second to wake up and run away a bit!
|
||||
if(SA_pp > SA_sleep_min) // Enough to make us sleep as well
|
||||
H.AdjustSleeping(2, bound_lower = 0, bound_upper = 10)
|
||||
H.AdjustSleeping(8, bound_lower = 0, bound_upper = 10)
|
||||
else if(SA_pp > 0.15) // There is sleeping gas in their lungs, but only a little, so give them a bit of a warning
|
||||
if(prob(20))
|
||||
spawn(0)
|
||||
|
||||
@@ -305,7 +305,7 @@
|
||||
if(!H.co2overloadtime) // If it's the first breath with too much CO2 in it, lets start a counter, then have them pass out after 12s or so.
|
||||
H.co2overloadtime = world.time
|
||||
else if(world.time - H.co2overloadtime > 120)
|
||||
H.Paralyse(3)
|
||||
H.Paralyse(5)
|
||||
H.adjustOxyLoss(3) // Lets hurt em a little, let them know we mean business
|
||||
if(world.time - H.co2overloadtime > 300) // They've been in here 30s now, lets start to kill them for their own good!
|
||||
H.adjustOxyLoss(8)
|
||||
@@ -314,6 +314,7 @@
|
||||
H.emote("cough")
|
||||
else
|
||||
H.clear_alert("co2")
|
||||
H.co2overloadtime = 0
|
||||
if(atmos_requirements["min_co2"]) //species breathes this gas, so they got their air
|
||||
H.failed_last_breath = 0
|
||||
H.adjustOxyLoss(-5)
|
||||
@@ -332,7 +333,8 @@
|
||||
if(SA_pp > atmos_requirements["sa_para"]) // Enough to make us paralysed for a bit
|
||||
H.Paralyse(3) // 3 gives them one second to wake up and run away a bit!
|
||||
if(SA_pp > atmos_requirements["sa_sleep"]) // Enough to make us sleep as well
|
||||
H.AdjustSleeping(2, bound_lower = 0, bound_upper = 10)
|
||||
// This value is large because breaths are taken only once every 4 life ticks.
|
||||
H.AdjustSleeping(8, bound_lower = 0, bound_upper = 10)
|
||||
else if(SA_pp > 0.01) // There is sleeping gas in their lungs, but only a little, so give them a bit of a warning
|
||||
if(prob(20))
|
||||
spawn(0)
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
clear_fullscreens()
|
||||
update_action_buttons_icon()
|
||||
..(gibbed)
|
||||
..(gibbed)
|
||||
|
||||
@@ -117,14 +117,14 @@
|
||||
|
||||
/mob/living/proc/handle_stunned()
|
||||
if(stunned)
|
||||
AdjustStunned(-1)
|
||||
AdjustStunned(-1, updating = 1, force = 1)
|
||||
if(!stunned)
|
||||
update_icons()
|
||||
return stunned
|
||||
|
||||
/mob/living/proc/handle_weakened()
|
||||
if(weakened)
|
||||
AdjustWeakened(-1)
|
||||
AdjustWeakened(-1, updating = 1, force = 1)
|
||||
if(!weakened)
|
||||
update_icons()
|
||||
return weakened
|
||||
@@ -151,7 +151,7 @@
|
||||
|
||||
/mob/living/proc/handle_paralysed()
|
||||
if(paralysis)
|
||||
AdjustParalysis(-1)
|
||||
AdjustParalysis(-1, updating = 1, force = 1)
|
||||
return paralysis
|
||||
|
||||
/mob/living/proc/handle_sleeping()
|
||||
|
||||
@@ -320,9 +320,9 @@
|
||||
setBrainLoss(0)
|
||||
setStaminaLoss(0)
|
||||
SetSleeping(0)
|
||||
SetParalysis(0)
|
||||
SetStunned(0)
|
||||
SetWeakened(0)
|
||||
SetParalysis(0, 1, 1)
|
||||
SetStunned(0, 1, 1)
|
||||
SetWeakened(0, 1, 1)
|
||||
SetSlowed(0)
|
||||
SetLoseBreath(0)
|
||||
SetDizzy(0)
|
||||
|
||||
@@ -118,11 +118,11 @@
|
||||
for(var/atom/check in check_list)
|
||||
for(var/mob/living/M in viewers(world.view + 1, check) - src)
|
||||
if(M.client && CanAttack(M) && !M.has_unlimited_silicon_privilege)
|
||||
if(M.can_see())
|
||||
if(M.has_vision())
|
||||
return M
|
||||
for(var/obj/mecha/M in view(world.view + 1, check)) //assuming if you can see them they can see you
|
||||
if(M.occupant && M.occupant.client)
|
||||
if(M.occupant.can_see())
|
||||
if(M.occupant.has_vision())
|
||||
return M.occupant
|
||||
return null
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
// death() is used to make a mob die
|
||||
|
||||
// handles revival through other means than cloning or adminbus (defib, IPC repair)
|
||||
/mob/living/proc/update_revive()
|
||||
/mob/living/proc/update_revive(updating = TRUE)
|
||||
if(stat != DEAD)
|
||||
return
|
||||
if(!can_be_revived())
|
||||
@@ -45,6 +45,7 @@
|
||||
dead_mob_list -= src
|
||||
living_mob_list += src
|
||||
timeofdeath = null
|
||||
update_canmove()
|
||||
if(updating)
|
||||
update_canmove()
|
||||
// update_blind_effects()
|
||||
updatehealth()
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/mob/living/update_blind_effects()
|
||||
if(!can_see())
|
||||
if(!has_vision())
|
||||
overlay_fullscreen("blind", /obj/screen/fullscreen/blind)
|
||||
throw_alert("blind", /obj/screen/alert/blind)
|
||||
return 1
|
||||
@@ -43,7 +43,7 @@
|
||||
return !(ear_deaf || (disabilities & DEAF))
|
||||
|
||||
// Whether the mob is able to see
|
||||
/mob/living/can_see()
|
||||
/mob/living/has_vision()
|
||||
return !(eye_blind || (disabilities & BLIND) || stat)
|
||||
|
||||
// Whether the mob is capable of talking
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
if(!client) return
|
||||
|
||||
if(type)
|
||||
if(type & 1 && !can_see())//Vision related
|
||||
if(type & 1 && !has_vision())//Vision related
|
||||
if(!( alt ))
|
||||
return
|
||||
else
|
||||
@@ -74,7 +74,7 @@
|
||||
else
|
||||
msg = alt
|
||||
type = alt_type
|
||||
if(type & 1 && !can_see())
|
||||
if(type & 1 && !has_vision())
|
||||
return
|
||||
// Added voice muffling for Issue 41.
|
||||
if(stat == UNCONSCIOUS || (sleeping > 0 && stat != DEAD))
|
||||
|
||||
@@ -162,11 +162,6 @@
|
||||
|
||||
if(!mob) return
|
||||
|
||||
if(locate(/obj/effect/stop/, mob.loc))
|
||||
for(var/obj/effect/stop/S in mob.loc)
|
||||
if(S.victim == mob)
|
||||
return
|
||||
|
||||
if(mob.stat==DEAD) return
|
||||
|
||||
if(mob.notransform) return//This is sota the goto stop mobs from moving var
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
/mob/proc/can_hear()
|
||||
return 1
|
||||
|
||||
/mob/proc/can_see()
|
||||
/mob/proc/has_vision()
|
||||
return 1
|
||||
|
||||
/mob/proc/can_speak()
|
||||
|
||||
Reference in New Issue
Block a user