From 3f13f0c71f7039302d45d9657f90a91bfe4baca2 Mon Sep 17 00:00:00 2001 From: "ProjectKoi-Kalo\\Kalo" Date: Thu, 31 Jul 2025 17:17:07 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=98=E9=87=8F=E8=AF=B8=E5=85=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 1.6/Assemblies/WulaFallenEmpire.dll | Bin 90624 -> 90624 bytes Documentation/EventSystem_Documentation.md | 18 +++--- .../WulaFallenEmpire/EventSystem/Condition.cs | 55 ++++++++++++++---- Source/WulaFallenEmpire/EventSystem/Effect.cs | 6 ++ 4 files changed, 58 insertions(+), 21 deletions(-) diff --git a/1.6/Assemblies/WulaFallenEmpire.dll b/1.6/Assemblies/WulaFallenEmpire.dll index 9bb3697542f38c1be2dfbf7ea7b8b885d6fbef57..c87a5671301e57d16c603f9a76e2dd7b45d44e91 100644 GIT binary patch delta 16691 zcma)j33wF6*7oV1nV!jHon$gI$z&x7>12|S5C{YUBoGJ@5W>DMA|i?g5?pW`CR|+D zRG``1Q2}weAc7(n#IPf%$i+{^6)s-fFSy_e;eStcPcnF)@BjZi4{z7mt4>v&uC9cp z1D2)(mSqdgj+6HKUTgr6pfUNbGvOo&=1Q55LY5Tt0Ca)CBR z%9V$Y(f%gQODdi#u`cz;Kbb5vd=1gkGepvwy0KE1ZA0WoCGW>X=A1%z`*|Os(W3lL zq%;mBvgb5?yiGB0jl8mz_4OErzXqO?>iYxd z{TvGPlL!>gfoeq{mZ%Q&FVb9p1FWp=ng;K$QCbw|woh_%Wq0l0P=Rr7=^dEfS{26fkdlpfFpu<>}0bZ96+O#|Arz9+?8s&>_Xo5C2pI_3!49 zB8U2aoX0(6e&)7r?NzfTTxXKWWKr=W(g6Fh=K@mCMaExVO>I% zBXQP^CQqBX8WOcm56lXoz#=ZKt3qD8@u;o=V_qy2#2Su4qebb;f_)I=G_fSzlb+_< z_EObsb6R&uqA9`_aDcBw`1#>S+U>507NtV#)o;S^chRTrL=KYu_h3F$Y!}7VB1K0O zBp9rQ>tkt_`Z@U6RYJ+BrXZnq*?%uAB4z)5Z1@&B0K){c!>s+(FEeOySPD|f)NmuL zb(Myd>}Wf}*SQiDUr$o%p8{c3$HFwq#>Q5MwZH?T=Y$f~FqrM-@P5#ZktMYHP2 z25WLC`R!zNJ$EY~V@N1g=m$J2^s(GuclBUA==%L&wSx*RMP8)V5w)__RDDznp@&f| zVh`b?I#c7#xO!Bq((s?~QE4gtlca2|tbdi~FMV{G%q?<$a>GpRq5g@nA18>OF&>mOW81NLSCeCJaFKb0_})C(uOCVscDk0@dHNxLPH+ihKOK zzOw8}L09y51+&t`hAxOEx$!cVP=J|+%q9ETs{T({k?agG0nti43gTq{!+5IcFh{z5 zk_!c)3#5;PxLEh>^b(8%k6_Conj%dUXNLRWy@8^L6?g{@a>Cu$4R zH-PVKkMEauD*RfRm zZ)(?HlM!UT><-A##KWXN%y^jE(u48AO9Pqw+(l54)`CQm4UG(BAb`zdCf`76_zoR2 ziNc^hfplUos+mxTHnbz^E$}VWBiy4+{#;IXy#n5Z1hdUyUiv?H#~S+yRwOsXIA~U2 zy_P>9Ww;o_G8lyB5&cLa*%%xP+^UV;Kh3={*lR=j1yTCAkAUIB5*FUpYL5)?);%Ni z4VIYJeW7CDEw<9rW}+&+7_g>OjX;nDm%~*MM<&_NJdbJzk4O)3NK*#(Dir~^M5>zs zr2dneQDJI_VVK}?cnSs>b_cXO2Nv`ccJnZ`x}95nkCn3tlIfGf&ZZc$erdnP&~-h4gHHiN$&mVZ4x@-Ua{Lq&+yO zM&(H`QkCRLDsYekdxn`;=jxz#c~DQBMUPxL-H6T>OM^w zk|{l^sYBAF16s|HyM0fxFO%*IeJ>bEHvc+Sg%hq830(UtiMd+bZ61?ce@OG)mZx>B zJJ&@}pndh{(hkM59{lF{TN_W7tMmK#v+;l(G)hBr@zOm|uc*=g3*PlYuuArAF>{-+> zJb}HkL{zti&$Y@Cp5P0h-EL>RsU@*9kvF2g1buEV25R(KraKY1zaAJnS%2T6*Cz5^ zFZ=%vPCTg{VTL#^WPo*)@H*)0VW^qZQmFBJUF+s-@l5`cWUvVV&vl5Xjy6aIq z;BE)p6`FAFQpaK*tO@3L3u0&|MnBOm4GwY&J?#~o{`>JEzZ%YS5~2bua6}=3wtS4Y zh~v1`8eU~q9E%-RJ+w`|GxmxJ}5fzWa7VL##Re&f=LUq=vtF zc=xfyI9i4_VeGg>saeYzmz}W-!oWZtmNhVlAF>}W19RY7y}d`9F|N{6n$()R?nrXu z2wnJwws%}cPvK##?qM81Q1$BY42%aPD6+p9{^G4_d!vfSIAXYON8wZU@6yu8*GQjg z)5lk|-wVCg({Y?54r@vF3+7bz6oD;54J))a$G4aEX&1&j9sAfo$gq9-P{Yew;)F;3 z-y=Fc;i^4mqCQv$IIK8m-hMRX`k4ramq>^<)!zaJdLL^jnCfp8jD{mx&xsk*er?jk z0dhu)_Tt2B>)sR$tKp*d!Ne|UVcvYCW@SE0~^>Zx1*-+ z)$NF8{L!cJ2dw%4-et_CKl%XrSL@892J>&slnqTj_pp6Cwhx)}fr^=)>cHEE(YmU@ zJ8jM5TG8aPn{hY7_YT>-txSO|Jh;j}&E+qj`#uakA1o@0`X%sx zVHCJn8OkL~kpsorktrLyu!n{#=#xkFakVV~(7b6FzPl7hYxas!`Xo0NAKpoKGov9k zUE6S7wlq#VdR=v{H=Sm=)O)!PWyqf5XT)|FM4;i7q0iF1Yc*uicm6YWxEsF&TPH4y?etimO8fgEZmM^o@4>h93FfLzGkKYA?$z zij@=h2qNd$1I$;{4wy82x8|40{_nK1>A4mE2~&>R_1aAB8i-!$q0WbY6RS z`ZZeBjoG%MMqCXkO+RU|H+GD<2u1ZV=oPwU|3&SG=`L;Bjma^;w6cq3+yFjsV_Fuo z(qq*ppevG_{{+6Qer?r*`LAs5yGd3rawU;X0nBD-3Xu>L4KMPTi9C)HdHhX_o#B$a zTG8z((H2@G5hWS?!85w_VPniI&M!D_GPWo)k=4d0(E+s>nL*M7-#-cA^rnghuDD(5 zQ_ulNdvk_2cuDxt<+7hC^(JW5r*kc8VejdeMNfSdaLA1MG!|Vk?D!e@o%P&8&29g5 zBZd&N;%f(1F-)B>E!-iiUZj{sEkTy)adj^q!^>yaW95kqHEuw61DAyp9rfYf%ELw4 z?SYMAJS=kup5?aeXF_+F6mpngICR-Rv&m`__uvyn``1nFf+CC4@MOEyO`I`_-MIs-F19hu9Wz}) z!S;l+SuM<5eWBGl>1s8-2(W{&j0lo5(gz(KBQnAv^^EX1+A_lYF?t2aG*ZHy4lp1+ z`2B%7fZeZGgWOPhjO-{77zNLUrpS(kPGVc=*-^ABGY1W4EhGoKAD`)^VjBoTXSFDE zTK7n&Hlf%e;tsu_ovzr%0j;gO#S>(Yf@@?K<%qM(@kDk-VBa8;-AOL>Ib_hSc1DDN z(DPia$LVhMr>9$}C0(sXvd5$Q3RvA7F8OLX<~%~X_STf3F!ugMsBarP+xd0mkS)q> zf7v!HYuz?X=v_{^+MOu>94Bn%1&QiE)F}TrwBxnIiO?sXr>Sl7nXk`%o-y~_p8$i{ z4jp*Di}=?+N>ilPy}l-fe-F`Ge518x^&X`QOJlUn^+oN)Zxuvo#>s2bG=1p~F}#oLh0))xTqI#d}x(itKulE151ogS6oW z0-tnzf6gX2bp7@Iypq!@aj0_4P6%>1CG7h-{6jgRSi<`jL1MEl?0&ckSA!a}RVKAyM z<3fHmI{$=8Fv+j@^;Tk#Q4fUBTZ!v8v4 z7bb>r>i2-7FTU10oK|(W+g<+#j9# z)O{>Pku}SWLofpY{DK(EQb&#u;Qk|;&SAx1fYXc+%xY2UV5J|s@QdgWTb~IOc5~x? z1VBY*Vc-C_@!88UJL}r~2o!PKEjs76e>ObSQ9cohxXys^?G#2O;EE3G12_a{-HNYV zxgx70&=q`~@wi$NYjAz3AMJ)|8}G;$Su=RGX-GZv>cft9)^c0Sk^I^BC zf@K@&kdRGME;zpebwp4{(wKUdjtOd0ET|yJw*~oaPZmB$#|3quJyXxq2|>+pF!dsx z6jZ#RHq-wIDmsy6FVP2rvWgJf=#-$Y%VXIq^s%7QBbnMopVE9OjxJPlM{!Z}xe&&9 zdAtYc--7Cce$U6RhR+GA5!7-7|58wUiZ3{)$S3JrL9L6v;Jiitfc_(#-j!b5c^ZQM zB&gm7^|PRy26d54nQ=7IMl_8+3evA+LT|hlCO@G+2!~vH&`FddokqJ&^&6(3xf@eC zjlLsGnCv{+g={fwr_qlT6DIqK;=*JXDM3*9Oo!$#6igK4WD)*1@(2oEAS5YMP_;s) zNO@sSBc&1{Lji_nwA3j~79*8~$>OAPK@Ar^9a49R2Y3dThB;Ea)FUX#STuJ#h`u7X z)I(4ef=ZTp391FJfv?CbRSD`MJ{P~D6seDJihYgnsZw7-xp6v~M(I+G&|IZ5l_w1r zGCgZPX^5aSp;;&ml@d6mdf&>VaZ(9=+x=S2v9N=6s7Ilct3r*DH=sSg?@hoJK!svcPNI-3aMo)%i#ku4<8jbiaffj< zJf~cX_DKt4zLn7}I0po76?~iEUqrivM#r+%m-Zr437zVC7xed+HNpR+&ZAulMMoFm zkXpLH`nHG1KmTSEhcfeTcfvdGA z7tfZ~X^tfwgY;TLnW9iX592UyD^=D5G_uK(v%xd6>E(7C;JhY-rOyk^igNBiRxI;7 z^er+e^e>gAmpz|i;I-w?gI_B2Z|}AZ?Og)*XR*%TMLVT@H~7{(=Je8uqumZ7zw1-p z0gmi>6L3Zp<2!JTUzVnxgu&Ay{H|Cw`&)8tq(WDE?$XXL$&)_Rl9r|dyDaVC>*!SI zTuc{WR@7*q)a_H)J|n^(uV!y2JD&rms`q(q`O-1LpV9s}p7D4!V{Q4RR_tBfA+dxO zMp=@|XuQRqc~7pRaPG{fzAZhP}P)22Ut)y__jYBb&Za7(cKu7Fij+ zf^$URD}o?e z$Ga7ZOn(46OY>I%w@Yiny0s2%&b>s}B0S~|800=~fMBWoJn%D989o#znpyQTGcTL) zRd}7cg`JjdhcqwmzF(GC^L|nky@l&YqC+$#<2zFny=PEGijo{nvHUG$_>Ln~3j7G)NpTbu z)N0$=sswGqa!T$otEsNcX7D@AM|*;(qtFi zh%XGLHudP9?50lyHJ{$MRVRCB6HbdPd*3!9Ii1#b)v4DbrY2|8(sDuZD3fyO)ox6Q z48%|_eIUsBwztY>X&qMdm2T5+Tk-6OyON9Pn@UzZWSbe&1nPU8qMZfzfx2K&z1uyQ zTtZ!|geG~?9!>5@GkfclH*G_5XF4LN`82F#t2SH9gXaob%3lzM=L&jAr-bJUT4_-1 zs|S6;2P7nieN|G|zD&)h^oYI5eQ1_JvFG!ecf^~?wKSxk(6>3O?*cW&pm+qebiGcA zIJI=6L2;aGXerK)p*Vx+XF<)Uk?=feWnSt#$-`+Oeih9VbFlBJM2sP_QLAEQl|F9>b~W<-dXe(KGNBLZ(E^vHqFHME$3ob zNoQ{ZW#fA+wDjiCwSro1`$tkQt$vLc9~ev4EWz^ivl4y|Sw61l>-E#p>zTSoY=*mO zt)LDO%kHK*IB0}C2Dpiz1D1E41GEWiy;5IoE^vUhYHc3y4S`<^On5jasQXw*&C}UR z-)xKMEkPZkw`~e7qTr3;vQ1Y}Td$&a3u?9P&y+gvBKlcShiq?pO65h=bwQIo*<|sHmKZYxAo>XV|qj8IAd_7b1sU~-#cL^2G(y22QGrUV_yFp!4Z}&b(X9abL z7GXy&V>SF7vP664d6&@@A=6W~oNTj&j99ju1~xD?pMvak1-&asee^5ol%Ng?)s^&h zm~0jO941>u9U9qwSWX#bR4c6C6vt>*%yW)j3wjJWZDk>YVTWq-V%8kG-s> zK8|wb8JaFAQEr1t>uHW4^(3yRB>Vy*G{W^%s#7R=E4}NfQc#B|xBL-Mqrx;d&}2c) zrx|z!ZlGpC9iaDmGIe7U`#eDJ_I%d6f&7Bf;{`X;GC>})ZSAz#yOFjS)Zxrrd~&m&1HMZ48JZuFHRV-$!l0&0KKl;Z9H#ji?J#5qWuN^u`chE3&z#96!dnih$B6!yJkkgPQbWDKe zD1+ij+e4EC#e9)w3L1HbeL>Ey=chZ!QAhsAH!q^=ubnoOHxp7oDXrg^-6kx62<#T@906w5Y(Zd zc*z{3QDMSEG+7r4*&*5yCOb^cVY0(?IZSqhl;s>y4{?NI1+{=amlnH^P+6-?qBp5d zP-mnd&(l#FZjd}rN9pGk?B+~Fx2l|!qjX89#JV_2CQX;|G##ZVosu5!=!51sgW_pA zN>c@;cjhR~yo$P0PzxwBD0BF?RwO=_&vkkgemqeeclTuOo@2ieq-b*six$!gy-z1^1e!#9TDIA zg_tDs_1zCsl6hfnp)<++P`{2q{)XRb-`Vph_?;svz$q;5Z>hC!k3UR#wkg@w&P52R z&`x`5#b~toYd=XI5EG){=X`Tr`5n&L=G3BloqO#A zJxiQ3&|d3&)BbFyC$!IB$qK&UthFxe`J=KN0nSM$?DaLfobO2s`jth!Ctb`wg7$AV z#zN0W&QtaY&U4N;X{YmhaL)M@dQV#GVNLGb8T&_xa^e@#&k>F0ukA~V;}XAt4^E|v8K3Id*D@fa0XPx6bMH@ zn45AoCpscO?y@a$r@Sep8SR*~!-x?-~;sm9yAYAf&S+vvZzu&5iulvE9|FmGic1 zcI1cYpSykl2mhZ)9-jLX+PhhKoZV-utSgxAelGGi+bxg|FPP)r z8o8_DE_afgS$nU0XXHyYi`~B~^%0*~wjzsbwDUVsgI~C3L~JPj-u<)0S*Z|NIRj}N zoiQ&$=gydC#TJ<=L~dk?pxz!EE~l$KQS^7J^~gA3IDoGJ<8eoxi1zD(g9{q8KNWac zV1&e+5`jH{7V0lKf_My+9Kaz`0>mfKwoz9(5m+H7!)X=T@zhsfoxl+S#|WGtaEicb z0%r)kMc{0Kw+Xygpu@!85(Op!gYlG#hmGzLxX_f0_EJ+iaG5C^xYCpdTx%)A7uke1$Ji) z;txDnFo5!b!-Qa*z^T+5oSSJTu#x7bP9;Ajd!E4|?4^veqHU4{M@RWA|`~1uhWyjKKW@&k8g}v3^F>x4=q)lLhV<{IgL@f-H{KC_XJKnpG>& z9+}ohw5JMe61Yxav%tz2jh;zsiedeA0yE--tusQK;7=B~4j6=zAWjRU3>Ieyq%6@E*d%bBz-ED`1yZ)q5m+g(N#Htx%>qvgq#U6s zuu@S>jc@)#=xP8QfCaGk(rftC5JGg)A>z|#WB$NUU|m5kaC zyOx*4#%II_;$MsZCE;D?kIvtn;}Y*rJdrraHPki9wc2&rRpPF2_jV6AA94Te zmbGoWX9R0f@QbnTj9-@z1Rn2D2b}L22`uf$xG0ZtZYtw%J;nmx6?k1=ZcoT!{IY5y zFrr{8@ShIW{JMMw@WJX^fr~R6fop}IT49xy%^Xkl9YH*1#RPPswf$iAg1>NVF$=-@ zuz<}zisE)eX*zJEGy^zVx|xR1FH$b> zHz^PJhvWlZk_v$>L8${CB$ohXxfFj<)=|y{c9QdeUF9CYZgL^8Lhb0x(Rg`M2RtT1 zbsSBG>U3HL)#rQNBDvhIbk|JRBd-0fKeW`n zS&~hw+B+4vVXr3b)yntP2b-mXvCYzZu@_B)m5ZidV`JsPO0#rDx@f9&Tr^F0)SFwZ z7frd&UFKY;Rc^6fmRhVQ!TZzPGcnzCFxG1EC*Ee7pO|Io=z5d}D^->)u3F3Yt`Xv2 z7k8DVi+c>(cUX42FPi*`IJs5~X_z)^O2f3_^|iNd%iG^;tl3mdv}R?hRIp}Vs^nVJ zoGQI9^jEfvUBmy@=}t2EJ^%CNd3gK0RduTB)H!|nbSE_K zwKVRv+_%tt^!Ji)mo7<_``*0t=`o3?Z<1&j;iplet)`_}uK3jw#e=^OMXHu17i;6C z0(sCl?KbJwK<>>F+tMKXlgUEYFDIIOf=F61WrEag^KkiLDflswIj_W*f9pqRv?zZN zDGiqp+4CAd-mI9Pi?{s=NuC@zws}X=#CS>3Qqsmr-)RkL-GI-em3R8K)xkHyfklD? zlGp)jRD~#{S{ZDB$ah*odbVWMO4Gwq+~$9$Pc;XBY<2L1aFDhHRb75~ju!kv895k}KPabfL0&Tc_p@(XJvRQ^XD%Qo?)*PlM<14lY9+ z_vA^nq0yprfw55r*0|LG*TL#;F~!@8ZDh8N@Fj%Cm~}VCkl3RrZ$Rw?mjPYbI)?a| zK~!kws#Qrnjf60LoKS+csVY@U(B7^plMIgkB8?*)%acOlmir0%rbuk3DA{%|U4m4Vn9<106MP4IoGW;3o-pw1U z=a|zgp-G@PTLcTkti*-+62=0zd*fP^-r7Y2CXPLVoO%&CNe(Z-e7MzA)XJ{7Tcm`z z;!HBtPwzmpbzS`}XsR!w`v|Yg-2EZG%fh##lS2;Qfs1+wIe1$nm&Iw(P7lb+RGdn2 z8eH5bT(HT7F0`_NY0?gD*uadaIYdr#QMRnEMIorjRjSY#_^;G6yAxfriJH%=X(BuI zS46rXKeni+q}cpk5cw^H0{Jb%B{sj}O61N$-K}SY%wkiDzaL{H*s z5>-%t!=RD%G9JqBda3P7ad(LBWl_3Vx9}BroogZqTl1m7>z@^)K{}u+Y%y{p$V}X}Kfpgo>V!y^;IS!iBvX zv1GM{J8O_=t1m9P;t4dc#E^b6)vv_3ed>7_G_ss-WpsqdS|n;9Q+HhZ=quq-sKV?< zI8?FC+u@`GGHTN}LJ8_?D1CUpRyrh8dQ=-RB&DLQLKq=B)RQU9S%NvN#U7GPdJQvC zgUI7hQ0Nk>e@%OQNQ#HM#?@I6NoeAH<6x{E9^#H3=Ltp+6sP_;2BG&X67z<^Q7-Hs`a9>rCW_dY?s&RElwhn9A=qcwR7sEM@Db6%jfhJ zk07u5Z>%uwi%U9{i?Z{UqCN*8^*wIJ$8_7v-TY2}@esq$F0E#0F{WkCP+vaJ)4T() z2$yp|LEmVl;|#$8?YW^P(F;wT=319Uw-?>JpgYSHUG{pb50+VDWUY3#f5c+DxENWh zot{GYP10&F9jNlm7=;Qr1I12q;^txDg_YW^y>V%Og%b|%*4)E-E01zI_h@5>scAxr z2Z0$8$2sGib`^KH5oNdb$gnEuaqY8VDSGci+TX*nlG?h6{KAK{j>AiIm-lN^hPzsu zw+v5vPnxw4(v#U07%ab|>9LgmgTYP_h<$1|Pd%)v~{&^!o@D%J+p z@*r5l>U6bk>SxnjXRhJE>+>e(wRk#V2|4rB0F?R8T=;Nis#utc<{dFN^a$r*(sRHl zi^q^Hyoy7>BX2PLcqpzSmTISO@SEhi1DfN;Lak-QzHSe*UHjf<$8E|YN64&i2-lIU z7VzR~y=}xEwMYBoUuo(Z82VHdT7G<)9M&FRVyR;ecpr+l^=Q`F3hkni-a*{2E}aKw z4&9uL&5xTFl*1Ah`77$1TtlnVT0D**ykGz}r>&T89f-A6BU7XU+SZXnQsG~zJIk9P z#+gR-MNWQja#r=*w2V6;`r zm|JlIwntcmtzj)La+rxvExOPPKQpd^j{&-m^|}viHHjvwe^nbjIxotyx=!e()Rh7; zCD=HSaPMSJn6=`Jpkme9)yKquVzP8$@3;v82I>K@dO1lBK=lv6gWe-ltA320a+vjX zN6{2#3Ixh=QGLFPBe6vrcO)yc5wRPi?(oVHWLo?*C=%ChPWjL&Ic$4vhktlrVFEV zC(JP670uZ&fY01W3@1Bd%^}vy-nLkH?BEn#jG2z4@PRkXsLv7%^L=fGCnX|pLiaau zfjdlrxy0lSS=3t0gVkkDwjhSKY5b$vK{&`O@#iZzf8(`FX{dqoJXd^#70!4>(B{+z zJ8~SKIuJUSm7I#xs)zQfJs`@L!!IF%IDMAjdGWILN^Oetl6Jl}-<-(wd~F|Ti`Hj? zn!Oozm?fvv*)zB0{Q06<6rE+baFVFKws1mT-|g)q@tIIw{Z88k3$f(*O@}9{w2weyz^ zl%CfHPORk9K>Hy*$(e+uB!`7?8heVPPyy9X*EUSdmv(B0C%T-g4YG~~K#5DurrR&J`h76N47!7wn@T_*(f4{7O>GNoqi zqDe#KpM%b(01?U<%bwO5^UE z+O`IK4B*Iqs$U~C=YTPr1{HN|xE`Gw*^hqm#N%B2VA1U2(fA^}^~)apvX?K})Yz*g zo2b_x{Tj|-)kpU0Qu?DGq=Ra7;Q>Q<8w+K_5}T9gpRGMU*%fT`*F@el%vM)N4z@QB zX^B%RuEu8ye%H_98_5*O#D%xjCwRldTb_wVBG+MJ3sJwt-5Y)j4!p5Xah%T8pHT#* zp&5GP0UOGu`n+^hs=X5)BF|6B3)}^%PrVT(QEviVkL^ju1~c!l_Tv;^-*@3%QE!GK zati=*oL3ErSV(nYhzT3g5y&I&1FW~sV{<%J%vJ?Y@&QwO=dn^&=d&r-TqYMrF#@B& z$BdD@NhxxqM0;xL`flu@{$1qcS3|tL76a(k85q8=9H)5pinB^c@?p8*DKw7-^(WG` z+o$D9muXK=t10*qoxSSqoI^RPr-T`CgNtKSkm|ECXmtM?;B-T0BV z=!%@2qmanz104TTRw_mOFf`MR81g6#Sq>l7-nqhWV>{fg$Fx&dc%#QaR0o`h_engj z3i1A!2aer^brBT99Qg!*<;gvLMY2aU$Xk>yhgnmU(y#(iZ)v57$EEIu>u5bLj51ov z{c@NS6DgvmUbqRtuRY}QHvEZ@m<&B82Ug%+l~5WC(u_;vH`?=8_AdGlRCy)dd|7T$ z@C`|6cnFd6>=BkLY9~w@UW8?FjQe;0mqy&PtyUInYV4BmS%OJ+IaZ;@%J5)N5Vm(D7jj1XTA^EL7-+xdi< z&;HqZ4576bf74(SqpKTTOSZ^rDr(BAKgHQjkE?s}8(u!2j&&z0)UXceM*a{^bmT#| zDA)0D5!oJDFUG?L%6E`&9&Ui)}xAWhmEx9Jtlg%*m{82WHt<8*^IK(p{1U%V3^(n4c3%m10*j(Ji z=ziuJZ&Zl=v0^rh>8?K0);n;anZ5f^>|Sc4yjj!$I)I9mXFu(|7@cq zoOFZ%<-y%=j^K;Ez89#ixsO$_@XxZCKZK+c42nPQB2b*!($8%*+dlz5idv=3gr&p9`T+K2KBo_1oVK%VGS!#_ZCX=41@>pf%1O8i#ex&GGioP@`FE z5B1fBqH7C(bQWib1Trip;1G?^00)qm9s@_JGjm)~PF#t}Aoji3g?i#yj=MpOk=KtH zBaSn8F`k*#I>r!oJfZv&1C06T!FTi!^uJ8+??-=}ZBQZf{!#DU0b69Kqxu|*&AXdl zTUM_c-%?zq7Ak9xjt!7|>#-+gx5aj=FQKy>X1&+#t9uzNCI_5H#j~>LAz8dJhPOa( zs@n=Ic4Bt%$dKnAYtg9ZfzRxk?>$KlY1>Vx6XH(;7M_vKi(x zgRR3^+M0%(B0dr8r`LB-zPys8{Q56B<(KhDQ2Sz;MDo~L4(Dm78@$mpCcX$e5*q~Nco&)A^ z0igBwAafbee={_xXE0>f|NYIAzZg1h>^qkG zidTSQeEDf3;a4#QC7u{b-D_<#*!Ib$&D`hn)$N2H-vQpmszEnx?TzJG*!@};W-*%o zJoObx+UZ#yX$+2is#K(PyD2luJusjWPU?M3u8Na(2rI@$Ui)V*ENFiEw`uEk@j~gy zQE+nOzTKOJ$vl>+yIG50q?+Xh{8m$mV4J|Q)RBEeIDbUbC2SataG4Q;MJ>v|&`Upd zm9>lYnaGErVGjaeM`mSYFSmV>eH^p1Zq1iSh}%AqoX`IGsMbXJL@46ABf_^^bSi^X zB&-i$Kb-X}J%9eZtd2n{cs1j3wRi^N%cOp^8>QWGbCIZ;q4Tn?uI)(2(c9Lq92T_w z6=sT9zg#zc{qiKWuU|2HV*QRZ)~_fUgIKe*kn%Qs4tq1UvU*b(XK}muxFd(lwSIHE z##LTSlyfW5Q`-EwuJrpJAgalMWb{aSe=FfPrDzWvJ-7zfFSlwh%GEUcsR$iK+>xaDO(_8e7U=3hPk=VC_y;geKJw-lDKM1xu;k5f&`F(u8 zWv91fly;qg#Lf!V*I?%aa~teeGG!&v7#qPo*kGYENkuVEZBl2U!|n=8yVNyC=a9O^=n|x!f{hYB6QxRt2Y4c%2iQUC6P08v znt4t_aotiM!72swNmYWi;4$zm`K7*sol9pHkZOd}E+Tx2G(a#PPA4-cRT?BLA5fX) zOT&duubL{25KI%6Mbb#g#U<5qE0->l%IN!EL$xytJ6T8g6?!XkgjTR z7@S%bbef=TTGT0TvcHVhm94WX)Zmzb_Wb^{fXjdibx1vejikwaon~3wbxMQZNr#dS z;MnxFG8FA27RDkgqfbco3fv^*HX%QUb{UQ9z`ee)cQlpJ(e86$zo#M!|C73o^(vH* z&=F_g-)ow*hZh%S+zI&)efgeK2X!=!X#B--mw!a#R|2i^cWEaV_mb|@GVbbxu?zz~ zphfSRBR!^_xvR6PR9pAbm_|$9TK|~F7qZvF)xgXOMWLr%jFmk&Tuz6z+QcQkYd1h! zF0?oHd;#t40{7&w<+Gxl+G9K9)G37+~dzS>|4{(Q$`Ep&4CKK%n}#y;_qV;ada&5 z?nN0-ReRB1W7~_Ve6eDNUoon5kvkX|)A%2S@goakM=N7cNM0BCl90z+gHb4c2jKvj z2(W_k0t(fM`Kvc~Mf-aoYb&9Bm#Tr6OG6+(T3Vv8e9Q$Bh3t^)+V(^z#3VWy?MGym z{KqsQ5S3`1c{)h5nMJK5YwaLW&)f+J)>Yt(72NrsHaz<4AfF4ToKU?;lvBK^P*3qD zNXq4ThD4!`m}jF}(Z=6wccKP^D;cjC$T&XnPMB^L(>=g{0OkE9zg^O|W`a*4N5&G^ zEGb$Fd{J5+lh$Ks^Q1_0DZ*ny1-@9Z7V;(X2H@wW3cLhfZf47ApPP9-#jeh&>T~S0 zVl&jOW8I2&>rAtpOs@jpHa!Qt+Poil(EKyry?R)-qVF>m2Lss4@Uu7Jc(21+ulowq z4hKv$FpFh(_^&8e@RvNp1zYMrQvQK9|GuDfR9gi+p>4bGN$G2C%F_PQ8STlX-K0OX z|5;ineW1lH3x+Hy3Dkk#a||y@gk1nX!b>2DqJk~AovcpQhAj(9KJDsdh0zZJ*kC%d z-F`amQLtsK#g_`AUD{QJZ#uAv{;o5`H@{JXg}aIuo8N>3)N;uikWw4?idl`>LYu{h7_DjJW2Mel*)) z?D@p~!O^d$45r}&guTsOGZ$=%!FU9NX}ZotoWV5HU>xUST7q+7Yn-8URngm;OxJztvEP`uED!2*J5N@mtZ~R;$5qC>0M8k3bxetN}!K6Wo1w* z)*>tK8u&pV%trXxZ~3&cCK#qA)0r(0%YGiM6l_1SZXVq}J7Qb;mAXUtPdX3%1<$XX^0aVp3-cFSa-Q>>MzA}g7|<9fOK0gJPUb0e7aca3 zyVsjZchP_p|v;NA4C!Op2S1n(u^Y~9Nu+@DLiiJ$$J1b-yB zl*)xpFW@q&G%Ta6TtmH$%g6Xlx~M{{Xq=$BauqGVxmBsqqqI>lUH2%R70Xhu%wt6J*m60|b}k4$ zM#Bv@(YZMIIFVS0%V~sjdEy#MGuYRm4+3kcyTST7dqkDBbf=*D?z@ie7fcVaj(Xsg zt92^Y(MX+P1Jr`+XtH4Ysi4P$U^m5BuBS%9=F==Z_}0^L!S>SoeV8r8uP^xKJltn} z5P!Y%u%LRtCuyT#`)!-LJR5wH-Z9vLtOC3wy)T%)N}i-~jqGMW*>G2EppAm*UN+DU z!IsmJ{#%0^sQYbf$!u5f8Jcadef%}otaosD-RCRhx+7-pU!hc?Y$A5^3Ka{c2i#6w4IR7LPBUV3J7~6{`w{(i z&<=w=3CmaM%Qj01Z|-y_hu5cRCso}^9RGyG^R$y_5i94@Dw6`1CfJF%7pvk^cT%3t z#H{V4VnfH1wv)OTI#=gpSl(nXp0u456^sWVfjwmCc$GBMBVdTHhi|4C*ywqgaKL7| zR%aq$GhJ`!IAAl)GjtrVnGPC^12)qU!SsO5^pm0EfV=3l!Fag4=$$197c~OzqK}v& z8D5vW=yRRLall>lt)b(9yC{S|?qy33xQogK(`R%ST_l)3X}f5UU`_NF{sw;+O^(s+ zrdfhTn}}z0H?0>`ce96Hh%wzm+XZW)N;xfc5ABZ8?WIG8?rqHdUP``)Q`5umqo80- zv|UnYA9WE--%0mT*L#H}KmQbLB2|Lw%Kdbct`xch)EJ{XKp(~EUZ>+Ry4NY~zV`5M zQ2qt1lVDBsKhh%K8#KnyMR{SoNpl3%*X2RF-e5dW2g$vRot}v6S)H4DkWzIfrs*K% z7&@M&gH&wjR&_3dCI4l8>ogstCc*T|9Hb?!EQ-+|q?Lj;kwa$ogT@{8C3KK%_v>zW z2_2$A2IJHY(II?>YrSI*(Kmvfi2JpwYw967r8AM}A^O$OaiWKKFUHRaX>8|`UNG%v zP+m}nXoz5XriW;hU`>>URdQ%^w>2S?cJcb8&DX3i?GUBpqjAr9tjRA*Jc-rz%EF72 z7g@u-ey|R8EoGXnwUJoeq-TPu=&mQpk<1^u;1e3zliPsB9_due-zS^ciATO zc`mukJgLvwe$ezfo#*POWIzRx5E%+q@vpn!Q{L9shvzIQ+wkl*Jw*|+t16Y{Qcy&x$m z9b_47e=+$0722lc_H!>nNQJi9(<;ZJ&2Rnzd3f?=Xn&YI705mp37?D1)8HZJLCc_v zu5`~gkLYoudyYA+;{x|C`z8Lx?pbKBaKB-Hvdb#%)t7UkPrC#Da&jl^pLitC zm(tm|2J?6JC8ZraKS-ti49^++!khxnQS&#+70OZblQjjN6L$Xa@UHoz%JL}GU-#_i znH9I9bdcw)aI{N|^{AO2-oM)&*)!2uOp0)Q#@v|qtjFp2wA%}wZSqs8JJC)|-|tyu z&9VRJG0PX151@GYWOWyOOgNfj^=3KV$cgv5A-`Hm74o>aFN^ZMg^qnm72as7%*(aR zaZh}2Zx6>p+ncn(vLkJnT-gTe+1sT}a>zT!@o~oI-ZPNkKl{j|3Vud=N8*3Ii=vKG z#jfXycFMD$0yD_v>!tILB~&>=6J`O|E?MB8*k3-H^CRM+*Lf;_qgL8 zOEZl(Pj~F4fMs>@6}}CQ-)z@FJF2+Bx5=@+a;`5RXANH9+veCfaFOqKr7rH6WfQ8n z-1oTUo1$^nZRSv30X%5OwkBFn`ewzgEB!$`v(*><*?Yn~yF*7)rKpQcaa8TM;SAN! zACC{rgYZZ4n_@g#jXi`Czm`Z^6nK}dSH+2K9G*tqt%-p%g%-sf=x!Wb?9Dhf0 z(6Q8x_~W>*fI-4dMmdxK3{eiSTwpJO{e*l76+%8zNG1rJM%8H@qjWW04MhXpoHmWZ z6!5RXf$aIrlcH^sghWUAB&k_@fHQMW0@vmBGnu4-|F}t`{b^a&Pia|ZQ(O~$lD`Hx zvtSSKw}O*#cfqI0&e%`jG=WV5*Vv=1*dxeEfhGq_as>7hI89)az%>H*2s|m!6wmgV z@!tch1Wp#XN61g=+60Z9={X5(S%voK^nRi}E#a;xM2&*17TByCC2I6UdSfDYSS>IU z@1E%Fc1T~PXQpZ7$()?VlH+KP&1_6BMSPjlrJm=QX$%x`ZM|B zpDeIZ;A(-*0*?!vT*Nkw0*?!%kZ>fhO5kKh?VTM<%Mz0_lIJCFNj~R#$9=~Ao4eL? zhv%^867LA_<=zLpe|bxNy?oWaOMUnGcKHtYe(_1#(pP6i2c+WHVZ9i?>oElQPN(6( z`To(s@&SyC3K{37G5*$jJn*oWRR(;;F#*oNW1BkD0)GYOVz?&Z-Bl z6n+MaUOBle@z>lK#btKlJe{<)@2R=%9}-*QosfK7%-ueT=XTXaoalEw?iRRA;0oYt zfmJ|z+8W?n{tZI@Jn*G1F98o`adIQ7nt^v$?N9B6%SCS*Pr*AS9%uE!rR;kPxzfT!?xvof8gk-!%GVW*7$y)hP;CXEMXNE3j0(nMf^GznND zO#yb2rU8dYGk`;-D}iIBS-|nq)ij)blL~-;NQJ<^q!6%0Dgjbd?u3ghmjTUkIsT5U zi;NAQD&#_7Pq{a+QZ51Zf#rCrk}m@Gg=H-bfMqQWf@LjT49i-&1eUdQDJ*MgI4o=F zU$C4&V_-Rf#=&v|)xvTDT?Weubh$jK6E2fsI)SFb^h#O=(<|wIm|jWC<^I5xFujr< zg3~MU!G0j{QCMC@Pss(qr(t;&Jtq$aZiMAk^a3oeq8H^Mz?ZeFcU_y)Gr2nX&*ZJH zo$fE(ipTHymuIc#zn=3RuQ%O$wf8~qZtw5fpSyA-tCq2Q8n9`%ChgIDd+MUQrF|WC zOYe6$XBwuQGyS(i2YHyXTRJbDGgUdynXYu!nOm&qO!@BZ_^$+3xyAao)M7mX*`Ma# zo($8z4pz%8o*PV!o*YY=_hA~QR9l|&4z~Q@9WDM<_^K@xzVT?^WZCXJXS&71XIiQp zUO!{@l=>N?>QL(xv!Xc!xISI-t{9Xq6-)hAOv#W^R;){xwwoAcceptedOffer ``` +### `Condition_VariableNotEqual` +检查一个变量是否 **不等于** 一个特定值。 +```xml +
  • + QuestStage + 3 +
  • +``` ### `Condition_CompareVariable` (基类) 这是一个抽象基类,不应直接使用。以下所有比较条件(大于、小于等)都继承自这个基类,并共享其参数。 @@ -496,14 +504,4 @@ 2 ``` - -### `Condition_VariableNotEqual` -检查一个变量是否 **不等于** 一个特定值。 -```xml -
  • - QuestStage - 3 -
  • -``` - --- diff --git a/Source/WulaFallenEmpire/EventSystem/Condition.cs b/Source/WulaFallenEmpire/EventSystem/Condition.cs index 1ce61c9e..ba791517 100644 --- a/Source/WulaFallenEmpire/EventSystem/Condition.cs +++ b/Source/WulaFallenEmpire/EventSystem/Condition.cs @@ -16,12 +16,12 @@ namespace WulaFallenEmpire public override bool IsMet(out string reason) { - object variable = EventContext.GetVariable(name); - if (variable == null) + if (!EventContext.HasVariable(name)) { - reason = $"Variable '{name}' not set."; - return false; + EventContext.SetVariable(name, "0"); } + + object variable = EventContext.GetVariable(name); string compareValue = value; if (!string.IsNullOrEmpty(valueVariableName)) @@ -58,12 +58,12 @@ namespace WulaFallenEmpire public override bool IsMet(out string reason) { - float variable = EventContext.GetVariable(name, float.NaN); - if (float.IsNaN(variable)) + if (!EventContext.HasVariable(name)) { - reason = $"Variable '{name}' not set or not a number."; - return false; + EventContext.SetVariable(name, 0f); } + + float variable = EventContext.GetVariable(name); float compareValue = value; if (!string.IsNullOrEmpty(valueVariableName)) @@ -113,9 +113,42 @@ namespace WulaFallenEmpire protected override string GetOperatorString() => "<="; } - public class Condition_VariableNotEqual : Condition_CompareVariable + public class Condition_VariableNotEqual : Condition { - protected override bool Compare(float var1, float var2) => var1 != var2; - protected override string GetOperatorString() => "!="; + public string name; + public string value; + public string valueVariableName; + + public override bool IsMet(out string reason) + { + if (!EventContext.HasVariable(name)) + { + EventContext.SetVariable(name, "0"); + } + + object variable = EventContext.GetVariable(name); + + string compareValue = value; + if (!string.IsNullOrEmpty(valueVariableName)) + { + compareValue = EventContext.GetVariable(valueVariableName)?.ToString(); + if (compareValue == null) + { + reason = $"Comparison variable '{valueVariableName}' not set."; + return false; + } + } + + bool met = variable.ToString() != compareValue; + if (!met) + { + reason = $"Requires {name} != {compareValue} (Current: {variable})"; + } + else + { + reason = ""; + } + return met; + } } } diff --git a/Source/WulaFallenEmpire/EventSystem/Effect.cs b/Source/WulaFallenEmpire/EventSystem/Effect.cs index a3568502..43f58bad 100644 --- a/Source/WulaFallenEmpire/EventSystem/Effect.cs +++ b/Source/WulaFallenEmpire/EventSystem/Effect.cs @@ -153,6 +153,12 @@ namespace WulaFallenEmpire public override void Execute(Dialog_CustomDisplay dialog = null) { + // Only set the variable if it doesn't already exist. + if (EventContext.HasVariable(name)) + { + return; + } + // Try to parse as int, then float, otherwise keep as string if (int.TryParse(value, out int intValue)) {