Merge pull request #7696 from ursamedium/manualmirror

Mirror of tg's new gas sprites
This commit is contained in:
deathride58
2018-11-06 02:07:35 -05:00
committed by GitHub
10 changed files with 40 additions and 160 deletions
+12 -1
View File
@@ -62,7 +62,9 @@
//GASES
#define MIN_TOXIC_GAS_DAMAGE 1
#define MAX_TOXIC_GAS_DAMAGE 10
#define MOLES_GAS_VISIBLE 0.5 //Moles in a standard cell after which gases are visible
#define MOLES_GAS_VISIBLE 0.25 //Moles in a standard cell after which gases are visible
#define FACTOR_GAS_VISIBLE_MAX 20 //moles_visible * FACTOR_GAS_VISIBLE_MAX = Moles after which gas is at maximum visibility
#define MOLES_GAS_VISIBLE_STEP 0.25 //Mole step for alpha updates. This means alpha can update at 0.25, 0.5, 0.75 and so on
//REACTIONS
//return values for reactions (bitflags)
@@ -246,6 +248,15 @@
#define ASSERT_GAS(gas_id, gas_mixture) if (!gas_mixture.gases[gas_id]) { ADD_GAS(gas_id, gas_mixture.gases) };
//prefer this to gas_mixture/total_moles in performance critical areas
#define TOTAL_MOLES(cached_gases, out_var)\
out_var = 0;\
for(var/total_moles_id in cached_gases){\
out_var += cached_gases[total_moles_id][MOLES];\
}
GLOBAL_LIST_INIT(pipe_paint_colors, list(
"amethyst" = rgb(130,43,255), //supplymain
"blue" = rgb(0,0,255),
@@ -200,20 +200,20 @@
/obj/effect/decal/cleanable/glitter
name = "generic glitter pile"
desc = "The herpes of arts and crafts."
icon = 'icons/effects/tile_effects.dmi'
icon = 'icons/effects/atmospherics.dmi'
gender = NEUTER
/obj/effect/decal/cleanable/glitter/pink
name = "pink glitter"
icon_state = "plasma"
icon_state = "plasma_old"
/obj/effect/decal/cleanable/glitter/white
name = "white glitter"
icon_state = "nitrous_oxide"
icon_state = "nitrous_oxide_old"
/obj/effect/decal/cleanable/glitter/blue
name = "blue glitter"
icon_state = "freon"
icon_state = "freon_old"
/obj/effect/decal/cleanable/plasma
name = "stabilized plasma"
@@ -139,7 +139,7 @@
add_overlay(lightning_overlay)
if(temperature > 4500000) //This is where noblium happens. Some fusion-y effects.
var/fusion_amt = temperature < LERP(4500000,12000000,0.5) ? gauss_lerp(temperature, 4500000, 12000000) : 1
var/mutable_appearance/fusion_overlay = mutable_appearance('icons/effects/tile_effects.dmi', "chem_gas")
var/mutable_appearance/fusion_overlay = mutable_appearance('icons/effects/atmospherics.dmi', "fusion_gas")
fusion_overlay.blend_mode = BLEND_ADD
fusion_overlay.alpha = fusion_amt * 255
var/mutable_appearance/rainbow_overlay = mutable_appearance('icons/mob/screen_gen.dmi', "druggy")
@@ -113,17 +113,18 @@
/turf/open/proc/tile_graphic()
var/static/list/nonoverlaying_gases = typecache_of_gases_with_no_overlays()
if(air)
. = new /list
var/list/gases = air.gases
for(var/id in gases)
if (nonoverlaying_gases[id])
continue
var/gas = gases[id]
var/gas_meta = gas[GAS_META]
var/gas_overlay = gas_meta[META_GAS_OVERLAY]
if(gas_overlay && gas[MOLES] > gas_meta[META_GAS_MOLES_VISIBLE])
. += gas_overlay
if(!air)
return
. = new /list
var/list/gases = air.gases
for(var/id in gases)
if (nonoverlaying_gases[id])
continue
var/gas = gases[id]
var/gas_meta = gas[GAS_META]
var/gas_overlay = gas_meta[META_GAS_OVERLAY]
if(gas_overlay && gas[MOLES] > gas_meta[META_GAS_MOLES_VISIBLE])
. += gas_overlay[min(FACTOR_GAS_VISIBLE_MAX, CEILING(gas[MOLES] / MOLES_GAS_VISIBLE_STEP, 1))]
/proc/typecache_of_gases_with_no_overlays()
. = list()
@@ -86,13 +86,6 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache())
if(!.)
. += HEAT_CAPACITY_VACUUM //we want vacuums in turfs to have the same heat capacity as space
//prefer this in performance critical areas
#define TOTAL_MOLES(cached_gases, out_var)\
out_var = 0;\
for(var/total_moles_id in cached_gases){\
out_var += cached_gases[total_moles_id][MOLES];\
}
/datum/gas_mixture/proc/total_moles()
var/cached_gases = gases
TOTAL_MOLES(cached_gases, .)
@@ -11,7 +11,9 @@ GLOBAL_LIST_INIT(nonreactive_gases, typecacheof(list(/datum/gas/oxygen, /datum/g
gas_info[META_GAS_NAME] = initial(gas.name)
gas_info[META_GAS_MOLES_VISIBLE] = initial(gas.moles_visible)
if(initial(gas.moles_visible) != null)
gas_info[META_GAS_OVERLAY] = new /obj/effect/overlay/gas(initial(gas.gas_overlay))
gas_info[META_GAS_OVERLAY] = new /list(FACTOR_GAS_VISIBLE_MAX)
for(var/i in 1 to FACTOR_GAS_VISIBLE_MAX)
gas_info[META_GAS_OVERLAY][i] = new /obj/effect/overlay/gas(initial(gas.gas_overlay), i * 255 / FACTOR_GAS_VISIBLE_MAX)
gas_info[META_GAS_FUSION_POWER] = initial(gas.fusion_power)
gas_info[META_GAS_DANGER] = initial(gas.dangerous)
gas_info[META_GAS_ID] = initial(gas.id)
@@ -39,7 +41,7 @@ GLOBAL_LIST_INIT(nonreactive_gases, typecacheof(list(/datum/gas/oxygen, /datum/g
var/id = ""
var/specific_heat = 0
var/name = ""
var/gas_overlay = "" //icon_state in icons/effects/tile_effects.dmi
var/gas_overlay = "" //icon_state in icons/effects/atmospherics.dmi
var/moles_visible = null
var/dangerous = FALSE //currently used by canisters
var/fusion_power = 0 //How much the gas accelerates a fusion reaction
@@ -89,7 +91,7 @@ GLOBAL_LIST_INIT(nonreactive_gases, typecacheof(list(/datum/gas/oxygen, /datum/g
specific_heat = 40
name = "Nitrous Oxide"
gas_overlay = "nitrous_oxide"
moles_visible = 1
moles_visible = MOLES_GAS_VISIBLE * 2
dangerous = TRUE
/datum/gas/nitryl
@@ -137,12 +139,13 @@ GLOBAL_LIST_INIT(nonreactive_gases, typecacheof(list(/datum/gas/oxygen, /datum/g
moles_visible = MOLES_GAS_VISIBLE * 60
/obj/effect/overlay/gas
icon = 'icons/effects/tile_effects.dmi'
icon = 'icons/effects/atmospherics.dmi'
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
anchored = TRUE // should only appear in vis_contents, but to be safe
layer = FLY_LAYER
appearance_flags = TILE_BOUND
/obj/effect/overlay/gas/New(state)
/obj/effect/overlay/gas/New(state, alph)
. = ..()
icon_state = state
alpha = alph
+1 -1
View File
@@ -150,7 +150,7 @@ GLOBAL_LIST_INIT(hallucination_list, list(
var/turf/center
var/list/flood_images = list()
var/list/turf/flood_turfs = list()
var/image_icon = 'icons/effects/tile_effects.dmi'
var/image_icon = 'icons/effects/atmospherics.dmi'
var/image_state = "plasma"
var/radius = 0
var/next_expand = 0
+2 -130
View File
@@ -7,133 +7,5 @@
# NOTE: if the rank-name cannot be found in admin_ranks.txt, they will not be adminned! ~Carn #
# NOTE: syntax was changed to allow hyphenation of ranknames, since spaces are stripped. #
###############################################################################################
<<<<<<< HEAD
=======
Optimumtact = Host
NewSta = Game Master
Expletives = Game Master
kingofkosmos = Game Master
MrStonedOne = Lazy Master
microscopics = Game Master
Gun Hog = Game Master
KorPhaeron = Game Master
razharas = Game Master
Lordpidey = Game Master
Niknakflak = Game Master
rolan7 = Game Master
quarxink = Game Master
adrix89 = Game Master
tle = Game Master
xsi = Game Master
scaredofshadows = Game Master
neofite = Game Master
trubblebass = Game Master
mport2004 = Game Master
deuryn = Game Master
agouri = Game Master
errorage = Game Master
superxpdude = Game Master
petethegoat = Game Master
nodrak = Game Master
carnwennan = Game Master
ikarrus = Game Master
cheridan = Game Master
giacomand = Game Master
rockdtben = Game Master
sieve = Game Master
aranclanos = Game Master
intigracy = Game Master
dumpdavidson = Game Master
kazeespada = Game Master
malkevin = Game Master
incoming = Game Master
demas = Game Master
fleure = Game Master
ricotez = Game Master
misterperson = Game Master
crimsonvision = Game Master
iamgoofball = Game Master
zelacks = Game Master
androidsfv = Game Master
miggles = Game Master
jordie0608 = Game Master
s0ldi3rkr4s0 = Game Master
ergovisavi = Game Master
vistapowa = Game Master
miauw62 = Game Master
rumia29 = Game Master
bobylein = Game Master
sirbayer = Game Master
hornygranny = Game Master
yota = Game Master
firecage = Game Master
donkieyo = Game Master
argoneus = Game Master
paprka = Game Master
cookingboy3 = Game Master
limeliz = Game Master
steelpoint = Game Master
phil235 = Game Master
CorruptComputer = Game Master
xxnoob = Game Master
tkdrg = Game Master
Cuboos = Game Master
thunder12345 = Game Master
wjohnston = Game Master
mandurrh = Game Master
thurgatar = Game Master
xerux = Game Master
dannno = Game Master
lo6a4evskiy = Game Master
vekter = Game Master
Ahammer18 = Game Master
ACCount12 = Game Master
fayrik = Game Master
shadowlight213 = Game Master
drovidicorv = Game Master
Dunc = Game Master
MMMiracles = Game Master
bear1ake = Game Master
CoreOverload = Game Master
Jalleo = Game Master
ChangelingRain = Game Master
FoxPMcCloud = Game Master
Xhuis = Game Master
Astralenigma = Game Master
Tokiko1 = Game Master
SuperSayu = Game Master
Lzimann = Game Master
As334 = Game Master
neersighted = Game Master
Swankcookie = Game Master
Ressler = Game Master
Folix = Game Master
Bawhoppennn = Game Master
Anturke = Host
Lumipharon = Game Master
bgobandit = Game Master
coiax = Game Master
RandomMarine = Game Master
PKPenguin321 = Game Master
TechnoAlchemist = Game Master
Aloraydrel = Game Master
Quiltyquilty = Game Master
SnipeDragon = Game Master
Fjeld = Game Master
kevinz000 = Game Master
Tacolizard = Game Master
TrustyGun = Game Master
Cyberboss = Game Master
PJB3005 = Game Master
Sweaterkittens = Game Master
Feemjmeem = Game Master
JStheguy = Game Master
excessiveuseofcobby = Game Master
Plizzard = Game Master
octareenroon91 = Game Master
Serpentarium = Game Master
Averagejoe82 = Game Master
The Dreamweaver = Game Master
88Naoki = Game Master
Naksuasdf = Game Master
>>>>>>> 3653239... Merge pull request #37785 from 81Denton/circboard_spawners
yourckeygoeshere = Host
Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB