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

Conflicts:
	baystation12.dme
	code/game/gamemodes/cult/runes.dm
	code/game/gamemodes/events.dm
	code/game/machinery/telecomms/broadcaster.dm
	code/game/machinery/telecomms/machine_interactions.dm
	code/game/objects/devices/uplinks.dm
	code/game/objects/weapons.dm
	code/modules/mining/mine_items.dm
	html/changelog.html
	icons/obj/chemical.dmi
	maps/tgstation.2.0.9.dmm

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
This commit is contained in:
Cael_Aislinn
2012-08-24 21:55:58 +10:00
121 changed files with 8992 additions and 7779 deletions
@@ -31,6 +31,8 @@
if(dna)
dna.real_name = real_name
prev_gender = gender // Debug for plural genders
/mob/living/carbon/human/Bump(atom/movable/AM as mob|obj, yes)
if ((!( yes ) || now_pushing))
+6 -1
View File
@@ -25,7 +25,7 @@
var/oxygen_alert = 0
var/toxins_alert = 0
var/fire_alert = 0
var/prev_gender = null // Debug for plural genders
var/temperature_alert = 0
@@ -38,6 +38,11 @@
..()
if(prev_gender != gender)
prev_gender = gender
if(gender in list(PLURAL, NEUTER))
message_admins("[src] ([ckey]) gender has been changed to plural or neuter. Please record what has happened recently to the person and then notify coders.")
//Apparently, the person who wrote this code designed it so that
//blinded get reset each cycle and then get activated later in the
//code. Very ugly. I dont care. Moving this stuff here so its easy
+52
View File
@@ -49,6 +49,7 @@
name = real_name
anchored = 1
canmove = 0
density = 1
loc = loc
holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo1"))
@@ -199,11 +200,41 @@
src << browse(dat, "window=airoster")
onclose(src, "airoster")
/mob/living/silicon/ai/proc/ai_call_shuttle()
set category = "AI Commands"
set name = "Call Emergency Shuttle"
if(usr.stat == 2)
usr << "You can't call the shuttle because you are dead!"
return
if(istype(usr,/mob/living/silicon/ai))
var/mob/living/silicon/ai/AI = usr
if(AI.control_disabled)
usr << "Wireless control is disabled!"
return
var/confirm = alert("Are you sure you want to call the shuttle?", "Confirm Shuttle Call", "Yes", "No")
if(confirm == "Yes")
call_shuttle_proc(src)
// hack to display shuttle timer
if(emergency_shuttle.online)
var/obj/machinery/computer/communications/C = locate() in world
if(C)
C.post_status("shuttle")
return
/mob/living/silicon/ai/proc/ai_cancel_call()
set category = "AI Commands"
if(usr.stat == 2)
usr << "You can't send the shuttle back because you are dead!"
return
if(istype(usr,/mob/living/silicon/ai))
var/mob/living/silicon/ai/AI = usr
if(AI.control_disabled)
usr << "Wireless control is disabled!"
return
cancel_call_proc(src)
return
@@ -518,6 +549,27 @@
malf_picker.use(src)
/mob/living/silicon/ai/proc/ai_statuschange()
set category = "AI Commands"
set name = "AI status"
if(usr.stat == 2)
usr <<"You cannot change your emotional status because you are dead!"
return
var/list/ai_emotions = list("Very Happy", "Happy", "Neutral", "Unsure", "Confused", "Sad", "BSOD", "Blank", "Problems?", "Awesome", "Facepalm", "Friend Computer")
var/emote = input("Please, select a status!", "AI Status", null, null) in ai_emotions
for (var/obj/machinery/ai_status_display/AISD in world) //change status
spawn( 0 )
AISD.emotion = emote
for (var/obj/machinery/status_display/SD in world) //if Friend Computer, change ALL displays
if(emote=="Friend Computer")
spawn(0)
SD.friendc = 1
else
spawn(0)
SD.friendc = 0
return
//I am the icon meister. Bow fefore me. //>fefore
/mob/living/silicon/ai/proc/ai_hologram_change()
set name = "Change Hologram"
@@ -7,6 +7,7 @@
/client/proc/AIMove(n,direct,var/mob/living/silicon/ai/user)
if(!user) return
if(user.control_disabled) return
var/min_dist = 1e8
var/obj/machinery/camera/closest = null
@@ -269,7 +269,9 @@
/mob/living/silicon/robot/proc/update_items()
if (src.client)
src.client.screen -= src.contents
src.client.screen += src.contents
for(var/obj/I in src.contents)
if(I && !(istype(I,/obj/item/weapon/cell) || istype(I,/obj/item/device/radio) || istype(I,/obj/machinery/camera) || istype(I,/obj/item/device/mmi)))
src.client.screen += I
if(src.module_state_1)
src.module_state_1:screen_loc = ui_inv1
if(src.module_state_2)
@@ -28,7 +28,7 @@
icon_state = "secborg"
modtype = "Synd"
radio = new /obj/item/device/radio(src)
radio = new /obj/item/device/radio/borg(src)
if(!scrambledcodes)
camera = new /obj/machinery/camera(src)
camera.c_tag = real_name
@@ -22,7 +22,7 @@
var/module_state_2 = null
var/module_state_3 = null
var/obj/item/device/radio/radio = null
var/obj/item/device/radio/borg/radio = null
var/mob/living/silicon/ai/connected_ai = null
var/obj/item/weapon/cell/cell = null
var/obj/machinery/camera/camera = null
@@ -503,9 +503,11 @@
sleep(20)
src << "\red ERRORERRORERROR"
src << "\red \b ALERT: [user.real_name] is your new master. Obey your new laws and his commands."
if(istype(src.module, /obj/item/weapon/robot_module/miner))
src.module.modules -= /obj/item/weapon/pickaxe/borgdrill
src.module.modules += /obj/item/weapon/pickaxe/diamonddrill//Buff when emagged, break down walls, kill men, whatever -Sieve
if(src.module && istype(src.module, /obj/item/weapon/robot_module/miner))
for(var/obj/item/weapon/pickaxe/borgdrill/D in src.module.modules)
del(D)
src.module.modules += new /obj/item/weapon/pickaxe/diamonddrill(src.module)
src.module.rebuild()
updateicon()
else
user << "You fail to [ locked ? "unlock" : "lock"] [src]'s interface."
@@ -31,10 +31,15 @@
return
proc/respawn_consumable(var/mob/living/silicon/robot/R)
return
/obj/item/weapon/robot_module/proc/respawn_consumable(var/mob/living/silicon/robot/R)
return
/obj/item/weapon/robot_module/proc/rebuild()//Rebuilds the list so it's possible to add/remove items from the module
var/list/temp_list = modules
modules = list()
for(var/obj/O in temp_list)
if(O)
modules += O
/obj/item/weapon/robot_module/standard
name = "standard robot module"
+12
View File
@@ -33,6 +33,11 @@
spawn()
owner.ui_action_click()
switch(owner.icon_action_button)
if("action_hardhat", "action_welding")
usr.update_inv_head()
if("action_jetpack")
usr.update_inv_back()
//This is the proc used to update all the action buttons. It just returns for all mob types except humans.
/mob/proc/update_action_buttons()
@@ -275,6 +280,9 @@
var/mob/living/carbon/human/H = usr
H.equip_to_appropriate_slot(I)
usr.update_inv_l_hand(0)
usr.update_inv_r_hand()
if("resist")
if(isliving(usr))
var/mob/living/L = usr
@@ -542,10 +550,14 @@
/obj/screen/inventory/attack_hand(mob/user as mob)
user.attack_ui(slot_id)
user.update_inv_l_hand(0)
user.update_inv_r_hand()
return
/obj/screen/inventory/attack_paw(mob/user as mob)
user.attack_ui(slot_id)
user.update_inv_l_hand(0)
user.update_inv_r_hand()
return