mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-23 04:51:32 +01:00
Lighting Balance Pass (#1724)
Tweaks diona values on all lights, and range/power on a couple Also adds a slightly dimmer sprite for tube light fixtures that they switch to during night mode. To reduce the incongruity from having a bright tube putting out very little light
This commit is contained in:
@@ -268,7 +268,7 @@ BLIND // can't see anything
|
||||
body_parts_covered = HEAD
|
||||
slot_flags = SLOT_HEAD
|
||||
w_class = 2.0
|
||||
//diona_restricted_light = 1//Light emitted by this object or creature has limited interaction with diona
|
||||
uv_intensity = 50 //Light emitted by this object or creature has limited interaction with diona
|
||||
species_restricted = list("exclude","Vaurca Breeder")
|
||||
|
||||
var/light_overlay = "helmet_light"
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
var/list/scanned = list()
|
||||
var/list/stored_alpha = list()
|
||||
var/list/reset_objects = list()
|
||||
|
||||
uv_intensity = 255
|
||||
var/range = 3
|
||||
var/on = 0
|
||||
var/step_alpha = 50
|
||||
@@ -19,7 +19,7 @@
|
||||
/obj/item/device/uv_light/attack_self(var/mob/user)
|
||||
on = !on
|
||||
if(on)
|
||||
set_light(range, 2, "#007fff", uv = 100)
|
||||
set_light(range, 2, "#7700dd")
|
||||
processing_objects |= src
|
||||
icon_state = "uv_on"
|
||||
else
|
||||
|
||||
@@ -4,7 +4,8 @@
|
||||
var/light_power = 1 // Intensity of the light.
|
||||
var/light_range = 0 // Range in tiles of the light.
|
||||
var/light_color // Hexadecimal RGB string representing the colour of the light.
|
||||
var/uv_intensity // How much UV light is being emitted by this object. Valid range: 0-255.
|
||||
var/uv_intensity = 255 // How much UV light is being emitted by this object. Valid range: 0-255.
|
||||
//Restriction is based on blacklisting, not whitelisting. Lights have max uv unless explicitly set lower
|
||||
|
||||
var/tmp/datum/light_source/light // Our light source. Don't fuck with this directly unless you have a good reason!
|
||||
var/tmp/list/light_sources // Any light sources that are "inside" of us, for example, if src here was a mob that's carrying a flashlight, that flashlight's light source would be part of this list.
|
||||
|
||||
@@ -415,21 +415,22 @@ var/list/diona_banned_languages = list(
|
||||
//GETTER FUNCTIONS
|
||||
|
||||
/mob/living/carbon/proc/get_lightlevel_diona(var/datum/dionastats/DS)
|
||||
var/light_factor = 1
|
||||
var/light_factor = 1.15
|
||||
var/turf/T = get_turf(src)
|
||||
if (is_ventcrawling)
|
||||
return -1.5 //no light inside pipes
|
||||
|
||||
|
||||
if (DS.light_organ)
|
||||
if (DS.light_organ.is_broken())
|
||||
light_factor = 0.55
|
||||
light_factor *= 0.55
|
||||
else if (DS.light_organ.is_bruised())
|
||||
light_factor = 0.8
|
||||
light_factor *= 0.8
|
||||
else if (DS.dionatype == 2)
|
||||
light_factor = 0.8
|
||||
light_factor = 1
|
||||
|
||||
if (T)
|
||||
var/raw = T.get_uv_lumcount(0, 2) * light_factor * 5.5
|
||||
var/raw = min(T.get_uv_lumcount(0, 2) * light_factor * 5.5, 5.5)
|
||||
return raw - 1.5
|
||||
|
||||
/mob/living/carbon/proc/diona_get_health(var/datum/dionastats/DS)
|
||||
|
||||
@@ -123,7 +123,6 @@
|
||||
usr << span("danger", "Our response node is damaged or missing, without it we can't tell light from darkness. We can only hope this area is bright enough to let us regenerate it!")
|
||||
return
|
||||
var/light = get_lightlevel_diona(DS)
|
||||
|
||||
if (light <= -0.75)
|
||||
usr << span("danger", "It is pitch black here! This is extremely dangerous, we must find light, or death will soon follow!")
|
||||
else if (light <= 0)
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
var/next_alarm_notice
|
||||
var/list/datum/alarm/queued_alarms = new()
|
||||
|
||||
|
||||
uv_intensity = 175 //Lights cast by robots have reduced effect on diona
|
||||
var/list/access_rights
|
||||
var/obj/item/weapon/card/id/idcard
|
||||
var/idcard_type = /obj/item/weapon/card/id/synthetic
|
||||
|
||||
@@ -149,7 +149,7 @@
|
||||
var/supports_nightmode = TRUE
|
||||
var/nightmode = FALSE
|
||||
var/brightness_color = LIGHT_COLOR_HALOGEN
|
||||
var/brightness_uv = 200
|
||||
uv_intensity = 255
|
||||
var/status = LIGHT_OK // LIGHT_OK, _EMPTY, _BURNED or _BROKEN
|
||||
var/flickering = 0
|
||||
var/light_type = /obj/item/weapon/light/tube // the type of light item
|
||||
@@ -231,7 +231,11 @@
|
||||
|
||||
switch(status) // set icon_states
|
||||
if(LIGHT_OK)
|
||||
icon_state = "[base_state][on]"
|
||||
if (supports_nightmode && nightmode)
|
||||
icon_state = "[base_state][on]_night"
|
||||
else
|
||||
icon_state = "[base_state][on]"
|
||||
|
||||
if(LIGHT_EMPTY)
|
||||
icon_state = "[base_state]-empty"
|
||||
on = 0
|
||||
@@ -266,9 +270,9 @@
|
||||
else
|
||||
use_power = 2
|
||||
if (supports_nightmode && nightmode)
|
||||
set_light(night_brightness_range, night_brightness_power, brightness_color, uv = brightness_uv)
|
||||
set_light(night_brightness_range, night_brightness_power, brightness_color)
|
||||
else
|
||||
set_light(brightness_range, brightness_power, brightness_color, uv = brightness_uv)
|
||||
set_light(brightness_range, brightness_power, brightness_color)
|
||||
else
|
||||
use_power = 1
|
||||
set_light(0)
|
||||
|
||||
Reference in New Issue
Block a user