Merge remote-tracking branch 'upstream/master' into dev-freeze

Conflicts:
	.travis.yml
	code/game/atoms.dm
	code/modules/mob/living/carbon/human/human.dm
	code/modules/mob/living/carbon/human/life.dm
	code/modules/mob/living/carbon/monkey/life.dm
	code/modules/mob/living/silicon/silicon.dm
This commit is contained in:
PsiOmegaDelta
2015-06-30 08:24:43 +02:00
21 changed files with 850 additions and 898 deletions

View File

@@ -1,7 +1,8 @@
/proc/send2irc(var/channel, var/msg)
if(config.use_irc_bot && config.irc_bot_host)
if(config.irc_bot_export)
world.Export("http://[config.irc_bot_host]:45678?[list2params(list(pwd=config.comms_password, chan=channel, mesg=msg))]")
spawn(-1) // spawn here prevents hanging in the case that the bot isn't reachable
world.Export("http://[config.irc_bot_host]:45678?[list2params(list(pwd=config.comms_password, chan=channel, mesg=msg))]")
else
if(config.use_lib_nudge)
var/nudge_lib

View File

@@ -166,7 +166,7 @@
if (stat != 2)
if (machine)
if (!( machine.check_eye(src) ))
if ( machine.check_eye(src) < 0)
reset_view(null)
else
if(client && !client.adminobs)

View File

@@ -253,7 +253,7 @@
if (stat != 2)
if (machine)
if (!( machine.check_eye(src) ))
if (machine.check_eye(src) < 0)
reset_view(null)
else
if(client && !client.adminobs)

View File

@@ -1356,3 +1356,8 @@
if(W in organs)
return
..()
/mob/living/carbon/human/reset_view(atom/A, update_hud = 1)
..()
if(update_hud)
handle_regular_hud_updates()

View File

@@ -1379,8 +1379,11 @@
client.screen |= global_hud.darkMask
if(machine)
if(!machine.check_eye(src))
reset_view(null)
var/viewflags = machine.check_eye(src)
if(viewflags < 0)
reset_view(null, 0)
else if(viewflags)
sight |= viewflags
else if(eyeobj)
if(eyeobj.owner != src)
@@ -1394,7 +1397,7 @@
isRemoteObserve = 1
if(!isRemoteObserve && client && !client.adminobs)
remoteview_target = null
reset_view(null)
reset_view(null, 0)
return 1
proc/process_glasses(var/obj/item/clothing/glasses/G)

View File

@@ -33,8 +33,6 @@
var/mob_push_flags = 0
var/mob_always_swap = 0
var/mob/living/cameraFollow = null
var/tod = null // Time of death
var/update_slimes = 1
var/silent = null // Can't talk. Value goes down every life proc.

View File

@@ -407,7 +407,7 @@ var/list/ai_verbs_default = list(
if (!camera)
return null
user.reset_view(camera)
return 1
return 0
/mob/living/silicon/ai/restrained()
return 0

View File

@@ -118,9 +118,9 @@
/mob/living/silicon/pai/check_eye(var/mob/user as mob)
if (!src.current)
return null
return -1
user.reset_view(src.current)
return 1
return 0
/mob/living/silicon/pai/blob_act()
if (src.stat != 2)
@@ -180,9 +180,6 @@
return
/mob/living/silicon/pai/proc/switchCamera(var/obj/machinery/camera/C)
if(istype(usr, /mob/living))
var/mob/living/U = usr
U.cameraFollow = null
if (!C)
src.unset_machine()
src.reset_view(null)

View File

@@ -284,7 +284,7 @@
if (src.stat != 2)
if (src.machine)
if (!( src.machine.check_eye(src) ))
if (src.machine.check_eye(src) < 0)
src.reset_view(null)
else
if(client && !client.adminobs)

View File

@@ -19,6 +19,7 @@
var/local_transmit //If set, can only speak to others of the same type within a short range.
var/sensor_mode = 0 //Determines the current HUD.
var/mob/living/cameraFollow = null
var/next_alarm_notice
var/list/datum/alarm/queued_alarms = new()
@@ -348,3 +349,8 @@
/mob/living/silicon/proc/is_malf_or_traitor()
return is_traitor() || is_malf()
/mob/living/silicon/reset_view()
..()
if(cameraFollow)
cameraFollow = null

View File

@@ -480,12 +480,8 @@
/mob/verb/cancel_camera()
set name = "Cancel Camera View"
set category = "OOC"
reset_view(null)
unset_machine()
if(istype(src, /mob/living))
var/mob/living/M = src
if(M.cameraFollow)
M.cameraFollow = null
reset_view(null)
/mob/Topic(href, href_list)
if(href_list["mach_close"])