Merge branch 'master' into upstream-merge-31643

This commit is contained in:
LetterJay
2017-10-13 07:59:09 -04:00
committed by GitHub
37 changed files with 301 additions and 40 deletions
+4 -2
View File
@@ -1166,7 +1166,7 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits
if(!holder)
return
var/list/punishment_list = list(ADMIN_PUNISHMENT_LIGHTNING, ADMIN_PUNISHMENT_BRAINDAMAGE, ADMIN_PUNISHMENT_GIB, ADMIN_PUNISHMENT_BSA)
var/list/punishment_list = list(ADMIN_PUNISHMENT_LIGHTNING, ADMIN_PUNISHMENT_BRAINDAMAGE, ADMIN_PUNISHMENT_GIB, ADMIN_PUNISHMENT_BSA, ADMIN_PUNISHMENT_FIREBALL)
var/punishment = input("Choose a punishment", "DIVINE SMITING") as null|anything in punishment_list
@@ -1186,6 +1186,8 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits
target.gib(FALSE)
if(ADMIN_PUNISHMENT_BSA)
bluespace_artillery(target)
if(ADMIN_PUNISHMENT_FIREBALL)
new /obj/effect/temp_visual/target(get_turf(target))
var/msg = "[key_name_admin(usr)] punished [key_name_admin(target)] with [punishment]."
message_admins(msg)
@@ -1253,4 +1255,4 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits
to_chat(usr, "<span class='danger'>ERROR: Unable to update player flags. Please check logs.</span>")
else
message_admins("[key_name_admin(usr)] has [newstate ? "activated" : "deactivated"] job exp exempt status on [key_name_admin(C)]")
log_admin("[key_name(usr)] has [newstate ? "activated" : "deactivated"] job exp exempt status on [key_name(C)]")
log_admin("[key_name(usr)] has [newstate ? "activated" : "deactivated"] job exp exempt status on [key_name(C)]")
@@ -16,7 +16,7 @@ GLOBAL_LIST_INIT(hardcoded_gases, list(/datum/gas/oxygen, /datum/gas/nitrogen, /
.[gas_path] = gas_info
/proc/gas_id2path(id)
var/meta_gas = meta_gas_list()
var/list/meta_gas = GLOB.meta_gas_info
for(var/path in meta_gas)
if(meta_gas[path][META_GAS_ID] == id)
return path
@@ -54,7 +54,7 @@
initial_temperature = TCMB
/datum/gas_mixture/immutable/space/heat_capacity()
return 7000
return HEAT_CAPACITY_VACUUM
/datum/gas_mixture/immutable/space/remove()
return copy() //we're always empty, so we can just return a copy.
@@ -217,7 +217,9 @@
if(abs(temperature_delta) > 1)
var/air_heat_capacity = air1.heat_capacity()
var/heat = ((1 - cold_protection) * 0.1 + conduction_coefficient) * temperature_delta * (1 / air_heat_capacity + 1 / heat_capacity)
var/heat = ((1 - cold_protection) * 0.1 + conduction_coefficient) * temperature_delta * (air_heat_capacity * heat_capacity / (air_heat_capacity + heat_capacity))
air1.temperature = max(air1.temperature - heat / air_heat_capacity, TCMB)
mob_occupant.bodytemperature = max(mob_occupant.bodytemperature + heat / heat_capacity, TCMB)
@@ -273,7 +273,7 @@
return ..()
/obj/machinery/portable_atmospherics/canister/obj_break(damage_flag)
if((flags_1 & BROKEN) || (flags_1 & NODECONSTRUCT_1))
if((stat & BROKEN) || (flags_1 & NODECONSTRUCT_1))
return
canister_break()
+1
View File
@@ -663,6 +663,7 @@ GLOBAL_LIST(external_rsc_urls)
return FALSE
if ("key")
return FALSE
. = ..()
/client/proc/change_view(new_size)
+12 -5
View File
@@ -18,7 +18,7 @@
S.remove_from_storage(O, src) //This will move the item to this item's contents
to_chat(user, "<span class='notice'>You empty the ore in [S] into \the [src].</span>")
else if(istype(W, /obj/item/crowbar))
playsound(loc, W.usesound, 50, 1)
playsound(src, W.usesound, 50, 1)
var/obj/item/crowbar/C = W
if(do_after(user, 50*C.toolspeed, target = src))
user.visible_message("[user] pries \the [src] apart.", "<span class='notice'>You pry apart \the [src].</span>", "<span class='italics'>You hear splitting wood.</span>")
@@ -51,8 +51,16 @@
user << browse(dat, "window=orebox")
/obj/structure/ore_box/proc/dump_box_contents()
for(var/obj/item/ore/O in contents)
O.forceMove(loc)
var/drop = drop_location()
for(var/obj/item/ore/O in src)
if(QDELETED(O))
continue
if(QDELETED(src))
break
O.forceMove(drop)
if(TICK_CHECK)
stoplag()
drop = drop_location()
/obj/structure/ore_box/Topic(href, href_list)
if(..())
@@ -64,10 +72,9 @@
src.add_fingerprint(usr)
if(href_list["removeall"])
dump_box_contents()
to_chat(usr, "<span class='notice'>You empty the box.</span>")
to_chat(usr, "<span class='notice'>You open the release hatch on the box..</span>")
updateUsrDialog()
/obj/structure/ore_box/deconstruct(disassembled = TRUE, mob/user)
var/obj/item/stack/sheet/mineral/wood/WD = new (loc, 4)
if(user)
@@ -110,6 +110,8 @@
if(obscuredTurfs[t])
if(!t.obscured)
t.obscured = image('icons/effects/cameravis.dmi', t, null, LIGHTING_LAYER+1)
t.obscured.pixel_x = -t.pixel_x
t.obscured.pixel_y = -t.pixel_y
t.obscured.plane = LIGHTING_PLANE+1
obscured += t.obscured
for(var/eye in seenby)
@@ -165,6 +167,8 @@
var/turf/t = turf
if(!t.obscured)
t.obscured = image('icons/effects/cameravis.dmi', t, null, LIGHTING_LAYER+1)
t.obscured.pixel_x = -t.pixel_x
t.obscured.pixel_y = -t.pixel_y
t.obscured.plane = LIGHTING_PLANE+1
obscured += t.obscured
+6
View File
@@ -190,11 +190,17 @@
break_light_tube(1)
return ..()
/obj/machinery/light/built
icon_state = "tube-empty"
/obj/machinery/light/built/New()
status = LIGHT_EMPTY
update(0)
..()
/obj/machinery/light/small/built
icon_state = "bulb-empty"
/obj/machinery/light/small/built/New()
status = LIGHT_EMPTY
update(0)
@@ -106,6 +106,7 @@
if("power")
on = !on
if(on)
message_admins("[key_name_admin(usr)] activated a smoke machine that contains [english_list(reagents.reagent_list)] at [ADMIN_COORDJMP(src)].")
log_admin("[key_name(usr)] activated a smoke machine that contains [english_list(reagents.reagent_list)] at [COORD(src)].")
add_logs(usr, src, "has activated [src] which contains [english_list(reagents.reagent_list)].")
if("goScreen")
+1
View File
@@ -7,6 +7,7 @@
name = "conveyor belt"
desc = "A conveyor belt."
anchored = TRUE
layer = BELOW_OPEN_DOOR_LAYER
var/operating = FALSE // 1 if running forward, -1 if backwards, 0 if off
var/operable = 1 // true if can operate (no broken segments in this belt run)
var/forwards // this is the default (forward) direction, set by the map dir
+3 -2
View File
@@ -85,14 +85,15 @@ All ShuttleMove procs go here
if(rotation)
shuttleRotate(rotation) //see shuttle_rotate.dm
loc = newT
if(length(client_mobs_in_contents))
update_parallax_contents()
return TRUE
// Called on atoms after everything has been moved
/atom/movable/proc/afterShuttleMove(list/movement_force, shuttle_dir, shuttle_preferred_direction, move_dir)
if(light)
update_light()
update_parallax_contents()
return TRUE
/////////////////////////////////////////////////////////////////////////////////////