mirror of
https://github.com/yogstation13/Yogstation.git
synced 2025-02-26 09:04:50 +00:00
rads (#10061)
This commit is contained in:
@@ -101,6 +101,9 @@
|
|||||||
#define LIGHTING_LAYER 15
|
#define LIGHTING_LAYER 15
|
||||||
#define LIGHTING_RENDER_TARGET "LIGHT_PLANE"
|
#define LIGHTING_RENDER_TARGET "LIGHT_PLANE"
|
||||||
|
|
||||||
|
#define RAD_TEXT_LAYER 15.1
|
||||||
|
|
||||||
|
|
||||||
#define ABOVE_LIGHTING_PLANE 16
|
#define ABOVE_LIGHTING_PLANE 16
|
||||||
#define ABOVE_LIGHTING_LAYER 16
|
#define ABOVE_LIGHTING_LAYER 16
|
||||||
#define ABOVE_LIGHTING_RENDER_TARGET "ABOVE_LIGHTING_PLANE"
|
#define ABOVE_LIGHTING_RENDER_TARGET "ABOVE_LIGHTING_PLANE"
|
||||||
|
|||||||
@@ -29,10 +29,17 @@
|
|||||||
if(strength > RAD_MINIMUM_CONTAMINATION)
|
if(strength > RAD_MINIMUM_CONTAMINATION)
|
||||||
SSradiation.warn(src)
|
SSradiation.warn(src)
|
||||||
|
|
||||||
|
//Let's make er glow
|
||||||
|
//This relies on parent not being a turf or something. IF YOU CHANGE THAT, CHANGE THIS
|
||||||
|
var/atom/movable/master = parent
|
||||||
|
master.add_filter("rad_glow", 2, list("type" = "outline", "color" = "#39ff1430", "size" = 2))
|
||||||
|
addtimer(CALLBACK(src, .proc/glow_loop, master), rand(1,19))//Things should look uneven
|
||||||
START_PROCESSING(SSradiation, src)
|
START_PROCESSING(SSradiation, src)
|
||||||
|
|
||||||
/datum/component/radioactive/Destroy()
|
/datum/component/radioactive/Destroy()
|
||||||
STOP_PROCESSING(SSradiation, src)
|
STOP_PROCESSING(SSradiation, src)
|
||||||
|
var/atom/movable/master = parent
|
||||||
|
master.remove_filter("rad_glow")
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
/datum/component/radioactive/process()
|
/datum/component/radioactive/process()
|
||||||
@@ -46,6 +53,12 @@
|
|||||||
if(strength <= RAD_BACKGROUND_RADIATION)
|
if(strength <= RAD_BACKGROUND_RADIATION)
|
||||||
return PROCESS_KILL
|
return PROCESS_KILL
|
||||||
|
|
||||||
|
/datum/component/radioactive/proc/glow_loop(atom/movable/master)
|
||||||
|
var/filter = master.get_filter("rad_glow")
|
||||||
|
if(filter)
|
||||||
|
animate(filter, alpha = 110, time = 15, loop = -1)
|
||||||
|
animate(alpha = 40, time = 25)
|
||||||
|
|
||||||
/datum/component/radioactive/InheritComponent(datum/component/C, i_am_original, list/arguments)
|
/datum/component/radioactive/InheritComponent(datum/component/C, i_am_original, list/arguments)
|
||||||
if(!i_am_original)
|
if(!i_am_original)
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -101,7 +101,6 @@
|
|||||||
// modify the ignored_things list in __HELPERS/radiation.dm instead
|
// modify the ignored_things list in __HELPERS/radiation.dm instead
|
||||||
var/static/list/blacklisted = typecacheof(list(
|
var/static/list/blacklisted = typecacheof(list(
|
||||||
/turf,
|
/turf,
|
||||||
/mob,
|
|
||||||
/obj/structure/cable,
|
/obj/structure/cable,
|
||||||
/obj/machinery/atmospherics,
|
/obj/machinery/atmospherics,
|
||||||
/obj/item/ammo_casing,
|
/obj/item/ammo_casing,
|
||||||
|
|||||||
@@ -1092,6 +1092,12 @@
|
|||||||
if(filter_data && filter_data[name])
|
if(filter_data && filter_data[name])
|
||||||
return filters[filter_data.Find(name)]
|
return filters[filter_data.Find(name)]
|
||||||
|
|
||||||
|
/atom/movable/proc/remove_filter(name)
|
||||||
|
if(filter_data && filter_data[name])
|
||||||
|
filter_data -= name
|
||||||
|
update_filters()
|
||||||
|
|
||||||
|
|
||||||
/atom/proc/intercept_zImpact(atom/movable/AM, levels = 1)
|
/atom/proc/intercept_zImpact(atom/movable/AM, levels = 1)
|
||||||
return FALSE
|
return FALSE
|
||||||
|
|
||||||
|
|||||||
@@ -85,17 +85,17 @@
|
|||||||
|
|
||||||
for(var/i in rad_places)
|
for(var/i in rad_places)
|
||||||
var/turf/place = i
|
var/turf/place = i
|
||||||
if(get_dist(user, place) >= range*2) //Rads are easier to see than wires under the floor
|
if(get_dist(user, place) >= range*5) //Rads are easier to see than wires under the floor
|
||||||
continue
|
continue
|
||||||
var/strength = round(rad_places[i] / 1000, 0.1)
|
var/strength = round(rad_places[i] / 1000, 0.1)
|
||||||
var/image/pic = new(loc = place)
|
var/image/pic = image(loc = place)
|
||||||
var/mutable_appearance/MA = new()
|
var/mutable_appearance/MA = new()
|
||||||
MA.alpha = 180
|
MA.maptext = "<span class='maptext'>[strength]k</span>"
|
||||||
MA.maptext = "[strength]k"
|
MA.color = "#04e604"
|
||||||
MA.color = "#64C864"
|
MA.layer = RAD_TEXT_LAYER
|
||||||
MA.layer = FLY_LAYER
|
MA.plane = GAME_PLANE
|
||||||
pic.appearance = MA
|
pic.appearance = MA
|
||||||
flick_overlay(pic, list(user.client), 8)
|
flick_overlay(pic, list(user.client), 10)
|
||||||
|
|
||||||
/obj/item/clothing/glasses/meson/engine/proc/show_shuttle()
|
/obj/item/clothing/glasses/meson/engine/proc/show_shuttle()
|
||||||
var/mob/living/carbon/human/user = loc
|
var/mob/living/carbon/human/user = loc
|
||||||
|
|||||||
Reference in New Issue
Block a user