mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-20 11:34:19 +01:00
Fixes mulebots killing passenger, bot tweaks
This commit is contained in:
@@ -1,27 +0,0 @@
|
||||
/datum/controller/process/bot/setup()
|
||||
name = "bot"
|
||||
schedule_interval = 20 // every 2 seconds
|
||||
|
||||
/datum/controller/process/bot/started()
|
||||
..()
|
||||
if(!aibots)
|
||||
aibots = list()
|
||||
|
||||
/datum/controller/process/bot/statProcess()
|
||||
..()
|
||||
stat(null, "[aibots && aibots.len] bots")
|
||||
|
||||
/datum/controller/process/bot/doWork()
|
||||
for(last_object in aibots)
|
||||
var/obj/machinery/bot/B = last_object
|
||||
if(istype(B) && isnull(B.gcDestroyed))
|
||||
// Some bots sleep when they process, but there's not many bots, so just spawn them off
|
||||
spawn(-1)
|
||||
try
|
||||
B.bot_process()
|
||||
catch(var/exception/e)
|
||||
catchException(e, B)
|
||||
SCHECK
|
||||
else
|
||||
catchBadType(B)
|
||||
aibots -= B
|
||||
@@ -556,7 +556,7 @@ var/list/turret_icons
|
||||
if(!L)
|
||||
return TURRET_NOT_TARGET
|
||||
|
||||
if(!emagged && issilicon(L)) // Don't target silica
|
||||
if(!emagged && (issilicon(L) || isbot(L))) // Don't target silica
|
||||
return TURRET_NOT_TARGET
|
||||
|
||||
if(L.stat && !emagged) //if the perp is dead/dying, no need to bother really
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// AI (i.e. game AI, not the AI player) controlled bots
|
||||
/mob/living/simple_animal/bot
|
||||
icon = 'icons/obj/aibots.dmi'
|
||||
layer = MOB_LAYER
|
||||
layer = MOB_LAYER - 0.1
|
||||
light_range = 3
|
||||
stop_automated_movement = 1
|
||||
wander = 0
|
||||
@@ -389,8 +389,8 @@
|
||||
/mob/living/simple_animal/bot/proc/speak(message, channel) //Pass a message to have the bot say() it. Pass a frequency to say it on the radio.
|
||||
if((!on) || (!message))
|
||||
return
|
||||
if(channel && Radio.channels[channel])// Use radio if we have channel key
|
||||
Radio.autosay(message, name, channel)
|
||||
if(channel)
|
||||
Radio.autosay(message, name, channel == "headset" ? null : channel)
|
||||
else
|
||||
say(message)
|
||||
return
|
||||
|
||||
@@ -591,7 +591,8 @@
|
||||
bloodiness--
|
||||
|
||||
for(var/mob/living/carbon/human/H in next)
|
||||
RunOver(H)
|
||||
if(H != load)
|
||||
RunOver(H)
|
||||
|
||||
// calculates a path to the current destination
|
||||
// given an optional turf to avoid
|
||||
|
||||
Reference in New Issue
Block a user