From b00a8bf95a7590b04e2e5c00613671e374a8daa6 Mon Sep 17 00:00:00 2001 From: Tastyfish Date: Fri, 8 Apr 2016 14:25:31 -0400 Subject: [PATCH] Fixes cyborg pdas --- code/game/machinery/PDApainter.dm | 2 +- code/modules/mob/living/silicon/ai/ai.dm | 4 +- code/modules/mob/living/silicon/pai/pai.dm | 2 +- .../modules/mob/living/silicon/robot/robot.dm | 4 +- code/modules/pda/ai.dm | 41 +++++++++++-------- 5 files changed, 30 insertions(+), 23 deletions(-) diff --git a/code/game/machinery/PDApainter.dm b/code/game/machinery/PDApainter.dm index f21ad0d03ee..9388942d549 100644 --- a/code/game/machinery/PDApainter.dm +++ b/code/game/machinery/PDApainter.dm @@ -28,7 +28,7 @@ /obj/machinery/pdapainter/New() ..() - var/blocked = list(/obj/item/device/pda/pai, /obj/item/device/pda/ai, /obj/item/device/pda/heads, + var/blocked = list(/obj/item/device/pda/silicon/ai, /obj/item/device/pda/silicon/robot, /obj/item/device/pda/silicon/pai, /obj/item/device/pda/heads, /obj/item/device/pda/clear, /obj/item/device/pda/syndicate) for(var/P in typesof(/obj/item/device/pda)-blocked) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index b037cf1aa75..cda2873664e 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -51,7 +51,7 @@ var/list/ai_verbs_default = list( var/viewalerts = 0 var/icon/holo_icon//Default is assigned when AI is created. var/obj/mecha/controlled_mech //For controlled_mech a mech, to determine whether to relaymove or use the AI eye. - var/obj/item/device/pda/ai/aiPDA = null + var/obj/item/device/pda/silicon/ai/aiPDA = null var/obj/item/device/multitool/aiMulti = null var/custom_sprite = 0 //For our custom sprites @@ -126,7 +126,7 @@ var/list/ai_verbs_default = list( possibleNames -= pickedName pickedName = null - aiPDA = new/obj/item/device/pda/ai(src) + aiPDA = new/obj/item/device/pda/silicon/ai(src) rename_character(null, pickedName) anchored = 1 canmove = 0 diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 82cc717dab9..4e1373e979b 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -59,7 +59,7 @@ var/screen // Which screen our main window displays var/subscreen // Which specific function of the main screen is being displayed - var/obj/item/device/pda/pai/pda = null + var/obj/item/device/pda/silicon/pai/pda = null var/secHUD = 0 // Toggles whether the Security HUD is active or not var/medHUD = 0 // Toggles whether the Medical HUD is active or not diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 390ad8d07dc..d089eb98467 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -43,7 +43,7 @@ var/list/robot_verbs_default = list( var/obj/item/device/mmi/mmi = null - var/obj/item/device/pda/ai/rbPDA = null + var/obj/item/device/pda/silicon/robot/rbPDA = null var/datum/wires/robot/wires = null @@ -223,7 +223,7 @@ var/list/robot_verbs_default = list( // setup the PDA and its name /mob/living/silicon/robot/proc/setup_PDA() if (!rbPDA) - rbPDA = new/obj/item/device/pda/ai(src) + rbPDA = new(src) rbPDA.set_name_and_job(real_name, braintype) if(scrambledcodes) var/datum/data/pda/app/messenger/M = rbPDA.find_program(/datum/data/pda/app/messenger) diff --git a/code/modules/pda/ai.dm b/code/modules/pda/ai.dm index b8b95276c06..49cadaf7d1e 100644 --- a/code/modules/pda/ai.dm +++ b/code/modules/pda/ai.dm @@ -1,10 +1,10 @@ // Special AI/pAI PDAs that cannot explode. -/obj/item/device/pda/ai +/obj/item/device/pda/silicon icon_state = "NONE" detonate = 0 ttone = "data" -/obj/item/device/pda/ai/proc/set_name_and_job(newname as text, newjob as text, newrank as null|text) +/obj/item/device/pda/silicon/proc/set_name_and_job(newname as text, newjob as text, newrank as null|text) owner = newname ownjob = newjob if(newrank) @@ -13,7 +13,7 @@ ownrank = ownjob name = newname + " (" + ownjob + ")" -/obj/item/device/pda/ai/verb/cmd_send_pdamesg() +/obj/item/device/pda/silicon/verb/cmd_send_pdamesg() set category = "AI IM" set name = "Send PDA Message" set src in usr @@ -31,7 +31,7 @@ var/selected = plist[c] M.create_message(usr, selected) -/obj/item/device/pda/ai/verb/cmd_show_message_log() +/obj/item/device/pda/silicon/verb/cmd_show_message_log() set category = "AI IM" set name = "Show Message Log" set src in usr @@ -50,7 +50,7 @@ HTML +="" usr << browse(HTML, "window=log;size=400x444;border=1;can_resize=1;can_close=1;can_minimize=0") -/obj/item/device/pda/ai/verb/cmd_toggle_pda_receiver() +/obj/item/device/pda/silicon/verb/cmd_toggle_pda_receiver() set category = "AI IM" set name = "Toggle Sender/Receiver" set src in usr @@ -62,7 +62,7 @@ to_chat(usr, "PDA sender/receiver toggled [(M.toff ? "Off" : "On")]!") -/obj/item/device/pda/ai/verb/cmd_toggle_pda_silent() +/obj/item/device/pda/silicon/verb/cmd_toggle_pda_silent() set category = "AI IM" set name = "Toggle Ringer" set src in usr @@ -73,25 +73,32 @@ M.notify_silent = !M.notify_silent to_chat(usr, "PDA ringer toggled [(M.notify_silent ? "Off" : "On")]!") -/obj/item/device/pda/ai/can_use() - var/mob/living/silicon/ai/AI = usr - if(!istype(AI)) - return 0 - return ..() && !AI.check_unable(AI_CHECK_WIRELESS) - -/obj/item/device/pda/ai/attack_self(mob/user as mob) +/obj/item/device/pda/silicon/attack_self(mob/user as mob) if ((honkamt > 0) && (prob(60)))//For clown virus. honkamt-- playsound(loc, 'sound/items/bikehorn.ogg', 30, 1) return -/obj/item/device/pda/pai - icon_state = "NONE" - detonate = 0 +/obj/item/device/pda/silicon/ai/can_use() + var/mob/living/silicon/ai/AI = usr + if(!istype(AI)) + return 0 + return ..() && !AI.check_unable(AI_CHECK_WIRELESS) + +/obj/item/device/pda/silicon/robot/can_use() + var/mob/living/silicon/robot/R = usr + if(!istype(R)) + return 0 + return ..() && R.cell.charge > 0 + +/obj/item/device/pda/silicon/pai ttone = "assist" -/obj/item/device/pda/pai/can_use() +/obj/item/device/pda/silicon/pai/can_use() var/mob/living/silicon/pai/pAI = usr if(!istype(pAI)) return 0 + if(!pAI.software["messenger"]) + usr << "You have not purchased the digital messenger!" + return 0 return ..() && !pAI.silence_time \ No newline at end of file