Merge branch 'master' of https://github.com/tgstation/-tg-station into Color_washing

# Conflicts:
#	code/game/gamemodes/clock_cult/clock_scripture.dm
#	code/game/gamemodes/clock_cult/clock_structures.dm
This commit is contained in:
phil235
2016-10-31 19:59:00 +01:00
401 changed files with 126330 additions and 12378 deletions
@@ -50,7 +50,7 @@
new /obj/item/clothing/glasses/sunglasses(src)
new /obj/item/weapon/restraints/handcuffs/cable/zipties(src)
new /obj/item/weapon/gun/energy/gun(src)
new /obj/item/clothing/tie/petcollar(src)
new /obj/item/clothing/neck/petcollar(src)
new /obj/item/weapon/door_remote/civillian(src)
/obj/structure/closet/secure_closet/hos
@@ -7,6 +7,7 @@
obj_integrity = 500
max_integrity = 500
armor = list(melee = 30, bullet = 50, laser = 50, energy = 100, bomb = 0, bio = 0, rad = 0, fire = 80, acid = 80)
var/tamperproof = 0
/obj/structure/closet/crate/secure/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir)
if(damage_flag == "melee" && damage_amount < 25)
@@ -22,6 +23,20 @@
else
add_overlay("securecrateg")
/obj/structure/closet/crate/secure/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1)
if(prob(tamperproof))
boom()
..()
/obj/structure/closet/crate/secure/proc/boom(mob/user)
if(user)
user << "<span class='danger'>The crate's anti-tamper system activates!</span>"
for(var/atom/movable/AM in src)
qdel(AM)
explosion(get_turf(src), 0, 1, 5, 5)
qdel(src)
/obj/structure/closet/crate/secure/weapon
desc = "A secure weapons crate."
name = "weapons crate"
+4 -4
View File
@@ -185,7 +185,7 @@
//prevents remote "kicks" with TK
if (!Adjacent(user))
return
user.visible_message("<span class='danger'>[user] kicks the display case.</span>", null, null, 2, user)
user.visible_message("<span class='danger'>[user] kicks the display case.</span>", null, null, COMBAT_MESSAGE_RANGE)
user.do_attack_animation(src, ATTACK_EFFECT_KICK)
take_damage(2)
@@ -243,11 +243,11 @@
/obj/structure/displaycase/captain
alert = 1
start_showpiece_type = /obj/item/weapon/gun/energy/laser/captain
req_access = list(access_cent_specops)
req_access = list(access_cent_specops)
/obj/structure/displaycase/labcage
name = "lab cage"
desc = "A glass lab container for storing interesting creatures."
start_showpiece_type = /obj/item/clothing/mask/facehugger/lamarr
req_access = list(access_rd)
@@ -55,7 +55,6 @@
return
contents += I
stored_extinguisher = I
update_icon()
user << "<span class='notice'>You place [I] in [src].</span>"
update_icon()
else
@@ -139,6 +139,9 @@
/obj/structure/falsewall/storage_contents_dump_act(obj/item/weapon/storage/src_object, mob/user)
return 0
/obj/structure/falsewall/examine_status() //So you can't detect falsewalls by examine.
return null
/*
* False R-Walls
*/
@@ -315,6 +318,7 @@
desc = "A huge chunk of warm metal. The clanging of machinery emanates from within."
icon = 'icons/turf/walls/clockwork_wall.dmi'
icon_state = "clockwork_wall"
resistance_flags = FIRE_PROOF | ACID_PROOF
mineral_amount = 1
girder_type = /obj/structure/destructible/clockwork/wall_gear/displaced
walltype = /turf/closed/wall/clockwork
+1 -1
View File
@@ -58,7 +58,7 @@
if(!user.drop_item())
return
fireaxe = F
F.forceMove(loc)
F.forceMove(src)
user << "<span class='caution'>You place the [F.name] back in the [name].</span>"
update_icon()
return
+2 -2
View File
@@ -43,14 +43,14 @@
/obj/structure/grille/attack_hand(mob/living/user)
user.changeNext_move(CLICK_CD_MELEE)
user.do_attack_animation(src, ATTACK_EFFECT_KICK)
user.visible_message("<span class='warning'>[user] hits [src].</span>", null, null, 2, user)
user.visible_message("<span class='warning'>[user] hits [src].</span>", null, null, COMBAT_MESSAGE_RANGE)
if(!shock(user, 70))
take_damage(rand(5,10), BRUTE, "melee", 1)
/obj/structure/grille/attack_alien(mob/living/user)
user.do_attack_animation(src)
user.changeNext_move(CLICK_CD_MELEE)
user.visible_message("<span class='warning'>[user] mangles [src].</span>", null, null, 2, user)
user.visible_message("<span class='warning'>[user] mangles [src].</span>", null, null, COMBAT_MESSAGE_RANGE)
if(!shock(user, 70))
take_damage(20, BRUTE, "melee", 1)
+3 -2
View File
@@ -12,6 +12,7 @@ FLOOR SAFES
icon_state = "safe"
anchored = 1
density = 1
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
var/open = 0 //is the safe open?
var/tumbler_1_pos //the tumbler position- from 0 to 72
var/tumbler_1_open //the tumbler position to open at- 0 to 72
@@ -91,7 +92,7 @@ FLOOR SAFES
var/mob/living/carbon/human/user = usr
var/canhear = 0
if(user.is_holding_item_of_type(/obj/item/clothing/tie/stethoscope))
if(user.is_holding_item_of_type(/obj/item/clothing/neck/stethoscope))
canhear = 1
if(href_list["open"])
@@ -158,7 +159,7 @@ FLOOR SAFES
else
user << "<span class='notice'>[I] won't fit in [src].</span>"
return
else if(istype(I, /obj/item/clothing/tie/stethoscope))
else if(istype(I, /obj/item/clothing/neck/stethoscope))
user << "<span class='warning'>Hold [I] in one of your hands while you manipulate the dial!</span>"
else
return ..()
@@ -129,9 +129,18 @@
name = "brass table frame"
desc = "Four pieces of brass arranged in a square. It's slightly warm to the touch."
icon_state = "brass_frame"
resistance_flags = FIRE_PROOF | ACID_PROOF
framestack = /obj/item/stack/sheet/brass
framestackamount = 1
/obj/structure/table_frame/brass/New()
change_construction_value(1)
..()
/obj/structure/table_frame/brass/Destroy()
change_construction_value(-1)
return ..()
/obj/structure/table_frame/brass/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/stack/sheet/brass))
var/obj/item/stack/sheet/brass/W = I
+11 -1
View File
@@ -322,6 +322,7 @@
desc = "A solid, slightly beveled brass table."
icon = 'icons/obj/smooth_structures/brass_table.dmi'
icon_state = "brass_table"
resistance_flags = FIRE_PROOF | ACID_PROOF
frame = /obj/structure/table_frame/brass
framestack = /obj/item/stack/sheet/brass
buildstack = /obj/item/stack/sheet/brass
@@ -329,6 +330,15 @@
buildstackamount = 1
canSmoothWith = list(/obj/structure/table/reinforced/brass)
/obj/structure/table/reinforced/brass/New()
change_construction_value(2)
..()
/obj/structure/table/reinforced/brass/Destroy()
change_construction_value(-2)
return ..()
/obj/structure/table/reinforced/brass/narsie_act()
take_damage(rand(15, 45), BRUTE)
if(src) //do we still exist?
@@ -439,7 +449,7 @@
/obj/structure/rack/attack_hand(mob/living/user)
user.changeNext_move(CLICK_CD_MELEE)
user.do_attack_animation(src, ATTACK_EFFECT_KICK)
user.visible_message("<span class='danger'>[user] kicks [src].</span>", null, null, 2, user)
user.visible_message("<span class='danger'>[user] kicks [src].</span>", null, null, COMBAT_MESSAGE_RANGE)
take_damage(rand(4,8), BRUTE, "melee", 1)
+30 -42
View File
@@ -14,8 +14,8 @@
var/reinf = 0
var/wtype = "glass"
var/fulltile = 0
// var/silicate = 0 // number of units of silicate
// var/icon/silicateIcon = null // the silicated icon
var/glass_type = /obj/item/stack/sheet/glass
var/glass_amount = 1
var/image/crack_overlay
var/list/debris = list()
can_be_unanchored = 1
@@ -42,6 +42,7 @@
var/shards = 1
if(fulltile)
shards++
setDir()
var/rods = 0
if(reinf)
rods++
@@ -73,11 +74,13 @@
/obj/structure/window/setDir(direct)
if(!fulltile)
..()
else
..(FULLTILE_WINDOW_DIR)
/obj/structure/window/CanPass(atom/movable/mover, turf/target, height=0)
if(istype(mover) && mover.checkpass(PASSGLASS))
return 1
if(dir == SOUTHWEST || dir == SOUTHEAST || dir == NORTHWEST || dir == NORTHEAST)
if(dir == FULLTILE_WINDOW_DIR)
return 0 //full tile window, you can't move into it!
if(get_dir(loc, target) == dir)
return !density
@@ -182,19 +185,8 @@
if(qdeleted(src))
return
if(reinf)
var/obj/item/stack/sheet/rglass/RG = new (user.loc)
RG.add_fingerprint(user)
if(fulltile) //fulltiles drop two panes
RG = new (user.loc)
RG.add_fingerprint(user)
else
var/obj/item/stack/sheet/glass/G = new (user.loc)
G.add_fingerprint(user)
if(fulltile)
G = new (user.loc)
G.add_fingerprint(user)
var/obj/item/stack/sheet/G = new glass_type(user.loc, glass_amount)
G.add_fingerprint(user)
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
user << "<span class='notice'>You successfully disassemble [src].</span>"
@@ -261,7 +253,6 @@
return 0
setDir(turn(dir, 90))
// updateSilicate()
air_update_turf(1)
ini_dir = dir
add_fingerprint(usr)
@@ -281,7 +272,6 @@
return 0
setDir(turn(dir, 270))
// updateSilicate()
air_update_turf(1)
ini_dir = dir
add_fingerprint(usr)
@@ -297,21 +287,6 @@
else
revrotate()
/*
/obj/structure/window/proc/updateSilicate() what do you call a syndicate silicon?
if(silicateIcon && silicate)
icon = initial(icon)
var/icon/I = icon(icon,icon_state,dir)
var/r = (silicate / 100) + 1
var/g = (silicate / 70) + 1
var/b = (silicate / 50) + 1
I.SetIntensity(r,g,b)
icon = I
silicateIcon = I
*/
/obj/structure/window/Destroy()
density = 0
air_update_turf(1)
@@ -328,7 +303,7 @@
/obj/structure/window/CanAtmosPass(turf/T)
if(get_dir(loc, T) == dir)
return !density
if(dir == SOUTHWEST || dir == SOUTHEAST || dir == NORTHWEST || dir == NORTHEAST)
if(dir == FULLTILE_WINDOW_DIR)
return !density
return 1
@@ -367,7 +342,7 @@
/obj/structure/window/CanAStarPass(ID, to_dir)
if(!density)
return 1
if((dir == SOUTHWEST) || (dir == to_dir))
if((dir == FULLTILE_WINDOW_DIR) || (dir == to_dir))
return 0
return 1
@@ -379,6 +354,7 @@
armor = list(melee = 50, bullet = 0, laser = 0, energy = 0, bomb = 25, bio = 100, rad = 100, fire = 80, acid = 100)
max_integrity = 50
explosion_block = 1
glass_type = /obj/item/stack/sheet/rglass
/obj/structure/window/reinforced/tinted
name = "tinted window"
@@ -395,30 +371,33 @@
/obj/structure/window/fulltile
icon = 'icons/obj/smooth_structures/window.dmi'
icon_state = "window"
dir = NORTHEAST
dir = FULLTILE_WINDOW_DIR
max_integrity = 50
fulltile = 1
smooth = SMOOTH_TRUE
canSmoothWith = list(/obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile, /obj/structure/window/reinforced/tinted/fulltile)
glass_amount = 2
/obj/structure/window/reinforced/fulltile
icon = 'icons/obj/smooth_structures/reinforced_window.dmi'
icon_state = "r_window"
dir = NORTHEAST
dir = FULLTILE_WINDOW_DIR
max_integrity = 100
fulltile = 1
smooth = SMOOTH_TRUE
canSmoothWith = list(/obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile, /obj/structure/window/reinforced/tinted/fulltile)
level = 3
glass_amount = 2
/obj/structure/window/reinforced/tinted/fulltile
icon = 'icons/obj/smooth_structures/tinted_window.dmi'
icon_state = "tinted_window"
dir = NORTHEAST
dir = FULLTILE_WINDOW_DIR
fulltile = 1
smooth = SMOOTH_TRUE
canSmoothWith = list(/obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile, /obj/structure/window/reinforced/tinted/fulltile/)
level = 3
glass_amount = 2
/obj/structure/window/reinforced/fulltile/ice
icon = 'icons/obj/smooth_structures/rice_window.dmi'
@@ -426,13 +405,14 @@
max_integrity = 150
canSmoothWith = list(/obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile, /obj/structure/window/reinforced/tinted/fulltile, /obj/structure/window/reinforced/fulltile/ice)
level = 3
glass_amount = 2
/obj/structure/window/shuttle
name = "shuttle window"
desc = "A reinforced, air-locked pod window."
icon = 'icons/obj/smooth_structures/shuttle_window.dmi'
icon_state = "shuttle_window"
dir = NORTHEAST
dir = FULLTILE_WINDOW_DIR
max_integrity = 100
wtype = "shuttle"
fulltile = 1
@@ -442,6 +422,8 @@
canSmoothWith = null
explosion_block = 1
level = 3
glass_type = /obj/item/stack/sheet/rglass
glass_amount = 2
/obj/structure/window/shuttle/narsie_act()
add_atom_colour("#3C3434", FIXED_COLOUR_PRIORITY)
@@ -454,8 +436,12 @@
desc = "A paper-thin pane of translucent yet reinforced brass."
icon = 'icons/obj/smooth_structures/clockwork_window.dmi'
icon_state = "clockwork_window_single"
resistance_flags = FIRE_PROOF | ACID_PROOF
max_integrity = 100
armor = list(melee = 60, bullet = 25, laser = 0, energy = 0, bomb = 25, bio = 100, rad = 100, fire = 80, acid = 100)
explosion_block = 2 //fancy AND hard to destroy. the most useful combination.
glass_type = /obj/item/stack/sheet/brass
glass_amount = 1
var/made_glow = FALSE
/obj/structure/window/reinforced/clockwork/New(loc, direct)
@@ -474,7 +460,7 @@
PoolOrNew(/obj/effect/overlay/temp/ratvar/window, get_turf(src))
made_glow = TRUE
debris += new/obj/item/stack/sheet/brass(src, 2)
change_construction_value(fulltile ? 3 : 2)
change_construction_value(fulltile ? 2 : 1)
/obj/structure/window/reinforced/clockwork/setDir(direct)
if(!made_glow)
@@ -484,7 +470,7 @@
..()
/obj/structure/window/reinforced/clockwork/Destroy()
change_construction_value(fulltile ? -3 : -2)
change_construction_value(fulltile ? -2 : -1)
return ..()
/obj/structure/window/reinforced/clockwork/ratvar_act()
@@ -505,5 +491,7 @@
smooth = SMOOTH_TRUE
canSmoothWith = null
fulltile = 1
dir = NORTHEAST
dir = FULLTILE_WINDOW_DIR
max_integrity = 150
glass_amount = 2
made_glow = TRUE