InteliCard AI Core Display Sprites (#18821)

* hi

* bye

* hi again

* Sirryan2002 suggestion

Co-authored-by: Sirryan2002 <80364400+Sirryan2002@users.noreply.github.com>

* adds unit test

idk what Im doing really here, so I hope this code works 😔 👍

* correction 1

* correction 2

kill me

* correction 3

im dead

* correction 4

big pepega moment

* correction 5

* correction 6

yep

* FINALE :D :D :D

* AffectedArc07 suggested change

Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>

Co-authored-by: Sirryan2002 <80364400+Sirryan2002@users.noreply.github.com>
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
This commit is contained in:
Kugamo
2022-08-28 14:37:08 +01:00
committed by GitHub
co-authored by Sirryan2002 AffectedArc07
parent b4539344e4
commit 247c7239da
5 changed files with 39 additions and 13 deletions
+15 -10
View File
@@ -9,7 +9,6 @@
var/flush = null
origin_tech = "programming=3;materials=3"
/obj/item/aicard/afterattack(atom/target, mob/user, proximity)
..()
if(!proximity || !target)
@@ -24,29 +23,36 @@
/obj/item/aicard/proc/update_state()
var/mob/living/silicon/ai/AI = locate(/mob/living/silicon/ai) in src //AI is inside.
update_icon(UPDATE_OVERLAYS)
if(AI)
name = "intelliCard - [AI.name]"
if(AI.stat == DEAD)
icon_state = "aicard-404"
else
icon_state = "aicard-full"
AI.cancel_camera() //AI are forced to move when transferred, so do this whenver one is downloaded.
else
icon_state = "aicard"
name = "intelliCard"
overlays.Cut()
/obj/item/aicard/update_overlays()
. = ..()
var/mob/living/silicon/ai/AI = locate(/mob/living/silicon/ai) in src //AI is inside.
if(AI)
var/list/aicard_icon_state_names = icon_states(icon)
var/aicard_new_display = AI.icon_state
if(aicard_new_display in aicard_icon_state_names)
. += aicard_new_display
else if(AI.stat == DEAD)
. += "ai_dead"
else
. += "ai"
/obj/item/aicard/attack_self(mob/user)
ui_interact(user)
/obj/item/aicard/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = TRUE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.inventory_state)
ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open)
if(!ui)
ui = new(user, src, ui_key, "AICard", "[name]", 600, 394, master_ui, state)
ui.open()
/obj/item/aicard/ui_data(mob/user)
var/list/data = list()
@@ -74,7 +80,6 @@
return data
/obj/item/aicard/ui_act(action, params)
if(..())
return