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:
NanakoAC
2017-02-14 21:50:45 +02:00
committed by skull132
parent 2b9aa21421
commit aba694af6c
10 changed files with 37 additions and 26 deletions
+1 -1
View File
@@ -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"
+2 -2
View File
@@ -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
+2 -1
View File
@@ -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.
+6 -5
View File
@@ -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)
+1 -1
View File
@@ -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
+8 -4
View File
@@ -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)