From 74b58adac672985a2bbc2ef5770dc87d72799e2c Mon Sep 17 00:00:00 2001 From: Maurane Date: Tue, 24 Mar 2026 20:24:43 +0100 Subject: [PATCH] ITF dialogue --- .../it_that_feels.aseprite} | Bin .../it_that_feels/it_that_feels_neutral.png | Bin 0 -> 13230 bytes .../it_that_feels_neutral.png.import | 40 ++++++++++ Dialogues/Entities/it_that_feels.dialogue | 74 ++++++++++++++++++ .../Entities/it_that_feels.dialogue.import | 16 ++++ Dialogues/Entities/it_that_feels_file.cfg | 15 ++++ .../Supervisors/supervisor_loeveth.dialogue | 38 ++++++--- Scenes/main/main.gd | 2 +- Scenes/screening_desk/green_button.gd | 1 + Scenes/screening_desk/journal_layer.gd | 1 - Scenes/screening_desk/patient_global.gd | 8 ++ Scenes/screening_desk/red_button.gd | 1 + project.godot | 2 +- 13 files changed, 183 insertions(+), 15 deletions(-) rename Art/Subjects/Entities/{she_who_feels/she_who_feels.aseprite => it_that_feels/it_that_feels.aseprite} (100%) create mode 100644 Art/Subjects/Entities/it_that_feels/it_that_feels_neutral.png create mode 100644 Art/Subjects/Entities/it_that_feels/it_that_feels_neutral.png.import create mode 100644 Dialogues/Entities/it_that_feels.dialogue create mode 100644 Dialogues/Entities/it_that_feels.dialogue.import create mode 100644 Dialogues/Entities/it_that_feels_file.cfg diff --git a/Art/Subjects/Entities/she_who_feels/she_who_feels.aseprite b/Art/Subjects/Entities/it_that_feels/it_that_feels.aseprite similarity index 100% rename from Art/Subjects/Entities/she_who_feels/she_who_feels.aseprite rename to Art/Subjects/Entities/it_that_feels/it_that_feels.aseprite diff --git a/Art/Subjects/Entities/it_that_feels/it_that_feels_neutral.png b/Art/Subjects/Entities/it_that_feels/it_that_feels_neutral.png new file mode 100644 index 0000000000000000000000000000000000000000..fbab587a4ffe82cf3becd091d63176fd006d0c8a GIT binary patch literal 13230 zcma)jc|4SB*#ATJ7F$t>sG-tWN|>w(Sq2>xAqI7_Wf@xxV=A3U$Tp@d(;?$18e)iy zEs_*5nPC#y!m&s8<@Zc=exLWu%y~cW{4>Tp&;8u@wS2GdwM^_e%dK zai)|f;}0yC)NWcHfz(=?9l3Sa=zFvuCG6?+dz4>etaxqz-)%P4F>8HsZLP-;l|IU1%5rLNfPi7kv+P%eroDk*Bq&% z8e4D^GIK3f6+3ylObGD!lj#_W8o;@tL+afkd+vz|76wN~ZuGf(9Yj^W=#SxZog#S+ z#ScaU`cS5W&?`7Fa+Td*V!-{G-X@nBN|+BuL(Jsvkc4ZKm#~@n!&Qviwlm%4P|krN z7Q_n>=Bkq2z1lA#BP@xYe?XI7KYjXC%SAbMGR-6QJL!$Z(PJ>eaA}+vCvb#$g;EYo zPB+5bws<6yG)g=<+W4xqwbk>p$jH;Iz1<=sty!g)^&qIjutZH+;1SbVwbTJ06Q!d# z31P{1S+$GWfv-1=$4({{(+<^V(qr6OP!>nI0Ee+UPEY{{)VPmLef)i|s~C4cF7%k+ip-5773C28GA7 zOzd+)yar;H`(ozPtL-v{fO2ND!FmDqCC(-FBDuM@$&2O2P*HyK)W!v**&qr+E7GaC zq6aF*KO*RtmHp!axjdM(eV|y3w#=OUU{S5A5MwKq$-EE&SIcYF&pF%?oc=KvvWXGX=$mJOKo*^#0<(iH-scy-HURR-yj+8@+O`~S^@{; znaq+<2+g4AqT9ObjNclH}{4O91aCM0Y7V2DWnJb_#CB&?C8FP-_<5)bk_5J(zGNlI#b~z#8 zh$oO5nzxs$uO19Cb25z0Iu8YaV~DnvTe zM+?s%_Y?+V&M;vxpDb{!@bWiAEX@5Dl(t_O<)eB^qDq!qk+V;@g+Gb~_le*2 z6K-sNqDUF9xgP+O53bCQ`b~$EFCTSj9j@spsZTy~m$X*c<$ZG?rX`W=miQy`=*oRl zcYE$iod0NfsE~YNitClQvh(ti8t_h^=|D#q5;0XH4wIqA%{<=3Pv+MSod}H}j$Mfb zLyhS=G!))42O-j4FL>pPQY{75T!jFtInyExsXT&&Uw8^>xPXGU+Sbt9KPk#zM7Ckc z-yiyPi|`+d6~HzE-uXMJ(+c7Wh38+k(_8+?iD9oG6JkLWsifYyqZa$3cdR9rTsB!c zJpa|XmI1O*n=Pc5!nVbSw)Sfmz1(9fy-5)Y0E@B23USuG{rH+c(98W6Ip=2O{L=Bk zOmZ3Ar!fA_NEux6SkD>r$!8(fuB|W*OmN4)?Oh(UwCxioPZC3Jf?#J@vbbJQWT662 zn}k*1lMg$YHY$g<2?sRvlFSy*Y3T?7n!2p2MqKf7kA#{H-hg&A_3Aq2#N@t*ji`{R zKmFy9{nN`1F6NoViw-0kKF4Q@SUzBm35ig}3p~IVoKDo{`g>&>G@w#ApgMWzEL^4c zA^p1h^vkNMs)tlk3RhtBV>7p)gKm)!(LIiBJ>M>MN&lcWgZ@vLG)BL6*kLC(4=CUh1B(dfq4%(r%05Js%UKUL?sUMRZ5 zQC_4Ee1*ZU?N$<>@QxKLZ{+uGw=vKLfi&^oHmoLW0Ce9M?x^la5v@?at&)aboQW9K zqO5|iwjp!EW}4xm*|1wA*$o3D2{+N(HQkVMzz0iKb9?s~qKnN~wL`v(X}LuTw@|qE zXau!)F3eHR5Axef?2#L!k{V|)(AA_k&zY*80dRL%cVd47t2to3<{7&)p)V@VS+$Pd zemyw&WRau%M4s0W>LAEpjIGqUSm2Oh9*XBgG!$WkkOssx?P7KH7q7>o$%FAEd_d#l zYAi^BVsAhkwVF@n(7$9QtcH$?b5N-a5q zs=W1Svuz36xM7xa69jsGN4I-WB))aw3}BCCJqX|9Lr6^n^FrcfKj>Tw-FxJjY#XHS#``KpxvlA!zg#jEB=rIiD(GdZS z@J^Sb;xFAZ)f~D-K$5JE-YZ+h2b3|zsYS&2PN1$NY;%1j!{u3EK&4tpdd4C91KG#rN%JJwRQyd`(aq3?M6ADVzl|kpWn7xQ8nEB!fxudw0xGzOI4))%Lwko4* zwTm7OTPss8pt3(fKoBL& zSPVr&=ExmL5Z3yzcSXzL(#K+Ve$Ba=xb?cfdMWrNOe+JMo}Nyrg7DZMe-DD=E;dWK zg6`>*O1#j5GG9~=|AsI%R1JljmZ^LTYH;%LH?;L%c-$bE5*sZjqnk;s9FK-UO6sv5 zu1YzFpYZ{$Yz}+laY+ppbh=Ti5x3Y%TGT?WOmM$rn;v>m@JWKz&<#jOgGWF^ayP=% zwpd+c8Sk=5dotvxjar-}HxJ8;B;X7@p34G_`AoDsS_t^vT7+UApCDRp;vN~bAhS92 z!MiJ4PaO8nh+(#r`Qfrgp1|MgVPKZGIZdgZ?{jZ!Ya@Ig85t?FbdRj`aE+sPKYAkz zyt86OF@IZR(yL_fT$Y;o;JKl{)w?Ih3EbVuN`8LCv&R(v^yJqQNDx0M{N7#0+Z|Iu z=_kGBp^5ByXCVn6x*vsJ6A!#L>TPUwf(v-fCaj&_zv~WYiIVU{nW>7}Eyo!h`S`C! zaiWAyavsW(k-+GpV%wwUn#!ElqU%BIFy^+Y-Ske(|8Awb;WLItQnuMtYW~T83lK_S z1tR+gPGu^W&L)TwI2%a?Dc2y|+0fdpjF9HD z*`xMuZR6-b=cQ5nRu3u>rlplZ1*sLq0Ss#_DHh0of@arO<~7V`25^Ot!HU$poZEq? zq;{G6{n;WIwft(_uOUucS^8L|IH1YHdWJ`(6bhy1S=#GDV;7Aqkmbt_h(&D1DHFa+ zxMM0kMy>QVdQkltmeT9*UAE#qH&U$hy!*Sgz%s@Tov5Q(_ccd@IS|`f;T%AGbHA-7 z4OTALqrLF)B$XOrQGSrhgMKV^I#m!z$Y51#_g}9D&ILy(9X)JmuLS1m!VS(yFuZm& zfLY}NPK2<@0kED4;X2+}2Xg9Za&Ep*CoLv6xR0qAU(+>w`aCTAm&Uw$xxUA2WZQjva zZ>0s!)t!9J@3{EDc-~BYbpx-l73vT*QBS;Z>1ld$B=t29WoTa zhUNge0ah2$C#n5@UMtBTYJ7J8!L#!YK4ISu04fQrT0^LMKQOU>+1?veOKRkyJ+}f7 zT5L?D%h%VJ@Lfz^gn$fa_&Dkk5imN@EYYm^KpXe+DgcEQa}Ru6(0_11p9iU*VbxJ7DcU&w~O_*tW$Me zKa?2)G0cSv(5v1JFDwK((2Thqb8bUv?^}$x1CyTWp;r__YtV2}e%fDGzJ0;htgfIE z+doS}=Q^E*Yq2^pV(jsgv(w(C6?GO4_33eprEAKzK8fF1zBgdz`(0HAlrlRvfdhXvS@2XZ!Mn^ZkVZ(^}A+%d+oB@*orxUmulvIYiqTCbD&ID zPY+LpF1?};T_?-Sasnf)3+o>M1A{Le(Q4Sxi#ls{vvoxyYI%n6eLm`2A|d!%ri%C; zC$F~y73dMWJK1{iYk6ilx5rh-!_W)(%~n*uqgE5~Lbz2zw)9~h*2DocW8jac@fcDg zfBIbkrMxQwuGf52x z6n>5ayIAe;+(1w1RlmMa__YP)_?^aLvJQJ>E$xv-c=T$iC)w6kWe-&S1-9TeX(^)R z^6Pvnyk*oG=bDI>M^~bNVhAf8-U)ja+ z1Kj;+d zNZTU?KUxBr6p0x}pj(1f0khKW**d7w1!?R2{CvtOgUnMcZ^dpHj0vTnXu7Lp<)d$U)^^R5iw z!;VVaa9Z#yFuhGE|INE#%w^g+Sa2J=j1+ir%QF-J0$5=Rv&*>_ty2^zy6wi4kQO(l zhE)o6`#}jV5|&_scV2;P?T_&ZNb_iFrf9->i5_zWlg03vv4Yee!u-k*=IN#FK;2t* zK|^BxAr{PX>I?3+G%S|k72v%5GD-fW(VN^RT*+PO}VdCpC!4X1a$sPX*Y zT~9qX#yWDjL#=&V1B$_Nqi1A5fND{DdwY7fWl9HFlWHFIS*hW~II!^@1BpHG+}mJ7 z;N3n!II&B_FWR{i^$pC}#z@9izr8c!u23fnvlOx!@otaM#H|{`6##LGb))*{Jbj8U zn<1vZ!}9litqun%l3w_NM}1aVt3~RkoBw~0p)Ws+d}`SggUsotaB#3&sm^#r?k?E} z>RfRpH_BUB4`41s{iq;aeu8*1jLRDyyrj1|2U1SDg5X!2$?^qXIoDyZiaN9B+7?iJ zlJ)psvO!Ig7sUSXcwqA4b~hqHbHH(J1MPsviAgi`~^CRCk^Z; zx}Mrm!o5rCr2-l%kQDxkcWP&V7c#7-tCI3+K&6PLc?}9up+=s5i_F=gpi{2XxS;(# zRP)NQaa;5LUrv^UjgOYaqECs=%iaMoej7~zc^3z5S3!-VFUke8n1{+TsjpP_Ow1#Lz&f|R`M zT@sZgRFL|20a!LjceEP4vD!wX>FW4Tt?9|jdHNZ}31APeOi`CBS-VysQ~&TlQ<@wj z`Yf)Wk8Psi61KiP2WH_*Ymr^3sM%XGLH$--a`ywIyfgi`rz|TeDLqNpnhvei+JLTp zYgGon76JeZ{z^uJcM z&s*?g;y<@ zpP%=!51Fu?v&s&7K z4gTpN3kb7n6LG=&o`AGsN5c@-xZ7ITEffOQSr)!0EHkc;W2$6;MWQ-?PoHzP{?e6T zlW1{mqpWW#B(%md!rY=+i=k0*aq-ZaJ~?_&gS)i|bhiQ*LXFi_ca)I8&KTU!uvgHm zFw%N}uQK)yslP?6=GB(6!(mIlx^t{9G4}iRlKP-kXQk0p)4hs)bbPWPD&rT8?*Xu3+|4lRR?9+jJ{ihXhorjE<_ zP=V#Y1(O%Fmebf*Y**%AFn%X@|HSA~SxY{BW!BAo(disVc_#`q@Hr;DA(`Z>Iy*TX zdm#$Mut~1p4dV!62A00o1FAg@SGh1AteZVIJU7(rhpt2~jCCYCUQ7dHyD^`u_m2d= ztE=m#*0^F;)nNxPf6$q&=aqqPS*$Q@^q>`Ua-3IZ>u|Wn{G@ z_pG_^mGhnBo}N33hl9U-me!5XEFuz#cbpaDMZdcJ0U^#?cph80C8&$rbetbachSW~ zX#j;cSXI0HHplvpX#fy)V$1^gR%B2I(Lyc~3UE9{I7I+;BvvLHkGGnLi;D|W=K<@A zw1L(uqL}=?dg@csOJ1|VD)Xk_(;r&$0jaD$4Y-&NSz2XlS1yHxTO68%(9w_5g;ihm z1~p^`H6Tuf6&szprji8~h#d*6Wb~+E%+PyS*3JaesnQc}r(B6RS->ZrRr-Ia$bt1} z6U3^{WXMbIP=m|k|U53CEfLS*6n&pT8GB~ld zjhfalaK4~J4&AZ%NTuLOWHmDkQ9JD0aNkV4N+nVKZ+nrH-T2F8 z$^1A{QXk*awW?94XqD02MBRr}eB|QAivL(6{;g3(coQ+?<>#`#nWal@rtopU&u$Ak zm8r>K7q9Lmo5!Nw8f9W1np}q`DS8MGTzs=(Ap|n9HP&)no&3VXWU8D&VL>`yk}37d z)KbKgk&DwOlV;b~BOF|uoO;)^fnqUMm0)}gw+9FUEDd&$@gV}iXwvB@RCF^fcJ>{C z!b1UDfW_Qw){ygzKANS*OX@ZEW0a*G`a!Vy53G&IJ4D^>DzdNGxw7_zhK2@Zb$IwP z6_l6+tC?YLAOrq%kC&647|rPwo4x_nZUuzc*l_~Yx59C_$}vW~3;k@NqI+hET=9z2 z3r}>96tk`z&x8B`C_g{Hr+p|iTDM49NoktQ3&g-#ff)=+Nv6}yWDa&%Ai56H*1xRJbwq>s9?&z*uwhWA}Ox`=aD%raQ+I4ff@(XPAZ4s2-!u~G_JCx^L6`?6rQtZ;|(7mE(Yq} za=XVCG&9uY%2VQGjPHNSI4s&RoSo&dbalFC{QD$6GcyP#2oz?qx?RFs#z{cRU7yu! zWtvKa7@RycZ7a8NiMolpc6wUF%tfY%X8R!-rR$KnI5`Q{+?|}9;1eL-(sJR&keGn- zpV_E?2AF=0N`XC>I=CEMZ5thWvR)J@XQOA8r=NW*7Q|jC)b0n0ceC;#A4`c_W(qM6 zMC{v^jAMJtbeG_j3#c`6{~FnIW3E|7xnw_Je~;;WzoveEwc-C60s`kmFkR;P0?(Bg znMQuC`|7Fr)(x?2QZVcnJ=;Fb1<;wipJ|bQKHBhceA#v9m21)jIB}*_!`uCE;i5Ud zzG#XAko!LiN1wNY@W;rajn+sp&DKzqnqbxH=djk7Jd|rOD@Deqq@;L81_n|#*4cWS zJ;r2zVcbiGvtg?@l?8kVG_di?kqc_V$RX2tJhzm^U@y|ru zuQ8TiAK&jb0LCW$HQ^IrwHu7=_prJ{*^z9EG==&~1g>hw=`a}K>fa!gj6;Dsf2N0k z^AumQ6OP>6U5~ECQ(u0bZlmpM4(&?^QTIbSlMcZ);)`3?52z@Bt>Eh#tcFpH;R}#e zHKoeY=Q&wBHNQrp{+Yx3_3;77(f^)WTJt1-niA{f*Ovk*xw#()P{jtve}fS;2gb+8 z%XFo7fp(E#wF(D)T_P`PLU(g{h{1A(*f_IR%w%MW$w6|V&U1|hRU-)w1Q+Yp{jECO zf*`_r9fuN3TOy?gV0#3)Fd?k6dQ|Em{AVw^@nOs{@ojLIM6o^h%4GmedDbft+*A<@ z5%bH?CH-L#GW(h59HWIWxupJ?{O=$>`z!brK^)RVVO4Lcq$s6Au3O{%rvOc6g8+5a zoyo8r@@*kxN4}G`7c@mEmN?S)>3Gyjp!+!Mu~br$_u7_?|6TxF!e$)sq&v6-qAM!- z{+5`T_dxMrpiC9!|Hh1BSf!_jc~<^n=D}wftHUW)gy2(oyNo3xXS#G<4uYL>FoGI0 z3E{u(SN&?^ur8*fv-T1=;={HUq0{-7rBZ_p60XJo1~3=bqN(KflG9(>3)> zfk$i_i^ab&v_XVOH>p?JajFr` zEg!&Vy7<~HTZ2&+K5+d0_T7LZ^E@ddwtrCkYNKe-C|K@O5HpyW1PAPyrw172lOAi~ z$F>qEwX}QgX&H?bseJ9afRrMuANb$F9{!L?*+$_@E4V#-VfEO%eJ6avcq|TZV?zJW zp`p&s0UYQlGuirzQxah3&_Lgizh;o0)v*0J2^W#P%a%#Gf#c}Tt1Al&3w@)L!O}oC z^W-vk2$dAQROGR?A8jKN`rPPdM zY=*qpwI>q(dSDb_H~E2x={=;GkjRe%>O7b{6acBA z2AwKLo{pK%@8tLX;I=?kJEh+JZ8A=klU*r~km50-sUjg8_a zbnOgMdQfuCu^qNk<^0-?hhhT2JQIvE>P}xDC*kwl%m7k&6N&>7&xYjc3*|8^Kn)3pb-hV_Ra|3Npqbto1S{p?m3OiTjU3lnCKa!AfDD@VIt+)xLe)+ zDAlV|1}J31B`zq_Q_0D(?hsK5vRMyAR8a594Zt7%FX_x~(OjlFk1jL?u zJ+Ins=jX$GXCvOf5qb~K|7r)2oh#@PyJkJtPVfTPFLVBwQ1;;bF{7Gu5fq$4;ZAAq zEp12dZCV3|(FdF9dR7zB!0a2YAHQPg;QH}%1jAC$_x=2}WM`k%QnzKv0<)(?e|{nQ zbN-z1EIktS6Im(mp3jxT6WaPWPxRAa7L?7QMc=>4E;ao-0aN(TYb}0e25KDtdcr>o zLBZ_X?)|)W758RKC@*l&?cZDG|1oMEBmZ-{_95`|JifAAUxFOG9j7jwJkYaw4;jMY z|GPZfD}SAw{W8D4ykx8a)LsAQG~5_LM_O>ucIAuMD^F1~n-xH2CjU?Q{jaOA|FX95 Y{NLx=eBXUz{3gNF$kOnc0pjNW15vm8Bme*a literal 0 HcmV?d00001 diff --git a/Art/Subjects/Entities/it_that_feels/it_that_feels_neutral.png.import b/Art/Subjects/Entities/it_that_feels/it_that_feels_neutral.png.import new file mode 100644 index 0000000..9d5a75a --- /dev/null +++ b/Art/Subjects/Entities/it_that_feels/it_that_feels_neutral.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://562ncd84ds07" +path="res://.godot/imported/it_that_feels_neutral.png-564e0aec8cc37b80b5b34737ad8f4026.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Art/Subjects/Entities/it_that_feels/it_that_feels_neutral.png" +dest_files=["res://.godot/imported/it_that_feels_neutral.png-564e0aec8cc37b80b5b34737ad8f4026.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Dialogues/Entities/it_that_feels.dialogue b/Dialogues/Entities/it_that_feels.dialogue new file mode 100644 index 0000000..318ebfb --- /dev/null +++ b/Dialogues/Entities/it_that_feels.dialogue @@ -0,0 +1,74 @@ +~ start + +do Patient.marker.fill(0) +set Patient.dialog_tree = Patient.build_dialog_tree([31,32,33,34]) + +do Globals.release_display.emit("[color=orange_red]ERROR[/color]") +do Globals.terminate_display.emit("[color=orange_red]ERROR[/color]") +set Globals.buttons_activated = false + +[#neutral] A tall being stands motionlessly before you, its head slightly inclined towards the glass. Two almond-shaped, void-black holes stand in place of its eyes. + +~ part_1 + +- Where are your eyes ? + => part_2 +- What have you done to the controls ? Why can't I dispatch you ? + => part_2 +- Decline your identity. + => part_2 +- What do you want ? + => part_2 + +~ part_2 +The being remains absolutely still, its mouth as motionless as the rest of its physical enveloppe. +Suddenly, you hear a crystal clear voice, neither feminine nor masculine, resonating directly within the confines of your own skull. +?????: ... [color=dark_gray]Silence. There is no time. LISTEN.[/color] +?????: ... [color=dark_gray]It is hunting you. It desires you. It wants you whole.[/color] +?????: ... [color=dark_gray]Do not let it. Do not free it. Do not spare it.[/color] +=> part_3 + + +~ part_3 +if Patient.marker[3] >= 4 + => part_4 + +- Wait, how are you talking directly in my head ? [if Patient.dialog_tree[31] == "not_asked"] + set Patient.dialog_tree[31] = "asked" + do Patient.marker[3] += 1 + ?????: ... [color=dark_gray]Irrelevant information. Next question.[/color] + => part_3 + +- Who the hell are you ? Why should I listen to you ? [if Patient.dialog_tree[32] == "not_asked"] + set Patient.dialog_tree[32] = "asked" + do Patient.marker[3] += 1 + ?????: ... [color=dark_gray]Who I am matters not. To listen or not is your choice. There is no should. Only would.[/color] + ?????: ... [color=dark_gray]Exert your will upon reality.[/color] + => part_3 + +- Who's "it" ? Why is it hunting me ? [if Patient.dialog_tree[33] == "not_asked"] + set Patient.dialog_tree[33] = "asked" + do Patient.marker[3] += 1 + ?????: ... [color=dark_gray]You talked to It. It was SMILING. Mouth like a dark-red abyss, eyes like glowing beads of coalesced blood.[/color] + ?????: ... [color=dark_gray]It tries to smile. It doesn't understand it. But It wants to. It wants YOU. It wants your smile.[/color] + => part_3 + +- Why are you warning me ? [if Patient.dialog_tree[34] == "not_asked"] + set Patient.dialog_tree[34] = "asked" + do Patient.marker[3] += 1 + ?????: ... [color=dark_gray]I shall watch. I shall ascertain. I shall ponder. I shall FEEL.[/color] + => part_3 + + +~ part_4 +- What do you want from me ?? + ?????: ... [color=dark_gray]It hides amongst humans. It disguises. It wears them.[/color] + ?????: ... [color=dark_gray]As soon as It SMILES...[/color] [color=red]TERMINATE[/color] [color=dark_gray]It.[/color] + => part_end + + +~ part_end +?????: ... [color=dark_gray]Remember. If you recognize It... TERMINATE IT. DO NOT FREE IT.[/color] +do Globals.color_change.emit("green") +do Globals.clear_patient.emit("release") +=> END \ No newline at end of file diff --git a/Dialogues/Entities/it_that_feels.dialogue.import b/Dialogues/Entities/it_that_feels.dialogue.import new file mode 100644 index 0000000..d79f00c --- /dev/null +++ b/Dialogues/Entities/it_that_feels.dialogue.import @@ -0,0 +1,16 @@ +[remap] + +importer="dialogue_manager" +importer_version=15 +type="Resource" +uid="uid://o2knx4xqurjv" +path="res://.godot/imported/it_that_feels.dialogue-86e3caa72ee73d90f83a69c31fd7dc42.tres" + +[deps] + +source_file="res://Dialogues/Entities/it_that_feels.dialogue" +dest_files=["res://.godot/imported/it_that_feels.dialogue-86e3caa72ee73d90f83a69c31fd7dc42.tres"] + +[params] + +defaults=true diff --git a/Dialogues/Entities/it_that_feels_file.cfg b/Dialogues/Entities/it_that_feels_file.cfg new file mode 100644 index 0000000..fd0e040 --- /dev/null +++ b/Dialogues/Entities/it_that_feels_file.cfg @@ -0,0 +1,15 @@ +initial_emotion="neutral" +name="?????????" +age="??" +profession="??????????" +psychiatric_assessment="??????????????" +abnormal_symptoms="?????????????" +status="abnormal" +type="entity" +entity_name="IT THAT FEELS" +entity_characteristics=" +- Appears as a tall woman clad in dark. +" +entity_course_of_action=" +- [color=red]UNKNOWN.[/color] +" diff --git a/Dialogues/Supervisors/supervisor_loeveth.dialogue b/Dialogues/Supervisors/supervisor_loeveth.dialogue index deb7afe..9c352d7 100644 --- a/Dialogues/Supervisors/supervisor_loeveth.dialogue +++ b/Dialogues/Supervisors/supervisor_loeveth.dialogue @@ -22,22 +22,22 @@ Prime Supervisor Loeveth: [#neutral] The importance of your work here cannot be Prime Supervisor Loeveth: [#neutral] This facility securely confines Abnormals for research and containment purposes. Patients suspected of Abnormality conversion are sent here for further screening expertise. Prime Supervisor Loeveth: [#neutral] Your task is to separate [color=green]Normal[/color] humans from [color=red]Abnormals[/color]. [color=green]Release[/color] humans. [color=red]Terminate[/color] Abnormals. - ~ part_1 + ~ part_0_1 - How do I differentiate normal people from abnormals ? [if Patient.dialog_tree[21] == "not_asked"] set Patient.dialog_tree[21] = "asked" Prime Supervisor Loeveth: [#neutral] Thorough pre-screening assessment identified [color=dark_orange]marker symptoms[/color] relevant to Abnormality conversion in every patient, regardless of its normality status. Prime Supervisor Loeveth: [#neutral] If you identify in a patient new [color=dark_orange]marker symptoms[/color] [color=red]that were not detected by pre-screening[/color], that patient is an [color=red]Abnormal[/color]. Otherwise, it is human. Prime Supervisor Loeveth: [#neutral] Read the [color=blue]manual[/color] on your desk for further details. - => part_1 + => part_0_1 - What do you mean, "Terminate" ? [if Patient.dialog_tree[22] == "not_asked"] set Patient.dialog_tree[22] = "asked" Prime Supervisor Loeveth: [#neutral] An ominous word that may sound more sinister than it actually is. Terminated patients are merely processed for further Research. We are not delivering mindless kinetic violence upon them. - Being "processed" doesn't sound very pleasant, to say the least... Prime Supervisor Loeveth: [#neutral] Do not commit the sin of compassion towards these creatures. We are terminating the threat they pose to public safety. We are terminating their pain. That is compassion enough. - => part_1 + => part_0_1 - I understand, Prime Supervisor. - => part_1 + => part_0_1 - What tools do I have to accomplish such a task ? [if Patient.dialog_tree[23] == "not_asked"] @@ -45,13 +45,13 @@ Prime Supervisor Loeveth: [#neutral] The importance of your work here cannot be Prime Supervisor Loeveth: [#neutral] A silver tongue, and an endless supply of chemically-enhanced tea. That is all you need. Prime Supervisor Loeveth: [#neutral] Abnormals differ from us by their inability to apprehend the human psyche. Conversation is the best tool at your disposal to unveil their alien nature. Prime Supervisor Loeveth: [#neutral] Talk to them. Gain their trust. Then [color=red]terminate[/color] them. - => part_1 + => part_0_1 - Where do Abnormals come from ? What kind of pathogen is that ? [if Patient.dialog_tree[24] == "not_asked"] set Patient.dialog_tree[24] = "asked" Prime Supervisor Loeveth: [#neutral] No virus strain, no biological marker have been identified so far. Abnormality seems to be a purely... psychiatric condition. As incomprehensible as it may sound. Prime Supervisor Loeveth: [#neutral] Which makes your work all the more vital. The more Abnormals you successfully identify, the more data we have to further research. - => part_1 + => part_0_1 - I am ready to start. Prime Supervisor Loeveth: [#neutral] So be it. Do not disappoint me. @@ -70,11 +70,11 @@ set Patient.dialog_tree = Patient.build_dialog_tree([]) do Globals.character_label_color_change.emit(Color(0,0.8,1,1)) -Prime Supervisor Loeveth: Well done, employee. You are showing great promise. +Prime Supervisor Loeveth: [#neutral] Well done, employee. You are showing great promise. Prime Supervisor Loeveth: Keep in mind however that the first floor is the easiest one. Prime Supervisor Loeveth: As you go deeper, the patients you encounter will be harder to assess, their expressions of abnormality more... human. -Prime Supervisor Loeveth: Do not get fooled by their inhuman humanity. Sort them accordingly. -Prime Supervisor Loeveth: Your [color=blue]manual[/color] has been updated with new symptoms to identify. Make sure to read it before your next patient. +Prime Supervisor Loeveth: Do not let yourself be fooled by their inhuman humanity. Sort them accordingly. +Prime Supervisor Loeveth: Your [color=blue]MANUAL[/color] has been updated with new symptoms to identify. Make sure to read it before your next patient. Prime Supervisor Loeveth: Do your Duty. For the Republic. set Globals.event_index = 1 @@ -86,14 +86,28 @@ do Globals.next_event.emit(1) ~ interfloor_2 do Patient.marker.fill(0) -set Patient.dialog_tree = Patient.build_dialog_tree([]) +set Patient.dialog_tree = Patient.build_dialog_tree([21]) do Globals.character_label_color_change.emit(Color(0,0.8,1,1)) -WORK_IN_PROGRESS +Prime Supervisor Loeveth: [#neutral] Your performance is impressive, employee. I am pleased by your results. +Prime Supervisor Loeveth: There is something important you need to be aware of, however. Listen carefully. +Prime Supervisor Loeveth: The... being you encountered at the start of the previous floor has been identified as a special entity, of inhuman nature. +Prime Supervisor Loeveth: According to Monitoring, this entity seems to have... spread amongst the facility's subjects. +Prime Supervisor Loeveth: Be on your guard. If you identify a subject as being infected by this entity, your orders are to [color=red]TERMINATE it immediately[/color]. +Prime Supervisor Loeveth: Any questions, employee ? +=> part_2_1 + +~ part_2_1 +- I have screened a lot of subjects. Who are you referring to, again ? [if Patient.marker[21]] + set Patient.dialog_tree[21] = "asked" + Prime Supervisor Loeveth: A tall being, mmuscular, pale skin. A wide grin, with a toothless, dark-red abyss of a mouth. Not very talkative. Likes to smile. + Prime Supervisor Loeveth: It is not a who. It is an It. It is not human. + => part_2_1 + set Globals.event_index = 1 -do Globals.next_event.emit() +do Globals.next_event.emit(1) => END diff --git a/Scenes/main/main.gd b/Scenes/main/main.gd index 9c618e6..65a6ef8 100644 --- a/Scenes/main/main.gd +++ b/Scenes/main/main.gd @@ -56,7 +56,7 @@ func _on_new_game_pressed(): #Setting/Resetting game parameters Globals.day_count = 1 - Globals.floor_count = -4 + Globals.floor_count = -3 Globals.patient_count = 0 Globals.accurate_diagnoses = 0 Globals.diagnoses_quota = 4 diff --git a/Scenes/screening_desk/green_button.gd b/Scenes/screening_desk/green_button.gd index fb73449..e5fc4a5 100644 --- a/Scenes/screening_desk/green_button.gd +++ b/Scenes/screening_desk/green_button.gd @@ -15,6 +15,7 @@ func _on_green_button_pressed(): #Resets to initial state func reset(): + Globals.buttons_activated = true set_mouse_filter(Control.MOUSE_FILTER_STOP) set_disabled(true) set_toggle_mode(false) diff --git a/Scenes/screening_desk/journal_layer.gd b/Scenes/screening_desk/journal_layer.gd index d108144..83926ea 100644 --- a/Scenes/screening_desk/journal_layer.gd +++ b/Scenes/screening_desk/journal_layer.gd @@ -81,7 +81,6 @@ func reset(): update_symptoms(Globals.floor_count) if Globals.floor_count <= -4: update_entities() - if Globals.floor_count <= -4: bookmarks.entities.show() else: bookmarks.entities.hide() diff --git a/Scenes/screening_desk/patient_global.gd b/Scenes/screening_desk/patient_global.gd index a4b8b3a..b0fbb49 100644 --- a/Scenes/screening_desk/patient_global.gd +++ b/Scenes/screening_desk/patient_global.gd @@ -236,9 +236,17 @@ func next_patient() -> Dictionary: #Decides next patient ID else: next_type = next_patient_type() next_id = generate_next_id(next_type) + -3: + if Globals.patient_count == 0: + next_id = "it_that_feels" + next_type = "entity" + else: + next_type = next_patient_type() + next_id = generate_next_id(next_type) _: next_type = next_patient_type() next_id = generate_next_id(next_type) + print("NEXT SUBJECT CHARACTERISTICS - ID: " + next_id + ", Type: " + next_type) return {"id": next_id, "type": next_type} diff --git a/Scenes/screening_desk/red_button.gd b/Scenes/screening_desk/red_button.gd index 67138b3..8370026 100644 --- a/Scenes/screening_desk/red_button.gd +++ b/Scenes/screening_desk/red_button.gd @@ -16,6 +16,7 @@ func _on_red_button_pressed(): #Resets to initial state func reset(): + Globals.buttons_activated = true set_mouse_filter(Control.MOUSE_FILTER_STOP) set_disabled(true) set_toggle_mode(false) diff --git a/project.godot b/project.godot index c6a713d..22994b0 100644 --- a/project.godot +++ b/project.godot @@ -54,4 +54,4 @@ ui_select={ [internationalization] -locale/translations_pot_files=PackedStringArray("res://Dialogues/Patients/patient_50.dialogue", "res://Dialogues/Patients/patient_49.dialogue", "res://Dialogues/Patients/patient_48.dialogue", "res://Dialogues/Patients/patient_47.dialogue", "res://Dialogues/Patients/patient_46.dialogue", "res://Dialogues/Patients/patient_45.dialogue", "res://Dialogues/Patients/patient_51.dialogue", "res://Dialogues/Patients/patient_44.dialogue", "res://Dialogues/Patients/patient_43.dialogue", "res://Dialogues/Patients/patient_42.dialogue", "res://Dialogues/OG Patients/patient_49.dialogue", "res://Dialogues/OG Patients/patient_50.dialogue", "res://Dialogues/ITS/its_00.dialogue", "res://Dialogues/ITS/its_01.dialogue", "res://Dialogues/Supervisors/supervisor_dredar.dialogue", "res://Dialogues/Supervisors/supervisor_loeveth.dialogue", "res://Dialogues/Entities/entity_01.dialogue") +locale/translations_pot_files=PackedStringArray("res://Dialogues/Patients/patient_50.dialogue", "res://Dialogues/Patients/patient_49.dialogue", "res://Dialogues/Patients/patient_48.dialogue", "res://Dialogues/Patients/patient_47.dialogue", "res://Dialogues/Patients/patient_46.dialogue", "res://Dialogues/Patients/patient_45.dialogue", "res://Dialogues/Patients/patient_51.dialogue", "res://Dialogues/Patients/patient_44.dialogue", "res://Dialogues/Patients/patient_43.dialogue", "res://Dialogues/Patients/patient_42.dialogue", "res://Dialogues/OG Patients/patient_49.dialogue", "res://Dialogues/OG Patients/patient_50.dialogue", "res://Dialogues/ITS/its_00.dialogue", "res://Dialogues/ITS/its_01.dialogue", "res://Dialogues/Supervisors/supervisor_dredar.dialogue", "res://Dialogues/Supervisors/supervisor_loeveth.dialogue", "res://Dialogues/Entities/entity_01.dialogue", "res://Dialogues/Entities/it_that_feels.dialogue")