diff --git a/code/modules/mob/living/silicon/robot/drone/drone.dm b/code/modules/mob/living/silicon/robot/drone/drone.dm index e3a04f2cd0f..b0a8afcd2c9 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone.dm @@ -24,6 +24,7 @@ //Used for self-mailing. var/mail_destination = 0 + var/sprite[0] //Used for pulling. @@ -83,7 +84,8 @@ overlays -= "eyes" /mob/living/silicon/robot/drone/choose_icon() - return + ..() + /mob/living/silicon/robot/drone/pick_module() return @@ -104,32 +106,32 @@ if (stat == 2) message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) return say_dead(message) - + //Must be concious to speak if (stat) return - + if(copytext(message,1,2) == "*") return emote(copytext(message,2)) - - if (length(message) >= 2) + + if (length(message) >= 2) var/prefix = copytext(message, 1, 3) if (department_radio_keys[prefix] == "drone") message = copytext(message, 3) - message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) - + message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) + if(istype(src, /mob/living/silicon/robot/drone)) var/mob/living/silicon/robot/drone/R = src if(!R.is_component_functioning("comms")) src << "\red Your drone communications component isn't functional." return - drone_talk(message) + drone_talk(message) else var/list/listeners = hearers(5,src) listeners |= src - message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) + message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) for(var/mob/living/silicon/D in listeners) - if(D.client) + if(D.client) D << "[src] transmits, \"[message]\"" for (var/mob/M in player_list) @@ -141,23 +143,23 @@ M << "[src] (Follow) transmits, \"[message]\"" else if(M.stat == 2 && src.client && M in listeners) M << "[src] (Follow) transmits, \"[message]\"" - + /mob/living/proc/drone_talk(var/message) log_say("[key_name(src)] : [message]") - message = trim(message) + message = trim(message) if (!message) return var/message_a = say_quote(message) var/rendered = "Drone Talk, [name] [message_a]" - + for (var/mob/living/S in living_mob_list) if(istype(S, /mob/living/silicon/robot/drone)) S.show_message(rendered, 2) - - for (var/mob/S in dead_mob_list) - if(!istype(S,/mob/new_player) && !istype(S,/mob/living/carbon/brain)) + + for (var/mob/S in dead_mob_list) + if(!istype(S,/mob/new_player) && !istype(S,/mob/living/carbon/brain)) var/rendered2 = "Drone Talk, [name] (Follow) [message_a]" S.show_message(rendered2, 2) @@ -207,12 +209,12 @@ return ..() - + /mob/living/silicon/robot/drone/emag_act(user as mob) if(!client || stat == 2) user << "\red There's not much point subverting this heap of junk." return - + if(!ishuman(user)) return var/mob/living/carbon/human/H = user @@ -343,6 +345,12 @@ src << "Don't invade their worksites, don't steal their resources, don't tell them about the changeling in the toilets." src << "If a crewmember has noticed you, you are probably breaking your first law." + //var/choice = input("Pick an icon") in list("repairbot","mk2","mk3") + sprite["Default"] = "repairbot" + sprite["Mk2 Mousedrone"] = "mk2" + sprite["Mk3 Monkeydrone"] = "mk3" + choose_icon(6,sprite) + /mob/living/silicon/robot/drone/Bump(atom/movable/AM as mob|obj, yes) if (!yes || ( \ !istype(AM,/obj/machinery/door) && \ diff --git a/icons/mob/robots.dmi b/icons/mob/robots.dmi index f0ddc3b8170..39053002542 100644 Binary files a/icons/mob/robots.dmi and b/icons/mob/robots.dmi differ