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

Conflicts:
	_maps/map_files/generic/z2.dmm
	code/_globalvars/lists/mapping.dm
This commit is contained in:
Steelpoint
2015-01-06 12:17:29 +08:00
263 changed files with 15857 additions and 15818 deletions
@@ -46,7 +46,7 @@
qdel(src)
return
processing_objects.Add(src)
SSobj.processing.Add(src)
..()
/obj/structure/closet/statue/process()
@@ -58,7 +58,7 @@
M.setOxyLoss(intialOxy)
if (timer <= 0)
dump_contents()
processing_objects.Remove(src)
SSobj.processing.Remove(src)
qdel(src)
/obj/structure/closet/statue/dump_contents()
@@ -461,7 +461,13 @@ obj/structure/door_assembly/New()
return
else if(istype(W, /obj/item/weapon/wrench) && !anchored )
if(!locate(/obj/machinery/door) in loc)
var/door_check = 1
for(var/obj/machinery/door/D in loc)
if(!D.sub_door)
door_check = 0
break
if(door_check)
playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1)
user.visible_message("<span class='warning'>[user] secures the airlock assembly to the floor.</span>", \
"You start to secure the airlock assembly to the floor.", \
+5 -1
View File
@@ -12,7 +12,7 @@
if(ishuman(user))
var/mob/living/carbon/human/H = user
var/choice = input(user, "Underwear or Undershirt?", "Changing") as null|anything in list("Underwear","Undershirt")
var/choice = input(user, "Underwear, Undershirt, or Socks?", "Changing") as null|anything in list("Underwear","Undershirt","Socks")
if(!Adjacent(user))
return
@@ -26,6 +26,10 @@
var/new_undershirt = input(user, "Select your undershirt", "Changing") as null|anything in undershirt_list
if(new_undershirt)
H.undershirt = new_undershirt
if("Socks")
var/new_socks = input(user, "Select your socks", "Changing") as null|anything in socks_list
if(new_socks)
H.socks= new_socks
add_fingerprint(H)
H.update_body()
+2
View File
@@ -196,6 +196,8 @@
health -= W.force * 0.1
else if(!shock(user, 70))
switch(W.damtype)
if(STAMINA)
return
if(BURN)
playsound(loc, 'sound/items/welder.ogg', 80, 1)
else
+2
View File
@@ -58,6 +58,8 @@
/obj/structure/mirror/attackby(obj/item/I as obj, mob/living/user as mob)
user.do_attack_animation(src)
if(I.damtype == STAMINA)
return
if(shattered)
playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 70, 1)
return
+74 -11
View File
@@ -7,25 +7,81 @@
icon = 'icons/obj/statue.dmi'
icon_state = ""
density = 1
anchored = 1
anchored = 0
var/hardness = 1
var/oreAmount = 7
var/mineralType = "metal"
var/last_event = 0
var/active = null
var/spam_flag = 0
/obj/structure/statue/Destroy()
density = 0
..()
/obj/structure/statue/attackby(obj/item/weapon/W, mob/user)
hardness -= W.force/100
user << "You hit the [name] with your [W.name]!"
CheckHardness()
/obj/structure/statue/attackby(obj/item/weapon/W, mob/living/user as mob)
add_fingerprint(user)
user.changeNext_move(CLICK_CD_MELEE)
if(istype(W, /obj/item/weapon/wrench))
if(anchored)
playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1)
user.visible_message("<span class='notice'>[user] is loosening the [name]'s bolts...</span>", \
"<span class='notice'>You are loosening the [name]'s bolts...</span>")
if(do_after(user,40))
if(!src) return
if(!anchored) return
user.visible_message("<span class='notice'>[user] loosened the [name]'s bolts!</span>", \
"<span class='notice'>You loosened the [name]'s bolts!</span>")
anchored = 0
else if(!anchored)
if (!istype(src.loc, /turf/simulated/floor))
user.visible_message("<span class='danger'>A floor must be present to secure the [name]!</span>")
return
playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1)
user.visible_message("<span class='notice'>[user] is securing the [name]'s bolts...</span>", \
"<span class='notice'>You are securing the [name]'s bolts...</span>")
if(do_after(user, 40))
if(!src) return
if(anchored) return
user.visible_message("<span class='notice'>[user] has secured the [name]'s bolts!</span>", \
"<span class='notice'>You have secured the [name]'s bolts!</span>")
anchored = 1
/obj/structure/statue/attack_hand(mob/user)
visible_message("<span class='notice'>[user] rubs some dust off from the [name]'s surface.</span>")
else if(istype(W, /obj/item/weapon/pickaxe/plasmacutter))
user.visible_message("<span class='notice'>[user] is slicing apart the [name]...</span>", \
"<span class='notice'>You are slicing apart the [name]...</span>")
if(do_after(user,30))
if(!src.loc) return
user.visible_message("<span class='notice'>[user] slices apart the [name]!</span>", \
"<span class='notice'>You slice apart the [name]!</span>")
Dismantle(1)
else if(istype(W, /obj/item/weapon/pickaxe/drill/diamonddrill))
user.visible_message("<span class='notice'>[user] begins to drill apart the [name]!</span>", \
"<span class='notice'>You begin to drill apart the [name]!</span>")
if(do_after(user,5))
if(!src.loc) return
user.visible_message("<span class='notice'>[user] destroys the [name]!</span>", \
"<span class='notice'>You destroy the [name]!</span>")
qdel(src)
else if(istype(W, /obj/item/weapon/weldingtool))
if(!anchored)
user.visible_message("<span class='notice'>[user] is slicing apart the [name]...</span>", \
"<span class='notice'>You are slicing apart the [name]...</span>")
if(do_after(user, 40))
if(!src.loc) return
user.visible_message("<span class='notice'>[user] slices apart the [name]!</span>", \
"<span class='notice'>You slice apart the [name]!</span>")
Dismantle(1)
else
hardness -= W.force/100
..()
CheckHardness()
/obj/structure/statue/attack_hand(mob/living/user as mob)
user.changeNext_move(CLICK_CD_MELEE)
add_fingerprint(user)
user.visible_message("<span class='notice'>[user] rubs some dust off from the [name]'s surface.</span>", \
"<span class='notice'>You rub some dust off from the [name]'s surface.</span>")
/obj/structure/statue/CanAtmosPass()
return !density
@@ -83,6 +139,8 @@
hardness = 3
luminosity = 2
mineralType = "uranium"
var/last_event = 0
var/active = null
/obj/structure/statue/uranium/nuke
name = "Statue of a Nuclear Fission Explosive"
@@ -100,6 +158,7 @@
/obj/structure/statue/uranium/Bumped(atom/user)
radiate()
..()
/obj/structure/statue/uranium/attack_hand(mob/user)
radiate()
@@ -107,6 +166,7 @@
/obj/structure/statue/uranium/attack_paw(mob/user)
radiate()
..()
/obj/structure/statue/uranium/proc/radiate()
if(!active)
@@ -238,6 +298,7 @@
hardness = 3
mineralType = "bananium"
desc = "A bananium statue with a small engraving:'HOOOOOOONK'."
var/spam_flag = 0
/obj/structure/statue/bananium/clown
name = "Statue of a clown"
@@ -245,6 +306,7 @@
/obj/structure/statue/bananium/Bumped(atom/user)
honk()
..()
/obj/structure/statue/bananium/attackby(obj/item/weapon/W, mob/user)
honk()
@@ -256,9 +318,10 @@
/obj/structure/statue/bananium/attack_paw(mob/user)
honk()
..()
/obj/structure/statue/bananium/proc/honk()
if(spam_flag == 0)
if(!spam_flag)
spam_flag = 1
playsound(src.loc, 'sound/items/bikehorn.ogg', 50, 1)
spawn(20)
@@ -55,6 +55,8 @@
if(M.environment_smash)
new /obj/item/stack/sheet/metal(src.loc)
qdel(src)
return
manual_unbuckle(M)
/obj/structure/stool/bed/MouseDrop_T(mob/M as mob, mob/user as mob)
if(!istype(M)) return
@@ -112,8 +114,8 @@
if ( !ismob(M) || (get_dist(src, user) > 1) || (M.loc != src.loc) || user.restrained() || user.lying || user.stat || M.buckled || istype(user, /mob/living/silicon/pai) || M.anchored)
return
if (istype(M, /mob/living/carbon/slime))
user << "The [M] is too squishy to buckle in."
if (istype(M, /mob/living/carbon/slime) || istype(M, /mob/living/simple_animal/slime))
user << "\The [M] is too squishy to buckle in."
return
unbuckle()
@@ -19,10 +19,10 @@
/obj/structure/transit_tube/station/New()
..()
processing_objects += src
SSobj.processing += src
/obj/structure/transit_tube/station/Destroy()
processing_objects -= src
SSobj.processing -= src
..()
// Stations which will send the tube in the opposite direction after their stop.
+8 -21
View File
@@ -14,7 +14,7 @@
var/state = 0
var/reinf = 0
var/disassembled = 0
var/shuttlew = 0
var/wtype = "glass"
var/fulltile = 0
var/obj/item/stack/rods/storedrods
var/obj/item/weapon/shard/storedshard
@@ -28,15 +28,8 @@
storedshard = new/obj/item/weapon/shard(src)
ini_dir = dir
if(reinf)
icon_state = "rwindow"
desc = "A reinforced window."
name = "reinforced window"
state = 2*anchored
if(opacity)
icon_state = "twindow"
storedrods = new/obj/item/stack/rods(src)
else
icon_state = "window"
air_update_turf(1)
update_nearby_icons()
@@ -408,17 +401,10 @@
if(anchored)
for(var/obj/structure/window/W in orange(src,1))
if(W.anchored && W.density && W.fulltile) //Only counts anchored, not-destroyed fill-tile windows.
if(abs(x-W.x)-abs(y-W.y) ) //doesn't count windows, placed diagonally to src
junction |= get_dir(src,W)
if(opacity)
icon_state = "twindow[junction]"
else
if(shuttlew)
icon_state = "swindow[junction]"
else if(reinf)
icon_state = "rwindow[junction]"
else
icon_state = "window[junction]"
if(src.wtype == W.wtype)
if(abs(x-W.x)-abs(y-W.y) ) //doesn't count windows, placed diagonally to src
junction |= get_dir(src,W)
icon_state = "[initial(icon_state)][junction]"
overlays.Cut()
var/ratio = health / maxhealth
@@ -466,9 +452,10 @@
/obj/structure/window/shuttle
name = "shuttle window"
desc = "A strong, air-locked pod window that is extremely difficult to destroy."
desc = "A reinforced, air-locked pod window."
icon_state = "swindow"
dir = 5
maxhealth = 100
shuttlew = 1
wtype = "shuttle"
fulltile = 1
reinf = 1