Reworked Astral, doubled lung damage, fixed lung damage oopsie.
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
/mob/living/simple_animal/astral
|
||||
name = "Astral projection"
|
||||
desc = "A soul of someone projecting their mind."
|
||||
icon = 'icons/mob/mob.dmi'
|
||||
icon_state = "ghost"
|
||||
icon_living = "ghost"
|
||||
mob_biotypes = list(MOB_SPIRIT)
|
||||
attacktext = "raises the hairs on the neck of"
|
||||
response_harm = "disrupts the concentration of"
|
||||
response_disarm = "wafts"
|
||||
friendly = "touches"
|
||||
loot = null
|
||||
maxHealth = 5
|
||||
health = 5
|
||||
melee_damage_lower = 0
|
||||
melee_damage_upper = 0
|
||||
obj_damage = 0
|
||||
deathmessage = "disappears as if it was never really there to begin with"
|
||||
incorporeal_move = 1
|
||||
alpha = 50
|
||||
attacktext = "touches the mind of"
|
||||
speak_emote = list("echos")
|
||||
movement_type = FLYING
|
||||
var/pseudo_death = FALSE
|
||||
|
||||
/mob/living/simple_animal/astral/death()
|
||||
icon_state = "shade_dead"
|
||||
Stun(1000)
|
||||
canmove = 0
|
||||
friendly = "deads at"
|
||||
pseudo_death = TRUE
|
||||
incorporeal_move = 0
|
||||
to_chat(src, "<span class='notice'>Your astral projection is interrupted and your mind is sent back to your body with a shock!</span>")
|
||||
|
||||
/mob/living/simple_animal/astral/ClickOn(var/atom/A, var/params)
|
||||
..()
|
||||
if(pseudo_death == FALSE)
|
||||
if(isliving(A))
|
||||
var/message = html_decode(stripped_input(src, "Enter a message to send to [A]", MAX_MESSAGE_LEN))
|
||||
to_chat(A, "<b>[src] speaks into your mind,</b><i> \"[message]\"</i>")
|
||||
log_game("FERMICHEM: [src] has astrally transmitted [message] into [A]")
|
||||
@@ -1929,7 +1929,7 @@
|
||||
/datum/reagent/moonsugar/on_mob_life(mob/living/carbon/M)
|
||||
if(prob(20))
|
||||
to_chat(M, "You find yourself unable to supress the desire to meow!")
|
||||
M.emote("*nya")
|
||||
M.emote("nya")
|
||||
..()
|
||||
|
||||
//Kept for legacy, I think it will break everything if you enable it.
|
||||
|
||||
@@ -405,13 +405,13 @@
|
||||
var/cold_modifier = H.dna.species.coldmod
|
||||
if(breath_temperature < cold_level_3_threshold)
|
||||
H.apply_damage_type(cold_level_3_damage*cold_modifier, cold_damage_type)
|
||||
adjustLungLoss(cold_level_3_damage*cold_modifier, H)
|
||||
adjustLungLoss((cold_level_3_damage*cold_modifier*2), H)
|
||||
if(breath_temperature > cold_level_3_threshold && breath_temperature < cold_level_2_threshold)
|
||||
H.apply_damage_type(cold_level_2_damage*cold_modifier, cold_damage_type)
|
||||
adjustLungLoss(cold_level_2_damage*cold_modifier, H)
|
||||
adjustLungLoss((cold_level_2_damage*cold_modifier*2), H)
|
||||
if(breath_temperature > cold_level_2_threshold && breath_temperature < cold_level_1_threshold)
|
||||
H.apply_damage_type(cold_level_1_damage*cold_modifier, cold_damage_type)
|
||||
adjustLungLoss(cold_level_1_damage*cold_modifier, H)
|
||||
adjustLungLoss((cold_level_1_damage*cold_modifier*2), H)
|
||||
if(breath_temperature < cold_level_1_threshold)
|
||||
if(prob(20))
|
||||
to_chat(H, "<span class='warning'>You feel [cold_message] in your [name]!</span>")
|
||||
@@ -420,13 +420,13 @@
|
||||
var/heat_modifier = H.dna.species.heatmod
|
||||
if(breath_temperature > heat_level_1_threshold && breath_temperature < heat_level_2_threshold)
|
||||
H.apply_damage_type(heat_level_1_damage*heat_modifier, heat_damage_type)
|
||||
adjustLungLoss(cold_level_1_damage*heat_modifier, H)
|
||||
adjustLungLoss((heat_level_1_damage*heat_modifier*2), H)
|
||||
if(breath_temperature > heat_level_2_threshold && breath_temperature < heat_level_3_threshold)
|
||||
H.apply_damage_type(heat_level_2_damage*heat_modifier, heat_damage_type)
|
||||
adjustLungLoss(cold_level_1_damage*heat_modifier, H)
|
||||
adjustLungLoss((heat_level_2_damage*heat_modifier*2), H)
|
||||
if(breath_temperature > heat_level_3_threshold)
|
||||
H.apply_damage_type(heat_level_3_damage*heat_modifier, heat_damage_type)
|
||||
adjustLungLoss(cold_level_1_damage*heat_modifier, H)
|
||||
adjustLungLoss((heat_level_3_damage*heat_modifier*2), H)
|
||||
if(breath_temperature > heat_level_1_threshold)
|
||||
if(prob(20))
|
||||
to_chat(H, "<span class='warning'>You feel [hot_message] in your [name]!</span>")
|
||||
@@ -500,4 +500,3 @@
|
||||
if (breath.gases[/datum/gas/plasma])
|
||||
var/plasma_pp = breath.get_breath_partial_pressure(breath.gases[/datum/gas/plasma])
|
||||
owner.blood_volume += (0.2 * plasma_pp) // 10/s when breathing literally nothing but plasma, which will suffocate you.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user