AI fixes, borg fixes, map fixes

This commit is contained in:
Markolie
2014-11-14 14:15:17 +01:00
parent 7a888ebf39
commit 0cd3223536
18 changed files with 1569 additions and 1316 deletions
+1 -1
View File
@@ -196,7 +196,7 @@
desc = "Covers the eyes, preventing sight."
icon_state = "blindfold"
item_state = "blindfold"
vision_flags = BLIND
//vision_flags = BLIND
species_fit = list("Vox")
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/eyes.dmi'
+23 -23
View File
@@ -30,25 +30,25 @@ var/list/department_radio_keys = list(
":A" = "alientalk", "#A" = "alientalk", ".A" = "alientalk",
":T" = "Syndicate", "#T" = "Syndicate", ".T" = "Syndicate",
":U" = "Supply", "#U" = "Supply", ".U" = "Supply",
":G" = "changeling", "#G" = "changeling", ".G" = "changeling",
//kinda localization -- rastaf0
//same keys as above, but on russian keyboard layout. This file uses cp1251 as encoding.
":ê" = "right hand", "#ê" = "right hand", ".ê" = "right hand",
":ä" = "left hand", "#ä" = "left hand", ".ä" = "left hand",
":ø" = "intercom", "#ø" = "intercom", ".ø" = "intercom",
":ð" = "department", "#ð" = "department", ".ð" = "department",
":ñ" = "Command", "#ñ" = "Command", ".ñ" = "Command",
":ò" = "Science", "#ò" = "Science", ".ò" = "Science",
":ü" = "Medical", "#ü" = "Medical", ".ü" = "Medical",
":ó" = "Engineering", "#ó" = "Engineering", ".ó" = "Engineering",
":û" = "Security", "#û" = "Security", ".û" = "Security",
":ö" = "whisper", "#ö" = "whisper", ".ö" = "whisper",
":è" = "binary", "#è" = "binary", ".è" = "binary",
":ô" = "alientalk", "#ô" = "alientalk", ".ô" = "alientalk",
":å" = "Syndicate", "#å" = "Syndicate", ".å" = "Syndicate",
":é" = "Supply", "#é" = "Supply", ".é" = "Supply",
":ï" = "changeling", "#ï" = "changeling", ".ï" = "changeling"
":G" = "changeling", "#G" = "changeling", ".G" = "changeling"
/* //kinda localization -- rastaf0
//same keys as above, but on russian keyboard layout. This file uses cp1251 as encoding.
":ê" = "right hand", "#ê" = "right hand", ".ê" = "right hand",
":ä" = "left hand", "#ä" = "left hand", ".ä" = "left hand",
":ø" = "intercom", "#ø" = "intercom", ".ø" = "intercom",
":ð" = "department", "#ð" = "department", ".ð" = "department",
":ñ" = "Command", "#ñ" = "Command", ".ñ" = "Command",
":ò" = "Science", "#ò" = "Science", ".ò" = "Science",
":ü" = "Medical", "#ü" = "Medical", ".ü" = "Medical",
":ó" = "Engineering", "#ó" = "Engineering", ".ó" = "Engineering",
":û" = "Security", "#û" = "Security", ".û" = "Security",
":ö" = "whisper", "#ö" = "whisper", ".ö" = "whisper",
":è" = "binary", "#è" = "binary", ".è" = "binary",
":ô" = "alientalk", "#ô" = "alientalk", ".ô" = "alientalk",
":å" = "Syndicate", "#å" = "Syndicate", ".å" = "Syndicate",
":é" = "Supply", "#é" = "Supply", ".é" = "Supply",
":ï" = "changeling", "#ï" = "changeling", ".ï" = "changeling" */
)
/mob/living/proc/binarycheck()
@@ -178,7 +178,7 @@ var/list/department_radio_keys = list(
message_mode = department_radio_keys[channel_prefix]
if (message_mode || speaking || copytext(message,1,2) == ":")
message = trim(copytext(message, 3))
if (!(istype(src,/mob/living/carbon/human) || istype(src,/mob/living/carbon/monkey) || istype(src, /mob/living/simple_animal/parrot) || isrobot(src) && (message_mode=="department" || isAI(src) && (message_mode=="department") || (message_mode in radiochannels))))
if (!(istype(src,/mob/living/carbon/human) && !isAI(src) && !isrobot(src) || istype(src,/mob/living/carbon/monkey) || istype(src, /mob/living/simple_animal/parrot) || isrobot(src) && (message_mode=="department") || isAI(src) && (message_mode=="department") || (message_mode in radiochannels)))
message_mode = null //only humans can use headsets
if(src.stunned > 2 || (traumatic_shock > 61 && prob(50)))
@@ -302,9 +302,9 @@ var/list/department_radio_keys = list(
if(issilicon(src))
if(isAI(src))//for the AI's radio. This can't be with the borg thing above due to typecasting.
var/mob/living/silicon/ai/A = src
if(A.radio)
A.radio.talk_into(src, message, message_mode)
used_radios += A.radio
if(A.aiRadio)
A.aiRadio.talk_into(src, message, message_mode)
used_radios += A.aiRadio
else
var/mob/living/silicon/Ro=src
if(!isAI(Ro))
+8 -8
View File
@@ -19,7 +19,7 @@ var/list/ai_list = list()
anchored = 1 // -- TLE
density = 1
status_flags = CANSTUN|CANPARALYSE|CANPUSH
var/list/network = list("SS13")
var/list/network = list("SS13","Telecomms")
var/obj/machinery/camera/current = null
var/list/connected_robots = list()
var/aiRestorePowerRoutine = 0
@@ -34,7 +34,7 @@ var/list/ai_list = list()
var/custom_sprite = 0 //For our custom sprites
var/alienAI = 0
var/obj/item/device/radio/headset/heads/ai_integrated/radio = null
var/obj/item/device/radio/headset/heads/ai_integrated/aiRadio = null
//MALFUNCTION
var/datum/module_picker/malf_picker
@@ -91,15 +91,15 @@ var/list/ai_list = list()
aiPDA.name = name + " (" + aiPDA.ownjob + ")"
aiMulti = new(src)
radio = new(src)
radio.myAi = src
aiRadio = new(src)
aiRadio.myAi = src
aiCamera = new/obj/item/device/camera/siliconcam/ai_camera(src)
if (istype(loc, /turf))
verbs.Add(/mob/living/silicon/ai/proc/ai_network_change, \
/mob/living/silicon/ai/proc/ai_statuschange, /mob/living/silicon/ai/proc/ai_hologram_change, \
/mob/living/silicon/ai/proc/toggle_camera_light, /mob/living/silicon/ai/proc/control_integrateed_radio)
/mob/living/silicon/ai/proc/toggle_camera_light, /mob/living/silicon/ai/proc/control_integrated_radio)
if(!safety)//Only used by AIize() to successfully spawn an AI.
if (!B)//If there is no player/brain inside.
@@ -786,11 +786,11 @@ var/list/ai_list = list()
return ..()
/mob/living/silicon/ai/proc/control_integrateed_radio()
/mob/living/silicon/ai/proc/control_integrated_radio()
set name = "Radio Settings"
set desc = "Allows you to change settings of your radio."
set category = "AI Commands"
src << "Accessing Subspace Transceiver control..."
if (src.radio)
src.radio.interact(src)
if (src.aiRadio)
src.aiRadio.interact(src)
@@ -23,9 +23,4 @@
return tally+config.robot_delay
/mob/living/silicon/robot/Move()
if (!is_component_functioning("actuator") || !is_component_functioning("power cell") || !cell)
return
else
if (src.cell.charge > 0)
..()
..()
+14 -4
View File
@@ -50,18 +50,28 @@
alien_talk(message)
else if (department_radio_keys[prefix] == "department")
if(isAI(src)&&client)//For patching directly into AI holopads.
if(isAI(src)&&client) //For patching directly into AI holopads.
var/mob/living/silicon/ai/U = src
message = copytext(message, 3)
message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN))
U.holopad_talk(message)
else//Will not allow anyone by an active AI to use this function.
else //Will not allow anyone by an active AI to use this function.
src << "This function is not available to you."
return
else
return ..(message)
var/mob/living/silicon/ai/AI = src
if (isAI(src) && AI.aiRadio.disabledAi)
src << "\red System Error - Transceiver Disabled"
return
else
return ..(message)
else
return ..(message)
var/mob/living/silicon/ai/AI = src
if (isAI(src) && AI.aiRadio.disabledAi)
src << "\red System Error - Transceiver Disabled"
return
else
return ..(message)
//For holopads only. Usable by AI.
/mob/living/silicon/ai/proc/holopad_talk(var/message)