Merge pull request #6772 from VOREStation/aro-blufo

Various minor things
This commit is contained in:
Aronai Sieyes
2020-03-06 09:58:00 -05:00
committed by GitHub
25 changed files with 3005 additions and 2247 deletions
@@ -6,4 +6,12 @@
light_range = 3
light_power = 1
light_color = "#FFFFFF"
/obj/effect/map_effect/perma_light/brighter
name = "permanent light (bright)"
icon_state = "permalight"
light_range = 5
light_power = 3
light_color = "#FFFFFF"
@@ -16,6 +16,7 @@
var/abductor = 0 //Can be used on teleportation blocking turfs
var/list/beacons = list()
var/loc_network = null //Used if you want to create pre-made beacons on the maps
var/ready = 1
var/beacons_left = 3
var/failure_chance = 5 //Percent
@@ -24,8 +25,9 @@
var/list/warned_users = list()
var/list/logged_events = list()
/obj/item/device/perfect_tele/New()
..()
/obj/item/device/perfect_tele/Initialize()
. = ..()
flags |= NOBLUDGEON
if(cell_type)
power_source = new cell_type(src)
@@ -73,6 +75,12 @@
to_chat(user,"<span class='notice'>[src] does not have a power cell.</span>")
/obj/item/device/perfect_tele/attack_self(mob/user)
if(loc_network)
for(var/obj/item/device/perfect_tele_beacon/stationary/nb in premade_tele_beacons)
if(nb.tele_network == loc_network)
beacons[nb.tele_name] = nb
loc_network = null //Consumed
if(!(user.ckey in warned_users))
warned_users |= user.ckey
alert(user,"This device can be easily used to break ERP preferences due to the nature of teleporting \
@@ -380,6 +388,7 @@ GLOBAL_LIST_BOILERPLATE(premade_tele_beacons, /obj/item/device/perfect_tele_beac
/obj/item/device/perfect_tele/alien
name = "alien translocator"
desc = "This strange device allows one to teleport people and objects across large distances."
icon_state = "alientele"
cell_type = /obj/item/weapon/cell/device/weapon/recharge/alien
charge_cost = 400
@@ -388,13 +397,26 @@ GLOBAL_LIST_BOILERPLATE(premade_tele_beacons, /obj/item/device/perfect_tele_beac
longrange = 1
abductor = 1
/obj/item/device/perfect_tele/alien/bluefo
name = "hybrid translocator"
desc = "This strange device allows one to teleport people and objects across large distances. It has only a single preprogrammed destination, though."
icon_state = "alientele"
cell_type = /obj/item/weapon/cell/device/weapon/recharge/alien
charge_cost = 400
beacons_left = 0
failure_chance = 0
longrange = 1
abductor = 1
loc_network = "hybridshuttle"
/obj/item/device/perfect_tele/frontier
icon_state = "minitrans"
icon_state = "frontiertrans"
beacons_left = 1 //Just one
battery_lock = 1
unacidable = 1
failure_chance = 0 //Percent
var/loc_network = null
var/phase_power = 75
var/recharging = 0
@@ -429,12 +451,6 @@ GLOBAL_LIST_BOILERPLATE(premade_tele_beacons, /obj/item/device/perfect_tele_beac
loc_network = "centcom"
longrange = 1
/obj/item/device/perfect_tele/frontier/staff/New()
..()
for(var/obj/item/device/perfect_tele_beacon/stationary/nb in premade_tele_beacons)
if(nb.tele_network == loc_network)
beacons[nb.tele_name] = nb
/obj/item/device/perfect_tele/frontier/unknown
name = "modified translocator"
desc = "This crank-charged translocator has only one beacon, but it already has a destination preprogrammed into it."
@@ -442,12 +458,6 @@ GLOBAL_LIST_BOILERPLATE(premade_tele_beacons, /obj/item/device/perfect_tele_beac
longrange = 1
abductor = 1
/obj/item/device/perfect_tele/frontier/unknown/New()
..()
for(var/obj/item/device/perfect_tele_beacon/stationary/nb in premade_tele_beacons)
if(nb.tele_network == loc_network)
beacons[nb.tele_name] = nb
/obj/item/device/perfect_tele/frontier/unknown/one
loc_network = "unkone"
/obj/item/device/perfect_tele/frontier/unknown/two
@@ -0,0 +1,13 @@
/obj/structure/prop/alien/computer/hybrid
name = "hybrid console"
desc = "The console flashes what appear to be symbols you've never seen before, intermixed with human writing moving too fast to comprehend."
icon = 'icons/obj/abductor_vr.dmi'
icon_state = "console-c"
interaction_message = "<span class='warning'>The screen flashes an 'access denied' message at you. Perhaps for the best.</span>"
/obj/structure/prop/alien/pod/hybrid
name = "hybrid pod"
desc = "This seems to be a container for something."
icon = 'icons/obj/abductor_vr.dmi'
icon_state = "experiment"
interaction_message = "<span class='warning'>You don't see any mechanism to open this thing. Probably for the best.</span>"
@@ -42,7 +42,7 @@
/obj/structure/bed/update_icon()
// Prep icon.
icon_state = ""
overlays.Cut()
cut_overlays()
// Base icon.
var/cache_key = "[base_icon]-[material.name]"
if(isnull(stool_cache[cache_key]))
@@ -50,7 +50,7 @@
if(applies_material_colour) //VOREStation Add - Goes with added var
I.color = material.icon_colour
stool_cache[cache_key] = I
overlays |= stool_cache[cache_key]
add_overlay(stool_cache[cache_key])
// Padding overlay.
if(padding_material)
var/padding_cache_key = "[base_icon]-padding-[padding_material.name]"
@@ -58,7 +58,7 @@
var/image/I = image(icon, "[base_icon]_padding")
I.color = padding_material.icon_colour
stool_cache[padding_cache_key] = I
overlays |= stool_cache[padding_cache_key]
add_overlay(stool_cache[padding_cache_key])
// Strings.
desc = initial(desc)
if(padding_material)
@@ -47,13 +47,12 @@
var/cache_key = "[base_icon]-armrest-[padding_material ? padding_material.name : "no_material"]"
if(isnull(stool_cache[cache_key]))
var/image/I = image(icon, "[base_icon]_armrest")
I.layer = MOB_LAYER + 0.1
I.plane = MOB_PLANE
I.layer = ABOVE_MOB_LAYER
if(padding_material)
I.color = padding_material.icon_colour
stool_cache[cache_key] = I
overlays |= stool_cache[cache_key]
stool_cache[cache_key] = I
add_overlay(stool_cache[cache_key])
/obj/structure/bed/chair/proc/update_layer()
if(src.dir == NORTH)
@@ -11,7 +11,7 @@
var/image/I = image(icon, "[base_icon]_over")
I.layer = ABOVE_MOB_LAYER
I.plane = MOB_PLANE
overlays |= I
add_overlay(I)
/obj/structure/bed/chair/bar_stool
name = "bar stool"
@@ -37,14 +37,14 @@ var/global/list/stool_cache = list() //haha stool
/obj/item/weapon/stool/update_icon()
// Prep icon.
icon_state = ""
overlays.Cut()
cut_overlays()
// Base icon.
var/cache_key = "stool-[material.name]"
if(isnull(stool_cache[cache_key]))
var/image/I = image(icon, base_icon)
I.color = material.icon_colour
stool_cache[cache_key] = I
overlays |= stool_cache[cache_key]
add_overlay(stool_cache[cache_key])
// Padding overlay.
if(padding_material)
var/padding_cache_key = "stool-padding-[padding_material.name]"
@@ -52,7 +52,7 @@ var/global/list/stool_cache = list() //haha stool
var/image/I = image(icon, "[base_icon]_padding") //VOREStation Edit
I.color = padding_material.icon_colour
stool_cache[padding_cache_key] = I
overlays |= stool_cache[padding_cache_key]
add_overlay(stool_cache[padding_cache_key])
// Strings.
if(padding_material)
name = "[padding_material.display_name] [initial(name)]" //this is not perfect but it will do for now.
@@ -14,9 +14,9 @@
/obj/structure/bed/chair/wheelchair/set_dir()
..()
overlays = null
cut_overlays()
var/image/O = image(icon = 'icons/obj/furniture.dmi', icon_state = "w_overlay", layer = FLY_LAYER, dir = src.dir)
overlays += O
add_overlay(O)
if(has_buckled_mobs())
for(var/A in buckled_mobs)
var/mob/living/L = A