mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-29 07:59:01 +01:00
AI Mech Fix (#8997)
This commit is contained in:
@@ -127,7 +127,7 @@
|
||||
if(speaker != null)
|
||||
speaker_name = speaker.name
|
||||
else
|
||||
speaker_name = "unknown"
|
||||
speaker_name = "Unknown"
|
||||
|
||||
if(istype(speaker, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = speaker
|
||||
@@ -138,7 +138,7 @@
|
||||
speaker_name = vname
|
||||
|
||||
if(hard_to_hear)
|
||||
speaker_name = "unknown"
|
||||
speaker_name = "Unknown"
|
||||
|
||||
var/changed_voice
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
maxbodytemp = 500
|
||||
mob_size = MOB_SMALL
|
||||
|
||||
var/radio_type = /obj/item/device/radio/borg
|
||||
var/obj/item/device/radio/borg/radio = null
|
||||
var/mob/living/silicon/ai/connected_ai = null
|
||||
var/obj/item/cell/cell = null
|
||||
@@ -42,6 +43,7 @@
|
||||
speed = -1 //Spiderbots gotta go fast.
|
||||
pass_flags = PASSTABLE | PASSDOORHATCH
|
||||
speak_emote = list("beeps","clicks","chirps")
|
||||
universal_understand = TRUE
|
||||
|
||||
/mob/living/simple_animal/spiderbot/Initialize()
|
||||
. = ..()
|
||||
@@ -50,6 +52,7 @@
|
||||
internal_id = new /obj/item/card/id(src)
|
||||
verbs |= /mob/living/proc/ventcrawl
|
||||
verbs |= /mob/living/proc/hide
|
||||
verbs |= /mob/living/simple_animal/spiderbot/proc/control_integrated_radio
|
||||
|
||||
/mob/living/simple_animal/spiderbot/attackby(var/obj/item/O as obj, var/mob/user as mob)
|
||||
|
||||
@@ -189,7 +192,7 @@
|
||||
/mob/living/simple_animal/spiderbot/Initialize()
|
||||
. = ..()
|
||||
|
||||
radio = new /obj/item/device/radio/borg(src)
|
||||
radio = new radio_type(src)
|
||||
camera = new /obj/machinery/camera(src)
|
||||
camera.c_tag = "spiderbot-[real_name]"
|
||||
camera.replace_networks(list("SS13"))
|
||||
@@ -305,6 +308,35 @@
|
||||
/mob/living/simple_animal/spiderbot/get_bullet_impact_effect_type(var/def_zone)
|
||||
return BULLET_IMPACT_METAL
|
||||
|
||||
/mob/living/simple_animal/spiderbot/handle_message_mode(message_mode, message, verb, speaking, used_radios, alt_name)
|
||||
switch(message_mode)
|
||||
if("headset")
|
||||
radio.talk_into(src, message, null, verb, speaking)
|
||||
used_radios += radio
|
||||
if("intercom")
|
||||
var/turf/T = get_turf(src)
|
||||
for(var/obj/item/device/radio/intercom/I in view(1, T))
|
||||
I.talk_into(src, message, null, verb, speaking)
|
||||
used_radios += I
|
||||
if(message_mode)
|
||||
radio.talk_into(src, message, message_mode, verb, speaking)
|
||||
used_radios += radio
|
||||
|
||||
/mob/living/simple_animal/spiderbot/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration, var/list/message_override)
|
||||
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, language, small, show_to, duration)
|
||||
|
||||
/mob/living/simple_animal/spiderbot/proc/control_integrated_radio()
|
||||
set name = "Radio Settings"
|
||||
set desc = "Allows you to change settings of your radio."
|
||||
set category = "Spiderbot"
|
||||
|
||||
to_chat(src, SPAN_NOTICE("Accessing Subspace Transceiver control..."))
|
||||
if(radio)
|
||||
radio.interact(src)
|
||||
|
||||
/mob/living/simple_animal/spiderbot/ai
|
||||
radio_type = /obj/item/device/radio/headset/heads/ai_integrated
|
||||
|
||||
/mob/living/simple_animal/spiderbot/ai/Initialize()
|
||||
. = ..()
|
||||
internal_id.access = get_all_station_access()
|
||||
Reference in New Issue
Block a user