mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-23 04:51:32 +01:00
516 Renderer update (#20579)
Updated the renderers to work with BYOND 516. Some update of ZAS to hopefully be more efficient, and cold/hot air effects. Gas effects are now less prominent. Ported from Bay
This commit is contained in:
@@ -118,6 +118,13 @@ If it gains pressure too slowly, it may leak or just rupture instead of explodin
|
||||
|
||||
return 0
|
||||
|
||||
/obj/heat
|
||||
icon = 'icons/effects/fire.dmi'
|
||||
icon_state = "3"
|
||||
appearance_flags = PIXEL_SCALE | NO_CLIENT_COLOR
|
||||
render_target = HEAT_EFFECT_TARGET
|
||||
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
|
||||
|
||||
/obj/fire
|
||||
//Icon for fire on turfs.
|
||||
|
||||
|
||||
+8
-6
@@ -53,6 +53,9 @@ Class Procs:
|
||||
|
||||
var/datum/gas_mixture/air = new
|
||||
|
||||
var/list/graphic_add = list()
|
||||
var/list/graphic_remove = list()
|
||||
|
||||
/zone/New()
|
||||
SSair.add_zone(src)
|
||||
air.temperature = TCMB
|
||||
@@ -148,21 +151,20 @@ Class Procs:
|
||||
air.group_multiplier = contents.len+1
|
||||
|
||||
/zone/proc/tick()
|
||||
// Update fires.
|
||||
if(air.temperature >= PHORON_FLASHPOINT && !(src in SSair.active_fire_zones) && air.check_combustability() && contents.len)
|
||||
var/turf/T = pick(contents)
|
||||
if(istype(T))
|
||||
T.create_fire(GLOB.vsc.fire_firelevel_multiplier)
|
||||
|
||||
var/world_time_counter = world.time
|
||||
var/list/graphic_add = list()
|
||||
var/list/graphic_remove = list()
|
||||
// Update gas overlays.
|
||||
if(air.check_tile_graphic(graphic_add, graphic_remove))
|
||||
for(var/turf/simulated/T in contents)
|
||||
T.update_graphic(graphic_add, graphic_remove)
|
||||
var/delta_time = world.time - world_time_counter
|
||||
if(delta_time > 5 SECONDS)
|
||||
log_admin("AN AREA IS TAKING EXTREMELY LONG TO UPDATE: [name] WITH CONTENTS LENGTH [length(contents)] TELL MATT WITH THE ROUND ID!")
|
||||
graphic_add.Cut()
|
||||
graphic_remove.Cut()
|
||||
|
||||
// Update connected edges.
|
||||
for(var/connection_edge/E in edges)
|
||||
if(E.sleeping)
|
||||
E.recheck()
|
||||
|
||||
Reference in New Issue
Block a user