From f624938ef128d3bc0a37c0dd3e2e19a05c6f39e8 Mon Sep 17 00:00:00 2001 From: SoundScopes Date: Tue, 8 Dec 2015 10:32:10 +0000 Subject: [PATCH] AI hologram custom things Custom Sprites.txt is the strangest file I have dealt with, and this might not work --- code/modules/mob/living/silicon/ai/ai.dm | 23 +++++++++++++++++++++++ icons/mob/custom-synthetic.dmi | Bin 240550 -> 240564 bytes 2 files changed, 23 insertions(+) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 7ea6ca75..7a11d39b 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -59,6 +59,7 @@ var/list/ai_verbs_default = list( var/obj/item/device/multitool/aiMulti = null var/obj/item/device/radio/headset/heads/ai_integrated/aiRadio = null var/custom_sprite = 0 //For our custom sprites + var/custom_hologram = null //Hud stuff //MALFUNCTION @@ -665,6 +666,23 @@ var/list/ai_verbs_default = list( return var/input + if(!custom_hologram) + var/file = file2text("config/custom_sprites.txt") + var/lines = text2list(file, "\n") + + for(var/line in lines) + var/list/Entry = text2list(line, "*") + for(var/i = 1 to Entry.len) + Entry[i] = trim(Entry[i]) + + if(Entry.len < 2) + continue; + + if(Entry[1] == src.ckey && Entry[2] == src.real_name) + custom_hologram = "[src.ckey]-[src.real_name]-h" + if(!custom_hologram) + custom_hologram = "none" + if(alert("Would you like to select a hologram based on a crew member or switch to unique avatar?",,"Crew Member","Unique")=="Crew Member") var/personnel_list[] = list() @@ -686,6 +704,9 @@ var/list/ai_verbs_default = list( "default", "floating face" ) + if(custom_hologram && custom_hologram != "none") + icon_list += "custom" + input = input("Please select a hologram:") as null|anything in icon_list if(input) del(holo_icon) @@ -694,6 +715,8 @@ var/list/ai_verbs_default = list( holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo1")) if("floating face") holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo2")) + if("custom") + holo_icon = getHologramIcon(icon('icons/mob/custom-synthetic.dmi', custom_hologram)) return /*/mob/living/silicon/ai/proc/corereturn() diff --git a/icons/mob/custom-synthetic.dmi b/icons/mob/custom-synthetic.dmi index 31513bc5a2fc72559b262d54d3aa94acbc6feb94..b29394dfd1cee3562a48515812cae0d5064dc745 100644 GIT binary patch delta 1059 zcmV+;1l;?k*ABGT4v-{&_z$%+LE_tK^iNzey$XlEIQ5TJCdz?j;@_IAYb5<+W+95&G+(ffT6g&9;Pz+MKM*%tBk2i zUU|$^GHPUYgYyc1WiFFbEmM`Ol9}cwaPyp5`o*2_h!%+M=Cwq#9NMVb9gRZ>>dYCcEQV=PlRXt`X`paZi- zQHH$W9*5m}JRAmmG*Fysjv z3mOiMhFv6Gtm|9RYr3M>Gl6JyAT)w0f#8FIfZ_e#$I@?qBKQqm(an4dg28}TK+x)l z1%!Nz#ski@G%8xr$~Ieu#;em7d-V)^kj7cq7rOVT5;yP0zCjf|3elDGR>f_7ZOg4G zqicHn8xr$>*gdp)nm>aa8s5b^4CZ7I9fJ#t^aCy=a@so)zn|Se*n&PL;5s)FGMYue z0fqvzw0_6MVOkz1 z7w>v3jtlpxz~0Y}1>eV`TkJF+TDSTpAZ{f*Xkl7^;a#KEzt^;OaiKM^m1_}odA^#` zdKT?@&l{~?@JGdocug5RfjuKm0QQ6!0o3_0UNrV}un64QZ~~Ag!(@D*U&?~;P1aO% z+GcqkHqVM24loqicR=+ZF$r@HAfjag#51MgQXZ`0IlFu5C zj8=P1$gmudlxK;N!X6VNfsGj88XqsG!I)?n2P0n42+*4UQhU{?;ukku@gxa^0`iBNi2p{NILTF~AO)(UyYdjRW=z#DS=?S|ak-!1UvaIbVOxyV{&P5bZKvH004NLwVBOw+aMH$*Y;B|&9bN? zu+@nd-ZaT{(wTJAC!iLIXl2j_Xp25*^;6k@56eX>v_V_6UM?Or z+jE1qh>WA!Uq-UQbjnsgER!wMt)HRGMaz43KwGrIr1mP@$tNK>*Frv(i+p2JSf$Ga z9(XHutiM1&NPfZmKltuh3wyXkLBEI{FBiB``=2bZ`9Yo^xT!9$hp9|?QB0M}Dr2fr zRvt5zf*P5<;Icx0nah+^%T%SPWM+J2I>CFVWQZfP9%Tq7m|%Ynse#LZN#3JsSH7N6 z<>ULPyk@Fs^=dWea2wGYH_Jt*tQnL=TeQZ6V&Z;7YfKtU=W`@IMhb`xH+HbM*yJ6tn!hKhH5AwCV#J|G#E`EKQ_0nRFaQp-}q7p+ML; zkU6xP?-J?aJl_gm;}yQ12_&NfpbYb&z;EyhZ{}MN4F6~^ zZYucx)b1|NK4IDP7M3cr+Rii}-6?OFT`W+t!X?eU{ zy6bT`Cj6%Y`8+!oLZ5(cwbRUWe)Ua6+(~$@h3!OtaE(s?-r&Z^#nwPpzC|?k`D$wC zE;_J*wOYNxkBSrVmNIYxdPbZ8=m{|bpz~pTXz1zS5U{i11OQKl$@oaWR0P4Btf}U- z%?eyL&x)KMxT%WYfEu`jB+NMgh?WVE&Xkr(d7!igB?@hh{-O=0nADi!(^su2+XM*%T`w?Kwj07zCobkYD zb=L$8%Mr=BON3CY#BiqJ@p2jriI#D2I#!sdI@PP{H?vH#!0-mxtGIvgB5O<< z9Gs~#&m#1a-etO0bG8?MhQ7Md!UzM~!EDNZ0hBaWKkuwiGJCQd*1>wN;l?T8MkL!k zW#~v{8806jiHxwyg~suDc~!u