mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-27 15:01:04 +01:00
Gas Clouds (#10579)
This commit is contained in:
+2
-2
@@ -6,9 +6,9 @@
|
||||
|
||||
/turf/simulated/proc/update_graphic(list/graphic_add = null, list/graphic_remove = null)
|
||||
if (LAZYLEN(graphic_add))
|
||||
add_overlay(graphic_add.Copy(), TRUE) // We need to copy because SSoverlay will mutate this list & add appearance objects.
|
||||
vis_contents += graphic_add
|
||||
if(LAZYLEN(graphic_remove))
|
||||
cut_overlay(graphic_remove.Copy(), TRUE)
|
||||
vis_contents -= graphic_remove
|
||||
|
||||
/turf/proc/update_air_properties()
|
||||
var/block
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
//and following a N/Z ratio of 1.5, the molar mass of a monatomic gas is:
|
||||
molar_mass = 0.405 // kg/mol
|
||||
|
||||
tile_overlay = "plasma-purple"
|
||||
tile_overlay = "phoron"
|
||||
overlay_limit = 0.7
|
||||
flags = XGM_GAS_FUEL | XGM_GAS_CONTAMINANT
|
||||
|
||||
|
||||
@@ -9,8 +9,10 @@
|
||||
var/list/specific_heat = list()
|
||||
//Molar mass of the gas. Used for calculating specific entropy.
|
||||
var/list/molar_mass = list()
|
||||
//Tile overlays. /images, created from references to 'icons/effects/tile_effects.dmi'
|
||||
//Tile overlays. /obj/effect/gas_overlay, created from references to 'icons/effects/tile_effects.dmi'
|
||||
var/list/tile_overlay = list()
|
||||
//Optional color for tile overlay
|
||||
var/list/tile_overlay_color = list()
|
||||
//Overlay limits. There must be at least this many moles for the overlay to appear.
|
||||
var/list/overlay_limit = list()
|
||||
//Flags.
|
||||
@@ -22,7 +24,8 @@
|
||||
var/specific_heat = 20 // J/(mol*K)
|
||||
var/molar_mass = 0.032 // kg/mol
|
||||
|
||||
var/tile_overlay = null
|
||||
var/tile_overlay = "generic"
|
||||
var/tile_color = null
|
||||
var/overlay_limit = null
|
||||
|
||||
var/flags = 0
|
||||
@@ -39,8 +42,29 @@
|
||||
gas_data.name[gas.id] = gas.name
|
||||
gas_data.specific_heat[gas.id] = gas.specific_heat
|
||||
gas_data.molar_mass[gas.id] = gas.molar_mass
|
||||
if(gas.tile_overlay) gas_data.tile_overlay[gas.id] = image('icons/effects/tile_effects.dmi', gas.tile_overlay, FLY_LAYER)
|
||||
if(gas.overlay_limit) gas_data.overlay_limit[gas.id] = gas.overlay_limit
|
||||
if(gas.overlay_limit)
|
||||
gas_data.overlay_limit[gas.id] = gas.overlay_limit
|
||||
var/obj/effect/gas_overlay/I = new()
|
||||
if(gas.tile_overlay)
|
||||
I.icon_state = gas.tile_overlay
|
||||
if(gas.tile_color)
|
||||
gas_data.tile_overlay_color[gas.id] = gas.tile_color
|
||||
I.color = gas.tile_color
|
||||
gas_data.tile_overlay[gas.id] = I
|
||||
gas_data.flags[gas.id] = gas.flags
|
||||
|
||||
return 1
|
||||
|
||||
/obj/effect/gas_overlay
|
||||
name = "gas"
|
||||
desc = "You shouldn't be clicking this."
|
||||
icon = 'icons/effects/tile_effects.dmi'
|
||||
icon_state = "generic"
|
||||
layer = LIGHTING_LAYER - 1
|
||||
appearance_flags = RESET_COLOR
|
||||
mouse_opacity = 0
|
||||
|
||||
/obj/effect/gas_overlay/Initialize()
|
||||
. = ..()
|
||||
animate(src, alpha = 175, time = 10, easing = SINE_EASING | EASE_OUT, loop = -1)
|
||||
animate(alpha = 255, time = 10, easing = SINE_EASING | EASE_IN, loop = -1)
|
||||
@@ -0,0 +1,6 @@
|
||||
author: Geeves
|
||||
|
||||
delete-after: True
|
||||
|
||||
changes:
|
||||
- rscadd: "Updated the look of some gasses hanging in the air."
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 4.8 KiB |
Reference in New Issue
Block a user