Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pAI Redux #22751

Open
wants to merge 46 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 42 commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
5e6b6c9
Maybe converts expansion card slots into pai holders
Oblisk234 Sep 30, 2024
4b20eb8
Update card_slot.dm
Oblisk234 Sep 30, 2024
6278065
Update card_slot.dm
Oblisk234 Sep 30, 2024
f4cc2c2
Update card_slot.dm
Oblisk234 Sep 30, 2024
2ed2abe
card
Oblisk234 Sep 30, 2024
3722d82
Merge branch 'yogstation13:master' into modularpda-fixpais
Oblisk234 Sep 30, 2024
566a73c
Merge remote-tracking branch 'upstream/master' into modularpda-fixpais
Oblisk234 Sep 30, 2024
d1926cf
No aux card slot pAI
Oblisk234 Sep 30, 2024
f04beab
Merge branch 'modularpda-fixpais' of https://github.com/Oblisk234/Yog…
Oblisk234 Sep 30, 2024
d9d8404
Progress
Oblisk234 Sep 30, 2024
9c54416
Half the way there to ejecting pAIs from PDAs
Oblisk234 Oct 1, 2024
f35428a
Works
Oblisk234 Oct 1, 2024
02abddb
pAI card has a description now
Oblisk234 Oct 1, 2024
afab12f
New message proc
Oblisk234 Oct 1, 2024
9e6a885
Old PDAs have backwards compatibility working now, at least
Oblisk234 Oct 3, 2024
237ffa5
TGUI start
Oblisk234 Oct 6, 2024
c30653c
.map()
Oblisk234 Oct 7, 2024
85b6fbb
Update PaiInterface.tsx
Oblisk234 Oct 7, 2024
a6ef1de
Merge branch 'modularpda-fixpais' of https://github.com/Oblisk234/Yog…
Oblisk234 Oct 7, 2024
bad89bf
Attempted debugging
Oblisk234 Oct 10, 2024
2e685cc
Not causing errors now
Oblisk234 Oct 12, 2024
31014b9
Directives
Oblisk234 Oct 13, 2024
80624da
Merge remote-tracking branch 'upstream/master' into modularpda-fixpais
Oblisk234 Oct 13, 2024
d330818
That's one page (somewhat) done
Oblisk234 Oct 13, 2024
c9f6857
Now for software
Oblisk234 Oct 14, 2024
5c1f9d8
All modules converted
Oblisk234 Oct 14, 2024
75e7e12
Buttons
Oblisk234 Oct 15, 2024
fdc125e
Semi-working software downloads
Oblisk234 Oct 16, 2024
93b21fa
Update software.dm
Oblisk234 Oct 17, 2024
16879a2
Better than whatever that was
Oblisk234 Oct 17, 2024
5f5b83e
It didn't throw an error this time
Oblisk234 Oct 17, 2024
0b4b3f8
Now it actually works
Oblisk234 Oct 18, 2024
b4b4c89
Now it fills up space
Oblisk234 Oct 18, 2024
2f25e19
Apparently those existed
Oblisk234 Oct 18, 2024
7e3fc79
I hate the atmos sensor
Oblisk234 Oct 19, 2024
893cd79
Never have I needed such an annoying if statement
Oblisk234 Oct 20, 2024
6062013
Remote signaller
Oblisk234 Oct 20, 2024
6a92db0
Tab highlighting works
Oblisk234 Oct 20, 2024
b525241
Removes old interface
Oblisk234 Oct 20, 2024
96de7c9
Merge remote-tracking branch 'upstream/master' into modularpda-fixpais
Oblisk234 Oct 20, 2024
4500c6b
I forgot ministation got merged
Oblisk234 Oct 20, 2024
fc48b74
Update MiniStation.dmm
Oblisk234 Oct 20, 2024
6822caa
Card interface & cleans up some other stuff
Oblisk234 Oct 23, 2024
82d9221
Diagnostics now measured in GQ rather than arbitrary units
Oblisk234 Oct 23, 2024
6bf5058
Maybe lints will stop being angry with this (I hope)
Oblisk234 Oct 23, 2024
6c4b64b
I thought I fixed all of those
Oblisk234 Oct 23, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion _maps/RandomRuins/LavaRuins/lavaland_biodome_fishing.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -2035,7 +2035,7 @@
/obj/item/stack/sheet/mineral/bamboo{
amount = 50
},
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/obj/item/reagent_containers/glass/gromitmug,
/turf/open/floor/plasteel/dark,
/area/ruin/powered/fishing/shop)
Expand Down
2 changes: 1 addition & 1 deletion _maps/RandomRuins/SpaceRuins/TheDerelict.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -1421,7 +1421,7 @@
/area/ruin/space/derelict/bridge/access)
"eC" = (
/obj/structure/table,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/floor/plasteel,
/area/ruin/space/derelict/bridge)
"eD" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/RandomRuins/SpaceRuins/bigderelict1.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -2114,7 +2114,7 @@
/obj/structure/closet/crate{
icon_state = "crateopen"
},
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/obj/machinery/light,
/obj/effect/turf_decal/delivery,
/turf/open/floor/plasteel,
Expand Down
2 changes: 1 addition & 1 deletion _maps/RandomRuins/SpaceRuins/bus.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@
/area/ruin/unpowered/no_grav)
"av" = (
/obj/structure/table,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/floor/plating/asteroid/airless,
/area/ruin/unpowered/no_grav)
"aw" = (
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@
"ar" = (
/obj/structure/table/wood,
/obj/effect/decal/cleanable/dirt,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/floor/carpet,
/area/template_noop)
"as" = (
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@
/obj/item/laser_pointer/blue,
/obj/item/lighter/greyscale,
/obj/structure/closet/crate,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/obj/item/clothing/gloves/color/yellow,
/obj/item/clothing/glasses/yogs/eyepatch,
/turf/open/floor/plating,
Expand Down
2 changes: 1 addition & 1 deletion _maps/RandomZLevels/VR/syndicate_trainer.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -1841,7 +1841,7 @@
/area/space/nearstation)
"kW" = (
/obj/structure/table,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/indestructible,
/area/awaymission/centcomAway/thunderdome)
"kX" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/RandomZLevels/VR/vrhub.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -2447,7 +2447,7 @@
/area/awaymission/vr/syndicate)
"Jl" = (
/obj/structure/table,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/indestructible,
/area/awaymission/vr/syndicate)
"Jz" = (
Expand Down
6 changes: 3 additions & 3 deletions _maps/map_files/DonutStation/DonutStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -19633,7 +19633,7 @@
/obj/structure/cable{
icon_state = "4-8"
},
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/floor/plasteel,
/area/crew_quarters/dorms)
"iiD" = (
Expand Down Expand Up @@ -31851,7 +31851,7 @@
/area/maintenance/port/fore)
"nlA" = (
/obj/structure/closet/crate,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/floor/plating,
/area/maintenance/aft)
"nlC" = (
Expand Down Expand Up @@ -44827,7 +44827,7 @@
/obj/item/taperecorder{
pixel_x = -3
},
/obj/item/paicard{
/obj/item/computer_hardware/paicard{
pixel_x = 4
},
/obj/effect/turf_decal/stripes/line{
Expand Down
4 changes: 2 additions & 2 deletions _maps/map_files/GaxStation/GaxStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -10356,7 +10356,7 @@
/obj/machinery/keycard_auth{
pixel_x = 24
},
/obj/item/paicard{
/obj/item/computer_hardware/paicard{
pixel_x = -6;
pixel_y = 4
},
Expand Down Expand Up @@ -28835,7 +28835,7 @@
/area/security/execution/transfer)
"nOj" = (
/obj/structure/table/wood,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/floor/plasteel,
/area/crew_quarters/dorms)
"nOx" = (
Expand Down
10 changes: 5 additions & 5 deletions _maps/map_files/IceMeta/IceMeta.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -15674,7 +15674,7 @@
/area/aisat)
"eFc" = (
/obj/structure/table,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/floor/plasteel,
/area/crew_quarters/locker)
"eFd" = (
Expand Down Expand Up @@ -34310,7 +34310,7 @@
pixel_x = -9;
pixel_y = 7
},
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/floor/wood,
/area/library)
"jZd" = (
Expand Down Expand Up @@ -49332,7 +49332,7 @@
/obj/item/taperecorder{
pixel_x = -3
},
/obj/item/paicard{
/obj/item/computer_hardware/paicard{
pixel_x = 4
},
/obj/machinery/firealarm{
Expand Down Expand Up @@ -56432,7 +56432,7 @@
/area/storage/tools)
"qnr" = (
/obj/structure/table,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/obj/item/folder/white{
pixel_x = 4;
pixel_y = -3
Expand Down Expand Up @@ -80543,7 +80543,7 @@
/obj/item/poster/random_official,
/obj/item/poster/random_official,
/obj/item/poster/random_official,
/obj/item/paicard{
/obj/item/computer_hardware/paicard{
desc = "A real Nanotrasen success, these personal AIs provide all of the companionship of an AI without any law related red-tape.";
name = "Nanotrasen-brand personal AI device exhibit"
},
Expand Down
8 changes: 4 additions & 4 deletions _maps/map_files/ManateeStation/ManateeStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -683,7 +683,7 @@
/area/maintenance/solars/port/fore)
"afV" = (
/obj/structure/table/wood,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/floor/plasteel,
/area/crew_quarters/dorms)
"agk" = (
Expand Down Expand Up @@ -3115,7 +3115,7 @@
"aBH" = (
/obj/structure/table/glass,
/obj/item/disk/design_disk,
/obj/item/paicard{
/obj/item/computer_hardware/paicard{
pixel_x = 4
},
/turf/open/floor/plasteel/white,
Expand Down Expand Up @@ -3453,7 +3453,7 @@
"aDJ" = (
/obj/structure/table/wood,
/obj/item/storage/pill_bottle/dice,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/obj/effect/turf_decal/siding/wood{
dir = 10
},
Expand Down Expand Up @@ -43147,7 +43147,7 @@
/obj/item/taperecorder{
pixel_x = -3
},
/obj/item/paicard{
/obj/item/computer_hardware/paicard{
pixel_x = 4
},
/obj/effect/turf_decal/stripes/line{
Expand Down
4 changes: 2 additions & 2 deletions _maps/map_files/MiniStation/MiniStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -12291,7 +12291,7 @@
"dfg" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2,
/obj/structure/table/wood,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/floor/plasteel,
/area/crew_quarters/dorms)
"dfZ" = (
Expand Down Expand Up @@ -21936,7 +21936,7 @@
/obj/machinery/keycard_auth{
pixel_x = 24
},
/obj/item/paicard{
/obj/item/computer_hardware/paicard{
pixel_x = -6;
pixel_y = 4
},
Expand Down
6 changes: 3 additions & 3 deletions _maps/map_files/YogStation/YogStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -8592,7 +8592,7 @@
/area/science/lab)
"bnv" = (
/obj/structure/table/wood,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/floor/plasteel,
/area/crew_quarters/dorms)
"bnx" = (
Expand Down Expand Up @@ -10038,7 +10038,7 @@
/obj/item/taperecorder{
pixel_x = -3
},
/obj/item/paicard{
/obj/item/computer_hardware/paicard{
pixel_x = 4
},
/obj/effect/turf_decal/stripes/line{
Expand Down Expand Up @@ -61616,7 +61616,7 @@
/obj/item/disk/design_disk{
pixel_x = 1
},
/obj/item/paicard{
/obj/item/computer_hardware/paicard{
pixel_x = -8;
pixel_y = -3
},
Expand Down
4 changes: 2 additions & 2 deletions _maps/map_files/generic/CentCom.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -320,7 +320,7 @@
"aff" = (
/obj/structure/table/wood,
/obj/item/pizzabox/vegetable,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/obj/effect/turf_decal/tile/bar,
/obj/effect/turf_decal/tile/bar{
dir = 1
Expand Down Expand Up @@ -8310,7 +8310,7 @@
/area/space)
"awV" = (
/obj/structure/table/wood,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/turf/open/floor/wood,
/area/centcom/syndicate_mothership/control)
"awW" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/templates/infiltrator_base.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -412,7 +412,7 @@
"aV" = (
/obj/structure/table/wood,
/obj/item/pizzabox/vegetable,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/obj/effect/turf_decal/tile/bar,
/obj/effect/turf_decal/tile/bar{
dir = 1
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/modular_computer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@
#define MC_AI "AI"
#define MC_SENSORS "SENSORS"
#define MC_AI_NETWORK "AINETWORK"
#define MC_PAI "PAI"

//NTNet stuff, for modular computers
// NTNet module-configuration values. Do not change these. If you need to add another use larger number (5..6..7 etc)
Expand Down
2 changes: 1 addition & 1 deletion code/_globalvars/lists/maintenance_loot.dm
Original file line number Diff line number Diff line change
Expand Up @@ -646,7 +646,7 @@ GLOBAL_LIST_INIT(maintenance_loot_minor,list(
/obj/item/kitchen/knife = W_RARE,
/obj/item/melee/skateboard = W_RARE,
/obj/item/mining_scanner = W_RARE,
/obj/item/paicard = W_RARE,
/obj/item/computer_hardware/paicard = W_RARE,
/obj/item/paint/anycolor = W_MYTHICAL,
/obj/item/paint/paint_remover = W_RARE,
/obj/item/phone = W_RARE,
Expand Down
2 changes: 1 addition & 1 deletion code/_onclick/hud/pai.dm
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
if(!..())
return
var/mob/living/silicon/pai/pAI = usr
pAI.paiInterface()
pAI.ui_interact(usr)

/atom/movable/screen/pai/shell
name = "Toggle Holoform"
Expand Down
15 changes: 5 additions & 10 deletions code/controllers/subsystem/pai.dm
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@ SUBSYSTEM_DEF(pai)
/datum/controller/subsystem/pai/Topic(href, href_list[])
if(href_list["download"])
var/datum/paiCandidate/candidate = locate(href_list["candidate"]) in candidates
var/obj/item/paicard/card = locate(href_list["device"]) in paicard_list
var/obj/item/computer_hardware/paicard/card = locate(href_list["device"]) in paicard_list
if(card.pai)
return
if(istype(card, /obj/item/paicard) && istype(candidate, /datum/paiCandidate))
if(istype(card, /obj/item/computer_hardware/paicard) && istype(candidate, /datum/paiCandidate))
if(check_ready(candidate) != candidate)
return FALSE
var/mob/living/silicon/pai/pai = new(card)
Expand Down Expand Up @@ -69,7 +69,7 @@ SUBSYSTEM_DEF(pai)
if("submit")
if(candidate)
candidate.ready = 1
for(var/obj/item/paicard/p in paicard_list)
for(var/obj/item/computer_hardware/paicard/p in paicard_list)
if(!p.pai)
p.alertUpdate()
usr << browse(null, "window=paiRecruit")
Expand Down Expand Up @@ -141,18 +141,13 @@ SUBSYSTEM_DEF(pai)
return C
return FALSE

/datum/controller/subsystem/pai/proc/findPAI(obj/item/paicard/p, mob/user)
/datum/controller/subsystem/pai/proc/findPAI(obj/item/computer_hardware/paicard/p, mob/user)
if(!(GLOB.ghost_role_flags & GHOSTROLE_SILICONS))
to_chat(user, span_warning("Due to growing incidents of SELF corrupted independent artificial intelligences, freeform personality devices have been temporarily banned in this sector."))
return
if(!ghost_spam)
ghost_spam = TRUE
for(var/mob/dead/observer/G in GLOB.player_list)
if(!G.key || !G.client)
continue
if(!(ROLE_PAI in G.client.prefs.be_special))
continue
to_chat(G, span_ghostalert("[user] is requesting a pAI personality! Use the pAI button to submit yourself as one."))
notify_ghosts("[user] is requesting a pAI personality! Use the pAI button to submit yourself as one.")
addtimer(CALLBACK(src, PROC_REF(spam_again)), spam_delay)
var/list/available = list()
for(var/datum/paiCandidate/c in SSpai.candidates)
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/items/gift.dm
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ GLOBAL_LIST_EMPTY(possible_gifts)
/obj/item/toy/beach_ball/holoball,
/obj/item/reagent_containers/food/snacks/grown/ambrosia/deus,
/obj/item/reagent_containers/food/snacks/grown/ambrosia/vulgaris,
/obj/item/paicard,
/obj/item/computer_hardware/paicard,
/obj/item/instrument/violin,
/obj/item/instrument/guitar,
/obj/item/storage/belt/utility/full,
Expand Down
4 changes: 2 additions & 2 deletions code/modules/food_and_drinks/food/snacks_salad.dm
Original file line number Diff line number Diff line change
Expand Up @@ -85,9 +85,9 @@
foodtype = GRAIN | RAW

/obj/item/reagent_containers/food/snacks/salad/ricebowl/attackby(obj/item/W, mob/user, params)
if(!istype(W, /obj/item/paicard))
if(!istype(W, /obj/item/computer_hardware/paicard))
return ..()
var/obj/item/paicard/ricephone = W
var/obj/item/computer_hardware/paicard/ricephone = W
if(!ricephone.pai)
return ..()
if(!ricephone.pai.has_status_effect(/datum/status_effect/speech/slurring/drunk) && !ricephone.pai.has_status_effect(/datum/status_effect/speech/stutter/derpspeech))
Expand Down
Loading
Loading