Merge remote-tracking branch 'remotes/git-svn' into bs12_with_tgport

Conflicts:
	baystation12.dme
	code/datums/organs/organ_internal.dm
	code/datums/vote.dm
	code/defines/atom.dm
	code/defines/procs/gamehelpers.dm
	code/defines/turf.dm
	code/game/algorithm.dm
	code/game/cellautomata.dm
	code/game/gamemodes/cult/runes.dm
	code/game/gamemodes/events.dm
	code/game/gamemodes/events/ninja_equipment.dm
	code/game/gamemodes/events/space_ninja.dm
	code/game/gamemodes/wizard/rightandwrong.dm
	code/game/jobs/job/captain.dm
	code/game/machinery/computer/ai_core.dm
	code/game/machinery/computer/law.dm
	code/game/machinery/computer/pod.dm
	code/game/machinery/computer/syndicate_shuttle.dm
	code/game/machinery/doors/firedoor.dm
	code/game/machinery/teleporter.dm
	code/game/machinery/wishgranter.dm
	code/game/objects/items/devices/uplinks.dm
	code/game/objects/items/weapons/cigs_lighters.dm
	code/game/objects/structures/electricchair.dm
	code/game/turfs/turf.dm
	code/game/vote.dm
	code/hub.dm
	code/modules/admin/admin_verbs.dm
	code/modules/awaymissions/zlevel.dm
	code/modules/client/client defines.dm
	code/modules/food/food.dm
	code/modules/food/meat.dm
	code/modules/food/recipes_microwave.dm
	code/modules/mob/living/carbon/carbon_defines.dm
	code/modules/mob/living/carbon/human/hud.dm
	code/modules/mob/living/carbon/human/update_icons.dm
	code/modules/mob/living/login.dm
	code/modules/mob/living/simple_animal/life.dm
	code/modules/mob/mob_defines.dm
	code/modules/mob/new_player/login.dm
	code/modules/paperwork/filingcabinet.dm
	code/modules/paperwork/folders.dm
	code/modules/paperwork/photocopier.dm
	code/setup.dm
	icons/effects/genetics.dmi
	interface/interface.dm
	interface/skin.dmf
	maps/RandomZLevels/fileList.txt

various misc mergefixes and todos

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
This commit is contained in:
Cael_Aislinn
2012-09-22 21:29:04 +10:00
251 changed files with 16290 additions and 13118 deletions
@@ -224,7 +224,7 @@
return
/obj/structure/closet/relaymove(mob/user as mob)
if(user.stat)
if(user.stat || !isturf(src.loc))
return
if(!src.open())
@@ -99,11 +99,9 @@
togglelock(user)
/obj/structure/closet/secure_closet/relaymove(mob/user as mob)
if(user.stat)
if(user.stat || !isturf(src.loc))
return
if(user.stat)
return
if(!(src.locked))
for(var/obj/item/I in src)
I.loc = src.loc
@@ -30,11 +30,11 @@
/obj/structure/closet/syndicate/nuclear/New()
..()
sleep(2)
new /obj/item/ammo_magazine/a50(src)
new /obj/item/ammo_magazine/a50(src)
new /obj/item/ammo_magazine/a50(src)
new /obj/item/ammo_magazine/a50(src)
new /obj/item/ammo_magazine/a50(src)
new /obj/item/ammo_magazine/a12mm(src)
new /obj/item/ammo_magazine/a12mm(src)
new /obj/item/ammo_magazine/a12mm(src)
new /obj/item/ammo_magazine/a12mm(src)
new /obj/item/ammo_magazine/a12mm(src)
new /obj/item/weapon/storage/handcuff_kit(src)
new /obj/item/weapon/storage/flashbang_kit(src)
new /obj/item/weapon/gun/energy/gun(src)
+13 -13
View File
@@ -7,18 +7,18 @@
var/last_time = 1.0
/obj/structure/stool/bed/chair/e_chair/New()
..()
overlays += image('icons/obj/objects.dmi', src, "echair_over", MOB_LAYER + 1, dir)
return
/obj/structure/stool/bed/chair/e_chair/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(istype(W, /obj/item/weapon/wrench))
var/obj/structure/stool/bed/chair/C = new /obj/structure/stool/bed/chair(src.loc)
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
C.dir = src.dir
src.part.loc = src.loc
src.part.master = null
src.part = null
var/obj/structure/stool/bed/chair/C = new /obj/structure/stool/bed/chair(loc)
playsound(loc, 'sound/items/Ratchet.ogg', 50, 1)
C.dir = dir
part.loc = loc
part.master = null
part = null
del(src)
return
return
@@ -34,6 +34,7 @@
else
on = 1
icon_state = "echair1"
usr << "<span class='notice'>You switch [on ? "on" : "off"] [src].</span>"
return
/obj/structure/stool/bed/chair/e_chair/rotate()
@@ -43,11 +44,11 @@
return
/obj/structure/stool/bed/chair/e_chair/proc/shock()
if(!(src.on))
if(!on)
return
if((src.last_time + 50) > world.time)
if(last_time + 50 > world.time)
return
src.last_time = world.time
last_time = world.time
// special power handling
var/area/A = get_area(src)
@@ -65,12 +66,11 @@
s.start()
if(buckled_mob)
buckled_mob.burn_skin(85)
buckled_mob << "\red <B>You feel a deep shock course through your body!</B>"
buckled_mob << "<span class='danger'>You feel a deep shock course through your body!</span>"
sleep(1)
buckled_mob.burn_skin(85)
buckled_mob.Stun(600)
for(var/mob/M in hearers(src, null))
M.show_message("\red The electric chair went off!.", 3, "\red You hear a deep sharp shock.", 2)
visible_message("<span class='danger'>The electric chair went off!</span>", "<span class='danger'>You hear a deep sharp shock!</span>")
A.power_light = light
A.updateicon()
+5 -2
View File
@@ -1,4 +1,5 @@
/obj/structure/falsewall
anchored = 1
icon = 'icons/turf/walls.dmi'
var/mineral = "metal"
@@ -73,8 +74,8 @@
else
flick("[mineral]fwall_closing", src)
icon_state = "[mineral]0"
density = 1
sleep(15)
src.density = 1
SetOpacity(1)
src.relativewall()
@@ -170,6 +171,8 @@
icon_state = "[mineral]fwall_open"
/obj/structure/falserwall/
anchored = 1
attack_hand(mob/user as mob)
if(density)
// Open wall
@@ -181,8 +184,8 @@
else
icon_state = "r_wall"
flick("frwall_closing", src)
sleep(15)
density = 1
sleep(15)
SetOpacity(1)
relativewall()
+37 -32
View File
@@ -1,31 +1,39 @@
/obj/structure/noticeboard
name = "Notice Board"
name = "notice board"
desc = "A board for pinning important notices upon."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "nboard00"
flags = FPRINT
desc = "A board for pinning important notices upon."
density = 0
anchored = 1
var/notices = 0
/obj/structure/noticeboard/initialize()
for(var/obj/item/I in loc)
if(notices > 4) break
if(istype(I, /obj/item/weapon/paper))
I.loc = src
notices++
icon_state = "nboard0[notices]"
//attaching papers!!
/obj/structure/noticeboard/attackby(var/obj/item/weapon/O as obj, var/mob/user as mob)
if (istype(O, /obj/item/weapon/paper))
if (src.notices < 5)
if(istype(O, /obj/item/weapon/paper))
if(notices < 5)
O.add_fingerprint(user)
src.add_fingerprint(user)
add_fingerprint(user)
user.drop_item()
O.loc = src
src.notices++
src.icon_state = text("nboard0[]", src.notices) //update sprite
user << "\blue You pin the paper to the noticeboard."
notices++
icon_state = "nboard0[notices]" //update sprite
user << "<span class='notice'>You pin the paper to the noticeboard.</span>"
else
user << "\red You reach to pin your paper to the board but hesitate. You are certain your paper will not be seen among the many others already attached."
user << "<span class='notice'>You reach to pin your paper to the board but hesitate. You are certain your paper will not be seen among the many others already attached.</span>"
/obj/structure/noticeboard/attack_hand(user as mob)
var/dat = "<B>Noticeboard</B><BR>"
for(var/obj/item/weapon/paper/P in src)
dat += text("<A href='?src=\ref[];read=\ref[]'>[]</A> <A href='?src=\ref[];write=\ref[]'>Write</A> <A href='?src=\ref[];remove=\ref[]'>Remove</A><BR>", src, P, P.name, src, P, src, P)
dat += "<A href='?src=\ref[src];read=\ref[P]'>[P.name]</A> <A href='?src=\ref[src];write=\ref[P]'>Write</A> <A href='?src=\ref[src];remove=\ref[P]'>Remove</A><BR>"
user << browse("<HEAD><TITLE>Notices</TITLE></HEAD>[dat]","window=noticeboard")
onclose(user, "noticeboard")
@@ -33,43 +41,40 @@
/obj/structure/noticeboard/Topic(href, href_list)
..()
usr.machine = src
if (href_list["remove"])
if ((usr.stat || usr.restrained())) //For when a player is handcuffed while they have the notice window open
usr << "\red It's a bit hard to remove the notice when you're restrained like this."
if(href_list["remove"])
if((usr.stat || usr.restrained())) //For when a player is handcuffed while they have the notice window open
return
var/obj/item/P = locate(href_list["remove"])
if ((P && P.loc == src))
P.loc = get_turf(src) //dump paper on the floor because you're a clumsy fuck
P.layer = 20
if((P && P.loc == src))
P.loc = get_turf(src) //dump paper on the floor because you're a clumsy fuck
P.add_fingerprint(usr)
src.add_fingerprint(usr)
src.notices--
src.icon_state = text("nboard0[]", src.notices)
add_fingerprint(usr)
notices--
icon_state = "nboard0[notices]"
if(href_list["write"])
if ((usr.stat || usr.restrained())) //For when a player is handcuffed while they have the notice window open
usr << "\red It's a bit hard to write when you're restrained like this."
if((usr.stat || usr.restrained())) //For when a player is handcuffed while they have the notice window open
return
var/obj/item/P = locate(href_list["write"])
if((P && P.loc == src)) //if the paper's on the board
if (istype(usr.r_hand, /obj/item/weapon/pen)) //and you're holding a pen
src.add_fingerprint(usr)
if((P && P.loc == src)) //ifthe paper's on the board
if(istype(usr.r_hand, /obj/item/weapon/pen)) //and you're holding a pen
add_fingerprint(usr)
P.attackby(usr.r_hand, usr) //then do ittttt
else
if (istype(usr.l_hand, /obj/item/weapon/pen)) //check other hand for pen
src.add_fingerprint(usr)
if(istype(usr.l_hand, /obj/item/weapon/pen)) //check other hand for pen
add_fingerprint(usr)
P.attackby(usr.l_hand, usr)
else
usr << "\red You'll need something to write with!"
usr << "<span class='notice'>You'll need something to write with!</span>"
if (href_list["read"])
if(href_list["read"])
var/obj/item/weapon/paper/P = locate(href_list["read"])
if ((P && P.loc == src))
if (!( istype(usr, /mob/living/carbon/human) ))
usr << browse(text("<HTML><HEAD><TITLE>[]</TITLE></HEAD><BODY><TT>[]</TT></BODY></HTML>", P.name, stars(P.info)), text("window=[]", P.name))
if((P && P.loc == src))
if(!( istype(usr, /mob/living/carbon/human) ))
usr << browse("<HTML><HEAD><TITLE>[P.name]</TITLE></HEAD><BODY><TT>[stars(P.info)]</TT></BODY></HTML>", "window=[P.name]")
onclose(usr, "[P.name]")
else
usr << browse(text("<HTML><HEAD><TITLE>[]</TITLE></HEAD><BODY><TT>[]</TT></BODY></HTML>", P.name, P.info), text("window=[]", P.name))
usr << browse("<HTML><HEAD><TITLE>[P.name]</TITLE></HEAD><BODY><TT>[P.info]</TT></BODY></HTML>", "window=[P.name]")
onclose(usr, "[P.name]")
return
@@ -0,0 +1,37 @@
/obj/structure/shuttle
name = "shuttle"
icon = 'icons/turf/shuttle.dmi'
/obj/structure/shuttle/engine
name = "engine"
density = 1
anchored = 1.0
/obj/structure/shuttle/engine/heater
name = "heater"
icon_state = "heater"
/obj/structure/shuttle/engine/platform
name = "platform"
icon_state = "platform"
/obj/structure/shuttle/engine/propulsion
name = "propulsion"
icon_state = "propulsion"
opacity = 1
/obj/structure/shuttle/engine/propulsion/burst
name = "burst"
/obj/structure/shuttle/engine/propulsion/burst/left
name = "left"
icon_state = "burst_l"
/obj/structure/shuttle/engine/propulsion/burst/right
name = "right"
icon_state = "burst_r"
/obj/structure/shuttle/engine/router
name = "router"
icon_state = "router"
@@ -6,25 +6,26 @@
/obj/structure/stool/bed/chair/New()
if(anchored)
src.verbs -= /atom/movable/verb/pull
handle_rotation()
..()
spawn(3) //sorry. i don't think there's a better way to do this.
handle_rotation()
return
/obj/structure/stool/bed/chair/attackby(obj/item/weapon/W as obj, mob/user as mob)
..()
if(istype(W, /obj/item/assembly/shock_kit))
var/obj/item/assembly/shock_kit/SK = W
if(!SK.status)
user << "<span class='notice'>[SK] is not ready to be attached!</span>"
return
user.drop_item()
var/obj/structure/stool/bed/chair/e_chair/E = new /obj/structure/stool/bed/chair/e_chair(src.loc)
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
E.dir = src.dir
E.part = W
W.loc = E
W.master = E
user.u_equip(W)
W.layer = initial(W.layer)
E.dir = dir
E.part = SK
SK.loc = E
SK.master = E
del(src)
return
return
/obj/structure/stool/bed/chair/proc/handle_rotation() //making this into a seperate proc so office chairs can call it on Move()
if(src.dir == NORTH)