bug fixes

This commit is contained in:
Seris02
2020-02-04 17:18:45 +08:00
parent 18489e5b65
commit 49f80d52a8
5 changed files with 16 additions and 11 deletions

View File

@@ -604,8 +604,8 @@
if (apc)
apc.set_hijacked_lighting()
apc.update_icon()
H.stealthcooldown = world.time + 30 SECONDS
H.toggle_eyes(H.toggled && !H.stealthmode)
H.stealthcooldown = world.time + 15 SECONDS
H.toggle_eyes()
to_chat(owner,"<span class='notice'>You toggle the hijack implant's stealthmode [H.stealthmode ? "on" : "off"].</span>")
/datum/action/item_action/flash

View File

@@ -1,4 +1,4 @@
#define HIJACK_APC_MAX_AMOUNT 4
#define HIJACK_APC_MAX_AMOUNT 5
/obj/item/implant/hijack
name = "hijack implant"
@@ -17,11 +17,12 @@
imp_in.click_intercept = toggled ? src : null
imp_in.siliconaccesstoggle = toggled ? TRUE : FALSE
to_chat(imp_in,"<span class='notice'>You turn [toggled ? "on" : "off"] [src]'s silicon interactions.</span>")
toggle_eyes(toggled && !stealthmode)
toggle_eyes()
/obj/item/implant/hijack/proc/toggle_eyes(on)
/obj/item/implant/hijack/proc/toggle_eyes()
if (!ishuman(imp_in))
return
var/on = toggled && !stealthmode
var/mob/living/carbon/human/H = imp_in
H.eye_color = on ? "ff0" : eye_color
H.dna.update_ui_block(DNA_EYE_COLOR_BLOCK)
@@ -51,7 +52,7 @@
return TRUE
/obj/item/implant/hijack/proc/InterceptClickOn(mob/living/user,params,atom/object)
if (user.get_active_held_item() || isitem(object) || !toggled || user.incapacitated())
if (isitem(object) || !toggled || user.incapacitated())
return
if (stealthmode == FALSE && istype(object,/obj/machinery/power/apc) && !user.CanReach(object))
if (hijack_remotely(object))
@@ -74,6 +75,8 @@
if (modifiers["alt"])
object.AIAltClick(imp_in)
return TRUE
if (user.get_active_held_item())
return
object.attack_ai(imp_in)
return TRUE
@@ -97,7 +100,7 @@
imp_in.toggleSiliconAccessArea(apc.area)
apc.update_icon()
stealthcooldown = world.time + 3 MINUTES
toggle_eyes(TRUE)
toggle_eyes()
else
to_chat(imp_in, "<span class='warning'>Aborting.</span>")
imp_in.light_power = 0

View File

@@ -99,8 +99,10 @@
. += "[t_He] [t_has] [glasses.get_examine_string(user)] covering [t_his] eyes."
else if(eye_color == BLOODCULT_EYE && iscultist(src) && HAS_TRAIT(src, TRAIT_CULT_EYES))
. += "<span class='warning'><B>[t_His] eyes are glowing an unnatural red!</B></span>"
else if(eye_color == "ff0" && HAS_TRAIT(src, TRAIT_HIJACKER))
. += "<b><font color=orange>[t_His] eyes are flickering a bright yellow!</font></b>"
else if(HAS_TRAIT(src, TRAIT_HIJACKER))
var/obj/item/implant/hijack/H = user.getImplant(/obj/item/implant/hijack)
if (H && !H.stealthmode)
. += "<b><font color=orange>[t_His] eyes are flickering a bright yellow!</font></b>"
//ears
if(ears && !(SLOT_EARS in obscured))

View File

@@ -410,7 +410,7 @@ It's fairly easy to fix if dealing with single letters but not so much with comp
return TRUE
/atom/proc/hasSiliconAccessInArea(mob/user)
return user && (issilicon(user) || (user.siliconaccesstoggle && (get_base_area(src) in user.siliconaccessareas)))
return user && (issilicon(user) || (user.siliconaccesstoggle && (get_area(src) in user.siliconaccessareas)))
/mob/proc/toggleSiliconAccessArea(area/area)
if (area in siliconaccessareas)

View File

@@ -863,7 +863,7 @@
/obj/machinery/power/apc/ui_data(mob/user)
var/obj/item/implant/hijack/H = user.getImplant(/obj/item/implant/hijack)
var/abilitiesavail = FALSE
if (H && H.stealthmode)
if (H && !H.stealthmode)
abilitiesavail = TRUE
var/list/data = list(
"locked" = locked && !(integration_cog && is_servant_of_ratvar(user)) && !area.hasSiliconAccessInArea(user),