mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2026-01-03 05:52:43 +00:00
Ports Snowy stuff from Eros
This commit is contained in:
@@ -15,9 +15,10 @@
|
||||
#define RADIATOR_EXPOSED_SURFACE_AREA_RATIO 0.04 // (3 cm + 100 cm * sin(3deg))/(2*(3+100 cm)). Unitless ratio.
|
||||
#define HUMAN_EXPOSED_SURFACE_AREA 5.2 //m^2, surface area of 1.7m (H) x 0.46m (D) cylinder
|
||||
|
||||
#define T0C 273.15 // 0.0 degrees celcius
|
||||
#define T20C 293.15 // 20.0 degrees celcius
|
||||
#define TCMB 2.7 // -270.3 degrees celcius
|
||||
#define T0C 273.15 // 0.0 degrees celcius
|
||||
#define T20C 293.15 // 20.0 degrees celcius
|
||||
#define TCMB 2.7 // -270.3 degrees celcius
|
||||
#define TN60C 213.15 // -60 degrees celcius
|
||||
|
||||
#define CLAMP01(x) max(0, min(1, x))
|
||||
#define QUANTIZE(variable) (round(variable,0.0001))
|
||||
|
||||
34
code/game/turfs/snow/snow.dm
Normal file
34
code/game/turfs/snow/snow.dm
Normal file
@@ -0,0 +1,34 @@
|
||||
/turf/snow
|
||||
name = "snow"
|
||||
|
||||
dynamic_lighting = 0
|
||||
icon = 'icons/turf/snow_new.dmi'
|
||||
icon_state = "snow"
|
||||
|
||||
oxygen = MOLES_O2STANDARD * 1.15
|
||||
nitrogen = MOLES_N2STANDARD * 1.15
|
||||
|
||||
temperature = TN60C
|
||||
var/list/crossed_dirs = list()
|
||||
|
||||
#define FOOTSTEP_SPRITE_AMT 2
|
||||
|
||||
/turf/snow/Entered(atom/A)
|
||||
if(ismob(A))
|
||||
var/mdir = "[A.dir]"
|
||||
if(crossed_dirs[mdir])
|
||||
crossed_dirs[mdir] = min(crossed_dirs[mdir] + 1, FOOTSTEP_SPRITE_AMT)
|
||||
else
|
||||
crossed_dirs[mdir] = 1
|
||||
|
||||
update_icon()
|
||||
|
||||
. = ..()
|
||||
|
||||
/turf/snow/update_icon()
|
||||
overlays.Cut()
|
||||
for(var/d in crossed_dirs)
|
||||
var/amt = crossed_dirs[d]
|
||||
|
||||
for(var/i in 1 to amt)
|
||||
overlays += icon(icon, "footprint[i]", text2num(d))
|
||||
@@ -619,11 +619,11 @@
|
||||
if(!istype(loc, /obj/machinery/atmospherics/unary/cryo_cell))
|
||||
var/burn_dam = 0
|
||||
switch(bodytemperature)
|
||||
if(-INFINITY to species.cold_level_3)
|
||||
if(species.cold_level_1 to species.cold_level_2)
|
||||
burn_dam = COLD_DAMAGE_LEVEL_1
|
||||
if(species.cold_level_3 to species.cold_level_2)
|
||||
if(species.cold_level_2 to species.cold_level_3)
|
||||
burn_dam = COLD_DAMAGE_LEVEL_2
|
||||
if(species.cold_level_2 to species.cold_level_1)
|
||||
if(species.cold_level_3 to -INFINITY)
|
||||
burn_dam = COLD_DAMAGE_LEVEL_3
|
||||
take_overall_damage(burn=burn_dam, used_weapon = "Low Body Temperature")
|
||||
fire_alert = max(fire_alert, 1)
|
||||
@@ -847,9 +847,9 @@
|
||||
if(!isSynthetic() && (species.flags & IS_PLANT) && (!light_organ || light_organ.is_broken()))
|
||||
if(nutrition < 200)
|
||||
take_overall_damage(2,0)
|
||||
|
||||
//traumatic_shock is updated every tick, incrementing that is pointless - shock_stage is the counter.
|
||||
//Not that it matters much for diona, who have NO_PAIN.
|
||||
|
||||
//traumatic_shock is updated every tick, incrementing that is pointless - shock_stage is the counter.
|
||||
//Not that it matters much for diona, who have NO_PAIN.
|
||||
shock_stage++
|
||||
|
||||
// TODO: stomach and bloodstream organ.
|
||||
|
||||
BIN
icons/turf/snow_new.dmi
Normal file
BIN
icons/turf/snow_new.dmi
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.2 KiB |
Reference in New Issue
Block a user