From b4f69b222ab0227141f55d3ba5c68eb8bb34a56b Mon Sep 17 00:00:00 2001 From: Jaysyn904 <68194417+Jaysyn904@users.noreply.github.com> Date: Sun, 20 Jul 2025 16:17:47 -0400 Subject: [PATCH] 2025/07/20 Update Updated PEPS AI. Full compile. --- _module/ncs/0c_assoc_actions.ncs | Bin 24458 -> 24591 bytes _module/ncs/0e_c2_7_ondeath.ncs | Bin 2447 -> 2509 bytes _module/ncs/0e_ch_7_ondeath.ncs | Bin 4642 -> 4864 bytes _module/ncs/0e_gui_events.ncs | Bin 74130 -> 74263 bytes _module/ncs/0e_id_events.ncs | Bin 0 -> 18654 bytes _module/ncs/0e_nui.ncs | Bin 478671 -> 481938 bytes _module/ncs/0e_nui_dm.ncs | Bin 111472 -> 111472 bytes _module/ncs/0e_onclientload.ncs | Bin 75172 -> 75734 bytes _module/ncs/0e_player_target.ncs | Bin 198646 -> 199332 bytes _module/ncs/ai_a_default.ncs | Bin 149397 -> 152151 bytes _module/ncs/ai_a_druid.ncs | Bin 138260 -> 138292 bytes _module/ncs/ai_default.ncs | Bin 151540 -> 151540 bytes _module/ncs/ai_druid.ncs | Bin 136355 -> 136355 bytes _module/ncs/di_spawner.ncs | Bin 184222 -> 189684 bytes _module/ncs/item_droguesword.ncs | Bin 1694 -> 1559 bytes _module/ncs/mhspkspwn.ncs | Bin 149373 -> 154835 bytes _module/ncs/no_spn_beh.ncs | Bin 161802 -> 167264 bytes _module/ncs/no_spn_ftr.ncs | Bin 161800 -> 167262 bytes _module/ncs/no_spn_melcast2.ncs | Bin 167469 -> 162007 bytes _module/ncs/no_spn_rogcast1.ncs | Bin 161998 -> 167460 bytes _module/ncs/no_spn_rogenh.ncs | Bin 167288 -> 161826 bytes _module/ncs/no_spn_rogtel.ncs | Bin 161898 -> 167360 bytes _module/ncs/no_spn_summ.ncs | Bin 162193 -> 167655 bytes _module/ncs/no_spn_wiz.ncs | Bin 167684 -> 162222 bytes _module/ncs/nw_c2_default1.ncs | Bin 193642 -> 194206 bytes _module/ncs/nw_c2_default2.ncs | Bin 58433 -> 58435 bytes _module/ncs/nw_c2_default3.ncs | Bin 20674 -> 20676 bytes _module/ncs/nw_c2_default4.ncs | Bin 115087 -> 115089 bytes _module/ncs/nw_c2_default5.ncs | Bin 19000 -> 19002 bytes _module/ncs/nw_c2_default6.ncs | Bin 32156 -> 32158 bytes _module/ncs/nw_c2_default8.ncs | Bin 323 -> 339 bytes _module/ncs/nw_c2_defaultb.ncs | Bin 68287 -> 68289 bytes _module/ncs/nw_c2_defaulte.ncs | Bin 52629 -> 52661 bytes _module/ncs/nw_ch_ac1.ncs | Bin 200825 -> 201387 bytes _module/ncs/nw_ch_ac4.ncs | Bin 186195 -> 186328 bytes _module/ncs/nw_ch_aca.ncs | Bin 90766 -> 91340 bytes _module/ncs/nw_ch_ace.ncs | Bin 105568 -> 105701 bytes _module/ncs/nw_o2_boss.ncs | Bin 142897 -> 148359 bytes _module/ncs/nw_o2_generalhig.ncs | Bin 148219 -> 142757 bytes _module/ncs/nw_o2_generallow.ncs | Bin 142749 -> 148211 bytes _module/ncs/nw_o2_generalmed.ncs | Bin 142757 -> 148219 bytes _module/ncs/pe_crafting.ncs | Bin 67260 -> 67325 bytes _module/ncs/pe_henchmen.ncs | Bin 73382 -> 74132 bytes _module/ncs/pe_test.ncs | Bin 6478 -> 0 bytes _module/ncs/pi_crafting.ncs | Bin 35301 -> 35353 bytes _module/ncs/pi_debug.ncs | Bin 15880 -> 15880 bytes _module/ncs/pi_forcerest.ncs | Bin 91013 -> 91587 bytes _module/ncs/pi_test.ncs | Bin 8555 -> 0 bytes _module/ncs/scarespawn.ncs | Bin 148830 -> 154292 bytes _module/ncs/thenspawn2.ncs | Bin 148384 -> 153846 bytes _module/ncs/thenspawn3.ncs | Bin 148386 -> 153848 bytes _module/ncs/thenspawn4.ncs | Bin 148385 -> 153847 bytes _module/ncs/towncrierspawn.ncs | Bin 159594 -> 154132 bytes _module/ncs/winkiecapt1os.ncs | Bin 153416 -> 147954 bytes _module/ncs/winkiecapt5os.ncs | Bin 153416 -> 147954 bytes _module/ncs/witch1os.ncs | Bin 147951 -> 153413 bytes _module/ncs/witch3os.ncs | Bin 153413 -> 147951 bytes _module/ncs/witch6os.ncs | Bin 147951 -> 153413 bytes _module/ncs/witch8os.ncs | Bin 147951 -> 153413 bytes _module/ncs/wp_speakspawn.ncs | Bin 167088 -> 161626 bytes _module/ncs/wp_speakspawn2.ncs | Bin 167088 -> 161626 bytes _module/ncs/x0_ch_hen_block.ncs | Bin 0 -> 47 bytes _module/ncs/x0_ch_hen_combat.ncs | Bin 0 -> 506 bytes _module/ncs/x0_ch_hen_conv.ncs | Bin 0 -> 258495 bytes _module/ncs/x0_ch_hen_rest.ncs | Bin 0 -> 47 bytes _module/ncs/xx_pc_1_hb.ncs | Bin 119587 -> 119720 bytes _module/ncs/xx_pc_4_convers.ncs | Bin 185407 -> 185540 bytes _module/ncs/xx_pc_e_blocked.ncs | Bin 105847 -> 105980 bytes _module/nss/0e_c2_7_ondeath.nss | 6 +- _module/nss/0e_ch_7_ondeath.nss | 7 +- _module/nss/0e_id_events.nss | 277 ++++++++++++++++ _module/nss/0e_nui.nss | 61 ++-- _module/nss/0i_constants.nss | 2 +- _module/nss/0i_main.nss | 57 ++-- _module/nss/0i_menus.nss | 546 +++++++++++++++++++------------ _module/nss/0i_spells.nss | 27 +- _module/nss/0i_talents.nss | 2 + _module/nss/ai_a_default.nss | 18 +- _module/nss/ai_a_druid.nss | 6 +- _module/nss/ai_default.nss | 9 +- _module/nss/ai_druid.nss | 4 +- _module/nss/nui_c_storage.nss | 14 +- _module/nss/nw_c2_default1.nss | 4 +- _module/nss/nw_c2_default2.nss | 2 +- _module/nss/nw_c2_default3.nss | 2 +- _module/nss/nw_c2_default4.nss | 2 +- _module/nss/nw_c2_default5.nss | 2 +- _module/nss/nw_c2_default6.nss | 4 +- _module/nss/nw_c2_default8.nss | 8 +- _module/nss/nw_c2_defaultb.nss | 2 +- _module/nss/nw_c2_defaulte.nss | 1 + _module/nss/pe_crafting.nss | 2 + _module/nss/pe_test.nss | 227 ------------- _module/nss/pi_crafting.nss | 7 +- _module/nss/pi_test.nss | 103 ------ _module/nss/pinc_henchmen.nss | 22 +- _module/nss/x0_ch_hen_block.nss | 14 + _module/nss/x0_ch_hen_combat.nss | 36 ++ _module/nss/x0_ch_hen_conv.nss | 91 ++++++ _module/nss/x0_ch_hen_rest.nss | 15 + 100 files changed, 925 insertions(+), 655 deletions(-) create mode 100644 _module/ncs/0e_id_events.ncs delete mode 100644 _module/ncs/pe_test.ncs delete mode 100644 _module/ncs/pi_test.ncs create mode 100644 _module/ncs/x0_ch_hen_block.ncs create mode 100644 _module/ncs/x0_ch_hen_combat.ncs create mode 100644 _module/ncs/x0_ch_hen_conv.ncs create mode 100644 _module/ncs/x0_ch_hen_rest.ncs create mode 100644 _module/nss/0e_id_events.nss delete mode 100644 _module/nss/pe_test.nss delete mode 100644 _module/nss/pi_test.nss create mode 100644 _module/nss/x0_ch_hen_block.nss create mode 100644 _module/nss/x0_ch_hen_combat.nss create mode 100644 _module/nss/x0_ch_hen_conv.nss create mode 100644 _module/nss/x0_ch_hen_rest.nss diff --git a/_module/ncs/0c_assoc_actions.ncs b/_module/ncs/0c_assoc_actions.ncs index bd9e1de70a1597c5e44404600b9bda297fb147a3..cdbaad078d084997063732c707f1cebb4e39bd3d 100644 GIT binary patch delta 1380 zcmaJ>O=uHQ5Pt7%cAI8*6Vn7EtxYzGEn+eLA+=3STcb_XT8eGOO2GzeF;J_B;;FO; z|L~yHId~B9prCjVwKp&7K@m|Z9y}=&ky51994hn>h_kcVnrQLzc4y|BnQy*%yH}s{ z>o2(8mFzJNZHaB(#n_-{QvbmVlll4${(wVbjB)ccn8XW(!W?r1(X}Q`R<39*K_?#+ zk>u1P-X}$>Mnec;^_0x;oM2_i{tVQ~hVZvSO5P_LssQ9p{t9N~R=x;^lHzyagpw9b z{qR)Dik4oet;q84aJgbg#4o@?#W4{N!9iz&e}GBnZvG2CIg|VeR97a%9xoiJY~!Vh z;y2-^Y6$%tc(t8EjY78;6#8m7t%Z^M4Xv3!gZJo42VntSdGP3Qk%~j79^!XkL^nig z46f;o$nCWr6sbCxHGL8|-OZ7XVnV>MdDG}|$=vNVUR7{_CP`=jOLNS1a>oOKdT zpQFr`=~5~ZvK2-6dNWl7HZp14)DF4RERLcseMPmtk-$Y|Q0)?B(4v+Iu~JEya+U-@ zAOTz}>XaM*N2vF9U3(-gLT|RfA-k;oq~$GZ*l&YLm!%TQwmNt-{)jqUC@c>~JQ>Y^ zzX)3{R7#;*^L9ge{%`PF^X^ub6nG5N8v=0H>+>Lq690Lat_g(ek&kmYb22-U&73Kh zkXGCZ6Af!UL#Iw=M>A)S4_OGvBz;}xH7oxnW@xx3sievB_dtorn_@XCU1j0uT%0=L b-|G?c6A(*8p=Gx=^)@x1Vf0%gYn`= z2ujKv44M#+#Df}}aPWX8UWieN#&E*KgNbNFOQHz}lDgeeLkU+e`*!}jGxM97ePb_S z{E_wl$f46T?jHp3v!8=IgCodsdqJc_3Zbm+zh zYz^T;K_?5g*VI8s2N;fa>|6=20A0Ja7T;DK+56ImHb{ z_)F2KnnIg;fSM-ps9HwV1P-bm#y+kFp&H*ZDK>#iOuCF#b3KhtW1HCxPV6&lG`fO! z%{7KlHZwkrY&8)QeOQ|5m=^<$B_cDgq0tib9-P^LM~J?D2vINgSUf=RrbVZRS8&!6 zXKk`sUsG`cKUv?f&O9pI=M%6N<@wv>gtHZax;_&sYXvjvC58!Ql7~w zX!yOtk7>Kh`kRRB0(`||u42?3MbUiyNgzApRU-1ai;BkSD_Km#&~ShMz{MfRyr6uy zE7?OqtR+_qv&pA<1g7%um$g%n2=oc~ z-e=dDl)IvO`Ht~(Za25sbLU?M$XYW6O1Yekyr0WIP%GL7iwNa*7t2y1Wa`T`i|uue zMsYc0|Hmd<*Vyk diff --git a/_module/ncs/0e_c2_7_ondeath.ncs b/_module/ncs/0e_c2_7_ondeath.ncs index 0383e463ec636366751d3de3b7fe25df8229cdc6..c5ae737dc84e9ec6243f86ec0326059b6d1e4c6f 100644 GIT binary patch delta 137 zcmeAdJ}b=Y=NzmMW~gW2#K6FLb|P<&0;3cY8w)c70|OH?o0cfCu0|Uck2Syb} Kw#})GS{wjm=o@bU delta 79 zcmX>r+%L@Q=NzmMW~gW2#K6GWKasabf#D7l8w)c70|O&7rsKW@6fL>Y5^67 z10$|LWdPrbkVs}vPtP&{eWC~dz;n62)EB9DLD}B9IRNhE3EB&rkR;H|Vh*)g#rJq_ ze&ZB=GeuFyA7)X!-ch9rSQD;~xlv?Dly0uP+H5W{Q^%@=rvj~CGUZx?8$-1{4QkfC zd?zHgT$*c99l?Mz!5O#5G$+V3k!b{j*~>UQY=0kWL~)TTgx&xrI>Z%4r8JGeTvfZI zKYCVoZVpvBBo3}A-KnC3XXB33(iQ-J=?cESBw?{UMVL#1X zUn+|oQ^%573i2(wJc?--OEq?vsCAEw_b3GKn9OR9spCcd*UhMXUD*`Dr^oK)^WVl) z3~s;93-<6_riLUhlO0ehd=~M50f*!7)#qor G6WjppZaY2z delta 677 zcmZorTcpD4=NzmMW~gW2#K0h=G?BMQf#Dz%8w)c70|OH?k*f!LE6#ZAGAJ}|I==`Rc{tPBimnPfq-Y%u*Q%s_K~NHc&;lLe9SlNU42 zXN;Qc%%s8SG&zUKfH83LT&8q&=6;wWkai|kpkZu|p79}$?l4<`rkgTN-p42|3}kUD zgIvU{z{CuZo*c`pG+B*Jnjh#4B!iw$4q($n6I(xd1B;jtPaq6z43CT3_5GER=+l$PfafN0$Y*7^e)R!^V- z%Q%^zQ-Tx7gUC)6U=cTYffAl87`c_%AV!#g6}^FIWqtt+1O`SR5yL2=Jb5RlE~CTb zFiu5THfUUJ1IHXASP#sC50iO0rKn_Gv;*8Zs4;a1oDM9R!LjfGH8p^P4Cn)}+z+sv U5G1yc$R7$5V8q9b0R(@G*6foLR+piP@F zcUszbPTY*Gd6opCRn^$Cpi5L7h+hzqXPdC6*VO}bP9+Qd0y#ke76B+GTXFj)OJtKE z1vE4QEEEykCcOJ7e26~E$tyYpiT4%DXAc-ytI+9PTFxu%S9t^LxEZa^)?oMS$<=g; zLGW`yP_xg5FJu@N2x);PlSIW1UsP+Kw8i~0adl@Hyq8i+tbGMu#%%H~q+q+#gPXt( zfLp-(MJ7vg*Qo@+O3OIAH1>IAlOz7OW9H{S9XD`6MjY^~bUamMX3r-(o~gRyEj|qR z4-^Io*i~UAuYx&|H^~?RAnI^{ZH$)JHS-Epgh_YV7XwGBR>dntgGU_0uJ`} z!cu1>Wa1+4GfISJUliW)+F5L*3nL&rg?R|QUe~#)p<)Qp^+}@4HPdYKrE#Yau9S_sDVHU%E2+KqA{jnqeBxyQ`-+j7; z{87bL>}ZVEV$Nq*z=3ynBx26zM_~ky=K3eXGPPDd?biXhS;$u$#afgK4v}9ggC#n= zRWO3w_)A4&`nG?dKVNhgUWS1@dS`n&ys0AOtJ`fruB{6aL}2ocI&yUrn`V%ot5p>5 z#J{thT)Dx4M|YhkKi%Ttq1{s;?lCTXTf98(%TxdXGrmcb3yLHlmoMSYJ&RyIMt?=g zrAD?8gOz)SgU`3Oh+I4yoDU<7h=u#jXxbM?F0|rHrQ>kfzWZQSh}dpuG4Jbowl{pX zekc!B@%_klK0{y2zmR)*G<>_#FBCx5+@NbFkw$V=2U(${8?$jlL-C(8z2-r-Ml@BxcmGtU&m2q7m zt{r5eZUQMJ`@!Ry>=U$+fHi#8FC1i0JSLG~fg-DAZy0kWh!S*_o;4Muvfl zWYs8|cyB~l+3GN`YS@KlJBUt?h91yEbmWpBxyyr!^3ryOHRHXFVf3~h23eMKo#0;} zOyQ8NG}QpZj7gyuGFK{2pMtkS3@`nl%kbj&L(xl*g&H14Gb3RTc(7&d)AW2K3?S}2 zsx`t;m=QD@9<2zwQ@Kx3iI;8SLfzR%E|hplRzQD`ksaw0%JmzJ>_{`VJ^?!usvk#3 fMZtLD_ABtRf+*006MGxo6$`&X_p)3YgoXbL+VLs_ delta 1858 zcmb_dYfzL`7~c2&zTJgz+0|VxvWURCULZgcYG_grFPN58l4%)?&7}R1i-3)|L@vrS zW|PQk9u*BOO%Q{aPgyQG3c5Ou<%mvpQ_)Ea(;>!jCJk#l-}ykd`rH0E`=0ka&-*;* z`mqyo&2iZ@f5w97g~^GNGj$MC(_;Dtqc&HK)$w1f1U{edo=z73*L89fPuA#bq&S#H z@zN6zM7dHtR$rlw(iE(2pkvaLP)xr|Q(&4BFYo(cg0#u5<0T%9QOg-nFY9%N>Cfin zOwSS}2Xs84OGR4xR9FO$f*h)@6phlOVZ06GUSy{`WT((M!SD-3ZkeP;B z%M$0wLD9mtlNU9Xtjfy}M$n^$_GRXk}6a=(grv>f^K5 z0dJOo%|YO?(dYKj#tcy!xxB;Ps>uk}u!LB@|6MjEGZr3F-hcrp->43JU0?K!Q za?>U$H@8$G-VSG7Hn5SKErQ0akv!^W!FVg4l6Ixj)NOA;uQuMXtpo;nasdt0%2c)8 zi#OBgTCJ7xc2r{DY(8Qq^C$z!wU=NoALxY>)U`7o{!o&3B>~=W@|=T`+6}bf#a^oz{AlkyypkpS z#q1lz%gcu-2Fm*EEM6)Q-KY0wLmf5OO;^tBPXVZ+YfTQt(I5kUzl6tDdgj2Z&`<0D z!|z_^iBNjJGn{f8op?Tssv7I@+l7AF@eoeQO*YzgFaj^GqU`2bbpPNT*sfM3b5oBx zqr4ji>aR0WUPlvrNSixD>8eMjiJi-_JBW8<@l+|Ru!CJW*O?D^a<<5MPl_C! z>x`nEN22gTDQhu6h|+T;4qyYhkG-xeJ~|%oIG^A#H+DPewXSKD*%c0Fd2|muv#6pw zlm@!=RMede@3GU7T;WJ}I$-x)<*(!X9CWRs9&ea3+j}t%yvmq?oKg5r0%fe5Xo%uZ zPq~lnK}fLns81K{R8tlA)pnheT|=0OYDswz5WeXS)qx z#)@*aGY%_i*^9w2)8g78xcrt2!Ub}thOi7Hyu#MXV1-@O5^beTm1fo|LkF%&(Z62vfg$1xpcj$xpb}9 zT&`Z{@6z?0T8B#D%Is^mSTcY!NrS&)kCUW=~@ot zH~f7gD>OlB$e<7y`c!~$RBC7KCYWk&@Yh}qel|;PX*NqA(`>E`^oN#a4%^IR4}u{T zeDs@p0$Xf`$ygM^Hku&~epKy6vZH3uo7#mtNp<(ORZ|JDfCc{4;zSGIzT!y!$+5DR vERbv|wEL?S=M1ZjWv48Vg+(!JX%K{Z#*YLHz{qkIHyUohR*xkDi~)ZGV|1ig diff --git a/_module/ncs/0e_id_events.ncs b/_module/ncs/0e_id_events.ncs new file mode 100644 index 0000000000000000000000000000000000000000..259080cae12bdd6979330dcab5a741729dc09143 GIT binary patch literal 18654 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

|~rUFxDK|qQAAbI$aqb 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

KcJp|9*#8>~9O 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 delta 32652 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 delta 17 ZcmezHjP1iSwhim|GZ`9f-nf7NX8>Aq3K0MR diff --git a/_module/ncs/0e_onclientload.ncs b/_module/ncs/0e_onclientload.ncs index c10f8f66f71f1c7fe7b654e74e3cc4aa53bc0158..fc0ff671643ed2b2b4e9ad1ed90f81bd0768089d 100644 GIT binary patch delta 5465 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 dcc|u0;riq4!tyKa;`1!_lL2Xp8zihz61aO diff --git a/_module/ncs/0e_player_target.ncs b/_module/ncs/0e_player_target.ncs index 9c9b80b7984cc146e9c8934251dc826f031c7640..2864f9a651b95eaeb8b167c9939d6d99fb10bcc3 100644 GIT binary patch delta 7257 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 diff --git a/_module/ncs/ai_a_default.ncs b/_module/ncs/ai_a_default.ncs index 1338667fed956c05688a28813d5aeb1ca6bea1fa..7122b9bbb38db7e8fdb9cbf4649e3a4512cda69a 100644 GIT binary patch delta 3993 zcmbW33s6+&702&6cb^UKUF6L!3-|JXyEBS^)S4V8 zV@G||*Q~iJe<|otL{S9p+$LzE1pyW(O8`#?H|wl!PqfLtnw3%(MB?+&6!Qj{sD26P zXmbe|q)O0-!Z{Q*qU@yv`==622yT-a;8D}(eM5;KOBzfzm3r9i(o+}%nNkkgFxV!Q z;e7iMH>Xya124JAm91KxTi#IlSN`DPU)`U7PNawbFI0aeg%6~X^gwB{#*&$1>E_*hhLsIzg_hn zewnJD`d6B!O~Bput%X`vs0G~%Y(p`G>F}vJY~Rc9ga)UY+4(I{E8^=SZQKS&@z)C} zwiIU3v?2&%B`-o4V9r!JeHtR^_-W8fv(tT~KN$>^me0$$DIZ?IBdZ9yAxheuA0V~l z8R(q?h@!?x=)(>dz+A+N>D0asPLMel0#<3_v;stl3iKgo>5E$Vc;s5Zt7a?6FIA_Y zQOhVHfPZJ;zdnkd1SOXboTYn5(8y0|;(9aO-L*fQlb2GRfwJn4REVaUcU-CzZ~R%VyUuHx_ft* zBg86DeFcP3_e9jr)E)dkYLsh8^zowR)d8tF>{U&bs-}7nYF>3$v-kExYP9S7Qv)}= zsCi{TYAU^|c~ez$Y!GT*aaXhFth*Y!W=4N%gi~JBZ0S)WxEh?cx51SU?mgI|F!C!q zTIlZD6R5riX0gJPj;=k4CR&~g##Q1rPZYOa`}TlPoZU>^=1x+!L?N-*uX}>@TCm15 zO_1!#rs+wO*g7z_Q1vx~WOumTM^(643B4$SuJ1hn|Mmix(gOzB$dx_d9VDw9rZZO^_rt4AIh?>p{XDza?uC3|9=RH*mxDA7w)-O(=wF+#W@LErjv- zT0SKe!!%k{1XZ~0Kh#wONl4Gg#&J|o%7>4VQkzKEf*^zr2lBlxl!67n+dyrlun;%> zi)L(xX53_C2|M^2i|g3-U2qJ1VxLpTxkqezD-{^QM%Gkb@#|tSj4CIiFHsryFPy?U z${-tX*A;453l_F%FPH(x6_H~f6k&T8!8wSK_C;uEqyw(tSY*0#xC^*`4gFVwXk1@S zQTt&eS}Uc3Ng=d+KO8W2b!IF5S>gfbClG*K3Vcf)VZbx!Y7ol5z2 zC^xQKsVwnBxT!OIWLE~j$LKdpAefDA06#Oncazcz!9q*_3>`T7IyrJ6niVubwHA;2 zv*0Um-iS46bTJdHOmhP=#^c(rugYt%90+yermN-nuy+4uvhtj=aI11-K!{UZxrydJF?sFvcaxy;96x`BTBix7#LMrqITKI^_?J2=kcWoZ zW#BIzEcan$k6{jAlV6Y7#>S-LR$jxG++*43hbM3W##z{`iO5gsixF-Qgr=b%;2)cN zO|&8%t8v*^Og{w~;OCiAm9L2oWnyB*PqD>tdA@RVyh68{q)Fj=I+O@{GG?H!;c~R| ltE?AIbjAV0=(!9G!p#R+ZU#mIo-J{O`T{@uRnLz8{{!M>b9Vp$ delta 1848 zcmaJ>X;77A6u#%V3y>_zy&#LMBW~aoA;A#_R4j7?DHAI*)G-B@B&D1pmKdSN1TL?7 zP(cN4w9y1Adl3=0Y|2R#&1Ez%ml++?)NsMfLFv1fCG*bo{rKiP=Xu`eEblqrg&j`o zi=A8&6J86PIno$DUWJM4O)d+`&6GLJUwb(~r957~s?N^NM}Equ=9KlV(m}1!aq>_y zg!`*hl<=V)Z(|P+YBedR+f*7W^Q~KgXo|-sUEnh(+HA@}VlEB9{7c;WHhFW?XmS+W z$iWMO*B+jM@n>8L#Rh(i>iFL+)>oh?E%!D0|x^$B)ZjF^ZZf=EL!3}&$wGjirW zL%L;614TWF+rr)I4tupL{RQ9H@#p*>f6+xdzOjpMYiS1$Hj`ddXdDcSA3VdfHH01r zi^gEcP}>2&bO9B1zz!SmezYBsWdl}3*a0&{syaM;rIQ`dx2G)o-n(BBht)}*hK=@@ zs47<4Kf=c_<9R*R)Gj@ds~wF`DZgGT>$RjymrdE^O<0x8$&&hS$fXi|x01)X!cSJ` zk^sI;5$C;Mt@5`19A^N=s5R zNyo8U>0_r(TqEmh?h$$J2C=E3k8IgW9faEtMf{)u?x>{I@bcjNDjI^kIpVI@aCxbU z3Y{_Xb)H{M<8i~0cUDvEz@^8!m;A75U=XPW_AYCkb!$4GE`4kW6t0#49#lgCj`wES zqV7_nddqifXcEEik*uwy22yvbYvl58DFq10u}uV9_E9`S2FsxDDH>Q@%f|f_&89lq zjPxs3qX_BKxN$%2LfUq#9mQMfsTt>1%Zvl$PWUy0m5x{G?$RYZH8{PQSX)8Y6Njy*|H()k44*W=K9NoH%D zG0J=@A~LdtsBd`GF6If}d zUhMtcm-XTJ8=Z^9ks5EY%}Fc6MgoNE$2dF!VW^nGl@ajb`Vkn4jh|VK1k5?xb^KO~^_U`vLb&dN@gonHm zj~9W~NYQNa7I!?|Ic_{I!xAcj+`L7qo13tdI?JR4q!G+tbUTA(`vl|@a;Ep_1#{iY zmn*s y3KYqCdOny0Uq?%Mx97+*y)YYfyr!Ij*k?N2vBpOlr(*!2`Eid-6Po+?B>xX&kY|jA)MgGUya*)7 z`G|)gQX@w>-I@xo7e)pp;YDd(mf%H17eNMn5uv?v1>v5n|L>gh|DWf1`ln4((p?Yu{t*NYiP@k)&H&Tl<-!Nn?ZfO-a6&oAw^F#`JO{6FMVF zBuUU5D>{9uPKUEM*kY$dQH-2zRe46`Ki^8kVVDuOkW6*$;>&Sae3lGi4)GbSe?vY+ zL(XN!*vdsZ?Uw7~Vj8ljrUE<{Or;6eWB2JVYj4;uI|?@%^|`!S0lR1+lN4uG`ragD ze2i{yFvZ45%hBfw3uL*ia$}e@(On{`B@!%77PVNVJLA0Qf{nAk!X%dM2A-^gLMn;J z&Ryzi9R$(XYgL>_GbrFv^$mCidPiJjCL1qZz(JbmQSBFT6BPFGNF(y;>3d#kL>~8g zAXDfY`#s2^@GB8+O61b5Fz^o#3MlOPS1|I)PVAsi1}_dm8`-Rl40K{A1>f>)Cr0T} zp>TI6iuiH^_gq1MLT*v!Oy$#EI7A`Gx(;^X3=A+RqLR>Xn_&*FkfA8BMbCk3u{7A9hV|y{|8puFh&0C zsPlUp`e?)(fpiYEYoB(1PSxNS=-xcLo*+{c&sYb1Na5QSvZ>A0aDd$7JX{Vt57nTT i#uvD32`OTzHD0ZDp_}OLq%dzk$p>mtqt1G9YVZ%;x%-g- delta 837 zcmZXRT}V@57{~X2b~Y!u=5VP?og>i7LCcH2=t8Y-%BV|Mupmhc zn@oJ|3XGf*goob$<)+Wb5|hoz@?a3{L?hogKZKVYI*(O}TN9jIunc=gx`7{7!bz{@ z#&!`hIqCPd)U>0 zW_ljvsYWQ^e1|B2bVd1%U@UD3Z%A4+g0FrUN1?C_;%L*wP%BYu zM@ziTWMbqvsZ?x2GkgxjNQxqaUIZb^2YWJ@&Y8iGj^|;o{r%@#3)WurSQb5&5tT$8 zks(UdxMXMX z3UfhsFta>Sd^i@Hf~qcq(ZAA&$Hhs5aaGKz_JsH(v(50!DvC^5H$MHJD^trugNytK zEmB=%@CH`%>O2O|y_#3QH{_)UUog0@;#gJu*x)irmkG1y`S~!`^PgJuk^cpIUD!?& z7M^xto`wXE)nONn&*_}Q1C8+0P?Z?{nke2K2;(bF@R85Uwq~3rU!h*pxT6^k8l2_@ zJshmjYnrUM3kRsUU09DMi_(+fJhBE+{OcY@>Dd->;&UR8-G`lWyScOt$N9`CtRnJo zG*7i5NBUb(4l2wwH23p-E7sD}ndJ%ToZW^@+FhWJ`OSeAtm8fPI7fXddmCWm@p?R> zC-x9rzOI3nL$KMcf#-V=XIf zbp~{JMV&=@-6U)7;0vh3E+*Zvoc|VK+%tg)j`^wGY8tUaY+H)pQYYGp&vIEG;zZ2* zFp;{nfzvCs@Nv(|Fh+i>M5dW`4oOQj@=TO2WM4Oqj*;YcZj6PtlK>CoH63f0QDj$p7Z}dzvq9>nI6fS9?2Rr zP?!t`%+AhEN%9IwLY>DZC05aLDdA0*B#zXp?UE^l`<2G|7UIr_(>S-z$wtXix$A_; zCZ{*FIhDfHLTT5^(zv%ew-DWAPooD#8x>M}KvZJ2n4kh{`|~7b?oK%8v&6^U<`Q(| zq!Ds5u@tvArV`R8QDvwpENC$$KSBSJUpz5vfUCV(R-0vfKf|xX=%?s=o(!T$l*|<&f^H2jVyx5CW+2zqGPu8U#?6?0?k zy?{qFWaV5h)=@OXr|MCzb!HcMwu#j8QFZ(yYE`NtUNsvwA!JTin=^Na^{YM><+@ zk9w@S_|}@}h;w?rxQ;le+bbq-n0fmP7Ci zoae(~QZ{MT#+^RYQsfo?)XYeoR&DB$OQ;2{Zxi_*t2lWegU7P5h<`L7MqR~X{}&67 zUPcYsx_Dmzd--?_`66dWE>8qdt`7N82U@!(ZTK;NZNy^gd^4Z0ic141Bdbe``K=yO XkQ=2ve)a4Ys>+~hhZ@~U)j9tF`ED9C diff --git a/_module/ncs/ai_druid.ncs b/_module/ncs/ai_druid.ncs index a0a1ca9b5a038ff3d9bbd677b4359d2187753dfe..fdc177884aeb8935584ae1cc3ad974334db88615 100644 GIT binary patch delta 538 zcmZ3yl4J2ojty5CCo?lShb3pTDabPbfrK=}|NsBL$O4(nuRtUN8xu1#BT(!E1B)C3 z17k`GhPp#Abx@UWAS&~AOm<{cn{1=ZFA5+KQrx?Lci z@Z|n~9NRbLGjcOBt(}Arxm5rXS(619nY^!oZ8}F0<7B4QTfoLl-&@2uiD@+hh_i)h zl^2Ls+^$i=c$1N7h2M1XZH%hZHOd(8Fs-nktk@zsUA~-g1Jm-7=@-ix!g;<)=$lGCEEd=4BGzJ}H$^f|032Z+fFKquBKLNsMfh-*8Az z|L}>Cb^41m#%!hyfzv-;WR#tLft!hIvO*!-_NH{kW+tYECX+QJ{ilazF(zz}s$}$> F4FDnFtK$Fw delta 496 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 diff --git a/_module/ncs/item_droguesword.ncs b/_module/ncs/item_droguesword.ncs index dddbd441c46cea2bab9288bcfcc51f16f120a9f8..88f39043ca192cde46df2135ccbf09733766af83 100644 GIT binary patch delta 94 zcmbQoJDn%g&pB8j%uvt3iGhJlT#f+m diff --git a/_module/ncs/mhspkspwn.ncs b/_module/ncs/mhspkspwn.ncs index d00d9db809ffed59edfbaea40490743bd25831df..4d7707d1c6e4f95ec95c2faedb29609268a6c08c 100644 GIT binary patch delta 4588 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 diff --git a/_module/ncs/no_spn_beh.ncs b/_module/ncs/no_spn_beh.ncs index 6cedacee80fcabd8f305d52b5a4dc0e3ad0be305..8781d472a8f8ff305c8a2c1443f28edeb7b8551a 100644 GIT binary patch delta 4383 zcmai0dstOf7QbtqbMHMDkcStLhbU4$fG!U$#c~wU=`&RD5sal7rr21dX-+wfr8YQz zmZ;2DcUh_QHJOc(a)HfD#A-6l1pJE8(F&&~O$kXUbL`^m#{n;X#N0pbK5Or_e(Sf^ z+I#K&Vw(Rg#M=jaO@HHfIFJjmnf@p+h_w{)qO?sWRS>9T0Rz5Zg+bZE+-hIG0_P&vY$Em%%E~7=_s|4Z6*FgY# z2B|D zIq|D)vdKNAlU215j%M>5SfzBvlx$KuX-ak}eP&9AkOnnaba{@rj@1IcLkYPcG+It_ z)qb?lilM`f^`^!#`YD5UGX3T7VITLV%#pe&f7qKcN9v|r*PAj&>ZV-Nn=(i8R*tLa zO_?KgDqD22e{x6`Cnhs>!%qdy+mJlw5va+`argmZ^Jp=eP3`)TN?-O8&Q$dhse9g{ z%h_g<9O}&C`RNsz+X`gu)gF;KFE8YlZpge$y&`j4i9Di5WX{VAnRi1k&YfH8*RsKF z1u}lpBQodZh1~9qJg#%={u(m3mB{mZME;C4#)g2(Yv+;pH6$K`K!WQ%B5@vG9C@{G zMnAgw|Kye1N@UW7yinDFBp-6Z8Dgs&#W{|x8yU_y2CCf>)47YJpHfm#7p3!6e^Qhd zyy|CjuS#`udnp6HIg~*sUC~r5Gt8FPwQ0>pe2bHAHUns?T*ZmUdrr*zGG-__>J!Mw^hD}D18G@ldles_U+CyMt0 z+5M(Mk8dLu(Kp&2o?UFxiIlV%!Ul7W-iKGI!|byL~bJ zi2Go3nh&O~b!!)w*>U(Xy15$Cv>PeM=&A^aCTA|kVajT^aU~p#QMsb|XftTTMaXk+ zZT|^z#C3PU)kYl?hq-fpIj>>-*s^r^OviyoShN*lz~}B7S+cn<3(d4b5?g75-GKc+ zWP=Tu14fKhKw@9IG#;|qR}MG^IPf%k*B6=)qcnDC3_Jw%Y9EN8`zpbgR{R0NS#%(j zgAu+@nCf)vG;Zm?95w)}bHZX9`c%@S2$+gN4iQ2+1|AUOAlecEu^70NUbqZ%=obkv ziB?C#Im7=ONuhuq9Dv#7QLw{?aGyf3zrrrv1}gz=k?e`V+$rkw>C$w3pKgc)gI*d6 zKN$Fym-)6RILJJ)uwBzSu4W35DO!hTr%WYvBtR^eW-2L5Np`j-0ak;f<9faq4$Db` zOIEF;m6{ms=UCB5cm=hN%ahq}M#CEJp!Kjw&ousZaXH&`4r+ikjE52{evxZheO*Qe z)$m{wCqXs-`!&`w3DOXoXR)NokY+Vb2Md?h99Fj;mIG^@4rLBJGSM`y-$Hrruh4UI zAPkSMV_fhB{PbDoKNlu|aqKS1w}uvnVK#g3VfdqtbqB@nnSh7G>5>IJ^B;YxVm-Y8 z;_#z2%$^Gq0snCio4OEw0Q_JQOZ`3Efp{o_Eq)9R09Mpcc%7H-pdVYA2fAj|*n}57 zjQakIH4J=NzQc@e!7nCp={m?c+Q4<-)7Cv!&WQq4r0&b!!^Ji&nQlBHYzUv z{0ryu=2|7(woVA6S>`%egjjT(Rjr5FR(x%#fGb4yb|JKAxb-sIwiOoHaou@EZ(|CZ z_BssH@kM|3Y!Ni+#@dmRQzKnn#CaCK1uyBidMdl;?{La)tXOu-;;X>=ltCNfQ|s9c z2Aeco^nhZy#I1<^Sj~wod6e<;^#fd-A=I7)8hsFg>9jO(u*Ob z4#p4KOMs(-1o@|deg7kb@Q#ts^q=8|hKYX`e#(GVc_1G#eo|Q~4z}XJ7ZmToCn!IA zd+Br0-1#^Iopi}OaL~0jeAl@Ben~q+(0-XF+=+Lv4m)lKV^FJH2p8?-JZ()xJKN-g zck`ZdK(N(;)%zi58#ROSW4D)jrgQMTKrE*_127CD>$^{%K<6G6R)nVN^0y$2!*CvB z5b_wqc9^KGPJtRag00EK`9RNvVu;9q)1+2C|zQcRV zDiSy$hGZ7TX&rv`ta1QuLGS=fD0cmhH(Ht9h=yucU94^t8%)?QpEu zJXe2an@8Xy=q=x6;7loVR@LcLEbS>?~ z|4KHUHV69C)-hP<@U+Ua3`I14s5r~N!3RO}wD3bR4s+4??ptA{71O1m@B)iV!!eri zt$d}RYR$a2*0LAw#r1$+|4G%UauS}x(^+O*XWvtiT)U6g=@@vJxPE5sj0nhNZoQcyl<7BCfTQOisGjTFveIDg^TPS^U zHuj;rve1f$?xMT1a3k(JN{W0#Nubk@J&=vDR;-@2JAXC;R%O$i*%)QV0hSw{s^Ln| Vq~Onv&%xo5KKqWy_e^`V<$tXc%-#S1 delta 2848 zcmZuzYfw~I5}xim!`vCD|G(2XcBjXI)$piv`{tfH0?HLUJxO2t*! zqn-_$h?H7BFe)|CQwB8Xs!+ZFOD91|z>TYU5M>RbMxEJn&&Bme{4;g>ak{^+yHDTg zs4#BnGPq@opJuVfMaL#9)O5nnt+orOf4NaE@FPP<#34vU%ts~71X43Poftb3Bn9tA0suPMC51YxJ^MAscV?w%Y zC(##H;hmqkWHNvzN4bla_}vM_^Wq2$-J}{4P6|UfH)N1HZkQyghUsS%0|(dKkVT>s z^`y8V4(Co$j1nw=NiH?)!IE@UEd7*hX|%ft{GFuya$oHa8m%9RyWG#vq0zop!(B4> zl9|Mg){#1YnGC<;8SJlGdr2GJEiRT|o>!A7ir^$gBYa3rjv2a1>=nPks(07#yceq8 zpcIf>NsYe`DZLiUZ`EB(?9VlxYSd7Xje`@OZN#-HP|L0Eq$;^DNotZag=;Sa)w%PP zvqo#uDE(2&qIsvcTijnw?fS+9G<+!r#$ojtu=lPODXJO7GA+1E7%oY=9n=Crwp! z+FI(q8ICgQ27y|6LW%IZP90XXGH-9#Dq+$Nw#OH4XfYv}tqg!rz$xCW!UXMr@d0d2 zAmjiJ&t|Pb5RP&}oDu-*>9G~i#h!&g2ltxAEP%N{f7}8AyRyNJ<%Pjjz!(=6Js7Mq zT0Cf1GNeh)L3s-J5ZV(15je<45hi0;15J`KhklidDby`vpn)D74JH~h3jQveiWHo%hprz3Ru()O zW&`#=#nz00T0p-Sz3~T62Q!Tw3ZAsRj3+6}1}~a7h@YB=gByKb4t})00*rLrSkTkA zWEMV@l)V#9=oH41Ib^+b@jV>mitu@K-TT|rb&MUKgsEN>&->^#VcJm4XQzM zYA&&CFFXM(cqW|E;iFn5N4osXRTLNKlp?Uwjk!=OKY1jwM$+~mo?-VKxCi+7DEl}c zl6BbiKD)F4VqEdN3K0PB{=_C1fh*wm-%@_~l}=s`{_?+@Mc61BVuk^HxdhU~%i$&7 zDP@ONz)daMeU&#b9^00vwf#>qe*$d-sMl&fMYq3ZxvOCU$hXQxl-nfjT`P00ft?_K zvs-}cC%{n-E|LY6z&?=eONH-VWl9QJ;yOqLyyi_$2VlBE;gfy}cKvUOO~poIR&1*=n7 z=V2(&<7eYkynD9^T;2i~<+vWPZX4V}tenr9Pl8>G62tr$xznd;g`(AJD@VsKmeSQ|^{Z zxXzCS+JU)X@f>DvgYONvq?py-gVsKn?Np)8%M_(erR#r#Li)mtS@ifM?8h#2!+MbO zIt3AvTHt*>a8tr;{&atXMToO9)rq8hBK0)s86Vhn2l>FBaX>!ejK0c9PnB@$+1~Pf zsKWxl6q{foXS)3ke5D>MF}<7d6;ukC_MXCGCD5!q{`M_=>ChQ@;&m8lF+ZrU32Ra6+qsX`~jDcC%f+7^cHv-w2{OI-KzhwHD-&hXvyd!I*KzkN8fVz`BAk z1~I`$0b76=e~|GtQ2=yOF8WE1xG+WB2pH~E8xb>0ZN&3II7E(l1DC;^OH{W?oi2(% zGs};_Nq}!{R_c-iv|}FXnR_HY;6W3aBMQGo44bJOh65cDkG{12IA2kf3%MH?KL#}2 zr1e8F9YZ;oVYmb3;O(M4ebqUenTGDnV>s4JXnL2mj8bU$KUIpj4A{|e*dNh%u^Rtm zGVTY-;l1_$;x-^2@rQd7}ek{tRQEI$KH5<2|VmS`8TD^t+`28SdbGE|9A1m&NI zEVgwTBEJs&WlYBfh|V$WsTI#l_@X%{fP}{Q>o~EFT|X_i?osjQ8R(;D2*pw??LU3z2^Z?t;u_F2okV2Yj-{ zm+(O*zrUmaeOZ117J+>CocM?Fbk{Nr)N6w@&X@L5`tp6;1{X=lXg}iV(}x{fj1f9) lK6>ERQUq)|B79NtZQ8`oq1ZH^4P1utCga6m5v|*z`5!1Nzk&b& diff --git a/_module/ncs/no_spn_ftr.ncs b/_module/ncs/no_spn_ftr.ncs index 7e5956cb3916af19ff7a4110fcb096e6d81c7d0d..50892a6af538e97d44c49fcd616dfa291fef639d 100644 GIT binary patch delta 4285 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 Larppgi#Pob8*R`z delta 2941 zcmZ`*c~n&A6`%Wi1M_A8ksX}@Mj{G`vbfb|rn0-d)@N65gG4Tu>zTo5 zlne%gth{%koAP?OyE6RP0HwT7q+{fXJc2w-SzTe12lWpTHpat>y~3une%T%4wklmK z=3z&fdW~H+WqZZz*uPgpXX})hlgn`RKLT0JWXM!~aYp#|P+CrAAiPk&=zl=Fh-|wE zRrZ}qM2e(ePClw$3bMMFdTCK?l@=xE^lvaHT{l|tTs1PB`iaqatV&f4Br5t?DXgpu z)hfMhFuECNDztLv1=_X48wO*Ll5;jNwAo<%b*t;j)iX9_A9JG?rO&yb-ofprS}aQ^ zySqJ1B{D$6E>eXR>8u7-U}aZkH)>V=!gRluHpx5uvUNYjC)7`5c)Mz#vUa+Ua;B*L+A zbeZFercw(QRyr2k`piR~9j01ZVpu~XWjGc;_{NMWm&&G6o(W?sS+hG5C0ANF>nzht zNUh_UGIb$&{2|pz`YmgEfnMV`&GZ0BnaHntQms)Qy-K_MiapCf2Jh@k>m`ib%(n;7 z1ta>0vDyU)KZl$8+jNbwI*&9!kg}cC3g@ z?9Mv!BWn{7= zSx9Ey@$@aa59Wt|hpxmvD<&JWA0so%-$7kja|C(t%)YeM4S^*c!Obq)_iAmF&2r-? zgO>~@2n&ywWw{A))H$>n=r=aiL1Q38FgqtA7e z#pYyT56e?0jdqoO*;nRIk zMm%IH9dyIJL;nvQBR}@g#35EQ5gF{AEINdT_xQ+}lnC4}wzoV ze&Bljmg;J_ue#>3@?28nYnOj=w1OospJbjJt8pT6 zRyW$li~m4P66ylf97$+gtc!dtUyMQH3p$8hF2JRWe8zGbO=#G}cdVehB!9hK3l_*O zhYEdKR#FYgbvatjo$RflV&40$rg4NSUsg~+skktg*A$RZl4~9k5?U_IwQ8N=L;(7A@SlP)BuJu$hR+=Jq#h0yAK=Q2HS_#&6dAISQ4{3;m8RD&b zLazYRC+MTe#Aup$iIY|WQ~cFwo+x4BaaFQKK(a$)FHi9L8R23RN|4&h#gZr@jDJ~W zzLeNg6M|TC6bU0>;4f!{HGnBpv znGNrb^N5f5@ktr`q%UlUbm{Ghovyd%aSuexvA}SddMr#j%&8Wzb2^NCY69kq z_4qG#v@cQ-9>Kl(VKd~gjano9wMNo1C3jH(TQ(P+l(Yhw_Zo=5NU;9?hXOPVQ3VKo zr1m3^_@3eD0t777IqIH+jl9_)3z~ zbb-%IgH?hvSYH#ySNNHUFq7FSX?ucpsLLdSg$$u-eBC5KxRZGGCSyL}8p)_r<6 zx#;G7!riQn=E^K98~$6>&QHlkE#Z!(?E_PsE!-EqDkKyiMw!hXAqGLfxrFN{)Q@;1 z>WbLY1w#E($_^H!bn^4$e_x0wH`J6WS3UgM?Ht@j^&aNTMTiNZ2G{fILKTFgdL9qY QLxRa`Mq5uE@ diff --git a/_module/ncs/no_spn_melcast2.ncs b/_module/ncs/no_spn_melcast2.ncs index 3cfece24d4f604e39bdc3304953bf509f230c05f..8ccb3b5f83fbdd801e6404caadeb6877e5d80ed0 100644 GIT binary patch delta 2822 zcmZ`*c~n%_8K3X>X5h^rVo(-kUaK(bBr;@7^^wv zpo#QFZ%b85ZQ8ihr4zleE>R;&+yHAwQE_QJHBCs07F=SS*ZbbXtxf-d_q*Tr`!PhN+QQ@Q<#7Z&kvSGqVo0JBr^eAYy{%Et$rXpyq;P}4J;`GFhc35&%ojwL$`9BQuu`@LeHhuWVV>75PCw> zf}Q%|S0;0a68Y=kh^r>^|JS;%+&p1tZAoOIHs!&|5J%`kUEP_jtJBBn&{z!AvC3*+ zM|Wj$iJjUt_2&%rw$5TcR-bODlU8aW4Krya*IlFL9-r4SN(p})5GX`F(W$LFKi4C52bo^Q7ZlP zZ0G4E-6qgrum8QOTpea-+mjJzRo@<NXo@ z*1J=``Ja^TdQhI)2Lw?t11!&cjizUB-OW;Ps*cr1P61tQ9zzPj@n65O~-j` zAa)UNEu=jb+}iudSG;`BPtTH=%Sr|8rBd39JGXeiM9Kg=a(Jl+2RcRIF*6L)m~p5xT)mxA?!`rK`ZHcx|k{A}&U)4yb>N z5B`X%z=Nu&Rl*@Jm)6i43-*=q>T0@2aGx@${-uw>?)!Cu-JXjEcwxN;KH%vV$ix?J zpveT@o43?Zkp(-CX|CV$!Io^kXAAw@7wd=VEai>w>*NA;a$Jx*DWPT>U(d;7M)gXb z`UTw~UVebufHfO==^<+N#j1Mk{Dv7TuJDq-(n8|v8Yl=@yj>?q%UNwAMY7N{6elm+ zuLU5z&lPOn8LGiAey>?oN>~!YzxELK!5gJ~V+(z0#q2luiW}721x2dCZ%UqC>K9q= zeJW>-;}OsEJLq$gC${Ru!yZ+&n)}_QArgwj4Y^Mbxm(j;Jf zkIpe2DWQWf=8#sjSwOa1r!VLEKS{Yxwz1kgwbUh_xZ%Tb%Dq@`vULN6{>`+ zW-VB%8R;AN)L=wgkbK_AU`VX)&A84?T<3hY+>S;$b+evX?&Hju$Sj^mMxa`3r!2nT zfdsLgx@+vr#JXm}m*0y*sn}s38#j1ECS6Qtk`f0y+Yv)D7hgXm^m|XM)l_0?Jc4*zJemoy1Nn&oXaS-NwU0r> zyou<++E$9Kmfjz}2Hdezz}00i^O)!GvRGk%W2=&pgQ#eJDH$I^c6^|Bu!k{vrw8G* zgs`bkX1i&qmTl-=t>hKN-yDvfK+sGhDF1Fa-Y2%&1;2py&bQYm!lZfwS3adMI~hT2 zcm(-KUaQThM!+w}$`# delta 4440 zcmaJ_30##`7Juh_-& zZ%(Gx&&hP$@}ZYiz|^!%pczRA9b|Nj5^1{b@Z7 zScHA_7XCw*&cx`pFB^O>6gEgyL!%t%rYwwsb@E&P&LiARhOuz+-~C(AJBF-qG@}u!day5LI<5m>MnKAskQYTbneowp@UAXz22$|<&51M zR0tj_2FZ+W&B6@0BDq?nCfpnz#*GbSl2$PJdjBx+CSHzV2%Qt3#N1MTx7&whnc5j9*=!+be(U(a*X-k**8>+5fp0i9_jFPV6g*J1^eGB(uD zoO+M9KYvnH7-D&>n<%?pOcoS|kjD!jK>J)Wr*Jy%S|z42 zuZdhMoQuV|QmWoVmJ}_;@hWiM99zU)zVQDd|O~6epnVIW?KIT24l}CZmW) zNdiu&QIk_Ph)K>`t$YEqqSVCer^STfm}?@AynHAbSN0Z@8f?fWXAf1IWT|yBuQbSw z=T}NbDe($O$s{G-8d5S#>7OpiBBY2)gDy8Jw=o*v8I*?8dxT3RHw_>W8+-IR*_Bl# zfwB-XaHF}`@vh8HwwWF2%ItWXSy@+RN7~GayD}?lGt2MFteBfcV%TE{LGPBUKgd6)ilXDp3Tnu3Cm9tvz+W%yA^)2*2z! zAWl>GA;t*roX+yq+Q0Wh=j$cIfm-^GzkSyIjC|64+Ofmw)r= zjd|#g?mpuF@7wPEaY)^4Y4Q$g)3<*UxLzo(C&OB0@47Kv&ldTPuz~CT6z>qY`;zJ3 zhH8UV9o^VK-hDRLTL)%JaC&g$?pq zV}tcVdDqJIRhx}{NPQx|!w&by*=HO}4lhNV_4NLu51Mdlq+`&Rd)(2!&~fqfb`MNB z;rL5kvO6X%cT`?kXvVmObZQDFYb^;UX=N^ilO4CBG2soz>05z-@iQFPo1WJ!gMJpr zmtI8bUbEAhY{+nU-3iq(Hp*dh)@zpjiE_G7OtVD*i**b;!LAx15^!iS>u!cxz>p*C zrUfzqBaJNG9ikA!YS=5DP>mR>vDG7B60p5K&;%H`kL6@TJ+M_)m}^4!0y=&ajK!Aj z^uuC^pjp8XjXoukEzReG#b<%=4}YK+M&V}qRtS8HUYFQ{Q25D&Fj}tGTFe`1Z5-~R z&-aE(iz!&H*h(Lr19tlNM9g4~eE6!! zO#qHV=N84FItKb_&CUr*ij0+#nWe_U8=y7+yo^;1gfS+qxsj@MP2aM)@vsrK=9^=f z`%qZQF&jS@2}tK(SF%}M63jK@`5DUm;sLgG6a)bNXA>(J4atZXGMIA=Bpb2D${rmL zu^xEhF=bn^o|R{U2jHn(%0F(=^2yK>zj}q$OoowwCm&|v&%tRO%Su(vn?Da!tTSiu zlpgy^37>Gma%`zgPzj*62Saodg=oh zXDRg*tFVzweIk|iisxDV;YG+mEH<&U`4FQcs}`l*t)rtai}@ogG2yOH*zO#7*J#<^ zU3#pg;jmZn|T?bVfzI&5R+W@o8m|HJN;_3tzx*4K$eA|mX`4Lp>xO^}R+YaCA_{KP9 z*#&3KxOkz^{0Qt{2jDv5qLu7qKCIDj_U~MT<~dZd4j1#x&6`DejWTIU2^8VnRAKuH z(5t0j-4FKDq{`f^|APapNYQ_5qp-RCeQSEa^rLYTl_T;PkdsB z;yU&Y%dCZ|h$$ObX&pSMTb`IEQ~VUYehus_^)h%Oj=Uq9rWjby?_mkzBZt&>qEBDp zS@3Rzvw*|rh+J8K-MkJn00&KS#W92_>Ob9tB1^(%SpvC_?98tTV)+r!U4-)z(1Ioi zpaXSuXEpy5@eJafeH&UdjQx}FegIf*Gb}^w&$|P#w-LkMR5A4aT5P=Cbf6h4@PXel zu;6sGL^R4c0%_@J*h3ozz)0 zg*}49_a|Xou=~Cf@@>)-Zuk}3 C{wRL{ diff --git a/_module/ncs/no_spn_rogcast1.ncs b/_module/ncs/no_spn_rogcast1.ncs index 5add8ace33da25c15a21e9f63620389805d27dc5..744cc8a2d74c7c3280a691acbdd154351dc3d757 100644 GIT binary patch delta 4500 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 diff --git a/_module/ncs/no_spn_rogtel.ncs b/_module/ncs/no_spn_rogtel.ncs index 9a41af849befed67978d8a9137e4c25b5f74a728..f02f4285e422961f33a84af8b06757b2316a74f3 100644 GIT binary patch delta 4382 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 delta 2864 zcmZuzc~n%_8K3WaZ^3&$mhM=^*CHbxUe6|H+BulL?VjG%a5%E0M?6bSSK>}4(e>TXnWH1;M z^5A$c=iA3y0F}|C_@qr4F~rXG@>e9f(MB>(^v3ZU$f6T7aN7aRjJs`XPtL)*eL^_f zLaI*A$6G&g$!Z2ewssWH@S_Q&_|$L=t6%f3k6)39#u_Y3(Z$Lw#L0spp#|;(vI6UEdjm&Pc%iP+HKzw&n)1;&cR~HD~ zx#JgSgKRZu4blo@nCNO3_t%rVzcB%=C`NnCwO@{k?7Su-`z4q5nh5Bt2N%EX#C|1F zSu#K?1$Q{8MEcv_P{_tx;3+EO zCTKdjp3YeTd)YHju**t9nee+vbEjekEA@qy62`4N*aI%f%8(EN`uSSLpFIo)6JWY8 zdufH6fCGbBn;o(Nhh?!5AWjg4hJp?+njR0ylG-OvW6_IdL_;|C@zaENG3+$0Q81f^^=z0tz{HVEpC*rVDN%=Um5T5%7pNaty*lF&?*QDCL3M#5UfTB6~E z8hUFKWUwW%@O!|ZL#%BS)B^_m>OuwoTD+CVj{6q}(lCqb9MwEa;y)mmwD0t#HSa)xq{GJra2%>6j3n zqAM5f06y8v?&QN*BX)ksB4$FAJKoqN0^sd?YKYNH zjqI78!SWWtdQiUED!}y+;3x+d$;!%L2PiGY!gsqiCWUN6IgAJV+Lzj`n4(;IPaL{W z+~=lJQ!-|<8=pWXD$UuNUJj(keE2S{TMic`JRhk|`uD)nE8!$!<6?Gx2dqK1Yc+I8 zc&v+USO@Ek_|*rj|0Z|==sd48`LeIhxY~~x3 zb`h%a&pWiUl@gW*u*EIF+;BlI8+skSHDl2NX1xoo9+;)-P~S@vr5#Uiy@W!VZO2UN z{Vw)kVNYNwD0v-%h*dAJ{0uHjn8kPZCCoycmZnc6 z%8&T1n!wUSFbZ*qpN6&oao{e-FNy-7pXXqJ)D;t^iOT`|sd^`(rsWdLd)Emh3 zZ2U5^G3BtAt&FdQ;?CEOH{6!Q3T@ zU50JqnV|fc$YdRp5czT7%P|?>M^s0#%&B-n!k^}87w~q(=gskl{0FGaga?rBh8wN%oa*;oaq$kNyVQtao! ryb3Ygh!^&LHnIc(oA&6=s5v)PXhJA9&0xz)aiG<5O8+PD*kSlTcqq`b diff --git a/_module/ncs/no_spn_summ.ncs b/_module/ncs/no_spn_summ.ncs index d19c40731a3fdbc8a3ff30274f1ebd9a4e6f8b16..79a35d3ae3bd69c3ca9d99f88318e2babf1d4802 100644 GIT binary patch delta 4482 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 delta 4499 zcmaJ@eOQ!L7N2w8Vdfpa1O`OD2g@XE9FSBXBa$9h0kLRBDgmgLG1p4M zu5r^^(al}6&~OL2e2Iv*$z}nq%aU4R_V`hVq?nNn?!EUNU@%tx;Jx?UbARV|KJGcQ z`?9HUi@R4w%7d1y*zqw_b@--!k5_vbW*oMk4f|>YCN-60<4AkEwV@CLche2o7(({` z;~YJ<6mQdC=YQ1aNsJy?S>byjutJjd>7teu_z1iuclz@l79&Y!7E)&~#S!Dl{E9yG z=AXUE)c;8rJS%NphU4{}1L}KA&7Rw>It94FUv+xDqSNW>J!oqVM#Gz$rBmYLO5}nR z7zIaxQ&}y{`jeIle;7d)#+pGT_g0(1K=v>*m#ngxNl~TY&Q6^^L?_HhBL)yAyZdEf z+^&14D-j7ViO`4sh~wc0Y1LnfEk;WOzo2W7P$A^UDl?}LrI{y1F$U6SA1#cM$M``a*;p5kod@|rD0GV?CK{f=N;m8mit|@SocZbE{VROOZ{mKQWWe5(}lsIw2;_x)N;P4*jf^&2T z4%ZYo_}Q>Hydqq1dWPV%55eJ@66f(@ad@@4;QTxU=fn^kt|@Tf+ORmhGF@=^xNz~S zL*Pv8&llH}IAj1P$0c93>{=i&7>fH;-lqvbbsEZjS3Rm7zQWEtj35~ zspG5yO^at$)9S|+4M3OaY&nNXX=A_~UO~g?g!k**cq*;)GL?7AoVXPd*H7av|5wrC zXD|TWeZ-&|>oTnCwXrcvw)X+K>lAg4bLWsP*7Ti|$T{QXhN3vrE@B~b(W9N);5-{`- zYcjz+z|n4OtOrCPMjU4kctIOtn8NZdzgOAAd2g=qBIC)aPv_0zPd2j)?)RGdy94TH1j{T=iC9R>rvx(-6=ijTlV zo7O`xjqw8yRu%yzZU{35fK}rr;S^8jfl$a|7sr4F&=A6W$3i8b{&Ch61+{?qcMX(n z9S83!O5fF4{RrcfK1ZqKv&#mz^UZ^D)2nTabk7Vdqq|muN|%R$KV1>n&&MYg-d6gq z75;y=^tu%cbm?ngrY)1eo!R2xkY4HQq64-~eLZIdeJrFI;hg@qc(@ytzDsHBR3fb6 zJi9)126=k{4*`#_7yYaN0xOeYFDQLK6tJBRzGBN#pxO<;UgQFNdasNNkUdkf$j_;v z^x_OC#c$tZ#i=kAv12YfnhsOl@VGx4l?gTvY`V|ocJoGYTX#j?-m*B9`eXx9zgYWQ z=?nCoM`4uu`Sa48mF~%b)iiMd)T&1&3K7=P*f7kZyS!jCyRZ;WD%h}JSW3Z9gJh`V za(GSr^K-dgDc7smM>%jG;3s#n9~Z-qpdOqqp+-`x2ai(nQ_uqHfnaIzecBuaxvVf3 z(g3UKXzMbViTgd7B@gt9T4xYS`cd>_2V~LvOW_hL$cGL@)+UPd957zEpCH=Dvf5(U zfUM+2=v1)m16KG7yzPcNd|Ak=&|{)KXcC8*U0s!a-F~qbb|`)+B#SW zxa|v;{W?72hVMNsfL}7;+m~1(g(XH@dropxi{d3UKS_;oYDW}&&6|b44{dr}Gl|ty zz*S%uc0xDeD>K>2GWg1f&*cmGSv~$?9s8ypo(C3I3jv5r9@6M7w@XT!_Cd6|e6b9W zRsrgjPite1*h>>cLttBOzG9?lk)mBvWwrtONjT> zi;8|g!6{2c#Fp{)G+%O86W9%WFI?t)??>r12nA%0%=SwxYOx9+M{r1 zZC80oU|b>lpck$yX#0~eoS?^X)7f``W85%ewdT^8FQpN!T~OXG?xzM7Thv>BFI~-$ zt}^cGCBVoomgIpp-t+bes(PS#v1nw^dt)|WSfeed zT55t7nVK19j8=nw zF4-4gn`jguW$~P3z_`>zS$Tc=AcT;$MN*@?PGw=xnf>N;em-XZ4MS;`M=1jfDrc69E@?p s+POQT<|AND7R|`UFe8TRt~+Wbh|OrM@n-qiI3dKnyh;92>#^wm2dWP)pa1{> diff --git a/_module/ncs/nw_c2_default1.ncs b/_module/ncs/nw_c2_default1.ncs index f4c24387736f49a924e2110a780d46f868fdc3e9..3cd4c74f12b2d7b37a0e3bcc592e2eb69d71412d 100644 GIT binary patch delta 5977 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 diff --git a/_module/ncs/nw_c2_default2.ncs b/_module/ncs/nw_c2_default2.ncs index b68e449ec319104b5e1b28cf62c9da5849604cea..5ad704ec10a82c4ee11ff931dbc9813cc336575b 100644 GIT binary patch delta 36 scmX?jg8A?XW?nz%V1+P4Jp(5Oh9}Mwc>_3@8UO$P|A&EPWAeSn0PT+sMgRZ+ delta 34 ocmX?ng8ASHW?nz%V1+P4Jp(5Oh9`~_c>~y3*cgCdW9q%f0KC}>O#lD@ diff --git a/_module/ncs/nw_c2_default3.ncs b/_module/ncs/nw_c2_default3.ncs index 571ab3f7dae5e6c2cee1ec69df5f29a40450bab2..e5599759368e67dc7df4fcba58cc191d524a799a 100644 GIT binary patch delta 36 scmX@KknzYuMqWSXV1+P4Jp(5OhJYgzc>_3@8UO$P|A&EPV{&`|0N=F?(EtDd delta 34 ocmX@Iknzw$MqWSXV1+P4Jp(5OhJZs8c>~y3*cgCdV`_W=0I$Ue*Z=?k diff --git a/_module/ncs/nw_c2_default4.ncs b/_module/ncs/nw_c2_default4.ncs index 10b7b208c3c51fa3b032b36b515d6f69496b2e3c..14626ccb7086a2edb70e197ee932524e6d39d2f2 100644 GIT binary patch delta 39 vcmeBgW}n#1&glyuMqWSXV1+P4Jp(5O1~03Lya61{jQ{`t|HHttG5M+|0MP3Uf&c&j delta 34 ocmdlrg>lCeMqWSXV1+P4Jp(5O1}}?=ya8-1Yz#oKG4-k^0HSvYi2wiq diff --git a/_module/ncs/nw_c2_default6.ncs b/_module/ncs/nw_c2_default6.ncs index e50a17e52563a3c1955693bca5f4abe7378fc12f..6ec1b103b7860877784399666e4532cc265b0783 100644 GIT binary patch delta 36 scmbR9n{nQ6MqWSXV1+P4Jp(5OhT3@(c>_3@8UO$P|A&EPW3pu}0PTtmM*si- delta 34 ocmbRDn{m!>MqWSXV1+P4Jp(5OhT1t3c>~y3*cgCdW2$8>0KB{jP5=M^ diff --git a/_module/ncs/nw_c2_default8.ncs b/_module/ncs/nw_c2_default8.ncs index 631a522690534e5a665de666540cf44901c2b291..803613391ebe56655abe286725c063d7cd4b27f3 100644 GIT binary patch delta 80 zcmX@ibeW0Q&pB8j%uvt3iGhJJcp`5A2Q%aU|Ns9muuP0q)i#o600I>jW(Ef453CFf aEsS8<9}Fx&PBW7%NR~~S0i*= delta 63 zcmcc2beM_P&pB8j%uvt3iGhL9c_MGX#8g#fEqMkYP-0V!Z diff --git a/_module/ncs/nw_c2_defaultb.ncs b/_module/ncs/nw_c2_defaultb.ncs index c74e073fcfce268246d40fbe01ee17713c9cac64..4ac42af4ddd30c979a36537435ccbcc6eee1cd18 100644 GIT binary patch delta 92 zcmdl#mF3`67G6K+V1+P4Jp(5OMy`Vsc>@%f8UO$P|A&Evg_VK7peQ*$uOK&m1X}_7G6K+V1+P4Jp(5OMy~x6c>^Za`k9BzGXQ~vG{gV@|9{8=nM}?gl7Wqd m4Mef9GVm7^CCBF#B*zyQq~_!#masA~a4E++sJaTlln diff --git a/_module/ncs/nw_c2_defaulte.ncs b/_module/ncs/nw_c2_defaulte.ncs index ce10b922dc9f79a63c1cbe0836e28db2de49638d..953e07bd8b6f22e4becfc481862864ad300ba0c9 100644 GIT binary patch delta 60 zcmbO_n|bSOW?nz%V1+P4Jp(5OhO=8I@&+g{Gyebo{|^HT3o8SEK~ZviUO{qvQciwy Qc4`VM0|N)s##oE909pMLq5uE@ delta 27 jcmdlwn|bPNW?nz%V1+P4Jp(5OhO<*A@&;_IwKxj^dhZEB diff --git a/_module/ncs/nw_ch_ac1.ncs b/_module/ncs/nw_ch_ac1.ncs index a4307e62382bd9940bf5d6f8c8af5204a7a342f2..35341336554c8b40454f2c31f80a8c8687199da1 100644 GIT binary patch delta 7277 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 L$#RIBGz9($-~ERB delta 7330 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 B!QlV^ delta 3517 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 HdAOmCK{Wecg~W2oqh z9yJZ6OkB_q@N-Kc^HEF1Gc=v9xi3UulDQj^OD5i_(%igw=gY{r9b}t{yYzwkXc88(9 zzW!#ILHwCbM)3vnG5HwG34^lI6H<&2vsVp*VTfbUh#LlzuENZ6QqbD0e?+*@HEv)= z$^A-GVOJ@qI;6EU>hIL%(XCtS?0y)9pbbNm5qubXhG7qlhqwYU9nYlJoJV zQJnB7$gxg~qNm4&9@PgH%%S>4owPjB>v>jsCeI;$D|~Pc{9+q-#U&YhZ=;u? z+Z`bnyiEIR!^^*0{4g+=@NN(lEox5LOIqM=nz6(M3$0%ghqLs-l4R_q;Fs>V&1x&0 zNf@eq6Z^{V9Gdx31XjuK9#X~cvvlsIM5RmyE=ne)PEgnU7^T*mm$Z_m<&VZ?`eS}J z+7M_U&0MOW3q7|q6O$y}VVQ#26t^q~J0x8z=mT_Z*<_JNO}=Qkf}d#D@@(8C=;17} zl%^C+!V`i>p_CGZ^B7ngBnsIP7(ydy8lKbiD4eMlb{j)5W>^H(WoOZltD zB16)7#TIt=WJ+2+2CoW63gvH5*j>Bn#_An-g*Nj{Y$4;CEL@V(+t(<#MhDi6L^nxi zu2s;F9$h3~8@^Oz&D6kL?zCl?&FuedcWe>DpEQbJ32jG2_zM&eV+ zn7_)xx}{U~Ym?DhGWO(Kn5&R-H)m-kLqGAcEjSj!@ylBGyWxepF_&TVtY&3?J*OhGoM$yXh z*}i|$c3(&dSt?SMS+Xev>}$Nxr|FT3I2OvNxT1@1kz}RQ>52%k!7LU1saK^{$!nxg zOd~2?Vk<4GoPaOrN@Y~5Z61I&ehAHgYZL`s45fSb^ur6~Pwlx27%sfJhjpGOonw0w zkW6)Dj`FO%vmk2q!M@qPFKUXdrcmnsRHcXadbYl_eSc59MStGk#Wzcnvf0UgAOcTI z|K=XBDgzqHk0XA-g(vCQfeF}5oexH}n%2a>sMgZI`3L)nUA_O{d&1OX-#DoDm=DDq z3K3gTQfJNd`I}wvL!-G6jp8N-d-D0$I>R;8CgFp4gk6$xg{{E4}!R+p9RB-MK_?16-eq1P~lz;NW#Q>JO zSl!3)BV(>xRQ;5V>RS11IpG7au9rQu`lT6xU|lNtEnh^kF3WjjGej9Dw>MJR<2E|j zqlG%78D3*7x=6MAV>sBHGwSpJd<|r(!z~B{;<*@;R8_%~CiY+_9%IJ<_P}R+jvUwW z!*&c}52UKi199Dlg_Q4cptFg6eogHfj-Cu@>iBl>2a?s9?ZM!mAYrSwxZ5~*Sp-7) zstEiHC#Og;v{zSjKr&dsdG+Itcm^1&4vWSDFuzaKPdkYp7^aTxg0_sE*}$K5;Yal0 z^Sa>%64Y5SumZ8_f>?2bfJ0r=9VJF~>oGMk4y~l2o?>M0?pCMXgG{g=|Dqo6g&tsk zSJj)n(FyEEz8cjR)n*o!&95ZjdsCY%X5_Vr2=8;!eHm)5$a`Ch{h-!Z3xUL;ql1`M-|UXMo-LFcMgG#VI$u*0Ik_O-)NUnF?nGSBKfTW z=+7$$!WtoWxsP~9 zopxjOUEvaIiXXbi6}&DU9WCsbW<`qZy&^vU4tcvI{{bDM8V$zpJJtL)#Hj>hxE)_g}Bs!pi z?mZI@nGF}eavv=G%@nlc&I~l?F%Ki4!DTHKu}wW@dIiq9)8J|Oe7#HT`)N~p5MMV6 zt~O0IrNesCMQf!Yy!mPOE~@vZ{;EAh0JsdNKufLZ5$1m8yd#Sk+c?Gc2tnJO(L?_* zas1Sr>CS|4Q>RaTVxBX`X^)Ubj&gMj5<;3fp(PxPTn0XQG+bt_c<__vbAaMv9{ zh)+sKOAo;K)&JK4X6mm4jG?>xq!&et&>o^SUPZd7Be|$p!<*1|vs*!Qt(L0)6D<1Z z4p{U%o9=&yGUn>rC==9lgUhlBbQ^`iI8LX&w1qXGjQ+2hmcIZZx;49*rO=H!643u0 j%xT-yB@J^7=KnbIIPQQv-NbtfibJ delta 4799 zcmd^DdsviJ8lT^p8`l|R1`tLB0R<5hRA?1V5JEshat%aLAn{s2u3GAFrPi8S?dq=GHcFo|FR|x4-wY1qZcjbCe=UD}=k~t8^E>bD z9H#w*w(K3PdwSw;12dzCMvYhDp|S?|4#1x-B967KBMTeOo~dh`%uG)YQg5=Ty1Ke< z`K$P!j%hVol`bJQcWS}}HTZm|ichFwsQR3l>IdoQ;(EP{I*_TAMQUCbL~Bbd^o-Gf zf6)Gt!J>D7I^Xtj8^|^Fi)@J4}BTt z6md-)p%$*eIt5~+5cpD2RbS!fQ-ObSU=F6%V6&8QFSK-Sxmh1Cuvs?=f1S}rLfO<# zLA0GTps(M5bNi9;-8_5xy-@v<0KRlBpe23oRd9{wtzoWxc(sL|gDC}KX+Q5X2pXWP8! zXoZ#@Ef2w9E}lXs$-u_f&{ySiv5+2kVFI<+8ri7jRQLQG)QO4g%^ql`g`4N#pVY7? zlihQh!e}ObV^cR`0$rqqSSskW)wr|RwN$<3A-pLBCT%t11m$ea;qfBx7rV>AV$9TM z+bpCD4L7baawfHH%R!~s?-9uZwX{mA!xlNJXlz9qUZj$WT$~jMQI$qqrufQigots# zJ_Cy$LEl!+LLmpp!b*DWgVyzaGdhD&tfBQbLlKRPQF!>FpV!JQ(aXbyhkln z)3HmYVq}h{iw&SfFHXZX8z&=+DWaeqa}gs%dpK<50s3@DHl7wMJ?uZ?HqlGjIA!Bv zWFscheLHi|PZp&wb{epaZtR@KJt~i@stx>Pd#m&Cy3Eg0!-LL|Qgj3rygZXd-W1Yq zH3n{UOU-PI6XP~M{sVnbQ-G)VIE5x{HMk7DCH!B?{l94#yy)ZIUesBorFUNmLWhuw z-DN}?CGVOC4>6A0XmE*KFSIsut%hhGfgkVoqlDcd+-frJ{@q5|YP<8XLyV&;4J@KB zEqiqaKIgPE*^mN?sGWvU;?V829%!TswRu=0#@U;VZ14@*_F6vvC?>}3@jyIf?8$>W z53ejdOU`?zB2TRC+Uvp7_`t= z{rynRsjjXMo|IGFn?B#?gT0Mxe-iL`pWtt(0z`!1r+ zH)2@d>lAu$h<>Xq;G0I-2ZPbTRWpn$dk9z1`Gb)><6I6E;3FzN6zaLtUbWTlLspK= zpzRlZ$z@|dT60E6e>-Hsvc|4MBY;UZ#{F1$G4BRaY10^tZamSn5!|a;Z!XoZk^wwt z{giT_Fh>@qXo_l%MH9_y9-@Cx)-kzIWpgkV(UIm1&vrgO6Bv)fji=Bo=M{+Cm3f{INypXlY(c1irA(8hEGiO3N+ae&IDKFCMO> zYaNJn6wx{y?^AV)iSpjl(X!Up^>Kn#Ii?t2>iW)Z<8@f^I z;|g!WJ8kV|3YB3|3r4E;LUc62DTuS#sDoc6ETIq#rTIM_6 zy2*lY4ZF13+8lsbhL5e^4uC80zV*i-&I%n?gdh+&AO#J?Z8TT|2O$Z}{bB3eP^<#J zvR(?q(_k+1tqa0=2bZj04MBg#&PGV?LvaHqB&T7xF5^VO12}5+jD{K5V+|dSS~crZ zSx?2lQvk*CmbE8Xuit~2U^iD-vqoV!*o|cChS3-dw;wDb&|-M-`AFZyam$^JL$!`s z8l>gpah3ViOOGZZU^Ks{Mbfw^uO_!@;T}FK+PCCajQS&fHXfc$_V5%-ho$NVU~+Ox zP!y!Y4Yn5@NdsWS<&SYr*n4ZcTX-Dl#@S>?Ta&4y906j5)=FEdLMGjXr;O54g>X>|&Qp+ef9 zf*{_UN`VP0r5`f6_ba6SSs3FWIyn_d;oX`xUUwdax`mM(l@|)1PD zUa2Dg$*%lWOsy+SUL7ipaQR9Hy>`l(A7(7I`#@NtLpIo2T#~M)VNkEND^l1*ueAF?E$5fkCm4Sp_CUh8<=E864X|V|>XD{AeT~{Bp&xwdID;e&7%swmHpUZHw zezqe2ixWIR?-0`g_)ton0?Qx=w>akEaXWFbS(~(e3jBX%U1*utyDo(Ht_%Mz*`1dw z*L`{>;v91L7pA*|W_=d?3b<2()x3UoI2in*Qc}6~?fz1!^!Ce^zX<*>D}W~B*H(am z?hbKvhW|$Kze;yqTz9&A-!tb~WQtv4p#IP4oO$+ZWZ!p53CaA)F+w^r8Ifka z_=N(?dROWp98!q~5h~rvuF5YOKdq}Fy*Y><8rpi8@s}49%Uz1ew<83xc57=cT($oK DCk>n! diff --git a/_module/ncs/nw_ch_ace.ncs b/_module/ncs/nw_ch_ace.ncs index 4ad1b39eb82b9b001150daedaccb90b298fed4fc..29d75f3d066e1e729cbd9a1b028025847da6fc23 100644 GIT binary patch delta 1144 zcmY*XTWm~07(U<3IcLk-wY6K_Zgsoe)$UeMr9n%ut++fORc$Cqi^L`A3sNGYBqAtr zn=&D-AReTytBKJkJVQv4IWVY(qCRGrqKGReW)(nC*Au@V-hoa(`;N+|-;AOCIea zR27WyrU=3;c*Wty)YOV*m0dj@^|8LzEZ2x^qt+aTh8DJdrEj#HMXikSu-2mj~AC_9&y+-C7Bx%@~3Ue;i^v5Q}epj4&vd0-+Y zSt;}EFay@*X1=IlrM{A~M2(N%ZiKL?bGS1(eaH;Sd$!D$S|SjJ0Zh@zO+#&8ka#g`b?xeygAW}*V5qhB1Hg}ordZ9=ca zX{C^WUEZ@$s|1D%(>_hOy3_CEW}K2Y9|D82=` zd(Hck5;o@u=&rc$du|MRYS){nnd=4z#=0a@`g}0&b-ff>JQO9U$3{d+Q6ogST&_7m zid2iTn{;L(1{o|$L?8{B+=5_QQ4vaKT4j1{G7csGs=I2HzFG}_o18aCM_)ajLSe=44gXiQ_f2y3QZ9tiys0 z+VxCoydG?@u9*n8pmG9yh)hJHXgZ+dhr?ri{5)#I8h2r3q)#hekOfqV?T!9=6F@hgYoM1}pm58yk8t&riqWpfB#Q#!HCg-;)sp(pkj4Q*ajK zgUDM_(E)Y0rgWT#ll7+KCm!>z47`-E$d6=WT$G!w(V~v7?+f4syO5ZS35q6v_PYVs z*wzLNk=vDSfU7{N7s)B6Hfi!f?cZs1Wpt) zmAkdA+HRYhq1ldlZ3PwInGfv2>Vk=>sT+b1HY*+I-uulrF^KT{0q5R(&iVh(<9_#i zQf+a&t)ZDi#yYcl_vn>jz#;BWLfZolUghZwYnNg4W^&!uo>aYgmCSbEZ*Jm0!A>)o z&JPUVh4RTYE5u#3Fl?xq&%%I7p8kmA*ro9FTc13Ou_!k!Zj!d8$?$mvz>%w4NIH3zf7cS_+ z9G?)enhVX*yL0s9D6@?7lpd4h6;2kZg4f=asgdT)7F>!XmsOhAN!@elq{Npx}N~GfD39ldzDCUvUyPk_T3vj5yUIY>V{ryw8iLXMQDM zyC^cHD9$o8RCIz`N)kyNd91J#W@VEX3#Va8zBtCM4di-ZHkP{Os&X^QDS8cS_wiM% z6@niWws?fw4ki2E>W|$gYX|8C@}LVp$RwfsU~H9kFsWD^aIT4D9PtL5$&t5u-kn)#SfjG@(K>VY3Pas~y z)`0vt+>^xVD{*oJ!{!ljp3Q*xm-L=Mdi&igbKH{v!p~a`h|?4}IZbzDdK%gQ(!2g% zK-`rCn%XK5r`ar^A6wvzxYMjg`enNp5O*bj;C8D(r^u8wQBzv0J>P4yBs@Urm-ziY z->k^`2hVM0K0TN&n|Eo=)M+MUOv%13vRN^z*DuE)kxa8j*n(Pc5I)ZF> zjX}G#cg>}a@;z|PhNQr0#6K|khn6DU*8foZXDQ!2<5K-kw|_2bIc5c-@VD~rSWx_Cf}u5ZkH;bIUy|7$=p37$mvb!_=km-(~3*=jSqojPhu z`K#^do_2B^%qFb}q+-e=IP;Vzhb}?ejHku-&=iY`>`4bnd@jZF*gLgGoRZ{uX#M6O z%$n!9xN$=;4*$$kustKlmcC3_n8*1n;-y7&d3Q7RnMWU)02xYC|Dz=Hnv;BV*oFNU zd;W9S0hW~M!b%xK*OkL;&$J^yAojiOnQ-i+iaon{dVX*j>@l8O!&-G|KB7C zN-dRbG_kvZ#8>t5jHuoK7`NZkaApEnl8nL~M$+Fm;arho}DHc0k7#wqzJw22bIYY!e23N)toi35>9Ey2H^{#{VUfo!7de zZ7%)vFifB&Dm+e>U%!N57d)Rd#)7Bd=2;`cFwM^VHa%y?67s^&6=;g}47|+|)TuPx ziF@fdJH*m05fDUk;=n}1M}wW(=0Ol?@@_%=fP34fDvh^B2~Q)HM(;Y2F?vdYu6!|8 zE;^}lVP;RNuo#ra+e;+}R%e1N7sEnpX6In{<00=zz!Fj4y%#k1b$l`oa*f9DPVur>jt7s)AUCFh3lA<~m8mck@W22THxRA^?t7et4}u2}%VSttI+OwK zD5Vwic(Hbeun`%cDp+b_qkjWERAiN+sGC&uB(q+b@P-LX{>eUm3f35LLj-$tJp2T> z_Eio2{gV>)g9#k<{bf?VA?1fz{If6<@x9|LZxZ~@i0{r7&Q>9Nbq3TbxaJ0%J_}}= z(S2FtQP7_yybN7bTpq@Ty$Y2oF6+k<7s4eK7eB#*mcVHsRxh*)j$~*xy%+oV-xZii?4naGHgU z`YW8b;`sa6gB##<2tN9uMr!0wY~og!f;haGm2ZdMs^!tCvJ_*eEedC|=Xb&nfJ3-e z89c1w;9c5Pq0j8$-MY9CtSn|9Q~(Z~CDLI5)^Gr(1NMDZkkQz{ns*nKUM&y zLlYrO;EbmKLir9^pvl2QRG2xFI(av9ptFwt(z5(73 zDPW~fRl_Drr>7*_Ou_cg)N92D*s(M44p7UOCr1uYc+rL z_zf`A%U2+Z+KRwJCnuxIE?$8&!1jIFlbvxY(2r{QDNmh+R@~1C@#PV~$QqWYVhYen zS9uNB|AWU@))l#ftI&?_8OfKnt6*Wb>iKsHZJ;T${2QUiOKt)Oq9IDSI)HTGbqFSTt`NoRhWlTfD+}SzZUld+SFw$%@aR)%$-UQ}3l`!!V0ELvTCy zbz>1b9fq+AUfwGTI@0Q`j}&T#26E-qmK%?!vFd3b_j4ahx`z|ch3BS9 z+3pl_G~?ghoq%V@i^5C;`r&gY+1(jMi)QC$z>#qG8lPIXo zchRdxQ6hdCaS3@b_cK_xCe^qFQl-kKR=0j+x?y2IrqGG z-!)e?D&FH>ofu(HO-ji$U{Y$8cK~4ga5V9EsX2sQ>1NYDEV?{G>+X)9_*ZnV9u6f%yB1>AadEm_N4j<`$GZ>s zDZ~thd@U9)@z{REvZpV({lQR-dQUf|eI|^tZeuJd-aQn@NV@Tj)0&Zk)FbENZ*z6S z(k{(l_?z1>fIQoiiEDE-qXfmf$&|7>4^dGoDJb`ozca{z?WMah- z@@;BwvZEp{h}*0Y;Tq^DVdaoOqr8#SSA@yj+M6u0`4P(jWu0*K=;_QM=+6JYKve&_ zyKCHEbj{_}GvoKG@> z>}u-K7{t|;>g4089=L3|T72S|C(gg94nKR)ODPD~JUtU=AV#z_roY~2zQ zj=o5%8X;41jf*08o3b&dPEBkM0_C-8Ekt^qeEed8`uXjrsEnDQY2<3!G!2fav+sq; z%BZ!%=^J`A0qyGDmJ$gwO4XtV*JVr#SAXS*0?hSM3)^l34hUAW|C0|mBu_om5sOM% zsuqf8>Dp{?s288z;Vx6y<2slM)G`-L^h^Qx(t_pSr6zp;HDI!b+SO@SFv6nYjih&M z@UrCUH=ToypkEjv9{c$U+3LaNm4Ec1+K+K|dJfH=mUtyb5Fc|3ar4UNj-vBdH z%usE_fW18vhCZeZ4md*3TA)S=S*&4%eKgkx?Cg;heghbEl4biqHDF+;JK@tfcS3q_ zHUzT*f5?|4SFZy-)A~FS*ph-EPICEtBn~U}!&KV*Uw&ayAt==00e;kx3RY?{^XeUs z!ILJg=VY`l<%WpGV5Vn+VUFao*8i-UxuMX@D7mDE-S?VZo+AXyZ_}?$yn?7G7=dP& zsa$kz0qx_9c6K@%VmMwo%uRmGGzb>F)9h&wL~9;_Co7JFN|0QJODw(xP5^t904I&u zUj4&W3CasE!4=T*{%EIf41{WY*3SA2f=t9G$JnI7kZDB6JhpQFR~I)5$gtJqj1 z82)rTABD!3GFI;87yneDMHWlAK9IFm0`tHX)7XJe;GP+aRe)pWcz0UU*Hykl(R= zR^;$)&o%az09)gSL5TkI^`y+z8FlMVfd-p={-&`n$tZwj8D!Eker_XV!@H>h&&wlQ;5e|h^};YApyUT@cU)j#@&zjyjEY> z%>(fkIx02PnNrs?qd?j>4de0YNg>Y@@>`VuF3wYDIx4haFt%aG$9fMK@4*wmwyE7M zQD{;+`q7#cP*}fotmXajbnp3v>1d)Of598We_aZ-+Iau?aR%W1^X$V63`YF>WqLXj Gzxp4FtmOg# diff --git a/_module/ncs/nw_o2_generalhig.ncs b/_module/ncs/nw_o2_generalhig.ncs index 59691e64c89f67ee37c5a9a0a2f35842ab26b6b3..5bbe734383f34001e91642f7ba7a766d7ddbe5e7 100644 GIT binary patch delta 2732 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 VF94pJOAos+67k^Q)Y5L4|9^^hiU$Ay diff --git a/_module/ncs/nw_o2_generallow.ncs b/_module/ncs/nw_o2_generallow.ncs index cd69b64f766edf203015f7972bbfcef601081e5b..72b50dc8b6971a0cded2c04cffde68ea6e88b648 100644 GIT binary patch delta 4434 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 diff --git a/_module/ncs/nw_o2_generalmed.ncs b/_module/ncs/nw_o2_generalmed.ncs index eb2b6582c693bc7344515817c1d03b00c85e018a..2fec0ac0bd6529c095b7bc181afd13f3dcc26b08 100644 GIT binary patch delta 4550 zcmaJ^dstOf7Qbtq!@cJMqQV8_eWiR|U#X+wBSrKx^MzL4$x@?yq-Cbm*i18;nu^Lp zaHD5@d_HEhvaIww*6x9i)KZER`qaUIK+RVo5^6?pVfNnV9=rz){(!aDUhB7id#`oY zTI?!O>Q>lWjUWD`)7`7bBS{uas>^A$28ZVC+qiWFhJQqQ^$R1(D{qjBl^t!3>?go! zBjqbQ`N%H$7hUO+hZsVYAq+Bvb%t<_3;WWYMgP?SuB==q_Ya$&nBJjd)1`#7j~6~jw}dwgvBtT{*}JW*-?#x`Cxe zjyYKl3qDa~RN5eDO_rw(BIhz4WY-!8>6sZ4Y|r+^Wah~N^GgFW(GZ3j!YM-_hVZi? z%=ZdybD7|KdUtkur%;=?SFv#~!K*bX$l$#CWeg0qjc>*!TX4zIQ9C{8TD>_ip&1Tv za3Io`NfJ4|x+D1`t!?Yffcr?0OX-eB0|gOt!1Uml0~Yy!fJwwD#ghxG+XeeIr@LIx z?a%4z=`onxMb2zOdMEa~DzhWX<4OJMBKQ|Mxuyu-C)?AD+7>svv?5Su87SS?4A#ms zHUWl&k_GFc?3NL&crM6!BquwXe3|tyy62JeSu=1?roO-bHs6=3+5RJB^V$T=OVc;b zek3+tU>gI;ne6_OrSd4-iN=7xko4?j*gZw860=D6oD6)jgs+t6HgG3KI464qnHms9 zhOFy_b2|&m#b?Ocb=z@u2eI1lI!PvH14LA1KMPDk^>6@$2C*j`si3* z2%XJGciO8{?&)F+EwcE0nLX3~6@}A`FsD$SCW*NboeNqrVgBK|@olx}M~LWrq9tnv zWwt)nk~M=eTOV%8nn9VZ^IEcIP$uix&swt1BX8ukhZCeRH#{T~CGj{6A(p3(6fcpl zaznbZ^Yw})c3BM)>0V)IdEhNpu~%TiVSXG(+U&()xAwtdb?Z-Y3Qai7PvG?N;;^^& z!KrQm=d=lj`EeZl&Wpn$?1OW=1)O3N4)YT@)4ez>`+RVIZvm&&gv0ze4%B&ZSf={m z)VF|B!EyQ;@nU`ghr~-(y^zfk$=+x#Um`-KW!p4iLTd}C>Rt8%U|0lfFiN#7k+gnnbA)9<+@A;S!1sj&O0DW19+T(TF zFAfUUpGf@vOqZSJKJDM;zRBUB-WptTvbRV0%oXMa-ZW!0_4#bWx2e}PjUV0-z$G_z zzot>5`D9`~g*BY}#~W||a>-3Ij41BqD_yea6Oq*Rc1(bL{K{c41ce=Is@&drP60N%8EMkmA7qrJI zpnf<86t!$LglI!A{RkMbSBtvhR?z=*POm-5dZin-wKIlJa^a>6+Z+&Lk7_0^P`jUi zDXLS3QKX^z3I_d5KZwLgP&Z74XfR1W7u*H*N@o#-$QzyjW z9(BG9r=^Cvh|8Cs;=J9PC1!oR)37&zey+df#IMO^cB?e z)L(Can~XibiDvYLatRL~;;_T-lhl#U(vV1f%MQYkR>J0%8liA>i8mXt2a}jhK7uU z3PgIACD2u%ETz6i)H=~;WE|EPIG6GpcXlW zQQNsf$g_kzfTkP+1?Z-!@I2s-lhiW}p7p~m3pns1E3U7h=U#$2HcY!JC@NVAf?2R& zMj5jL3D*SC0}J7-j4S%l$*bTl(2PY;jkshSUAzR&+3@eFTz^Hz*H+U->)=hGd07yO zIA^j>?^R7uO2`41^6HEH0N@c$RZDYNbmxudPU#Z9^cD5r0Mv>z6nbM?o3ALGX@hdeKd^D}_N4j+{-JerANw8}CG7b&KWc!CT}RQk&p-!1j9aGj@9={F6CW?hs-2+jDuF`f z;itr{#^1Y@%5K$-4l4sTtGBPBWj{er#JB^Tnha_WL>rB`0Mh_tp3uMAgNTZ{_Y!=f z_KU%AsUhl=Szm-9yY*m1N+K9nFSB4onC^Ck-L2hL?-`S>K{P46q);Xd0}SiKUuin1 zag`8C+f>3iz~Bmc{RWgFwgE2m2Q{`D9BP}ftahbTf=yo*&S%TL?7tN{vIb_dYW0@- z;Vt$t1fHVxw;&f4{{bR&4n5_neuI+|T3h*EHNTEuRr(Kq?Np$f8z2JF5~?3cgBl?V z)V13HYnUc8pMmD7enV96x!-Ohh3t}{3eU3h-FkXH#goXoC2qAtF` zBD2VeHCX-(kLg4SOKn`30qWR}$l_NCt?8JK_$^@Zes33utzk}6x?m{pOp2P^2sX-= VF94pJOAos+67k^Q)Y5L4|9^^hiU$Ay delta 2732 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 delta 1825 zcmb_cYfMyE5WX|}00e{z?6SMSZUF^+EW4rzY6_^>XcVQQBtnadsHnVLL=zfc5v?&T zg(=>qr9Pq(Tc|>>1w_OL5v$h9f@1O28lZrpE)|Ffl-_%nKIre>ANS0BXJ)=LGiT0c zwbG&sQpc#d%XBM@dczzByo$;kV;u2J6D2y%vn{KY!0_(yi&TnWEdPm%R&Y{C;$)h5 z!1G7BM2}O5Ro{`LHVT#sfrxcba0j(Z04rO#hq_z#`0OB8JlPD`SxGze2e9x{GXChs zo{@l@9=pa;cHmrC#dGb#!pA&O3>JPw(F!GZ+HerDb%2`{l(bJL$<;7I0-g;2$x$Yi zG4hB72{94xiiuhBs@1f#S?J1Ikc>a*+?HY@<>mFgrL~naf4<*NjwLTgiA)L%Kp+3Tu_YYkF~BIjv)4kEfS0 z%qg(m$(0oknP_$FY)*5Lg%~ z9n-ke>{i?VfqG{6-^Ux>&xc|jp%SrG7HiW*(?Lcm*1n6(@ml)+!a2+eqx72fIN(Rk zHD=r@p^}SfSh`WT$6UxI8-Qb6_~ioteRSi>Bq*W2D*@wjcB4!T$EV}P->c%ioUt|! z;TNjC>JR1Ab=4ntE+j?W2bda4S#|56fgaWE!jz?4!nLmuPSVizqqxzTj@#1mo{`LNXcE zZj{SQ`$qh`CQeLGPEAbMkd&IZAtfnwvM$6JG+7t1c5QO%dflR|&C4=ZXD&)MW$H51 zxaPZNfF`c^ULHW5IDspgui>6;bh+D`BJMXKyO2{oIA;f1(zbb$rBx4lUh+kMM~ZBV zgEic-wkkkVB;~~gl2?bE^4rzWDZ1Zo*8(?!YcVrc0P{N?DYb*wY^<6K#W&f}tqy0X zv;vdRlq`BL=`4UkYU_LlP4Rp`-sa{%jpZlt*@yU4PfNP?9oIYu#3Ay0kq(!+PhMmL zGQDJP34lSGZizypfpRPhsoOFS?on{}0o;_q$34U*jNzY-BRx~8?)MFFp8{X)!WltS z_G&rJ?kV7bhMonGMIOCjV4(Qkb+#?p;+^?{W)1pLckdi_raL%eXeiC^TLo&ar7s%o zbk>0Z1*>-hHO2NT@mB{fy+0hN{mmA+@B+Y1GCx;Q(ZF)3p}~O}_^5=^`_t&eUonWmDugT< zDPS2ke8D;?AsipNv(ZYJi&x5p)rI|933@cwv&~9~!p3~TBM0mI*;03S&$gjLtW_av zKMp+D2`X5L^?vLg6?~3nU_I23h(C9*yVcNw+vC`E8rX!}^4Z0n;7-n_G1B4TEe3j= zIf2!Bzy!>GpYk$wJec){qEBilaK~6)$$3IAcg|t&d%yzx*ibRv6AAz`p0L$kFm-Ik zw_ZZ2gN3m)trTY@x5d_uf7nDMi${FXRKQ;+7dB1{M&}GCagzTs*iYueYPMVpd6=rB Nw>B#(5_B*f{sdf)wMGB{ diff --git a/_module/ncs/pe_test.ncs b/_module/ncs/pe_test.ncs deleted file mode 100644 index 0268a86f9f9132f05ac1cedbcb48e94ac90ffee9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6478 zcmc&&O>9(E6u$3gUZ-@Z)1g&Rpbts}D?d{R${?cCGO3m6PdcSBYMe}`FQqV)G7QL0 zP1v9b5p}0*j4@FcZj6ahw}gcY7Z@=ikr)>>=>n5RtAW(>bKlIpZ)RXHwzkQ8Z|={z z=ljlg&pY=G^<~`go}KYtA=V9T6z~^zh3SNZ^{z0CrKP1sVLu|^e%lP$A<>!~$c`mP z`%`1t!Qn$G3r8#n=n#8NeK>W&WZOZbEt~20ZDDuf&j-uBFf-ESxY)Yt7_ECLxUOx& zKREObcg%?hIkaHL$jYy@{Cb0a%!>%!uTkS#1I+(u>5iEW7+X`pk<4U<`v#I@4CV$+ ze4-YZIqK>*He0lWkL7Xt1zy=ULQ}7>`bDc{i-<5lv6dXaxdDd7uH#iWG#Ma(Pi_uM%H(Fm@65XzsK-m7AXNCf)Wf zn!|LyY_xa5fb}l;>lLTHnY`zgPSQ}f$1Qkgy~57+E&}~DhaGtf@7W>92s0NY=K6=z zhcx2EDfDJ*)E@}|d#im1Y-$ z-NKO+*$Q&2$*7`Hx)R@~(x|w?G#0(nC9k~vR$9KR#`4dllDd$@Z&F6QWp?wH0ZoBC zdg?}=y=0~>(hH{>HXQ1|ytzK$5w1fz-kHX?t* z^Jd(mUanAv9gTBR;!RX}b{^J z+36c1M3`)vdH#Fae3s|ofwUeDW6X>)6?6^bb!!xi3x@xtCm|J!T{f z$o>xb$1kM?|Ap)iqCV#V-k_HhlE5Jva|;7+6auQEE_jJi_>9PAdNJ?Y9tHpKZyRl` z4#hyia5?G1BoLBAQkQQq@O6uYwSd1B;n`zX=zUV#>4@*N4~6dFHqZQjoNjyr@P=w+ z1Mo=N0F_|ZQGVGfDnCR_bl}xw@+mp`%3s7F8INje;+#j>COMi)${NCKFxP<8s>&FS z23^?)Nba`%><_aaQ5%Zkb*FaOpoy!fY%LIsFD*6d-iZTS2o-3<8r3P;VQgz*_#>xCrgR}~@$JL$$_3d&?uSSu3 zzpxHh$>)$f+2QV|Vyjo>^cV9dJH3L;igHsAP2N zb*t->SR`W}Ow zCLiV@mLd4(4~t|$JQeubBZH0B%>#L|#9Ons-bs^09bq+m;4e*g=JOeT87h#8a;M$x zVCvZZL7<&jfLY8K*?;$&h?qcbx*eaG4W82;wGZsdLmQ#- QQw<*~)l_qvs9SW!KaIvFMgRZ+ diff --git a/_module/ncs/pi_crafting.ncs b/_module/ncs/pi_crafting.ncs index 6da3d04c9d58b6aa650be87b249ad175bc843413..7ba191b5a3e5895705dd2bed35326bf640d5f018 100644 GIT binary patch delta 99 zcmaDlnQ7(}CSE`1V1+P4Jp(5OhAzp8yzL^M#_|k6AR*20|Ns9VvOuP%{KOT8lk?*^ qgjpGwPcgDEgXFmtz{=z&2NnslfmAWDZM+%C$Ibwe-fYOfr3wJZWEI!| delta 65 zcmbO^h3V;JCSE`1V1+P4Jp(5OhR&xGdD}%i{>w7}frK=}|NsAg$O4%juP3fB+|0`u S$jAPlg&8RDe{(ATmMQ?U{}oaI diff --git a/_module/ncs/pi_debug.ncs b/_module/ncs/pi_debug.ncs index 1d9a0ea808a225436600a1d8469971f852fb0163..25f33de1fdfe2279026db8c640206c68528b152f 100644 GIT binary patch delta 15 WcmeCE>8RPD#mHo2uvv%kjtu}Ucm+TJ delta 15 WcmeCE>8RPD#mHo6v{{Gojtu}UeFZ@P diff --git a/_module/ncs/pi_forcerest.ncs b/_module/ncs/pi_forcerest.ncs index 1efb01a1545e7d3537dca3216536291973808803..0466eb6ec739be76daec011d9bb7f956ff15349f 100644 GIT binary patch delta 5222 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 b{Qg%H?V-D>zvo2ze3xv16Yl4V5upDkNqF-G delta 4862 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 diff --git a/_module/ncs/pi_test.ncs b/_module/ncs/pi_test.ncs deleted file mode 100644 index 7d3ae06383e2b009b26dea7776f1218ade205e59..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8555 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 delta 2731 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 delta 2683 zcmZvec~sQb702g(e*^qxkVSSFa0V0wsv=fI6jKxuQ8tZ=dc*}{3NDFBJSEW>V^R}s z(5QLp^B5yg>}ewknhCrjXvCU>+8CEAbxkm#E-6uB6!oY~-|zRsV_N&qoOj<{-sdiJ zXFB&-%2!&va?&O`@)8CP8f`*ad4*RPVi!4m!dh0qYY;1V*2YkFjkQ&dVHFjxv%Xb5 zS?nKg!p*_LDpTe4ewZEXrO;qjTOG!Z*QBtbU2`aheYNW(EoIxPPxjm~z@(7N<$7o` zn-!DEq_X9^Bb~=@tRVhMUPlRZ8?@@8)E5J_GVp+yUyRvM%4$HubIrj?DAiOEUhN< zlWS^YygrgTSmfSddx&x0ovzi};qI`@7fnO;^j&Ozu#N2)7eKc)>t7qz9Zy;R*03h6 zbW&?GX(iMncd*|zCb9S9z1iNz*ifnSHR4CG|$fJ*IJa{@=*|<Y^Um&*0ZTTUqs?G3wg`wW44? zf5(bE=fp3gfu&W>CCv%$D0#!V>sYlF^A9^`oc*(>I@_+9TKn^3M=8%)*mlK&$rqgC zZoKA!F^Bo9MKoG*evaIzqx_CN~qeo>Oq8A zO<$&6DW~|&bmY}4v|2&x2C-hD(`F>vMUhHTgzv3dYKuPCk_f9ih4?~Z{vK7nEtm*1y`wAGMiZ1R@?->m8;8QCU8w zL~@=uMV{h=QS>z_F4Iww<)T^=zRyy<8*Vjdv9s0to_hYoN6n%fKxVYyJ6& z9y0LSEV@FtQ!QT4q0w&Wm?s)0QoJX=*`fzP+Ye&IEb=6Le~HV(&wNAyh2XmrVsZhc z5iXaCEroQ(jFv!c{?c%9p;4HYBH7K0y$vC%SPB>ZDRPP_oz(N|b*2k!qaP8MP~D>Jt6lrHyWAEE4-y(tU#Sn33?_enyVHK9D)qUoeDu zy0BIx1i?&VODVlb5Pbx#q3Lee)2xMl%Nw!<6F|w)rP^b3Oskx-SCH_@G z=Yg_0qG>y|n6YKGm{CV}Nvx})4)|`Y)Eqqi21Q?zk*w*(B+*<=8$7V)ux5GHj8)%? zcMi}J5(gS75Li}YaKC3UP*c93ICaH7Ee;uD!m2vMdFvNchTm`3TuT)!4;J2sNVsG1 zOwoLlzPDiEVzKiyo$G<=E`z-=R||nmZH*lg<=+t}bymBckIm@9#x^>mV7mPFU87=P zTCOp%Tu!V9|MiC+JjcCG%C1GGt>pkP8%cNL3&rn!U+r;e}Ydi^i)x;v6M`?iq# zqg1ZEA`QKS_}FaOV(){p+4@O-XRKoJeL5jSofnx8$fY3toJNvtM(Q@PQbDvEhMd)t z!iX3lSIbgD@(%H)6?1^3baA-{;(kqfoErZ$e;~>*K=KD+F7T^AX!+-pxEG2$GR9DG(}qhx^c3xoL_F4k zK%Tl!Zk%m^DZ7c6k*&k6rWqVymIt0$=1h&%P|QOA_?!xSk~(zB^iE-(&celOh|!EL05>; z26M64_ZwKGk&-Wtq@s>2U8Ijba|8ILNmRf(L&%9s#^{3Vgdy!SZw@2Rm?kx6vAY zFb6hm30uUS@iLi>a+^`z!UnEY!8baGaerPIUtSzPbKY)7<(|-WX CFO(Pn diff --git a/_module/ncs/thenspawn3.ncs b/_module/ncs/thenspawn3.ncs index ffb63895d79ccb7c89c98ae0df83f9cf30d1dfc8..122465a307a9d9480858b7c921bbe575ade6e75d 100644 GIT binary patch delta 4665 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 diff --git a/_module/ncs/towncrierspawn.ncs b/_module/ncs/towncrierspawn.ncs index 9434007cb178309d46bf3fac5a86e2fb854fd378..00887f29c132e964a89c75d17d2d1c9fdf78ff25 100644 GIT binary patch delta 2583 zcmZ`)YgAO%6`sBCg}K8+1_V(Cosob61qPx##9&c$i6S6sKm#f&QKNDBNRXK23qu|* z4b~jvF}4O+wvEv$x`=L3G-|LSqJ^qc1p-=KjYf+kG4YXPrsv)}ZR2wF&#bfWch275 z{`OucJuXLn7z3Q*JNqd#^1C1%??j3hkNYc z#Xz{tHec*#x^9qv_3ak(ZW+k#TNE~|#cb`XBkqj7df7Z}RuRsSs43uLT`?9mV0Iup zU@xT@wt@Y53Mqe zSwogSa9dK+wyIv`qdeOm@@RGlyeVUXmD&eD7~rG;a#^7Z@P!b%J`f54lL~0$a}bG` z5Kjvtz=8O}bV`eaTnX)-wD<$K4ct5!dQ(LV6nLV|j~A7|M9DR1md@+tVS?A7-n#K8 zVJH!2RRU1L52QjKZ;8STz9Ip>#_$xHl?YEfu}`JjN9cXN%!+^J+uwr_zH}rURxHc3 zw^iI;F5Z5ekJG5*H-Lcs>gakJ90LsgS@mK8I+6}MB+2FTN4K+pA9M~4;~+|M1$?Gk z<_yi6!M}Z81d2%ph4*AYv*a?j(HG+((^GOu|8jfqN~OX{@G+WP#%h&@^cp|eDm0ur z1tLTwxxcE*44`ZI@I6Q_Lld10!b8Aah(^A28uaD|HiH-KE`X0b@VjHG*DQSOO%<~t z7?g+KsXj59!+Kax_PKBr@Q3|$w-`oyV9!FbF9f?ccJ9!h-TH=VO28ZN=2u)CzUMWi z&=>#FLgz{$9q`6R>a`NC$mj^t`^4F?L{E6a8c~mq=X7J6FqHPcYnsOLzm~#!K4C4? zD{Wh}PwnjB{5)Rq3G|`2*1=l9tDn$MWe|<%SV~dla2)Vr0Ixp`S<2-(8vAZ$UYX5( zCW*S-d>5u6wiZ(A28fmMLbTc}`($ifO`#vcYEL}nq~C29QYiKFwP;;xG!oHv0@hw| z(?0sV&h*17LA$P9H#&u()NR%xPGQU1^H_AoXxd#3=K(34N_Ihk2Od1D#@T}Wy}e-J z&PFhiI5kSRH-mC(;8i2;9I0`~T@~a_5GiA2F(n)Whm1QmQEM|i1m1NHjO2Y9?jU}& zi+*f?YexK_Q3b!2@%=8U9)-(+qAx*z#5FZ;&hMCXng^~3&gI9ssBa;+`a&q5>VQgo z`w#jvE}kj0ho0a)Wr+J7B~}mpeiGbiIH@LvS$KpUO5`WE-Ppi~sFBRit_JS&S;ukPT$EqgalS zi4;2)lYpNXib1?34$bt%P&IBuz8lz?r~`f^PVWL*uJDLt%)+n;dLtRPqGHuLTn^;^ zB(}`F5qMEjEOY;FrUOQbOsmGDiDss$nf8687GR@)!Wa!O+G^F>RUoUluyoTIkscG@}}&jPw$q!|U+AmL9d)O8&Klv;!v z03WsLi+JKpJgybSz66cfvsWdWjt@Qbx_mxY)aA!I&Dd6~o)>em{ZI4mVtkAb4yYxV v3q17|45Xs@*arCR4E-BbF2ruYZZF#W8h(m+>oiYZf{|X1joLr+Bb(vhIa-Ut delta 4678 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 diff --git a/_module/ncs/winkiecapt5os.ncs b/_module/ncs/winkiecapt5os.ncs index 1eb49120a5ec4f56d2f4e0c70fad46b3ccda375a..6e2432438f5cab8fda2e6eb15b7fb13d12eee679 100644 GIT binary patch delta 2731 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 diff --git a/_module/ncs/witch1os.ncs b/_module/ncs/witch1os.ncs index e35ddc4dd8bc9d981ff23a9ea1736903265553c9..56e95e624f6fbce0e7d69bb5dd8ff151207b6db0 100644 GIT binary patch delta 4673 zcmaJ@d013O5}&H~n0W(;zziUVifo9AipC4P(5Nw44KBJ%aX0u5Qn&6ku zD2i!K=Mp)*FhJst+U|-6=2{aCl7r}K0;n5tLl6wBq7H0#znKR^M)+f>>aMEaud2HH z)s5G!pA}gTk=`FXUUiXW(kfPjZGBax@c8n*DSxp$g|Lq+0 zdq5d@gyC9axMuIP`S0puQh+nNFDRN!rsIAjC@hN9DQ4-m#q9=FLh{1>SF!GIWGI5K z%@e%rBrw+w9Z6NV4KxxIWdk#*&$IEBxw$rylw&64Spg55L7>-})JT(H(V0{5t!d4P zuQq#f8g6j%xiPNNjLYk8 zvn03Sm+8rGtH5|*=KT$vq#QfgMGM>*q<@~B^o!_7DzZC~+gU*!GyJ?Wyv&>DFPmqU z&5IDtBefA`vM@Km9l_?)mS?&LPc@@iNPEUSlH1s% zlKO;@G)_!bs@Y#poWFDOiHJZ&R*r}7A`XudqnP!JFj%*j?-FOKzf01#+N8?WO82Tb z2`01Lp21uMV!LW5koM$T_{_Z|7 zBlq!pP~~_e0fb+9O^DMJIBCuIWqBIf0dk-E2LbU=5@?=RAWpMYLU-EWOp;#|SC8D6 z?Lk01lmLQzUV+Y&lOZ8fy!D>1wc8S&po~k5xC?cAvZBxim&mw+1gIph77PyO33D& zk7q;ZIZZd?6%Al zZ6+OwA?FM)>}m{uWBvd+n@O*2V%O8F1HUW!R4S$vQuUjS^z9f#9(!>FE;{e1D_n>8 z+*6KKA3tKoxiOAChl_kMWu+sfWUn7iJnd*cGujtNt#^$1VWkE8ucYVp!f2&A@eDm- zhG-I15r>Iu9pfv)K}%R59$aMx4LlD^9N$;oLL6|!=QzKEZkH|GHX&;aw=?sgRs<$zW<=h%`gRn ztb+JN3_K?OccZ;6&=Uh!(6|biO*==zczVwQ*R+7E5(3VOwdDE-er9Q z;T1r0Br6Pp!+`2MdSEb~qGv)uqkZjAui>6n{*?QlU?W1|Jw<7{Jyk@RtTZ`y$`aBE z5zv!sPw3iqU9+%~2v`f&rhDnF0Ek z`lKFy0agQxPl7{MJU!OsTe^)tIsty8-6udN{Q3>X6+ghUFR|o_Fb1?UgCyNzTC4K9 z-IxS_Q}N^pacIWi7vc1yX}t8GpVd>1oDOmL`8xLabQlZx*)Wzd1L^@k8PC=}3B3_Z zB3Mxh90NR3Ods9Adw0U070(1!(TdFiMeRfYw>gnzZh#&tz8S#&nE~ahwtleWR7Ou`aGteq!A2F= zPGK)oxM0y1~zgRY*BF0Gdjy<4xQMbeVpa8=NRu^7~s-mVfGTx z)DOWz~@Vtr4X1I=WFbw1Fl$c)*smJV{pMA$K~r>CpWUvFJUff6W^9B zBK1;kJ`3L~+PHaQ4QJ4Gy>JQpp$zy4K88Dd3qw>Kd0fAHwD1O4XlXfz&fd{V!1uv z=Mb>F*C8FT7e5R&5bJ|oU(<=lena`?E1<{x(L&Q2z(zls0#^FjO(@hJdQ$RE7QEk~ zOQW$jOKO1kKzF;-Oe*8zjg(5L=q2Pa32oS zihKN+N0xdne}lGsJ+BBwZ_Iz3yfNWC$tICxrz}0{p?Ks$LkF;uVK@(Hl!76mRvN7g z;S9L?C17wRt5)$x#6S>20rQ*kz)(zS=XNbLo^=uKU)RB_(E!_IZZKcm(8KO*buq|;(Cg$6zYGuibR zoP&z<=BsRCEJi9=eMW0@vR*1-j6d5)0V`&S7R?75F%;!-)>}lg63|Xk?^{{$P%H$z#9!rM nI9<`sAC!5!z7ESr;v~ezlz#gt2K$x_l4H@GXw&}zYXOj_ delta 2802 zcmZuzc~q3w6`y;*8RnZokR60UMig0s0?MLsBf=>nFe5Y)tRR@W5eY6ah&^b?iAhw9 z#y;hxrV7O5G%7*p5MOZ;j@sC$i7j}PL^MH-bwwct7aEx9``(Ag($jf=4EQ$>vjOyqK7DK;Gv(pMd% zw5c4g+~HD?0W|rFFP`SUsbtPyCt>I&RgrL5C?dGRLI$`ZT~Za#w<-z_&Z9Yxl!od_ zi!BZp&QX*SyfR3P&9%58OBJjBOinjT-IoxUc)s~ci2Q$ zhU=i0to)mQNPwyvqHJ_GyO=|GR!yQPfs-_i@g`?{Wzs*(2l^C`iK<8MFFcm09-x$v zYlAdODMj>N^2L!P?mciMaRk?Rs2M_qj>8llmq>;^Sj)BUPOV({UEf4u%^z=2_PE zeFwa0?;S9*bs=Eap9 zaQGeIh!$p#06U=nz)<|9$zY-@L%@TEtmjGE(!i6}c=40R7;vLgHh_Qi+hC*{B0*1= zKL{Yxt>P3y*Ey%W>2`58l;PJW2RA2qZ^$c+tu@@Ryt(oxfg^3lm_NPI5|j1q_4J zI88KYBTXL3d6P*n4Gm6xo#=WAeZPfY#!P`QNpfm~huT)XMs1rXZJVZ059E~|m;nbt za%xVq_XpuqV1+5rqQm=kB}D~3K?D0o zCd|}f?@P>>12L}n{caHeuia)_3cwZchwmsq{6x1DLV$d=O@tjs7s@c2ubyCfyATHP zN)@|R1n0Hb;j7Gl3SL^F7B_4OMB$~;GLVZm6bpS;6J_SpbKWn=Ux;}_sE?h3%!wqd91Y* z@=$KiSMId|v~G|yU9$?#N_Zw(ne>~$V%Ne6#FOjUC-1@zWSc6WTf$=wR#pkSbokj) z=Jpo!1KQ50Opb)BOkUo^nY3I~g%%-fXA9j>3+&crSPaO4;S?K z&PnC|h88z1 zSn1CSjstVSbqko^Dfq#FE7q}}&%%XaINzxvebFi^n?a9VhY~u~fO)hx0sWZn3cL<- zVYlEBq}KP^RX8uQKtm;5gK9G7^`ENe2M|bjhb=-y`#JN7oNM}o!eQc_;dDoMjV4WUJf%WAFNjW6$bid;wJfW-e7olmUG&1N>>C$9*>#GrU&A8h+!`%ha{loBhj~d4_{DSIoyg%Zvh6K zuQp>AhH@lk+=+6?cF`Ljb;jrzRVMQ)vq7qIuBf_tVk_(-Qh-JXF__^?G4 zE(+mg%3qx0)IA#Yv@H|wV_&1%3&wl#0Px3xr>&7`O%C#BpdDmJbFdxo9v^J+4vwG7 e{SVDWUsgL8R{>r-PQ72i2xCW;_>b|}tobiBIK+AY diff --git a/_module/ncs/witch3os.ncs b/_module/ncs/witch3os.ncs index fff2f0e3da3806026f36849907d023d721ad0a84..bb9913e6ba53a7eaa505264666970883602e69b3 100644 GIT binary patch delta 2802 zcmZuzc~q3w6`y;*8RnZokR60UMig0s0?MLsBf=>nFe5Y)tRR@W5eY6ah&^b?iAhw9 z#y;hxrV7O5G%7*p5MOZ;j@sC$i7j}PL^MH-bwwct7aEx9``(Ag($jf=4EQ$>vjOyqK7DK;Gv(pMd% zw5c4g+~HD?0W|rFFP`SUsbtPyCt>I&RgrL5C?dGRLI$`ZT~Za#w<-z_&Z9Yxl!od_ zi!BZp&QX*SyfR3P&9%58OBJjBOinjT-IoxUc)s~ci2Q$ zhU=i0to)mQNPwyvqHJ_GyO=|GR!yQPfs-_i@g`?{Wzs*(2l^C`iK<8MFFcm09-x$v zYlAdODMj>N^2L!P?mciMaRk?Rs2M_qj>8llmq>;^Sj)BUPOV({UEf4u%^z=2_PE zeFwa0?;S9*bs=Eap9 zaQGeIh!$p#06U=nz)<|9$zY-@L%@TEtmjGE(!i6}c=40R7;vLgHh_Qi+hC*{B0*1= zKL{Yxt>P3y*Ey%W>2`58l;PJW2RA2qZ^$c+tu@@Ryt(oxfg^3lm_NPI5|j1q_4J zI88KYBTXL3d6P*n4Gm6xo#=WAeZPfY#!P`QNpfm~huT)XMs1rXZJVZ059E~|m;nbt za%xVq_XpuqV1+5rqQm=kB}D~3K?D0o zCd|}f?@P>>12L}n{caHeuia)_3cwZchwmsq{6x1DLV$d=O@tjs7s@c2ubyCfyATHP zN)@|R1n0Hb;j7Gl3SL^F7B_4OMB$~;GLVZm6bpS;6J_SpbKWn=Ux;}_sE?h3%!wqd91Y* z@=$KiSMId|v~G|yU9$?#N_Zw(ne>~$V%Ne6#FOjUC-1@zWSc6WTf$=wR#pkSbokj) z=Jpo!1KQ50Opb)BOkUo^nY3I~g%%-fXA9j>3+&crSPaO4;S?K z&PnC|h88z1 zSn1CSjstVSbqko^Dfq#FE7q}}&%%XaINzxvebFi^n?a9VhY~u~fO)hx0sWZn3cL<- zVYlEBq}KP^RX8uQKtm;5gK9G7^`ENe2M|bjhb=-y`#JN7oNM}o!eQc_;dDoMjV4WUJf%WAFNjW6$bid;wJfW-e7olmUG&1N>>C$9*>#GrU&A8h+!`%ha{loBhj~d4_{DSIoyg%Zvh6K zuQp>AhH@lk+=+6?cF`Ljb;jrzRVMQ)vq7qIuBf_tVk_(-Qh-JXF__^?G4 zE(+mg%3qx0)IA#Yv@H|wV_&1%3&wl#0Px3xr>&7`O%C#BpdDmJbFdxo9v^J+4vwG7 e{SVDWUsgL8R{>r-PQ72i2xCW;_>b|}tobiBIK+AY delta 4673 zcmaJ@d013O5}&H~n0W(;zziUVifo9AipC4P(5Nw44KBJ%aX0u5Qn&6ku zD2i!K=Mp)*FhJst+U|-6=2{aCl7r}K0;n5tLl6wBq7H0#znKR^M)+f>>aMEaud2HH z)s5G!pA}gTk=`FXUUiXW(kfPjZGBax@c8n*DSxp$g|Lq+0 zdq5d@gyC9axMuIP`S0puQh+nNFDRN!rsIAjC@hN9DQ4-m#q9=FLh{1>SF!GIWGI5K z%@e%rBrw+w9Z6NV4KxxIWdk#*&$IEBxw$rylw&64Spg55L7>-})JT(H(V0{5t!d4P zuQq#f8g6j%xiPNNjLYk8 zvn03Sm+8rGtH5|*=KT$vq#QfgMGM>*q<@~B^o!_7DzZC~+gU*!GyJ?Wyv&>DFPmqU z&5IDtBefA`vM@Km9l_?)mS?&LPc@@iNPEUSlH1s% zlKO;@G)_!bs@Y#poWFDOiHJZ&R*r}7A`XudqnP!JFj%*j?-FOKzf01#+N8?WO82Tb z2`01Lp21uMV!LW5koM$T_{_Z|7 zBlq!pP~~_e0fb+9O^DMJIBCuIWqBIf0dk-E2LbU=5@?=RAWpMYLU-EWOp;#|SC8D6 z?Lk01lmLQzUV+Y&lOZ8fy!D>1wc8S&po~k5xC?cAvZBxim&mw+1gIph77PyO33D& zk7q;ZIZZd?6%Al zZ6+OwA?FM)>}m{uWBvd+n@O*2V%O8F1HUW!R4S$vQuUjS^z9f#9(!>FE;{e1D_n>8 z+*6KKA3tKoxiOAChl_kMWu+sfWUn7iJnd*cGujtNt#^$1VWkE8ucYVp!f2&A@eDm- zhG-I15r>Iu9pfv)K}%R59$aMx4LlD^9N$;oLL6|!=QzKEZkH|GHX&;aw=?sgRs<$zW<=h%`gRn ztb+JN3_K?OccZ;6&=Uh!(6|biO*==zczVwQ*R+7E5(3VOwdDE-er9Q z;T1r0Br6Pp!+`2MdSEb~qGv)uqkZjAui>6n{*?QlU?W1|Jw<7{Jyk@RtTZ`y$`aBE z5zv!sPw3iqU9+%~2v`f&rhDnF0Ek z`lKFy0agQxPl7{MJU!OsTe^)tIsty8-6udN{Q3>X6+ghUFR|o_Fb1?UgCyNzTC4K9 z-IxS_Q}N^pacIWi7vc1yX}t8GpVd>1oDOmL`8xLabQlZx*)Wzd1L^@k8PC=}3B3_Z zB3Mxh90NR3Ods9Adw0U070(1!(TdFiMeRfYw>gnzZh#&tz8S#&nE~ahwtleWR7Ou`aGteq!A2F= zPGK)oxM0y1~zgRY*BF0Gdjy<4xQMbeVpa8=NRu^7~s-mVfGTx z)DOWz~@Vtr4X1I=WFbw1Fl$c)*smJV{pMA$K~r>CpWUvFJUff6W^9B zBK1;kJ`3L~+PHaQ4QJ4Gy>JQpp$zy4K88Dd3qw>Kd0fAHwD1O4XlXfz&fd{V!1uv z=Mb>F*C8FT7e5R&5bJ|oU(<=lena`?E1<{x(L&Q2z(zls0#^FjO(@hJdQ$RE7QEk~ zOQW$jOKO1kKzF;-Oe*8zjg(5L=q2Pa32oS zihKN+N0xdne}lGsJ+BBwZ_Iz3yfNWC$tICxrz}0{p?Ks$LkF;uVK@(Hl!76mRvN7g z;S9L?C17wRt5)$x#6S>20rQ*kz)(zS=XNbLo^=uKU)RB_(E!_IZZKcm(8KO*buq|;(Cg$6zYGuibR zoP&z<=BsRCEJi9=eMW0@vR*1-j6d5)0V`&S7R?75F%;!-)>}lg63|Xk?^{{$P%H$z#9!rM nI9<`sAC!5!z7ESr;v~ezlz#gt2K$x_l4H@GXw&}zYXOj_ diff --git a/_module/ncs/witch6os.ncs b/_module/ncs/witch6os.ncs index e2a44209c4393fad2f9681489233c3f311bd271b..b8ff4088c187f35108cfbf625cdd041b7c9782fb 100644 GIT binary patch delta 4673 zcmaJ@d013O5}&H~n0W(;zziUVifo9AipC4P(5Nw44KBJ%aX0u5Qn&6ku zD2i!K=Mp)*FhJst+U|-6=2{aCl7r}K0;n5tLl6wBq7H0#znKR^M)+f>>aMEaud2HH z)s5G!pA}gTk=`FXUUiXW(kfPjZGBax@c8n*DSxp$g|Lq+0 zdq5d@gyC9axMuIP`S0puQh+nNFDRN!rsIAjC@hN9DQ4-m#q9=FLh{1>SF!GIWGI5K z%@e%rBrw+w9Z6NV4KxxIWdk#*&$IEBxw$rylw&64Spg55L7>-})JT(H(V0{5t!d4P zuQq#f8g6j%xiPNNjLYk8 zvn03Sm+8rGtH5|*=KT$vq#QfgMGM>*q<@~B^o!_7DzZC~+gU*!GyJ?Wyv&>DFPmqU z&5IDtBefA`vM@Km9l_?)mS?&LPc@@iNPEUSlH1s% zlKO;@G)_!bs@Y#poWFDOiHJZ&R*r}7A`XudqnP!JFj%*j?-FOKzf01#+N8?WO82Tb z2`01Lp21uMV!LW5koM$T_{_Z|7 zBlq!pP~~_e0fb+9O^DMJIBCuIWqBIf0dk-E2LbU=5@?=RAWpMYLU-EWOp;#|SC8D6 z?Lk01lmLQzUV+Y&lOZ8fy!D>1wc8S&po~k5xC?cAvZBxim&mw+1gIph77PyO33D& zk7q;ZIZZd?6%Al zZ6+OwA?FM)>}m{uWBvd+n@O*2V%O8F1HUW!R4S$vQuUjS^z9f#9(!>FE;{e1D_n>8 z+*6KKA3tKoxiOAChl_kMWu+sfWUn7iJnd*cGujtNt#^$1VWkE8ucYVp!f2&A@eDm- zhG-I15r>Iu9pfv)K}%R59$aMx4LlD^9N$;oLL6|!=QzKEZkH|GHX&;aw=?sgRs<$zW<=h%`gRn ztb+JN3_K?OccZ;6&=Uh!(6|biO*==zczVwQ*R+7E5(3VOwdDE-er9Q z;T1r0Br6Pp!+`2MdSEb~qGv)uqkZjAui>6n{*?QlU?W1|Jw<7{Jyk@RtTZ`y$`aBE z5zv!sPw3iqU9+%~2v`f&rhDnF0Ek z`lKFy0agQxPl7{MJU!OsTe^)tIsty8-6udN{Q3>X6+ghUFR|o_Fb1?UgCyNzTC4K9 z-IxS_Q}N^pacIWi7vc1yX}t8GpVd>1oDOmL`8xLabQlZx*)Wzd1L^@k8PC=}3B3_Z zB3Mxh90NR3Ods9Adw0U070(1!(TdFiMeRfYw>gnzZh#&tz8S#&nE~ahwtleWR7Ou`aGteq!A2F= zPGK)oxM0y1~zgRY*BF0Gdjy<4xQMbeVpa8=NRu^7~s-mVfGTx z)DOWz~@Vtr4X1I=WFbw1Fl$c)*smJV{pMA$K~r>CpWUvFJUff6W^9B zBK1;kJ`3L~+PHaQ4QJ4Gy>JQpp$zy4K88Dd3qw>Kd0fAHwD1O4XlXfz&fd{V!1uv z=Mb>F*C8FT7e5R&5bJ|oU(<=lena`?E1<{x(L&Q2z(zls0#^FjO(@hJdQ$RE7QEk~ zOQW$jOKO1kKzF;-Oe*8zjg(5L=q2Pa32oS zihKN+N0xdne}lGsJ+BBwZ_Iz3yfNWC$tICxrz}0{p?Ks$LkF;uVK@(Hl!76mRvN7g z;S9L?C17wRt5)$x#6S>20rQ*kz)(zS=XNbLo^=uKU)RB_(E!_IZZKcm(8KO*buq|;(Cg$6zYGuibR zoP&z<=BsRCEJi9=eMW0@vR*1-j6d5)0V`&S7R?75F%;!-)>}lg63|Xk?^{{$P%H$z#9!rM nI9<`sAC!5!z7ESr;v~ezlz#gt2K$x_l4H@GXw&}zYXOj_ delta 2802 zcmZuzc~q3w6`y;*8RnZokR60UMig0s0?MLsBf=>nFe5Y)tRR@W5eY6ah&^b?iAhw9 z#y;hxrV7O5G%7*p5MOZ;j@sC$i7j}PL^MH-bwwct7aEx9``(Ag($jf=4EQ$>vjOyqK7DK;Gv(pMd% zw5c4g+~HD?0W|rFFP`SUsbtPyCt>I&RgrL5C?dGRLI$`ZT~Za#w<-z_&Z9Yxl!od_ zi!BZp&QX*SyfR3P&9%58OBJjBOinjT-IoxUc)s~ci2Q$ zhU=i0to)mQNPwyvqHJ_GyO=|GR!yQPfs-_i@g`?{Wzs*(2l^C`iK<8MFFcm09-x$v zYlAdODMj>N^2L!P?mciMaRk?Rs2M_qj>8llmq>;^Sj)BUPOV({UEf4u%^z=2_PE zeFwa0?;S9*bs=Eap9 zaQGeIh!$p#06U=nz)<|9$zY-@L%@TEtmjGE(!i6}c=40R7;vLgHh_Qi+hC*{B0*1= zKL{Yxt>P3y*Ey%W>2`58l;PJW2RA2qZ^$c+tu@@Ryt(oxfg^3lm_NPI5|j1q_4J zI88KYBTXL3d6P*n4Gm6xo#=WAeZPfY#!P`QNpfm~huT)XMs1rXZJVZ059E~|m;nbt za%xVq_XpuqV1+5rqQm=kB}D~3K?D0o zCd|}f?@P>>12L}n{caHeuia)_3cwZchwmsq{6x1DLV$d=O@tjs7s@c2ubyCfyATHP zN)@|R1n0Hb;j7Gl3SL^F7B_4OMB$~;GLVZm6bpS;6J_SpbKWn=Ux;}_sE?h3%!wqd91Y* z@=$KiSMId|v~G|yU9$?#N_Zw(ne>~$V%Ne6#FOjUC-1@zWSc6WTf$=wR#pkSbokj) z=Jpo!1KQ50Opb)BOkUo^nY3I~g%%-fXA9j>3+&crSPaO4;S?K z&PnC|h88z1 zSn1CSjstVSbqko^Dfq#FE7q}}&%%XaINzxvebFi^n?a9VhY~u~fO)hx0sWZn3cL<- zVYlEBq}KP^RX8uQKtm;5gK9G7^`ENe2M|bjhb=-y`#JN7oNM}o!eQc_;dDoMjV4WUJf%WAFNjW6$bid;wJfW-e7olmUG&1N>>C$9*>#GrU&A8h+!`%ha{loBhj~d4_{DSIoyg%Zvh6K zuQp>AhH@lk+=+6?cF`Ljb;jrzRVMQ)vq7qIuBf_tVk_(-Qh-JXF__^?G4 zE(+mg%3qx0)IA#Yv@H|wV_&1%3&wl#0Px3xr>&7`O%C#BpdDmJbFdxo9v^J+4vwG7 e{SVDWUsgL8R{>r-PQ72i2xCW;_>b|}tobiBIK+AY diff --git a/_module/ncs/witch8os.ncs b/_module/ncs/witch8os.ncs index 7fd0dc56b3104f43050740cb80dbb8bc52ab0255..8581c1d40c6ba7a081f658d147f7ba951d0fc56c 100644 GIT binary patch delta 4673 zcmaJ@d013O5}&H~n0W(;zziUVifo9AipC4P(5Nw44KBJ%aX0u5Qn&6ku zD2i!K=Mp)*FhJst+U|-6=2{aCl7r}K0;n5tLl6wBq7H0#znKR^M)+f>>aMEaud2HH z)s5G!pA}gTk=`FXUUiXW(kfPjZGBax@c8n*DSxp$g|Lq+0 zdq5d@gyC9axMuIP`S0puQh+nNFDRN!rsIAjC@hN9DQ4-m#q9=FLh{1>SF!GIWGI5K z%@e%rBrw+w9Z6NV4KxxIWdk#*&$IEBxw$rylw&64Spg55L7>-})JT(H(V0{5t!d4P zuQq#f8g6j%xiPNNjLYk8 zvn03Sm+8rGtH5|*=KT$vq#QfgMGM>*q<@~B^o!_7DzZC~+gU*!GyJ?Wyv&>DFPmqU z&5IDtBefA`vM@Km9l_?)mS?&LPc@@iNPEUSlH1s% zlKO;@G)_!bs@Y#poWFDOiHJZ&R*r}7A`XudqnP!JFj%*j?-FOKzf01#+N8?WO82Tb z2`01Lp21uMV!LW5koM$T_{_Z|7 zBlq!pP~~_e0fb+9O^DMJIBCuIWqBIf0dk-E2LbU=5@?=RAWpMYLU-EWOp;#|SC8D6 z?Lk01lmLQzUV+Y&lOZ8fy!D>1wc8S&po~k5xC?cAvZBxim&mw+1gIph77PyO33D& zk7q;ZIZZd?6%Al zZ6+OwA?FM)>}m{uWBvd+n@O*2V%O8F1HUW!R4S$vQuUjS^z9f#9(!>FE;{e1D_n>8 z+*6KKA3tKoxiOAChl_kMWu+sfWUn7iJnd*cGujtNt#^$1VWkE8ucYVp!f2&A@eDm- zhG-I15r>Iu9pfv)K}%R59$aMx4LlD^9N$;oLL6|!=QzKEZkH|GHX&;aw=?sgRs<$zW<=h%`gRn ztb+JN3_K?OccZ;6&=Uh!(6|biO*==zczVwQ*R+7E5(3VOwdDE-er9Q z;T1r0Br6Pp!+`2MdSEb~qGv)uqkZjAui>6n{*?QlU?W1|Jw<7{Jyk@RtTZ`y$`aBE z5zv!sPw3iqU9+%~2v`f&rhDnF0Ek z`lKFy0agQxPl7{MJU!OsTe^)tIsty8-6udN{Q3>X6+ghUFR|o_Fb1?UgCyNzTC4K9 z-IxS_Q}N^pacIWi7vc1yX}t8GpVd>1oDOmL`8xLabQlZx*)Wzd1L^@k8PC=}3B3_Z zB3Mxh90NR3Ods9Adw0U070(1!(TdFiMeRfYw>gnzZh#&tz8S#&nE~ahwtleWR7Ou`aGteq!A2F= zPGK)oxM0y1~zgRY*BF0Gdjy<4xQMbeVpa8=NRu^7~s-mVfGTx z)DOWz~@Vtr4X1I=WFbw1Fl$c)*smJV{pMA$K~r>CpWUvFJUff6W^9B zBK1;kJ`3L~+PHaQ4QJ4Gy>JQpp$zy4K88Dd3qw>Kd0fAHwD1O4XlXfz&fd{V!1uv z=Mb>F*C8FT7e5R&5bJ|oU(<=lena`?E1<{x(L&Q2z(zls0#^FjO(@hJdQ$RE7QEk~ zOQW$jOKO1kKzF;-Oe*8zjg(5L=q2Pa32oS zihKN+N0xdne}lGsJ+BBwZ_Iz3yfNWC$tICxrz}0{p?Ks$LkF;uVK@(Hl!76mRvN7g z;S9L?C17wRt5)$x#6S>20rQ*kz)(zS=XNbLo^=uKU)RB_(E!_IZZKcm(8KO*buq|;(Cg$6zYGuibR zoP&z<=BsRCEJi9=eMW0@vR*1-j6d5)0V`&S7R?75F%;!-)>}lg63|Xk?^{{$P%H$z#9!rM nI9<`sAC!5!z7ESr;v~ezlz#gt2K$x_l4H@GXw&}zYXOj_ delta 2802 zcmZuzc~q3w6`y;*8RnZokR60UMig0s0?MLsBf=>nFe5Y)tRR@W5eY6ah&^b?iAhw9 z#y;hxrV7O5G%7*p5MOZ;j@sC$i7j}PL^MH-bwwct7aEx9``(Ag($jf=4EQ$>vjOyqK7DK;Gv(pMd% zw5c4g+~HD?0W|rFFP`SUsbtPyCt>I&RgrL5C?dGRLI$`ZT~Za#w<-z_&Z9Yxl!od_ zi!BZp&QX*SyfR3P&9%58OBJjBOinjT-IoxUc)s~ci2Q$ zhU=i0to)mQNPwyvqHJ_GyO=|GR!yQPfs-_i@g`?{Wzs*(2l^C`iK<8MFFcm09-x$v zYlAdODMj>N^2L!P?mciMaRk?Rs2M_qj>8llmq>;^Sj)BUPOV({UEf4u%^z=2_PE zeFwa0?;S9*bs=Eap9 zaQGeIh!$p#06U=nz)<|9$zY-@L%@TEtmjGE(!i6}c=40R7;vLgHh_Qi+hC*{B0*1= zKL{Yxt>P3y*Ey%W>2`58l;PJW2RA2qZ^$c+tu@@Ryt(oxfg^3lm_NPI5|j1q_4J zI88KYBTXL3d6P*n4Gm6xo#=WAeZPfY#!P`QNpfm~huT)XMs1rXZJVZ059E~|m;nbt za%xVq_XpuqV1+5rqQm=kB}D~3K?D0o zCd|}f?@P>>12L}n{caHeuia)_3cwZchwmsq{6x1DLV$d=O@tjs7s@c2ubyCfyATHP zN)@|R1n0Hb;j7Gl3SL^F7B_4OMB$~;GLVZm6bpS;6J_SpbKWn=Ux;}_sE?h3%!wqd91Y* z@=$KiSMId|v~G|yU9$?#N_Zw(ne>~$V%Ne6#FOjUC-1@zWSc6WTf$=wR#pkSbokj) z=Jpo!1KQ50Opb)BOkUo^nY3I~g%%-fXA9j>3+&crSPaO4;S?K z&PnC|h88z1 zSn1CSjstVSbqko^Dfq#FE7q}}&%%XaINzxvebFi^n?a9VhY~u~fO)hx0sWZn3cL<- zVYlEBq}KP^RX8uQKtm;5gK9G7^`ENe2M|bjhb=-y`#JN7oNM}o!eQc_;dDoMjV4WUJf%WAFNjW6$bid;wJfW-e7olmUG&1N>>C$9*>#GrU&A8h+!`%ha{loBhj~d4_{DSIoyg%Zvh6K zuQp>AhH@lk+=+6?cF`Ljb;jrzRVMQ)vq7qIuBf_tVk_(-Qh-JXF__^?G4 zE(+mg%3qx0)IA#Yv@H|wV_&1%3&wl#0Px3xr>&7`O%C#BpdDmJbFdxo9v^J+4vwG7 e{SVDWUsgL8R{>r-PQ72i2xCW;_>b|}tobiBIK+AY diff --git a/_module/ncs/wp_speakspawn.ncs b/_module/ncs/wp_speakspawn.ncs index 5314119aaa252d140e93e3a45a61182405c077d9..3487810a9a58006f83224ca850a08c6e5d09e2f1 100644 GIT binary patch delta 2852 zcmZuzd014}6`yn74D)7KL_5I|C#Tdd$!;2EcZ_J z4s+{0lY8p8sa9LmkfHH9Tsfo0y~u*G%k0F`(gP!w+m{S<6ruZ2@*tr%$*lgFj60I} zzI`RxP}h?b+wY^nN(#P+D-02>f@+jq~36A9Q+Ovi^K;Q@c+8@)&NC znsXc`8lZ!$yWkt_r|G&Wn?0;9)?l7hH(ZoJA+!7~#FXg`ovQUP&AQ`P)_>HjK`kHG zT6Ag|MdS{0`Qixf?bbNlpKCm|=pjPKAqtN+lF=BX=UNZ);0@8MoIUxV|z0U9}X0qS{`#itM~DBKzg;(>4*%OT#XH+ljj)QC>SlEeI|o z_3<|Q=Z;Xs)fM)Zt5GhvVwK(PdZif`p0(HAIp`|S3|1}8gXo|(u-WS$-7?`@*X*Av z%Z!+KmNu<|cu7eOq4|+urGGKP08DYPN+bA#JgHXol%~+Aez1s*GQlq>Crwt*^tCj* z7%JIqHwecvBkAw&e>!k`4F|>h}8Zndh$ifM9)=;>O{YNs785jU`bqUC{axe7S zu7H`n8x6Gv?7gQuSm1q{8GwiBsx+RqFcD4k$w;u!wXyKNY{^$)!d}`u3T$lYNSFcW ze~eui1+{>_&$`2}oC<+-T{L*o$WrJ<+h;&eS{2H_tRujkCT|5_>RAS6x_LAh>DzCD zH_aQ*#l~uIVcBEhI!cP$fo?QjkF>s2#Y2Roczvo#Pc+6yrY8^+mMe8-6%86+$IR(FbW=`}iHLYdvXux=MX8ue94#r~paP zoo5xEcm&u|8yqv>!&)^-irnQYiVJja9@yxWOsJI~KNM*P(a1hL!@VrH1^B3vIdUN0 zfE^21KrTeO;=js70KEAlE6W2{!0*4K{Nq2gY#I2;|85dt2h)5D^dsv=2GRd6gXego zgmo>4D|&SJs4FlI+m>pzjVa(8(AJO6D&RwO?Vs$k0!RS4b*qSSjqI9jV`*>0HjuCG z7T|gdaFl}^#Fngq{UAH?gl)MxC5za`wU7+h=tbQFFh#yRTR7b#PnW0C#}jcHYg`Z0 zP;Smt&-H$^#*=SQQ4xGA;l)Afp#K0Y?mhS#@$4G*WjSm`_Td(|D`CBpZ6vVGfOT_O z&<^MVv|rSi{NpzolQlazlVjI3;hYe*uzV}(fpzVITtL>J&D;$c2CQjNL$7hciV1A= zA((H(k6zdCmTwlgyaX=FaXn-Sc4$T1GlyA^f1o~^~!%WYqUt&3)nei}> z+R6^Op(0^Ii;5{$k8!)%EpH4p;BT)Ao;WI;@e67-$gzh6;Z#AGal#MzjhevX`d}nt zOfMDfe8lKa7{4Xv1Kp8{zLGO4R24S>hAUbhBByJ8NDjjRa^x$>gmE&1J2md~@8KB8 zs>3k}aNxVVE}1}w&PF549*FmN%;79`Fn)&^`g`?b1kmCr^r4>B{DQil%gwmB5zuml zdJe-B4B=RY;Rh%OZxP+`)~4)WGJ3F_;doL)%O69y&lyctMNsYP;{%o@QSb2Nf+<1s>V_VClBO+xbcM!oDmqs56BK-VVX7bd5B zs;Fwp%P~5dgdg%8<~wZXMD&s*r|~kYPC<)=PCui!4y%g^ip delta 4455 zcmaJ@eOOdg8lU&QcV_Mk-wuc{3InAAI^f5uWQ2%TeguXZ8GfXRwyr*=Xdj!cVo^P2 z8g$IFnX9x0d*K&q{DEyTxsbk#@PTGL`th*H-E_MCGsIQSs*$K3m#`<~zL z_kNs@e>L06-n9p1PnhA#9iBWa(}Zu9?GGw)V)j=a;ye?A=|?=vhnyB&2X8EA8OEDSVmhbA70GE~2RJh3R_wU4zWMVte zj=}ul$)J1l{XpGx4WFepb-8YhrjfAAm+2%>8y)oBuh12~(# z$)8?=N_v_l;`>Q*h09@=)fLMpm<~&oPSTL<;KT`>qGbR5WJN_dIZz%>f)6?zwqk!w zK4qE_Qk5Q3hJ4UHf}vg?BKqTd{jowm!nW}E{5jnQXE;f&w2(m+!Fs@C2M;g1BHjo# zw{oz$I6B28mLuUXoGOpL})jUd&xi znh)mV-c9=V@;32ZxyHW_BfCFIMepn4gJL?h@9je`VAE&Z>aPX-PI%!_?lqB2^roVF zz8J@h&17uVn>gdF^m=lu@Zv%3i9v%F)Ko zQPBw|i~Pp3)f3M;QzsFJ5=6>-JrZ%5end^Z5b+xJMAXH@ktEMZ$+J!<^pA+^^dsV1 zg@Wv5pgI0DcP z!{q@AT)5RE?rE|hG9s%dTt3!o1$aCXmvrGS*8R!)!wxt{a%;yxBiUR#I*Ka{)tfH9 zvl(SM%E|fK0V@9*Oj^c=ue)KiymU9ZRG+|`N}teKRoRi#jg7Ob_l@oR4w7zjVs6jr zj;O#OemwG3Cx`bMlgcGgAH9|2|3O-~3M0@SDvsB|ez%Jn{mh#tPo}PM{}bQ1e;5~n zV%^_3ON~p3yd}87I9bIl18(0_hIFC2VN-V+H^>vwZQNvFu>_}U3OGQK{_cNFU(vY< zbuGo&`t86C^3e9z+oXHxr#Q&_iW|0w!P{QOTg+-4L}qLphf7W$s9TTt^kbe^J{xYq z1@WHBBm3-_Ti{uIa#sLOIpPUv%(P?1tDYG@7Fcma0c|`4nMz0MF{LOj^V zdS%7txlMGZ3d7hjGwcHF|2ccs3UfeDX47L*2L`OT+%el5#Ngl&q_etnuic|>XV?UcEsPq-nGTQhX) zL*25n1~(Lft^HP!9}p``fvaYvy_p&qZ9lMmG(G{P%X2HVHBj8)vb?DUfN_&V~z0^L!S%0agP` z&w&aX9+_xNuHQm)=D^Q%%pB;4-@MMa5dir0i)`Lpm;l`H+NPtY?qs!$iP;+|T~92wDI?o5YHrhM|ac(X3_(R0AIL z(wyzQc(sA-*iujx&1(@XYCk&r7H^Q`XW)dQu~TxatMoZ4dIq!o&%>WAxOX=jwiezo z_#y( zDfmt+yR-$CSn>7Cy1dP)taLjhsQ5-OJ6Z~-RPEK#Qd0vxUdna0e+U~@EX-mXKY}w> z?S+CnKE4NRZaG{-T(yBsWAK)OOPB z-zwTe3&j{trzPpQjQ#LE@Z0SKKH(DFr{cI8WBpYlTIq!=oVsi`r+%*qjsvDG6JG-2+D5=JVM6?Kz#jMoBKVe3#AaTH4h2(Q5j+*Z>^>+$ z9KxHS0|uHg_GMl8z!Q|OzPxEp-2xt{sU(S+*6o zffm;+KSYTQzOSEw;JB5np+9gP9RJ~I$~K6X74Q-R5G@?^17@%>ybLdjHo{|nY*`EeK~ zD!!Ya>elGt(t1wMdhiIWSA5rRu*MPi6xw{h5SdsXou7)i)U^y|v74iC9xA@pwJa|c zoeEz5R21$Jo9}8L;cIFm^ICIh>1^mv)6=lT=4+OV8Q!OB28qS|0Oo<>YvQXU9T%Z? z<&v1C?4xxN@G^UGJf`Uug}EISay`OOzcY@4GLs?9>YX4R?XUVG7kX{ k<_5I|C#Tdd$!;2EcZ_J z4s+{0lY8p8sa9LmkfHH9Tsfo0y~u*G%k0F`(gP!w+m{S<6ruZ2@*tr%$*lgFj60I} zzI`RxP}h?b+wY^nN(#P+D-02>f@+jq~36A9Q+Ovi^K;Q@c+8@)&NC znsXc`8lZ!$yWkt_r|G&Wn?0;9)?l7hH(ZoJA+!7~#FXg`ovQUP&AQ`P)_>HjK`kHG zT6Ag|MdS{0`Qixf?bbNlpKCm|=pjPKAqtN+lF=BX=UNZ);0@8MoIUxV|z0U9}X0qS{`#itM~DBKzg;(>4*%OT#XH+ljj)QC>SlEeI|o z_3<|Q=Z;Xs)fM)Zt5GhvVwK(PdZif`p0(HAIp`|S3|1}8gXo|(u-WS$-7?`@*X*Av z%Z!+KmNu<|cu7eOq4|+urGGKP08DYPN+bA#JgHXol%~+Aez1s*GQlq>Crwt*^tCj* z7%JIqHwecvBkAw&e>!k`4F|>h}8Zndh$ifM9)=;>O{YNs785jU`bqUC{axe7S zu7H`n8x6Gv?7gQuSm1q{8GwiBsx+RqFcD4k$w;u!wXyKNY{^$)!d}`u3T$lYNSFcW ze~eui1+{>_&$`2}oC<+-T{L*o$WrJ<+h;&eS{2H_tRujkCT|5_>RAS6x_LAh>DzCD zH_aQ*#l~uIVcBEhI!cP$fo?QjkF>s2#Y2Roczvo#Pc+6yrY8^+mMe8-6%86+$IR(FbW=`}iHLYdvXux=MX8ue94#r~paP zoo5xEcm&u|8yqv>!&)^-irnQYiVJja9@yxWOsJI~KNM*P(a1hL!@VrH1^B3vIdUN0 zfE^21KrTeO;=js70KEAlE6W2{!0*4K{Nq2gY#I2;|85dt2h)5D^dsv=2GRd6gXego zgmo>4D|&SJs4FlI+m>pzjVa(8(AJO6D&RwO?Vs$k0!RS4b*qSSjqI9jV`*>0HjuCG z7T|gdaFl}^#Fngq{UAH?gl)MxC5za`wU7+h=tbQFFh#yRTR7b#PnW0C#}jcHYg`Z0 zP;Smt&-H$^#*=SQQ4xGA;l)Afp#K0Y?mhS#@$4G*WjSm`_Td(|D`CBpZ6vVGfOT_O z&<^MVv|rSi{NpzolQlazlVjI3;hYe*uzV}(fpzVITtL>J&D;$c2CQjNL$7hciV1A= zA((H(k6zdCmTwlgyaX=FaXn-Sc4$T1GlyA^f1o~^~!%WYqUt&3)nei}> z+R6^Op(0^Ii;5{$k8!)%EpH4p;BT)Ao;WI;@e67-$gzh6;Z#AGal#MzjhevX`d}nt zOfMDfe8lKa7{4Xv1Kp8{zLGO4R24S>hAUbhBByJ8NDjjRa^x$>gmE&1J2md~@8KB8 zs>3k}aNxVVE}1}w&PF549*FmN%;79`Fn)&^`g`?b1kmCr^r4>B{DQil%gwmB5zuml zdJe-B4B=RY;Rh%OZxP+`)~4)WGJ3F_;doL)%O69y&lyctMNsYP;{%o@QSb2Nf+<1s>V_VClBO+xbcM!oDmqs56BK-VVX7bd5B zs;Fwp%P~5dgdg%8<~wZXMD&s*r|~kYPC<)=PCui!4y%g^ip delta 4455 zcmaJ@eOOdg8lU&QcV_Mk-wuc{3InAAI^f5uWQ2%TeguXZ8GfXRwyr*=Xdj!cVo^P2 z8g$IFnX9x0d*K&q{DEyTxsbk#@PTGL`th*H-E_MCGsIQSs*$K3m#`<~zL z_kNs@e>L06-n9p1PnhA#9iBWa(}Zu9?GGw)V)j=a;ye?A=|?=vhnyB&2X8EA8OEDSVmhbA70GE~2RJh3R_wU4zWMVte zj=}ul$)J1l{XpGx4WFepb-8YhrjfAAm+2%>8y)oBuh12~(# z$)8?=N_v_l;`>Q*h09@=)fLMpm<~&oPSTL<;KT`>qGbR5WJN_dIZz%>f)6?zwqk!w zK4qE_Qk5Q3hJ4UHf}vg?BKqTd{jowm!nW}E{5jnQXE;f&w2(m+!Fs@C2M;g1BHjo# zw{oz$I6B28mLuUXoGOpL})jUd&xi znh)mV-c9=V@;32ZxyHW_BfCFIMepn4gJL?h@9je`VAE&Z>aPX-PI%!_?lqB2^roVF zz8J@h&17uVn>gdF^m=lu@Zv%3i9v%F)Ko zQPBw|i~Pp3)f3M;QzsFJ5=6>-JrZ%5end^Z5b+xJMAXH@ktEMZ$+J!<^pA+^^dsV1 zg@Wv5pgI0DcP z!{q@AT)5RE?rE|hG9s%dTt3!o1$aCXmvrGS*8R!)!wxt{a%;yxBiUR#I*Ka{)tfH9 zvl(SM%E|fK0V@9*Oj^c=ue)KiymU9ZRG+|`N}teKRoRi#jg7Ob_l@oR4w7zjVs6jr zj;O#OemwG3Cx`bMlgcGgAH9|2|3O-~3M0@SDvsB|ez%Jn{mh#tPo}PM{}bQ1e;5~n zV%^_3ON~p3yd}87I9bIl18(0_hIFC2VN-V+H^>vwZQNvFu>_}U3OGQK{_cNFU(vY< zbuGo&`t86C^3e9z+oXHxr#Q&_iW|0w!P{QOTg+-4L}qLphf7W$s9TTt^kbe^J{xYq z1@WHBBm3-_Ti{uIa#sLOIpPUv%(P?1tDYG@7Fcma0c|`4nMz0MF{LOj^V zdS%7txlMGZ3d7hjGwcHF|2ccs3UfeDX47L*2L`OT+%el5#Ngl&q_etnuic|>XV?UcEsPq-nGTQhX) zL*25n1~(Lft^HP!9}p``fvaYvy_p&qZ9lMmG(G{P%X2HVHBj8)vb?DUfN_&V~z0^L!S%0agP` z&w&aX9+_xNuHQm)=D^Q%%pB;4-@MMa5dir0i)`Lpm;l`H+NPtY?qs!$iP;+|T~92wDI?o5YHrhM|ac(X3_(R0AIL z(wyzQc(sA-*iujx&1(@XYCk&r7H^Q`XW)dQu~TxatMoZ4dIq!o&%>WAxOX=jwiezo z_#y( zDfmt+yR-$CSn>7Cy1dP)taLjhsQ5-OJ6Z~-RPEK#Qd0vxUdna0e+U~@EX-mXKY}w> z?S+CnKE4NRZaG{-T(yBsWAK)OOPB z-zwTe3&j{trzPpQjQ#LE@Z0SKKH(DFr{cI8WBpYlTIq!=oVsi`r+%*qjsvDG6JG-2+D5=JVM6?Kz#jMoBKVe3#AaTH4h2(Q5j+*Z>^>+$ z9KxHS0|uHg_GMl8z!Q|OzPxEp-2xt{sU(S+*6o zffm;+KSYTQzOSEw;JB5np+9gP9RJ~I$~K6X74Q-R5G@?^17@%>ybLdjHo{|nY*`EeK~ zD!!Ya>elGt(t1wMdhiIWSA5rRu*MPi6xw{h5SdsXou7)i)U^y|v74iC9xA@pwJa|c zoeEz5R21$Jo9}8L;cIFm^ICIh>1^mv)6=lT=4+OV8Q!OB28qS|0Oo<>YvQXU9T%Z? z<&v1C?4xxN@G^UGJf`Uug}EISay`OOzcY@4GLs?9>YX4R?XUVG7kX{ k<1z3Jff4AO;I717}`&d~!y7Vsa`gP=ZN;0RWpG27>?q literal 0 HcmV?d00001 diff --git a/_module/ncs/x0_ch_hen_combat.ncs b/_module/ncs/x0_ch_hen_combat.ncs new file mode 100644 index 0000000000000000000000000000000000000000..12959eaf142ca61c971bbde253e44ff61a7b43d4 GIT binary patch literal 506 zcmZvY%S*#R5XL93(h5TDL42Tw;;D*Qa`EUU-P&T4lq5cSaY!FNKtm6Tz3YGLMZ`mq zLY>`2iN!t4vdnM3@0<0U&^)gn9NGZN*EY~8nxGr7nmpqmei+AhHwg~=I2>KaPxp`1 zsVsCR<9ZF`WO)xZVLqQvrNa89g`SVDf96HJfsXImEW##dkpb`lR4lcs?Fh>W$*%Q@ z@31gJ7DdcC#crz?wjI{d3j#4fDXD}lCxo@SX!E8Y@V~tcA;CHUXN}&1Zw}lNas^e> zHM+|(_*Ir;H^s=NB$m9zcwkY^qMDyMPM598kM5K_2{)mZ~V?!$6lGH`Byx2D-dIL0>YZ%f8I2NcKHrr!vz~I+x~?6#PR~QYv3f F_yz$AbtM1* literal 0 HcmV?d00001 diff --git a/_module/ncs/x0_ch_hen_conv.ncs b/_module/ncs/x0_ch_hen_conv.ncs new file mode 100644 index 0000000000000000000000000000000000000000..2fda87c3219a11e07e226ddec204047a6e2535f8 GIT binary patch literal 258495 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

L=+D4U#-DhJ_- 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 BR=)rM literal 0 HcmV?d00001 diff --git a/_module/ncs/x0_ch_hen_rest.ncs b/_module/ncs/x0_ch_hen_rest.ncs new file mode 100644 index 0000000000000000000000000000000000000000..19d68e352a1c9f8d3f1a4ea696909f15527dce78 GIT binary patch literal 47 xcmeZs4ps;=)H85mU|`Uf0}>1z3Jff4AO;I717}`&d~!y7VsauYP=ZN;0RWo*27dqm literal 0 HcmV?d00001 diff --git a/_module/ncs/xx_pc_1_hb.ncs b/_module/ncs/xx_pc_1_hb.ncs index bb550269d6229c09647ae63276068f30505544db..f1feac4b112454f64211264050ea0aab9f2d9aa2 100644 GIT binary patch delta 1431 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 delta 3401 zcmb_edsviZ7XQxq=7z(-+<@US!vJy-MFF`e0)hrehJd>5R-}sx2&otd(ek9Cx!D?u zy_>JurkHE$`lQeZZ)|GTdZ{%N)NC_BuoY2}OONTUrL*sRGvfB_zdL_?^S$SOe&?L` ze8=~xKiR9+%$h#O`gF|r=xG98nA)tFt-!_WNueSFyM7?i3O}-2;f38N$zjC`c!|U) zW3lHuPWL4%l|D*Ypum4^B-PCnV2qZD`~cEZCW75=?-yhiK|rH7X;+%SK)P$aNTZvX z^sBUFtjY}WBwJ-xP8>1f3-bw#GNB=Z>{R)}SkhB#bSXr^BI4&}h6QAjn+5e7xtuSo zaM(rtvo5(5{Ot~M#m$PkYmyn=X^F3E9P{9WBs{R|OdPGp-Y-+199GQX2ouv7e5#2r` zIR$&r{haM?!5DyfHtW1V^by}0x*V< z;RXXudz<_9xMqYjk~eRRXRFhLq{Katx-#qk+f!WHNJt~-OO(qFz=g@8RH7kgi6q9) zJdoxL1IbC()8yB9Aqp17Ln}?!fDc(xq$16Wro&kZw|N6CD^d_cQ98CPdvwmm7By)r z3WaOrN>Ml*AR$4(Gd3z9EhbqjBiK{NSNxd{hFlG|s(fg7Z~ ze4@A?Mbc30jYD`(VA2>TW^;v9_q_YBk6|+?X8(Z<3&o zthTa4#ei!^Io`<+ExT|{hD2tqr2rrE*W+-PKZA&}?LAx-Bk@kR4M)H>a^z|jCg$4| z-+PJhE(z#01=Os4oOGHqX=!fl_L@?X*K5L>TvFB>i!bZQ_FiAOF6BzT>Yd>oJwfWq zLJ26|m5w|MV`$x%7))kekH@4ZsI>--WOb#U?7vNn%8SlfYqD`4hxw)We1 z6mWyqm%v!HJzwvdtJjGo)`y-v33@tM0#A^|KOVz(f@$4T5J1{9qv*vp@SsP_Kx^B4 zH%28+Tj)-Qbl_*Z^6;;KLE~HA0X_zsNcSXPnpTX-EJg-eH{R4S{@_oa*T9$XmGsUs zJRnPkGslfaxPG|{;`MvjydxkNab32HvTily6o1xu3~nN>33id! zJmVyv`Wt*G;>w9mUn`$w`%giX58R@Klh8m{ck#x*-vu$^PwrM)-UWd)=L+nDGb3yb z^XY~wa*Uf#xA(#C*~(rBL}+9DPyt|Ld?X71C;W=0zryWxJ^^Z4e+x2T_`e9lx1bJZ zE#a4|fwYTi;`cyJmp=_Ew!0se0G67VVE|-+i}loZ5bk4%H}x8V!#Mpnr2V#;4GqC; znJUyE-Dl(J%&UCpihhL2@DbbbqeE|WprcC?$idAj_WfNrFDe@)+1KcVW$4Q;-iJ=3 za+izr{2Vl~bDnrigFmgMe>7v-ltI@u5&UR@N&n7!_Q8W(X}JYN2{MIaAOC_kk$PG% z0b^=emIcSkc|?^Vcm{YErHA5dpmg~Jw9-SN_!4YoG569V?s&a4&hJVbs zn_7TQ)*p=qgyXFfF&FT54b6|kEf_q_5ltxdh{s;I;GkJ(Tnt9D=?TbZ`Y*ID5vO5b zF*}inIzY=D+MLYITD<8%GRD!L6VXHqCu0?Mui{(ThYn6gEgavHgdzSL9xn~oYH)7U zhoLXh)Fd=nLx250yWx>U3jd0d(_=|!#4y97^$(F>YVBLr8uIm#&7hrI0Zk4w@A9$pDeW~X;&mF z-9DEV;)BZzX<;hP#mgGXQgIINYxPw8mjZQRRG!HTc-~QpNV+ByQ}H_``z#ZiP}Y$b zERyC+23r3Dy3;Yq{NY$d>|i!_NN~>NaH@+P{>RboJbvT-dnVq)QIkh%mJGcP!?6yA ziEYY3JHY2un~OoLDHjt(JhhD7n2pKa*c{EmOR)&x@2tKIPXHcR&gL$`RySy)FCIY) z8&i$%$?=FMJ5!5i+|ZULZH4XvK3!}b&P;%B9}_Hx9c@v&bc8}VWg8oP6wPYb#-@FN swMss?N87OtHzqi+HIlplIeW7M+W_BKKy%LHVc1P|XVFM47x4Z60A{#?a{vGU diff --git a/_module/ncs/xx_pc_e_blocked.ncs b/_module/ncs/xx_pc_e_blocked.ncs index 42b3db3910387a6ac94cdece055c45a2e3cdbe07..35b29c34281071222a200b41f69c72babcf90eec 100644 GIT binary patch delta 1108 zcmaJVFefC=W{CcVe`qb!( zbyaEG3-b#~BzOW3qC0)KO1Iw1@DBQzLUvVn_k3tk$PO1B9wdVFyNq_kw%k7M9m(T|;~tZ!_EZ zg58MJLU30Q#@q{$L|-0^sduOFagv%Tb6yi>kFfvSEya+*X|$5WJW0RT9ym@&n;9JQkF>NSt!V(F8iDUWJufd*&^eP3?`C%kkz~2DMH6A|ei6<{xT1 z%{2s;9QMBA*Y-8kXwKQ<=TS}C)EbFeW#g_Awbf{TpaqUl?b zn9m6do9o0n6wSmZoN$wok7l9_$C*7F4s2${*~pR|88W@o6USP!(T)Z^Vi9Vhk;U3t zk*c3BLITM3w|dtKw1SMa>B%m10Q*?)DxAY1wq!MaVwLV(gEtBq^+`A0$(Dyfh@RV?;4(wV0f*V*7HJR;qnMMmeDoCxB6f9-67K6U|_M85q@WqS`}KC6`x z9?QRGD*rtt8^VGgxQL$7;^{uETABXS^@R3mcJ6pC)8f|&^t%>L-{xENZjwg3PC delta 876 zcmb_ZTT4_?6h7bHGsh8|ab$+k)O2(j#}U#bi8L)Qp&2PgnpTq7b9TX^FtjAPXjbY* zcV$*SL>gJyq$j&zK@t^#MnRfMLXe0LKA4(W)1EWsFK9pP_3gdBwZ3&(cr4F8lJ&V6 zTdmvTV^^k2Xg%DeZyJCf+j1$=)jz;BWcw@Et`8L&QrOLghl0tDn`~ythGZ5zoP|IZ zF%ZU%58F|sq89?K^&pq-)2xA{JY|?Lll7ynzzIWAFuf2Wx!vxCWs*2D(Q34koR(dZ zpO(cMbWs74pDkQCsFhF(!JFb$%Mr=590*|+ivi#G0SBBayvqmeu;?YbNa0g{sH|+? z-f|XTG2saBa3IFR;q49>8?NZ|4sS9^P^ESjaKohYXcJ0gHl~=_@5{b6DrA=!tsZr$ zN2Sk68r6Q4G#ZZ=tZ#P^|CI+F=6JjvfeGV(8Pndx@UzL@1PN;3q&JX`3sni?Du&s{ z2a8~4$BbHLEHERLb-j!Tm;L|hdUgJ(s&-1!{D0l3)Wrf9=db>ZsGTHIbxBj~d8~== zuZ52FID**R7ZcBkMhqDZV-a~vd1Ev-;)x2UqmfBI?^JPt6WL-w*PO6x-$hc{%G;bU z@ewDC^j0KgZJj38>to=?7*t|bIUj>!J#O>97KACjYhVFs%2y&1g_Dd?<$4ktA=bVs z87DBwm1KO!Go>>HZ#9@#j;3Rfk~0n^Hxrqw@sXnn-F#Cex=F_#MLah9lJvrcY74VI z&?#l75lU#w2ANlvB9xa<==i-FvCcQVw+07E>pC7+D=1g}S?X&Gw`N1Hi0(6hd3LUQ z1s^+$lcXY!yX!=$r|Qs8NmMD%smC4MR~G8=19+&+G{T3HW(RjS!G)iSs~J{;Vdecr HL~H*5Q>z*r diff --git a/_module/nss/0e_c2_7_ondeath.nss b/_module/nss/0e_c2_7_ondeath.nss index 129e81ec..7d9570eb 100644 --- a/_module/nss/0e_c2_7_ondeath.nss +++ b/_module/nss/0e_c2_7_ondeath.nss @@ -11,17 +11,19 @@ void main() object oCreature = OBJECT_SELF; // Added code to allow for permanent associates in the battle! object oModule = GetModule(); + if(AI_DEBUG) ai_Debug("0e_c2_7_ondeath", "14", "AI_RULE_PERM_ASSOC: " + IntToString(GetLocalInt(oModule, AI_RULE_PERM_ASSOC))); if(GetLocalInt(oModule, AI_RULE_PERM_ASSOC)) { object oAssociate; int nIndex; - for(nIndex = 1; nIndex < 5; nIndex++) + for(nIndex = 2; nIndex < 6; nIndex++) { oAssociate = GetAssociate(nIndex, oCreature); if(oAssociate != OBJECT_INVALID) { - SetIsDestroyable(FALSE, FALSE, FALSE); + SetIsDestroyable(FALSE, FALSE, FALSE, oAssociate); DelayCommand(0.1, ChangeToStandardFaction(oAssociate, STANDARD_FACTION_HOSTILE)); + DelayCommand(3.0, SetIsDestroyable(TRUE, FALSE, FALSE, oAssociate)); } } } diff --git a/_module/nss/0e_ch_7_ondeath.nss b/_module/nss/0e_ch_7_ondeath.nss index 76d955df..bb365524 100644 --- a/_module/nss/0e_ch_7_ondeath.nss +++ b/_module/nss/0e_ch_7_ondeath.nss @@ -17,13 +17,14 @@ void main() { object oAssociate; int nIndex; - for(nIndex = 2; nIndex < 5; nIndex++) + for(nIndex = 2; nIndex < 6; nIndex++) { oAssociate = GetAssociate(nIndex, oCreature); if(oAssociate != OBJECT_INVALID) { - SetIsDestroyable(FALSE, FALSE, FALSE); - ChangeFaction(oAssociate, oCreature); + SetIsDestroyable(FALSE, FALSE, FALSE, oAssociate); + DelayCommand(0.1, ChangeToStandardFaction(oAssociate, STANDARD_FACTION_HOSTILE)); + DelayCommand(3.0, SetIsDestroyable(TRUE, FALSE, FALSE, oAssociate)); } } } diff --git a/_module/nss/0e_id_events.nss b/_module/nss/0e_id_events.nss new file mode 100644 index 00000000..c68e74c9 --- /dev/null +++ b/_module/nss/0e_id_events.nss @@ -0,0 +1,277 @@ +/*////////////////////////////////////////////////////////////////////////////// +// Script Name: 0e_id_events +//////////////////////////////////////////////////////////////////////////////// + Infinite Dungeons monster event handler. +*/////////////////////////////////////////////////////////////////////////////// +#include "0i_actions" +#include "x0_i0_assoc" +// Followers special heartbeat script. +void ai_hen_id1_heart(object oCreature); +// Followers special conversation script. +void ai_hen_id1_convo(object oCreature, int nMatch); +// Followers special perception script. +void ai_hen_id1_percept(object oCreature); +// Followers special end of round script. +void ai_hen_id1_endcombat(object oCreature, int bFollower); +// Followers special castat script. +void ai_hen_id1_castat(object oCreature); + +void main() +{ + object oCreature = OBJECT_SELF; + int nEvent = GetCurrentlyRunningEvent(); + int bFollower = GetLocalInt(oCreature, "bFollower"); + //WriteTimestampedLogEntry("0e_id_events [24] " + GetName(oCreature) + " nEvent: " + IntToString(nEvent) + + // " bFollower: " + IntToString(bFollower)); + switch (nEvent) + { + case EVENT_SCRIPT_CREATURE_ON_HEARTBEAT: + { + if(bFollower) ai_hen_id1_heart(oCreature); + else ExecuteScript("nw_c2_default1", oCreature); + break; + } + case EVENT_SCRIPT_CREATURE_ON_NOTICE: + { + if(bFollower) ai_hen_id1_percept(oCreature); + else ExecuteScript("nw_c2_default2", oCreature); + break; + } + case EVENT_SCRIPT_CREATURE_ON_DIALOGUE: + { + int nMatch = GetListenPatternNumber(); + if(nMatch == -1) + { + if(ai_GetIsBusy(oCreature) || ai_Disabled(oCreature) || + GetLocalInt(oCreature, AI_AM_I_SEARCHING)) return; + ai_ClearCreatureActions(); + string sConversation = GetLocalString(oCreature, "sConversation"); + if(sConversation != "") BeginConversation(sConversation); + else BeginConversation(); + } + if(bFollower) ai_hen_id1_convo(oCreature, nMatch); + else ExecuteScript("nw_c2_default4", oCreature); + break; + } + case EVENT_SCRIPT_CREATURE_ON_MELEE_ATTACKED: + { + if(bFollower) ExecuteScript("nw_ch_ac5", oCreature); + else ExecuteScript("nw_c2_default5", oCreature); + break; + } + case EVENT_SCRIPT_CREATURE_ON_DAMAGED: + { + if(bFollower) ExecuteScript("nw_ch_ac6", oCreature); + else ExecuteScript("nw_c2_default6", oCreature); + break; + } + case EVENT_SCRIPT_CREATURE_ON_SPELLCASTAT: + { + if(bFollower) ai_hen_id1_castat(oCreature); + else ExecuteScript("nw_c2_defaultb", oCreature); + break; + } + case EVENT_SCRIPT_CREATURE_ON_END_COMBATROUND: + { + ai_hen_id1_endcombat(oCreature, bFollower); + break; + } + case EVENT_SCRIPT_CREATURE_ON_BLOCKED_BY_DOOR: + { + if(bFollower) ExecuteScript("nw_ch_ace", oCreature); + else ExecuteScript("nw_c2_defaulte", oCreature); + break; + } + case EVENT_SCRIPT_CREATURE_ON_RESTED: + { + if(bFollower) ExecuteScript("nw_ch_aca", oCreature); + break; + } + case EVENT_SCRIPT_CREATURE_ON_DISTURBED: + { + if(bFollower) ExecuteScript("nw_ch_ac8", oCreature); + else ExecuteScript("nw_c2_default8", oCreature); + break; + } + case EVENT_SCRIPT_CREATURE_ON_DEATH: + { + if(bFollower) ExecuteScript("nw_ch_ac7", oCreature); + else + { + ExecuteScript("nw_c2_default7", oCreature); + } + break; + } + } +} + +void ai_hen_id1_heart(object oCreature) +{ + // Sometimes they slip out of this mode! + if(GetAssociateState(NW_ASC_MODE_DYING, oCreature) && + GetCommandable()) + { + ActionPlayAnimation(ANIMATION_LOOPING_DEAD_FRONT, 1.0, 65.0); + SetCommandable(FALSE); + } + ExecuteScript("nw_ch_ac1", oCreature); +} +void ai_hen_id1_convo(object oCreature, int nMatch) +{ + if(nMatch == ASSOCIATE_COMMAND_INVENTORY) + { + // * cannot modify disabled equipment + if(!GetLocalInt(OBJECT_SELF, "X2_JUST_A_DISABLEEQUIP")) + { + OpenInventory(oCreature, GetLastSpeaker()); + } + // * feedback as to why + else SendMessageToPCByStrRef(GetMaster(), 100895); + return; + } + else if(nMatch == ASSOCIATE_COMMAND_LEAVEPARTY) + { + object oMaster = GetMaster(); + string sTag = GetTag(GetArea(oMaster)); + // * henchman cannot be kicked out in the reaper realm + // * Followers can never be kicked out + if (sTag == "GatesofCania" || GetIsFollower(oCreature)) return; + if(GetIsObjectValid(oMaster)) + { + ai_ClearCreatureActions(); + if(GetAssociateType(oCreature) == ASSOCIATE_TYPE_HENCHMAN) + { + string sConversation = GetLocalString(oCreature, "sConversation"); + if (sConversation == "id1_plotgiver") + { + string sVariable = GetLocalString(oCreature, "sVariable"); + object oDungeon = GetLocalObject(GetModule(), "oCurrentDungeon"); + SetLocalInt(oDungeon, "b" + sVariable + "Gone", FALSE); + } + RemoveHenchman(oMaster); + DestroyObject(oCreature); + } + } + return; + } + ExecuteScript("nw_ch_ac4", oCreature); +} +void ai_hen_id1_percept(object oCreature) +{ + // If henchman is dying and Player disappears then force a respawn of the henchman + if (GetIsHenchmanDying(oCreature)) + { + // The henchman must be removed otherwise their corpse will follow the player + object oOldMaster = GetMaster(); + object oPC = GetLastPerceived(); + int bVanish = GetLastPerceptionVanished(); + if(GetIsObjectValid(oPC) && bVanish) + { + if (oPC == oOldMaster) + { + RemoveHenchman(oPC, oCreature); + // Only in chapter 1 + if(GetTag(GetModule()) == "x0_module1") + { + SetCommandable(TRUE); + DoRespawn(oPC, oCreature); // Should teleport henchman back + } + } + } + } + ExecuteScript("nw_ch_ac2", oCreature); +} +void ai_hen_id1_endcombat(object oCreature, int bFollower) +{ + if (ai_GetIsInCombat(oCreature)) + { + int nNum; + int nLine; + string sString; + int nCreature; + int bIntelligent; + int nRandom = d100(); + // chance of a oneliner + int nOnelinerPercentage = GetLocalInt(GetModule(), "nFlagCombatOneLinerFrequencyValue"); + if(nRandom <= nOnelinerPercentage) + { + string sCreature = GetLocalString(oCreature, "sVariable"); + // if the current creature is hostile towards PCs + if(sCreature != "") + { + object oDungeon = GetLocalObject(GetModule(), "oCurrentDungeon"); + if(GetIsReactionTypeHostile(GetFirstPC())) + { + nCreature = GetLocalInt(oDungeon, "n" + sCreature); + bIntelligent = GetLocalInt(oDungeon, "bListCreature" + IntToString(nCreature) + "Intelligent"); + if(bIntelligent) + { + nNum = GetLocalInt(GetModule(), "nLinesHostileNum"); + nLine = Random(nNum) + 1; + if(nLine > 0) + { + sString = GetLocalString(GetModule(), "sLinesHostile" + IntToString(nLine)); + SpeakString(sString, TALKVOLUME_SHOUT); + } + } + } + else + { + nCreature = GetLocalInt(oDungeon, "n" + sCreature); + bIntelligent = GetLocalInt(oDungeon, "bListCreature" + IntToString(nCreature) + "Intelligent"); + if(bIntelligent) + { + nNum = GetLocalInt(GetModule(), "nLinesAlliesNum"); + nLine = Random(nNum) + 1; + if (nLine > 0) + { + sString = GetLocalString(GetModule(), "sLinesAllies" + IntToString(nLine)); + SpeakString(sString, TALKVOLUME_SHOUT); + } + } + } + } + } + } + if(bFollower) ExecuteScript("nw_ch_ac3", oCreature); + else ExecuteScript("nw_c2_default3", oCreature); +} +void ai_hen_id1_castat(object oCreature) +{ + if(!GetLastSpellHarmful()) + { + int nSpell = GetLastSpell(); + if(nSpell == SPELL_RAISE_DEAD || nSpell == SPELL_RESURRECTION) + { + object oCaster = GetLastSpellCaster(); + // Restore faction to neutral + SetStandardFactionReputation(STANDARD_FACTION_MERCHANT, 100, oCaster); + SetStandardFactionReputation(STANDARD_FACTION_COMMONER, 100, oCaster); + SetStandardFactionReputation(STANDARD_FACTION_DEFENDER, 100, oCaster); + ClearPersonalReputation(oCaster, oCreature); + AssignCommand(oCreature, SurrenderToEnemies()); + AssignCommand(oCreature, ai_ClearCreatureActions(TRUE)); + // Reset henchmen attack state - Oct 28 (BK) + ai_SetAIMode(oCreature, AI_MODE_DEFEND_MASTER, FALSE); + ai_SetAIMode(oCreature, AI_MODE_STAND_GROUND, FALSE); + ai_SetAIMode(oCreature, AI_MODE_SCOUT_AHEAD, FALSE); + ai_SetAIMode(oCreature, AI_MODE_SCOUT_AHEAD, FALSE); + ai_SetAIMode(oCreature, AI_MODE_COMMANDED, FALSE); + // Oct 30 - If player previously hired this hench + // then just have them rejoin automatically + if(GetPlayerHasHired(oCaster, oCreature)) + { + // Feb 11, 2004 - Jon: Don't fire the HireHenchman function if the + // henchman is already oCaster's associate. Fixes a silly little problem + // that occured when you try to raise a henchman who wasn't actually dead. + if(GetMaster(oCreature)!= oCaster) HireHenchman(oCaster, oCreature, TRUE); + } + else + { + string sFile = GetDialogFileToUse(oCaster); + AssignCommand(oCaster, ActionStartConversation(oCreature, sFile)); + } + } + } + ExecuteScript("nw_ch_acb", oCreature); +} diff --git a/_module/nss/0e_nui.nss b/_module/nss/0e_nui.nss index 7d18c65e..aa5dd967 100644 --- a/_module/nss/0e_nui.nss +++ b/_module/nss/0e_nui.nss @@ -1311,7 +1311,8 @@ void main() jWidget = JsonArray(); if(JsonGetLength(jSpells) == 2) jSpells = JsonArrayInsert(jSpells, JsonArray()); } - if(JsonGetLength(jWidget) < 20) + int nWidgetLength = JsonGetLength(jWidget); + if(nWidgetLength < 20) { json jData = NuiGetUserData(oPC, nToken); json jQuickListArray = JsonArrayGet(jData, 1); @@ -1320,8 +1321,7 @@ void main() jSpells = JsonArraySet(jSpells, 2, jWidget); jAIData = JsonArraySet(jAIData, 10, jSpells); ai_SetAssociateDbJson(oPC, sAssociateType, "aidata", jAIData); - DelayCommand(0.0, NuiDestroy(oPC, nToken)); - DelayCommand(0.1, ai_CreateQuickWidgetSelectionNUI(oPC, oAssociate)); + ai_PopulateWidgetList(oPC, oAssociate, nToken, jWidget); } else ai_SendMessages("The quick widget can only have 20 abilities or spells!", AI_COLOR_RED, oPC); } @@ -1331,7 +1331,7 @@ void main() json jSpell = JsonArrayGet(jQuickListArray, nIndex); ai_CreateDescriptionNUI(oPC, jSpell); } - else if(GetStringLeft(sElem, 11) == "btn_widget_") + else if(GetStringLeft(sElem, 11) == "btn_widget_") // Removes ability from quick use widget { string sIndex; if(GetStringLength(sElem) == 13) sIndex = GetStringRight(sElem, 2); @@ -1343,8 +1343,7 @@ void main() jSpells = JsonArraySet(jSpells, 2, jWidget); jAIData = JsonArraySet(jAIData, 10, jSpells); ai_SetAssociateDbJson(oPC, sAssociateType, "aidata", jAIData); - DelayCommand(0.0, NuiDestroy(oPC, nToken)); - DelayCommand(0.1, ai_CreateQuickWidgetSelectionNUI(oPC, oAssociate)); + ai_PopulateWidgetList(oPC, oAssociate, nToken, jWidget); } } else if(sEvent == "close") @@ -1393,23 +1392,22 @@ void main() int nClass = GetClassByPosition(JsonGetInt(JsonArrayGet(jSpells, 0)), oAssociate); int nLevel = JsonGetInt(JsonArrayGet(jSpells, 1)); json jSpellArray = JsonArrayGet(jData, 1); + int nSpell = JsonGetInt(JsonArrayGet(jSpellArray, nIndex)); + string sClass = GetStringByStrRef(StringToInt(Get2DAString("classes", "Name", nClass))); + string sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + string sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); + int nSlot; int nMaxMemorizationSlot = GetMemorizedSpellCountByLevel(oAssociate, nClass, nLevel); - int nSlot, nSpell; + string sSlot; while(nSlot < nMaxMemorizationSlot) { if(GetMemorizedSpellId(oAssociate, nClass, nLevel, nSlot) == -1) { - nSpell = JsonGetInt(JsonArrayGet(jSpellArray, nIndex)); SetMemorizedSpell(oAssociate, nClass, nLevel, nSlot, nSpell, FALSE); - //NuiDestroy(oPC, nToken); - //ai_CreateSpellMemorizationNUI(oPC, oAssociate); - string sClass = GetStringByStrRef(StringToInt(Get2DAString("classes", "Name", nClass))); - string sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); - string sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); - string sIndex = IntToString(nSlot); - NuiSetBind(oPC, nToken, "btn_memorized_" + sIndex + "_event", JsonBool(TRUE)); - NuiSetBind(oPC, nToken, "btn_memorized_" + sIndex + "_image", JsonString(sSpellIcon)); - NuiSetBind(oPC, nToken, "btn_memorized_" + sIndex + "_tooltip", JsonString(" " + sName + " (" + sClass + " / " + IntToString(nLevel) + ")")); + sSlot = IntToString(nSlot); + NuiSetBind(oPC, nToken, "btn_memorized_" + sSlot + "_event", JsonBool(TRUE)); + NuiSetBind(oPC, nToken, "btn_memorized_" + sSlot + "_image", JsonString(sSpellIcon)); + NuiSetBind(oPC, nToken, "btn_memorized_" + sSlot + "_tooltip", JsonString(" " + sName + " (" + sClass + " / " + IntToString(nLevel) + ")")); return; } nSlot++; @@ -1422,19 +1420,17 @@ void main() int nSpell = JsonGetInt(JsonArrayGet(jSpellArray, nIndex)); ai_CreateDescriptionNUI(oPC, JsonArray(), nSpell); } - else if(GetStringLeft(sElem, 14) == "btn_memorized_") + else if(GetStringLeft(sElem, 14) == "btn_memorized_") // Remove memorized spell. { json jAIData = ai_GetAssociateDbJson(oPC, sAssociateType, "aidata"); json jSpells = JsonArrayGet(jAIData, 10); int nClass = GetClassByPosition(JsonGetInt(JsonArrayGet(jSpells, 0)), oAssociate); int nLevel = JsonGetInt(JsonArrayGet(jSpells, 1)); - string sIndex = GetStringRight(sElem, 1); - ClearMemorizedSpell(oAssociate, nClass, nLevel, StringToInt(sIndex)); - NuiSetBind(oPC, nToken, "btn_memorized_" + sIndex + "_image", JsonString("ctl_cg_btn_splvl")); - NuiSetBind(oPC, nToken, "btn_memorized_" + sIndex + "_tooltip", JsonString("")); - NuiSetBind(oPC, nToken, "btn_memorized_" + sIndex + "_event", JsonBool(FALSE)); - //NuiDestroy(oPC, nToken); - //ai_CreateSpellMemorizationNUI(oPC, oAssociate); + string sSlot = GetStringRight(sElem, 1); + ClearMemorizedSpell(oAssociate, nClass, nLevel, StringToInt(sSlot)); + NuiSetBind(oPC, nToken, "btn_memorized_" + sSlot + "_image", JsonString("ctl_cg_btn_splvl")); + NuiSetBind(oPC, nToken, "btn_memorized_" + sSlot + "_tooltip", JsonString("")); + NuiSetBind(oPC, nToken, "btn_memorized_" + sSlot + "_event", JsonBool(FALSE)); } } else if(sEvent == "close") @@ -1500,6 +1496,7 @@ void main() jKnownList = JsonArray(); } int nMaxKnownSlots, nSlot; + string sClass, sName, sSpellIcon, sSlot; string sSpellKnownTable = Get2DAString("classes", "SpellKnownTable", nClass); if(sSpellKnownTable != "") nMaxKnownSlots = StringToInt(Get2DAString(sSpellKnownTable, "SpellLevel" + sLevel, GetLevelByClass(nClass, oAssociate) - 1)); else nMaxKnownSlots = 20; @@ -1511,13 +1508,13 @@ void main() jSpell = GffAddWord(JsonObject(), "Spell", nSpell); jSpell = JsonObjectSet(jSpell, "__struct_id", JsonInt(3)); jKnownList = JsonArrayInsert(jKnownList, jSpell); - string sClass = GetStringByStrRef(StringToInt(Get2DAString("classes", "Name", nClass))); - string sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); - string sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); - string sIndex = IntToString(nSlot); - NuiSetBind(oPC, nToken, "btn_known_" + sIndex + "_event", JsonBool(TRUE)); - NuiSetBind(oPC, nToken, "btn_known_" + sIndex + "_image", JsonString(sSpellIcon)); - NuiSetBind(oPC, nToken, "btn_known_" + sIndex + "_tooltip", JsonString(" " + sName + " (" + sClass + " / " + sLevel + ")")); + sClass = GetStringByStrRef(StringToInt(Get2DAString("classes", "Name", nClass))); + sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); + sSlot = IntToString(nSlot); + NuiSetBind(oPC, nToken, "btn_known_" + sSlot + "_event", JsonBool(TRUE)); + NuiSetBind(oPC, nToken, "btn_known_" + sSlot + "_image", JsonString(sSpellIcon)); + NuiSetBind(oPC, nToken, "btn_known_" + sSlot + "_tooltip", JsonString(" " + sName + " (" + sClass + " / " + sLevel + ")")); SetLocalInt(oAssociate, "AI_KNOWN_SPELL_CHANGE", TRUE); break; } diff --git a/_module/nss/0i_constants.nss b/_module/nss/0i_constants.nss index 5413ac4d..bb7dbe82 100644 --- a/_module/nss/0i_constants.nss +++ b/_module/nss/0i_constants.nss @@ -7,7 +7,7 @@ Changes to any constants will not take effect until the scripts are recompiled. */////////////////////////////////////////////////////////////////////////////// -const string PHILOS_VERSION = "Philos' Enhancing Player System (PEPS) version:07.12.25"; +const string PHILOS_VERSION = "Philos' Enhancing Player System (PEPS) version:07.20.25"; // The following constants are designed to be changed to allow the AI to work // differently based on what a developer wants. // If you change these constants make sure the database has been removed diff --git a/_module/nss/0i_main.nss b/_module/nss/0i_main.nss index a0a46741..e32aa716 100644 --- a/_module/nss/0i_main.nss +++ b/_module/nss/0i_main.nss @@ -121,9 +121,8 @@ void ai_SetAIRules() json jRules = ai_GetCampaignDbJson("rules"); if(JsonGetType(JsonObjectGet(jRules, AI_RULE_MORAL_CHECKS)) == JSON_TYPE_NULL) { - jRules = JsonObject(); // Variable name set to a creatures full name to set debugging on. - jRules = JsonObjectSet(jRules, AI_RULE_DEBUG_CREATURE, JsonString("")); + jRules = JsonObjectSet(JsonObject(), AI_RULE_DEBUG_CREATURE, JsonString("")); // Moral checks on or off. SetLocalInt(oModule, AI_RULE_MORAL_CHECKS, AI_MORAL_CHECKS); jRules = JsonObjectSet(jRules, AI_RULE_MORAL_CHECKS, JsonInt(AI_MORAL_CHECKS)); @@ -702,28 +701,48 @@ void ai_CheckAssociateDataAndInitialize(object oPlayer, string sAssociateType) string ai_GetAssociateType(object oPlayer, object oAssociate) { if(GetIsPC(oAssociate)) return "pc"; + int nIndex = 1; string sAITag = GetLocalString(oAssociate, AI_TAG); + object oCreature; if(sAITag == "") { int nAssociateType = GetAssociateType(oAssociate); - if(nAssociateType == ASSOCIATE_TYPE_ANIMALCOMPANION) sAITag = "companion"; - else if(nAssociateType == ASSOCIATE_TYPE_FAMILIAR) sAITag = "familiar"; - else if(nAssociateType == ASSOCIATE_TYPE_SUMMONED) sAITag = "summons"; - else if(nAssociateType == ASSOCIATE_TYPE_DOMINATED) sAITag = "dominated"; - else if(nAssociateType == ASSOCIATE_TYPE_HENCHMAN) sAITag = GetTag(oAssociate); - string sCurrentAITag; - // Check for duplicate tags and change. - int nIndex; - object oCreature; - for(nIndex = 1; nIndex <= AI_MAX_HENCHMAN; nIndex++) + if(nAssociateType == ASSOCIATE_TYPE_HENCHMAN) { + sAITag = GetTag(oAssociate); oCreature = GetAssociate(ASSOCIATE_TYPE_HENCHMAN, oPlayer, nIndex); - if(oAssociate != oCreature && sAITag == GetTag(oCreature)) sAITag += IntToString(Random(1000)); + // Check for duplicate tags and change. + while(nIndex <= AI_MAX_HENCHMAN && oCreature != OBJECT_INVALID) + { + if(oAssociate != oCreature && sAITag == GetTag(oCreature)) + { + sAITag += IntToString(Random(1000)); + break; + } + oCreature = GetAssociate(ASSOCIATE_TYPE_HENCHMAN, oPlayer, ++nIndex); + } } - for(nIndex = 2; nIndex < 6; nIndex++) + else if(nAssociateType == ASSOCIATE_TYPE_SUMMONED) { - oCreature = GetAssociate(nIndex, oPlayer, 1); - if(oAssociate != oCreature && sAITag == GetTag(oCreature)) sAITag += IntToString(Random(1000)); + int nCounter; + sAITag = GetTag(oAssociate); + oCreature = GetAssociate(ASSOCIATE_TYPE_SUMMONED, oPlayer, nIndex); + while(nIndex <= 10 && oCreature != OBJECT_INVALID) + { + if(oAssociate != oCreature && sAITag == GetTag(oCreature)) + { + nCounter++; + sAITag += IntToString(nCounter); + nIndex = 0; + } + oCreature = GetAssociate(ASSOCIATE_TYPE_SUMMONED, oPlayer, ++nIndex); + } + } + else + { + if(nAssociateType == ASSOCIATE_TYPE_ANIMALCOMPANION) sAITag = "companion"; + else if(nAssociateType == ASSOCIATE_TYPE_FAMILIAR) sAITag = "familiar"; + else if(nAssociateType == ASSOCIATE_TYPE_DOMINATED) sAITag = "dominated"; } SetLocalString(oAssociate, AI_TAG, sAITag); } @@ -773,7 +792,7 @@ float ai_GetAssociateDbFloat(object oPlayer, string sAssociatetype, string sData } void ai_SetAssociateDbJson(object oPlayer, string sAssociateType, string sDataField, json jData, string sTable = AI_TABLE) { - //SendMessageToPC(oPlayer, "0i_main, 629, Set DbJson - sAssociateType: " + sAssociateType + " sDataField: " + sDataField + " jData: " + JsonDump(jData)); + //SendMessageToPC(oPlayer, "0i_main, 777, Set DbJson - sAssociateType: " + sAssociateType + " sDataField: " + sDataField + " jData: " + JsonDump(jData)); string sQuery = "UPDATE " + sTable + " SET " + sDataField + " = @data WHERE name = @name;"; sqlquery sql = SqlPrepareQueryObject(oPlayer, sQuery); @@ -783,7 +802,7 @@ void ai_SetAssociateDbJson(object oPlayer, string sAssociateType, string sDataFi } json ai_GetAssociateDbJson(object oPlayer, string sAssociateType, string sDataField, string sTable = AI_TABLE) { - //SendMessageToPC(oPlayer, "0i_main, 638, Get DbJson - sAssociateType: " + sAssociateType + " sDataField: " + sDataField); + //SendMessageToPC(oPlayer, "0i_main, 787, Get DbJson - sAssociateType: " + sAssociateType + " sDataField: " + sDataField); string sQuery = "SELECT " + sDataField + " FROM " + sTable + " WHERE name = @name;"; sqlquery sql = SqlPrepareQueryObject(oPlayer, sQuery); SqlBindString (sql, "@name", sAssociateType); @@ -1082,7 +1101,7 @@ void ai_CheckAssociateData(object oPlayer, object oAssociate, string sAssociateT // These are pulled straight from the database. // ********** Locations ********** json jLocations = ai_GetAssociateDbJson(oPlayer, sAssociateType, "locations"); - if(JsonGetType(JsonObjectGet(jLocations, AI_WIDGET_NUI)) == JSON_TYPE_NULL) + if(JsonGetType(JsonObjectGet(jLocations, sAssociateType + AI_WIDGET_NUI)) == JSON_TYPE_NULL) { ai_SetupLocations(oPlayer, oAssociate, sAssociateType); } diff --git a/_module/nss/0i_menus.nss b/_module/nss/0i_menus.nss index 8d6834ce..756797cb 100644 --- a/_module/nss/0i_menus.nss +++ b/_module/nss/0i_menus.nss @@ -26,6 +26,8 @@ int ai_GetAIButton2(object oPlayer, int nButton, object oAssociate, string sAsso json ai_CreateCompanionJson(object oPC, string sCompanion2da); // Return any Metamagic or Domain attributes to place on a spell icon image. string ai_GetSpellIconAttributes(object oCaster, int nMetaMagic, int nDomain); +// Populates the Quick widget list menu. +void ai_PopulateWidgetList(object oPC, object oAssociate, int nToken, json jWidget); // Creates the AI options menu. void ai_CreateAIMainNUI(object oPC); // Creates the AI options menu. @@ -129,6 +131,211 @@ string ai_GetSpellIconAttributes(object oCaster, int nMetaMagic, int nDomain) if(nDomain > 0) sAttributeText += "D"; return sAttributeText; } +void ai_PopulateWidgetList(object oPC, object oAssociate, int nToken, json jWidget) +{ + int nSAIndex, nSpell, nClass, nFeat, nBaseItemType, nIprpSubType, nUses; + int nLevel, nMetaMagic, nDomain, nIndex; + string sIndex, sBaseName, sName, sSpellIcon, sText, sClass, sMetaMagicText; + object oItem; + json jSpell; + while(nIndex < 10) + { + jSpell = JsonArrayGet(jWidget, nIndex); + sIndex = IntToString(nIndex); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(TRUE)); + if(JsonGetType(jSpell) != JSON_TYPE_NULL) + { + nSpell = JsonGetInt(JsonArrayGet(jSpell, 0)); + nClass = JsonGetInt(JsonArrayGet(jSpell, 1)); + nFeat = JsonGetInt(JsonArrayGet(jSpell, 5)); + if(nClass == -1) // This is an Item. + { + sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + nBaseItemType = JsonGetInt(JsonArrayGet(jSpell, 3)); + nIprpSubType = JsonGetInt(JsonArrayGet(jSpell, 4)); + if(nSpell == SPELL_HEALINGKIT) + { + sName = "Healer's Kit +" + IntToString(nIprpSubType); + sSpellIcon = "isk_heal"; + sBaseName = "Healer's Kit"; + } + else if(nBaseItemType == BASE_ITEM_ENCHANTED_SCROLL || + nBaseItemType == BASE_ITEM_SCROLL || + nBaseItemType == BASE_ITEM_SPELLSCROLL) + { + sSpellIcon = Get2DAString("iprp_spells", "Icon", nIprpSubType); + sBaseName = "Scroll"; + } + else + { + if(nBaseItemType == BASE_ITEM_ENCHANTED_POTION || + nBaseItemType == BASE_ITEM_POTIONS) sBaseName = "Potion"; + else if(nBaseItemType == BASE_ITEM_ENCHANTED_WAND || + nBaseItemType == BASE_ITEM_MAGICWAND || + nBaseItemType == FEAT_CRAFT_WAND) sBaseName = "Wand"; + else sBaseName = ai_StripColorCodes(GetName(GetObjectByUUID(JsonGetString(JsonArrayGet(jSpell, 5))))); + sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); + } + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); + oItem = GetObjectByUUID(JsonGetString(JsonArrayGet(jSpell, 5))); + nUses = ai_GetItemUses(oItem, nIprpSubType); + if(nUses) + { + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(TRUE)); + if(nUses == 999) sText = "Unlimited"; + else sText = IntToString(nUses); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (" + sBaseName + " / " + sText + ")")); + } + } + else if(nFeat) // This is a feat. + { + sSpellIcon = ""; + if(nSpell) + { + sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); + } + if(sSpellIcon == "" || sSpellIcon == "IR_USE") + { + sName = GetStringByStrRef(StringToInt(Get2DAString("feat", "FEAT", nFeat))); + sSpellIcon = Get2DAString("feat", "ICON", nFeat); + } + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName)); + } + else // This is a spell. + { + sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + sClass = GetStringByStrRef(StringToInt(Get2DAString("classes", "Name", nClass))); + nLevel = JsonGetInt(JsonArrayGet(jSpell, 2)); + nMetaMagic = JsonGetInt(JsonArrayGet(jSpell, 3)); + nDomain = JsonGetInt(JsonArrayGet(jSpell, 4)); + sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); + if(nClass == 255) + { + nSAIndex = JsonGetInt(JsonArrayGet(jSpell, 6)); + sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (Special Ability / " + IntToString(nLevel) + ")")); + } + else + { + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (" + sClass + " / " + IntToString(nLevel) + ")")); + sMetaMagicText = ai_GetSpellIconAttributes(oAssociate, nMetaMagic, nDomain); + NuiSetBind(oPC, nToken, "metamagic_" + sIndex + "_text", JsonString(sMetaMagicText)); + } + } + } + else + { + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString("ctl_cg_btn_splvl")); + NuiSetBind(oPC, nToken, "metamagic_" + sIndex + "_text", JsonString("")); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(FALSE)); + } + ++nIndex; + } + if(nIndex < 10) return; + // Row 6 Quick widget List2 + while(nIndex < 20) + { + jSpell = JsonArrayGet(jWidget, nIndex); + sIndex = IntToString(nIndex); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(TRUE)); + if(JsonGetType(jSpell) != JSON_TYPE_NULL) + { + nSpell = JsonGetInt(JsonArrayGet(jSpell, 0)); + nClass = JsonGetInt(JsonArrayGet(jSpell, 1)); + nFeat = JsonGetInt(JsonArrayGet(jSpell, 5)); + if(nClass == -1) // This is an Item. + { + string sBaseName; + sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + int nBaseItemType = JsonGetInt(JsonArrayGet(jSpell, 3)); + int nIprpSubType = JsonGetInt(JsonArrayGet(jSpell, 4)); + if(nSpell == SPELL_HEALINGKIT) + { + sName = "Healer's Kit +" + IntToString(nIprpSubType); + sSpellIcon = "isk_heal"; + sBaseName = "Healer's Kit"; + } + else if(nBaseItemType == BASE_ITEM_ENCHANTED_SCROLL || + nBaseItemType == BASE_ITEM_SCROLL || + nBaseItemType == BASE_ITEM_SPELLSCROLL) + { + sSpellIcon = Get2DAString("iprp_spells", "Icon", nIprpSubType); + sBaseName = "Scroll"; + } + else + { + if(nBaseItemType == BASE_ITEM_ENCHANTED_POTION || + nBaseItemType == BASE_ITEM_POTIONS) sBaseName = "Potion"; + else if(nBaseItemType == BASE_ITEM_ENCHANTED_WAND || + nBaseItemType == BASE_ITEM_MAGICWAND || + nBaseItemType == FEAT_CRAFT_WAND) sBaseName = "Wand"; + else sBaseName = ai_StripColorCodes(GetName(GetObjectByUUID(JsonGetString(JsonArrayGet(jSpell, 5))))); + sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); + } + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); + oItem = GetObjectByUUID(JsonGetString(JsonArrayGet(jSpell, 5))); + int nUses = ai_GetItemUses(oItem, nIprpSubType); + if(nUses) + { + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(TRUE)); + if(nUses == 999) sText = "Unlimited"; + else sText = IntToString(nUses); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (" + sBaseName + " / " + sText + ")")); + } + } + else if(nFeat) // This is a feat. + { + sSpellIcon = ""; + if(nSpell) + { + sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); + } + if(sSpellIcon == "" || sSpellIcon == "IR_USE") + { + sName = GetStringByStrRef(StringToInt(Get2DAString("feat", "FEAT", nFeat))); + sSpellIcon = Get2DAString("feat", "ICON", nFeat); + } + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName)); + } + else // This is a spell. + { + sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + sClass = GetStringByStrRef(StringToInt(Get2DAString("classes", "Name", nClass))); + nLevel = JsonGetInt(JsonArrayGet(jSpell, 2)); + nMetaMagic = JsonGetInt(JsonArrayGet(jSpell, 3)); + sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); + if(nClass == 255) + { + nSAIndex = JsonGetInt(JsonArrayGet(jSpell, 6)); + if(GetSpellAbilityReady(oAssociate, nSAIndex)) + { + sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (Special Ability / " + IntToString(nLevel) + ")")); + } + } + else + { + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (" + sClass + " / " + IntToString(nLevel) + ")")); + sMetaMagicText = ai_GetSpellIconAttributes(oAssociate, nMetaMagic, nDomain); + NuiSetBind(oPC, nToken, "metamagic_" + sIndex + "_text", JsonString(sMetaMagicText)); + } + } + } + else + { + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString("ctl_cg_btn_splvl")); + NuiSetBind(oPC, nToken, "metamagic_" + sIndex + "_text", JsonString("")); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(FALSE)); + } + ++nIndex; + } +} void ai_CreateAIMainNUI(object oPC) { // Set window to not save until it has been created. @@ -1174,6 +1381,7 @@ void ai_CreateAssociateAINUI(object oPC, object oAssociate) SetLocalInt (oPC, AI_NO_NUI_SAVE, TRUE); DelayCommand (2.0, DeleteLocalInt (oPC, AI_NO_NUI_SAVE)); int bRight, bLeft; + int nAssociateType = GetAssociateType(oAssociate); float fHeight = 45.0; // ************************************************************************* Width / Height int bIsPC = ai_GetIsCharacter(oAssociate); @@ -1436,7 +1644,7 @@ void ai_CreateAssociateAINUI(object oPC, object oAssociate) jRow = JsonArrayInsert(jRow, NuiSpacer()); if(bLeft) { - if(sAssociateType != "summons" && sAssociateType != "dominated") + if(nAssociateType != ASSOCIATE_TYPE_SUMMONED && nAssociateType != ASSOCIATE_TYPE_DOMINATED) { jRow = CreateButton(jRow, "Auto Looting", "btn_loot", 200.0, 20.0, -1.0, "btn_loot_tooltip"); jRow = CreateCheckBox(jRow, "", "chbx_loot", 25.0, 20.0); @@ -1751,7 +1959,7 @@ void ai_CreateAssociateAINUI(object oPC, object oAssociate) if(ai_GetMagicMode(oAssociate, AI_MAGIC_CURE_SPELLS_OFF)) sText = " Cast Cure Spells Off"; else sText = " Cast Cure Spells On"; NuiSetBind(oPC, nToken, "btn_cure_onoff_tooltip", JsonString(sText)); - if(sAssociateType != "summons" && sAssociateType != "dominated") + if(nAssociateType != ASSOCIATE_TYPE_SUMMONED && nAssociateType != ASSOCIATE_TYPE_DOMINATED) { sRange = FloatToString(GetLocalFloat(oAssociate, AI_LOOT_CHECK_RANGE), 0, 0); if(ai_GetAIMode(oAssociate, AI_MODE_PICKUP_ITEMS)) sText = " Looting On [" + sRange + " meters]"; @@ -2238,7 +2446,7 @@ void ai_SetWidgetBinds(object oPC, object oAssociate, string sAssociateType, int object oItem; if(JsonGetType(jWidget) != JSON_TYPE_NULL) { - int nLevel, nSpell, nIndex, nClass, nMetaMagic, nDomain, nSubSpell, nFeat; + int nLevel, nSpell, nIndex, nClass, nMetaMagic, nDomain, nSubSpell, nFeat, nSAIndex; string sSpellIcon, sMetaMagicText, sSubSpell, sClass, sIndex; while(nIndex < 10) { @@ -2319,14 +2527,20 @@ void ai_SetWidgetBinds(object oPC, object oAssociate, string sAssociateType, int nSpell = JsonGetInt(JsonArrayGet(jSpell, 0)); nClass = JsonGetInt(JsonArrayGet(jSpell, 1)); nLevel = JsonGetInt(JsonArrayGet(jSpell, 2)); - nDomain = JsonGetInt(JsonArrayGet(jSpell, 4)); nMetaMagic = JsonGetInt(JsonArrayGet(jSpell, 3)); + nDomain = JsonGetInt(JsonArrayGet(jSpell, 4)); sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(TRUE)); NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); sMetaMagicText = ai_GetSpellIconAttributes(oAssociate, nMetaMagic, nDomain); NuiSetBind(oPC, nToken, "metamagic_" + sIndex + "_text", JsonString(sMetaMagicText)); - if(GetSpellUsesLeft(oAssociate, nClass, nSpell, nMetaMagic, nDomain)) + nSAIndex = JsonGetInt(JsonArrayGet(jSpell, 6)); + if(nClass == 255 && GetSpellAbilityReady(oAssociate, nSAIndex)) + { + sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (Special Ability / " + IntToString(nLevel) + ")")); + } + else if(GetSpellUsesLeft(oAssociate, nClass, nSpell, nMetaMagic, nDomain)) { sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); sClass = GetStringByStrRef(StringToInt(Get2DAString("classes", "Name", nClass))); @@ -2419,8 +2633,8 @@ void ai_SetWidgetBinds(object oPC, object oAssociate, string sAssociateType, int { nSpell = JsonGetInt(JsonArrayGet(jSpell, 0)); nClass = JsonGetInt(JsonArrayGet(jSpell, 1)); - nDomain = JsonGetInt(JsonArrayGet(jSpell, 4)); nMetaMagic = JsonGetInt(JsonArrayGet(jSpell, 3)); + nDomain = JsonGetInt(JsonArrayGet(jSpell, 4)); sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); //SendMessageToPC(oPC, GetName(oAssociate) + " nSpell: " + IntToString(nSpell) + // " nClass: " + IntToString(nClass) + " nMetaMagic: " + IntToString(nMetaMagic) + @@ -2431,15 +2645,20 @@ void ai_SetWidgetBinds(object oPC, object oAssociate, string sAssociateType, int NuiSetBind(oPC, nToken, "metamagic_" + sIndex + "_text", JsonString(sMetaMagicText)); sSubSpell = Get2DAString("spells", "Master", nSpell); if(sSubSpell != "") nSpell = StringToInt(sSubSpell); - if(nDomain == -1 || GetSpellUsesLeft(oAssociate, nClass, nSpell, nMetaMagic, nDomain)) + if(nClass == 255) + { + nSAIndex = JsonGetInt(JsonArrayGet(jSpell, 6)); + if(GetSpellAbilityReady(oAssociate, nSAIndex)) + { + sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (Special Ability / " + IntToString(nLevel) + ")")); + } + } + else if(GetSpellUsesLeft(oAssociate, nClass, nSpell, nMetaMagic, nDomain)) { sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); - if(nDomain == -1) NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName)); - else - { - sClass = GetStringByStrRef(StringToInt(Get2DAString("classes", "Name", nClass))); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (" + sClass + " / " + IntToString(nLevel) + ")")); - } + sClass = GetStringByStrRef(StringToInt(Get2DAString("classes", "Name", nClass))); + NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (" + sClass + " / " + IntToString(nLevel) + ")")); } else NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(FALSE)); } @@ -2876,7 +3095,6 @@ void ai_CreateWidgetNUI(object oPC, object oAssociate) } // Get the window location to restore it from the database. json jLocations = ai_GetAssociateDbJson(oPC, sAssociateType, "locations"); - //SendMessageToPC(oPC, "0i_menu, 2124, sAssociateType: " + sAssociateType + " jLocations: " + JsonDump(jLocations, 1)); if(JsonGetType(jLocations) == JSON_TYPE_NULL) { ai_SetupAssociateData(oPC, oAssociate, sAssociateType); @@ -2885,14 +3103,16 @@ void ai_CreateWidgetNUI(object oPC, object oAssociate) jLocations = JsonObjectGet(jLocations, sAssociateType + AI_WIDGET_NUI); float fX = JsonGetFloat(JsonObjectGet(jLocations, "x")); float fY = JsonGetFloat(JsonObjectGet(jLocations, "y")); + //SendMessageToPC(oPC, "0i_menu, 2901, sAssociateType: " + sAssociateType + AI_WIDGET_NUI + " jLocations: " + JsonDump(jLocations, 1)); // Keeps the widgets from bunching up in the top corner. if(fY == 0.0 && fX == 0.0) { + int nAssociateType = GetAssociateType(oAssociate); if(sAssociateType == "pc") fY = 1.0; - else if(sAssociateType == "familiar") fY = 96.0 * fScale; - else if(sAssociateType == "companion") fY = 192.0 * fScale; - else if(sAssociateType == "summons") fY = 288.0 * fScale; - else if(sAssociateType == "dominated") fY = 384.0 * fScale; + else if(nAssociateType == ASSOCIATE_TYPE_FAMILIAR) fY = 96.0 * fScale; + else if(nAssociateType == ASSOCIATE_TYPE_ANIMALCOMPANION) fY = 192.0 * fScale; + else if(nAssociateType == ASSOCIATE_TYPE_SUMMONED) fY = 288.0 * fScale; + else if(nAssociateType == ASSOCIATE_TYPE_DOMINATED) fY = 384.0 * fScale; else { int nIndex = 1; @@ -3178,24 +3398,34 @@ void ai_CreateCopySettingsNUI(object oPC, object oAssociate) jRow = JsonArrayInsert(jRow, NuiSpacer()); // Add row to the column. jCol = JsonArrayInsert(jCol, NuiRow(jRow)); - // Row 4 ******************************************************************* 244 / 185 - jRow = JsonArrayInsert(JsonArray(), NuiSpacer()); - jRow = CreateButton(jRow, "Summons", "btn_paste_summons", 220.0, 20.0); - jRow = JsonArrayInsert(jRow, NuiSpacer()); - // Add row to the column. - jCol = JsonArrayInsert(jCol, NuiRow(jRow)); - // Row 5 ******************************************************************* 244 / 213 + // Row 4 ******************************************************************* 244 / 213 jRow = JsonArrayInsert(JsonArray(), NuiSpacer()); jRow = CreateButton(jRow, "Dominated", "btn_paste_dominated", 220.0, 20.0); jRow = JsonArrayInsert(jRow, NuiSpacer()); // Add row to the column. jCol = JsonArrayInsert(jCol, NuiRow(jRow)); - // Row 5+ ****************************************************************** 244 / 241 - float fHeight = 241.0; + // Row 5+ ******************************************************************* 244 / 185 + float fHeight = 213.0; int nIndex; string sAssocName; object oAssoc; for(nIndex = 1; nIndex < AI_MAX_HENCHMAN; nIndex++) + { + oAssoc = GetAssociate(ASSOCIATE_TYPE_SUMMONED, oPC, nIndex); + if(oAssoc != OBJECT_INVALID) + { + sAssocName = GetName(oAssoc); + if(GetStringRight(sAssocName, 1) == "s") sAssocName = sAssocName + "'"; + else sAssocName = sAssocName + "'s"; + jRow = CreateButton(JsonArray(), sAssocName, "btn_paste_summons" + IntToString(nIndex), 220.0, 20.0); + // Add row to the column. + jCol = JsonArrayInsert(jCol, NuiRow(jRow)); + fHeight += 28.0; + } + else break; + } + // Row 5+ ****************************************************************** 244 / 241 + for(nIndex = 1; nIndex < AI_MAX_HENCHMAN; nIndex++) { oAssoc = GetAssociate(ASSOCIATE_TYPE_HENCHMAN, oPC, nIndex); if(oAssoc != OBJECT_INVALID) @@ -3661,7 +3891,7 @@ void ai_CreateQuickWidgetSelectionNUI(object oPC, object oAssociate) { if(StringToInt(Get2DAString("classes", "SpellCaster", nClass))) { - int nClassLevel = GetLevelByClass(nClass, oAssociate); + int nClassLevel = ai_GetCasterTotalLevel(oAssociate, nClass); string sSpellsGained = Get2DAString("classes", "SpellGainTable", nClass); int nMaxSpellLevel = StringToInt(Get2DAString(sSpellsGained, "NumSpellLevels", nClassLevel - 1)); for(nLevelIndex = 0; nLevelIndex <= 9; nLevelIndex++) @@ -3741,8 +3971,8 @@ void ai_CreateQuickWidgetSelectionNUI(object oPC, object oAssociate) jQuickListArray = ai_CheckItemAbilities(jQuickListArray, oAssociate, oItem, jSpell_Icon, jSpell_Text, FALSE); jSpell_Icon = GetLocalJson(oAssociate, "JSPELL_ICON"); jSpell_Text = GetLocalJson(oAssociate, "JSPELL_NAME"); - WriteTimestampedLogEntry("0i_menus, 3643, oAssociate: " + GetName(oAssociate) + - " jSpell_Text: " + JsonDump(jSpell_Text, 4)); + //WriteTimestampedLogEntry("0i_menus, 3643, oAssociate: " + GetName(oAssociate) + + // " jSpell_Text: " + JsonDump(jSpell_Text, 4)); } } oItem = GetNextItemInInventory(oAssociate); @@ -3811,9 +4041,9 @@ void ai_CreateQuickWidgetSelectionNUI(object oPC, object oAssociate) jSpell = JsonArray(); jSpell = JsonArrayInsert(jSpell, JsonInt(nSubSpell)); jSpell = JsonArrayInsert(jSpell, JsonInt(nClass)); - jSpell = JsonArrayInsert(jSpell, JsonInt(0)); - jSpell = JsonArrayInsert(jSpell, JsonInt(255)); - jSpell = JsonArrayInsert(jSpell, JsonInt(0)); + jSpell = JsonArrayInsert(jSpell, JsonInt(-1)); // Level + jSpell = JsonArrayInsert(jSpell, JsonInt(255)); // MetaMagic + jSpell = JsonArrayInsert(jSpell, JsonInt(0)); // Domain jSpell = JsonArrayInsert(jSpell, JsonInt(nFeat)); jQuickListArray = JsonArrayInsert(jQuickListArray, jSpell); } @@ -3828,9 +4058,9 @@ void ai_CreateQuickWidgetSelectionNUI(object oPC, object oAssociate) jSpell = JsonArray(); jSpell = JsonArrayInsert(jSpell, JsonInt(nSpell)); jSpell = JsonArrayInsert(jSpell, JsonInt(nClass)); - jSpell = JsonArrayInsert(jSpell, JsonInt(0)); - jSpell = JsonArrayInsert(jSpell, JsonInt(255)); - jSpell = JsonArrayInsert(jSpell, JsonInt(0)); + jSpell = JsonArrayInsert(jSpell, JsonInt(0)); // Level + jSpell = JsonArrayInsert(jSpell, JsonInt(0)); // MetaMagic + jSpell = JsonArrayInsert(jSpell, JsonInt(0)); // Domain jSpell = JsonArrayInsert(jSpell, JsonInt(nFeat)); jQuickListArray = JsonArrayInsert(jQuickListArray, jSpell); } @@ -3840,6 +4070,66 @@ void ai_CreateQuickWidgetSelectionNUI(object oPC, object oAssociate) } } } + // Checks for monsters special abilities. + int nCounter = 0, nPreviousSpell = -1, nMaxSpellAbility = GetSpellAbilityCount(oAssociate); + while(nCounter < nMaxSpellAbility) + { + nSpell = GetSpellAbilitySpell(oAssociate, nCounter); + if(nPreviousSpell != nSpell) + { + nPreviousSpell = nSpell; + // Check for subfeats. + nSubSpell = StringToInt(Get2DAString("spells", "SubRadSpell1", nSpell)); + if(nSubSpell) + { + for(nSubSpellIndex = 1; nSubSpellIndex <= 5; nSubSpellIndex++) + { + sSubSpellIndex = IntToString(nSubSpellIndex); + nSubSpell = StringToInt(Get2DAString("spells", "SubRadSpell" + sSubSpellIndex, nSpell)); + if(nSubSpell != 0) + { + sSpellIcon = Get2DAString("spells", "iConResRef", nSubSpell); + jSpell_Icon = JsonArrayInsert(jSpell_Icon, JsonString(sSpellIcon)); + sSpellName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSubSpell))); + jSpell_Text = JsonArrayInsert(jSpell_Text, JsonString(sSpellName)); + jSpell = JsonArray(); + jSpell = JsonArrayInsert(jSpell, JsonInt(nSubSpell)); + jSpell = JsonArrayInsert(jSpell, JsonInt(nClass)); + jSpell = JsonArrayInsert(jSpell, JsonInt(0)); // Level + jSpell = JsonArrayInsert(jSpell, JsonInt(255)); // MetaMagic + jSpell = JsonArrayInsert(jSpell, JsonInt(0)); // Domain + jSpell = JsonArrayInsert(jSpell, JsonInt(0)); // Feat + jQuickListArray = JsonArrayInsert(jQuickListArray, jSpell); + } + } + } + else + { + sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); + jSpell_Icon = JsonArrayInsert(jSpell_Icon, JsonString(sSpellIcon)); + sSpellName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); + jSpell_Text = JsonArrayInsert(jSpell_Text, JsonString(sSpellName)); + sMetaMagicText = ai_GetSpellIconAttributes(oAssociate, nMetaMagic, nDomain); + jMetaMagic_Text = JsonArrayInsert(jMetaMagic_Text, JsonString(sMetaMagicText)); + jSpell = JsonArray(); + jSpell = JsonArrayInsert(jSpell, JsonInt(nSpell)); + jSpell = JsonArrayInsert(jSpell, JsonInt(255)); // Class - Special abilities is always 255. + jSpell = JsonArrayInsert(jSpell, JsonInt(GetSpellAbilityCasterLevel(oAssociate, nCounter))); + jSpell = JsonArrayInsert(jSpell, JsonInt(0)); // metamagic + jSpell = JsonArrayInsert(jSpell, JsonInt(0)); // domain + jSpell = JsonArrayInsert(jSpell, JsonInt(0)); // feat + // Index of Special ability on monster. + jSpell = JsonArrayInsert(jSpell, JsonInt(nCounter)); + jQuickListArray = JsonArrayInsert(jQuickListArray, jSpell); + //SendMessageToPC(oPC, "nSpell: " + IntToString(nSpell) + + // " sSpellIcon: " + sSpellIcon + + // " sSpellName: " + sSpellName+ + // " nMaxSlot: " + IntToString(nMaxSpellAbility) + + // " nSpellAbilityIndex: " + IntToString(nCounter)); + } + } + nCounter++; + } // Used in the execution script to get the special abilities. //jData = JsonArrayInsert(jData, jQuickListArray); } @@ -3944,185 +4234,7 @@ void ai_CreateQuickWidgetSelectionNUI(object oPC, object oAssociate) NuiSetUserData(oPC, nToken, jData); // Row 4 Quick widget list label. // Row 5 Quick widget List 1 - json jWidget = JsonArrayGet(jSpells, 2); - nIndex = 0; - while(nIndex < 10) - { - jSpell = JsonArrayGet(jWidget, nIndex); - sIndex = IntToString(nIndex); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(TRUE)); - if(JsonGetType(jSpell) != JSON_TYPE_NULL) - { - nSpell = JsonGetInt(JsonArrayGet(jSpell, 0)); - nClass = JsonGetInt(JsonArrayGet(jSpell, 1)); - nFeat = JsonGetInt(JsonArrayGet(jSpell, 5)); - if(nClass == -1) // This is an Item. - { - string sBaseName; - sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); - int nBaseItemType = JsonGetInt(JsonArrayGet(jSpell, 3)); - int nIprpSubType = JsonGetInt(JsonArrayGet(jSpell, 4)); - if(nSpell == SPELL_HEALINGKIT) - { - sName = "Healer's Kit +" + IntToString(nIprpSubType); - sSpellIcon = "isk_heal"; - sBaseName = "Healer's Kit"; - } - else if(nBaseItemType == BASE_ITEM_ENCHANTED_SCROLL || - nBaseItemType == BASE_ITEM_SCROLL || - nBaseItemType == BASE_ITEM_SPELLSCROLL) - { - sSpellIcon = Get2DAString("iprp_spells", "Icon", nIprpSubType); - sBaseName = "Scroll"; - } - else - { - if(nBaseItemType == BASE_ITEM_ENCHANTED_POTION || - nBaseItemType == BASE_ITEM_POTIONS) sBaseName = "Potion"; - else if(nBaseItemType == BASE_ITEM_ENCHANTED_WAND || - nBaseItemType == BASE_ITEM_MAGICWAND || - nBaseItemType == FEAT_CRAFT_WAND) sBaseName = "Wand"; - else sBaseName = ai_StripColorCodes(GetName(GetObjectByUUID(JsonGetString(JsonArrayGet(jSpell, 5))))); - sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); - } - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); - oItem = GetObjectByUUID(JsonGetString(JsonArrayGet(jSpell, 5))); - int nUses = ai_GetItemUses(oItem, nIprpSubType); - if(nUses) - { - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(TRUE)); - if(nUses == 999) sText = "Unlimited"; - else sText = IntToString(nUses); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (" + sBaseName + " / " + sText + ")")); - } - } - else if(nFeat) // This is a feat. - { - sSpellIcon = ""; - if(nSpell) - { - sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); - sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); - } - if(sSpellIcon == "" || sSpellIcon == "IR_USE") - { - sName = GetStringByStrRef(StringToInt(Get2DAString("feat", "FEAT", nFeat))); - sSpellIcon = Get2DAString("feat", "ICON", nFeat); - } - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName)); - } - else // This is a spell. - { - sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); - sClass = GetStringByStrRef(StringToInt(Get2DAString("classes", "Name", nClass))); - nLevel = JsonGetInt(JsonArrayGet(jSpell, 2)); - nMetaMagic = JsonGetInt(JsonArrayGet(jSpell, 3)); - nDomain = JsonGetInt(JsonArrayGet(jSpell, 4)); - sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (" + sClass + " / " + IntToString(nLevel) + ")")); - sMetaMagicText = ai_GetSpellIconAttributes(oAssociate, nMetaMagic, nDomain); - NuiSetBind(oPC, nToken, "metamagic_" + sIndex + "_text", JsonString(sMetaMagicText)); - } - } - else - { - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString("ctl_cg_btn_splvl")); - NuiSetBind(oPC, nToken, "metamagic_" + sIndex + "_text", JsonString("")); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(FALSE)); - } - ++nIndex; - } - if(nIndex < 10) return; - // Row 6 Quick widget List2 - while(nIndex < 20) - { - jSpell = JsonArrayGet(jWidget, nIndex); - sIndex = IntToString(nIndex); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(TRUE)); - if(JsonGetType(jSpell) != JSON_TYPE_NULL) - { - nSpell = JsonGetInt(JsonArrayGet(jSpell, 0)); - nClass = JsonGetInt(JsonArrayGet(jSpell, 1)); - nFeat = JsonGetInt(JsonArrayGet(jSpell, 5)); - if(nClass == -1) // This is an Item. - { - string sBaseName; - sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); - int nBaseItemType = JsonGetInt(JsonArrayGet(jSpell, 3)); - int nIprpSubType = JsonGetInt(JsonArrayGet(jSpell, 4)); - if(nSpell == SPELL_HEALINGKIT) - { - sName = "Healer's Kit +" + IntToString(nIprpSubType); - sSpellIcon = "isk_heal"; - sBaseName = "Healer's Kit"; - } - else if(nBaseItemType == BASE_ITEM_ENCHANTED_SCROLL || - nBaseItemType == BASE_ITEM_SCROLL || - nBaseItemType == BASE_ITEM_SPELLSCROLL) - { - sSpellIcon = Get2DAString("iprp_spells", "Icon", nIprpSubType); - sBaseName = "Scroll"; - } - else - { - if(nBaseItemType == BASE_ITEM_ENCHANTED_POTION || - nBaseItemType == BASE_ITEM_POTIONS) sBaseName = "Potion"; - else if(nBaseItemType == BASE_ITEM_ENCHANTED_WAND || - nBaseItemType == BASE_ITEM_MAGICWAND || - nBaseItemType == FEAT_CRAFT_WAND) sBaseName = "Wand"; - else sBaseName = ai_StripColorCodes(GetName(GetObjectByUUID(JsonGetString(JsonArrayGet(jSpell, 5))))); - sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); - } - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); - oItem = GetObjectByUUID(JsonGetString(JsonArrayGet(jSpell, 5))); - int nUses = ai_GetItemUses(oItem, nIprpSubType); - if(nUses) - { - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(TRUE)); - if(nUses == 999) sText = "Unlimited"; - else sText = IntToString(nUses); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (" + sBaseName + " / " + sText + ")")); - } - } - else if(nFeat) // This is a feat. - { - sSpellIcon = ""; - if(nSpell) - { - sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); - sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); - } - if(sSpellIcon == "" || sSpellIcon == "IR_USE") - { - sName = GetStringByStrRef(StringToInt(Get2DAString("feat", "FEAT", nFeat))); - sSpellIcon = Get2DAString("feat", "ICON", nFeat); - } - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName)); - } - else // This is a spell. - { - sName = GetStringByStrRef(StringToInt(Get2DAString("spells", "Name", nSpell))); - sClass = GetStringByStrRef(StringToInt(Get2DAString("classes", "Name", nClass))); - nLevel = JsonGetInt(JsonArrayGet(jSpell, 2)); - nMetaMagic = JsonGetInt(JsonArrayGet(jSpell, 3)); - sSpellIcon = Get2DAString("spells", "IconResRef", nSpell); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString(sSpellIcon)); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_tooltip", JsonString(" " + sName + " (" + sClass + " / " + IntToString(nLevel) + ")")); - sMetaMagicText = ai_GetSpellIconAttributes(oAssociate, nMetaMagic, nDomain); - NuiSetBind(oPC, nToken, "metamagic_" + sIndex + "_text", JsonString(sMetaMagicText)); - } - } - else - { - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_image", JsonString("ctl_cg_btn_splvl")); - NuiSetBind(oPC, nToken, "metamagic_" + sIndex + "_text", JsonString("")); - NuiSetBind(oPC, nToken, "btn_widget_" + sIndex + "_event", JsonBool(FALSE)); - } - ++nIndex; - } + ai_PopulateWidgetList(oPC, oAssociate, nToken, JsonArrayGet(jSpells, 2)); } void ai_CreateSpellMemorizationNUI(object oPC, object oAssociate) { @@ -4289,7 +4401,7 @@ void ai_CreateSpellMemorizationNUI(object oPC, object oAssociate) NuiSetBind(oPC, nToken, "btn_class_" + sIndex + "_tooltip", JsonString(" " + sClass)); if(nClassSelected == nIndex) { - int nClassLevel = GetLevelByClass(nClass, oAssociate); + int nClassLevel = ai_GetCasterTotalLevel(oAssociate, nClass); string sSpellsGained = Get2DAString("classes", "SpellGainTable", nClass); int nMaxSpellLevel = StringToInt(Get2DAString(sSpellsGained, "NumSpellLevels", nClassLevel - 1)); for(nIndexLevel = 0; nIndexLevel <= 9; nIndexLevel++) @@ -4605,7 +4717,7 @@ void ai_CreateSpellKnownNUI(object oPC, object oAssociate) NuiSetBind(oPC, nToken, "btn_class_" + sIndex + "_tooltip", JsonString(" " + sClass)); if(nClassSelected == nIndex) { - nClassLevel = GetLevelByClass(nClass, oAssociate); + nClassLevel = ai_GetCasterTotalLevel(oAssociate, nClass); sSpellsGained = Get2DAString("classes", "SpellGainTable", nClass); nMaxSpellLevel = StringToInt(Get2DAString(sSpellsGained, "NumSpellLevels", nClassLevel - 1)); for(nIndexLevel = 0; nIndexLevel <= 9; nIndexLevel++) diff --git a/_module/nss/0i_spells.nss b/_module/nss/0i_spells.nss index b7b75e2e..3c064c91 100644 --- a/_module/nss/0i_spells.nss +++ b/_module/nss/0i_spells.nss @@ -69,6 +69,8 @@ struct stSpell int nMaxSlots; int nSlot; }; +// Gets the total caster levels for nClass for oCreature. +int ai_GetCasterTotalLevel(object oCreature, int nClass); // Returns TRUE if oCreature can cast nSpell from nLevel. int ai_GetCanCastSpell(object oCreature, int nSpell, int nClass, int nLevel, int nMetaMagic = 0, int nDomain = 0); // Returns TRUE if oCreature is immune to petrification. @@ -184,6 +186,23 @@ void ai_CastWidgetSpell(object oPC, object oAssociate, object oTarget, location void ai_UseWidgetFeat(object oPC, object oAssociate, object oTarget, location lLocation); // Uses the item on the current target for oAssociate. void ai_UseWidgetItem(object oPC, object oAssociate, object oTarget, location lLocation); +int ai_GetCasterTotalLevel(object oCreature, int nClass) +{ + int nIndex, nCheckClass; + int nLevel = GetLevelByClass(nClass, oCreature); + if(nClass == CLASS_TYPE_BARD || nClass == CLASS_TYPE_SORCERER || nClass == CLASS_TYPE_WIZARD) + { + for(nIndex = 1; nIndex <= AI_MAX_CLASSES_PER_CHARACTER; nIndex ++) + { + nCheckClass = GetClassByPosition(nIndex, oCreature); + if(nCheckClass == CLASS_TYPE_PALE_MASTER) + { + nLevel += (GetLevelByClass(CLASS_TYPE_PALE_MASTER, oCreature) + 1) / 2; + } + } + } + return nLevel; +} int ai_GetCanCastSpell(object oCreature, int nSpell, int nClass, int nLevel, int nMetaMagic = 0, int nDomain = 0) { int nIndex, nSpellCount, nClassPosition, nSlot, nMaxSlots, nPosition = 1; @@ -2111,13 +2130,17 @@ void ai_UseWidgetFeat(object oPC, object oAssociate, object oTarget, location lL json jWidget = JsonArrayGet(jSpells, 2); json jFeat = JsonArrayGet(jWidget, nIndex); int nFeat = JsonGetInt(JsonArrayGet(jFeat, 5)); + int nLevel = JsonGetInt(JsonArrayGet(jFeat, 2)); + // We use nLevel at -1 to denote this is a feat with a subradial spell. + int nSubSpell; + if(nLevel == -1) nSubSpell = JsonGetInt(JsonArrayGet(jFeat, 0)); if(ai_GetIsInCombat(oAssociate)) AssignCommand(oAssociate, ai_ClearCreatureActions(TRUE)); //SendMessageToPC(oPC, "0i_spells, 2104, nFeat: " + IntToString(nFeat) + " oTarget: " + GetName(oTarget)); if(!GetIsObjectValid(oTarget)) { - AssignCommand(oAssociate, ActionUseFeat(nFeat, OBJECT_INVALID, 0, lLocation)); + AssignCommand(oAssociate, ActionUseFeat(nFeat, OBJECT_INVALID, nSubSpell, lLocation)); } - else AssignCommand(oAssociate, ActionUseFeat(nFeat, oTarget)); + else AssignCommand(oAssociate, ActionUseFeat(nFeat, oTarget, nSubSpell)); } void ai_UseWidgetItem(object oPC, object oAssociate, object oTarget, location lLocation) { diff --git a/_module/nss/0i_talents.nss b/_module/nss/0i_talents.nss index fa773b9f..6728abbc 100644 --- a/_module/nss/0i_talents.nss +++ b/_module/nss/0i_talents.nss @@ -854,6 +854,8 @@ int ai_TryKnockdownFeat(object oCreature, object oTarget) } int ai_TryPolymorphSelfFeat(object oCreature) { + // Lets check to see if we should actually Polymorph? + if(GetHasFeat(FEAT_EPIC_OUTSIDER_SHAPE)) { int nSubFeat = Random(3) + 733; // 733 azer, 734 rakshasa, 735 Slaad. diff --git a/_module/nss/ai_a_default.nss b/_module/nss/ai_a_default.nss index 7540340c..6491fdf6 100644 --- a/_module/nss/ai_a_default.nss +++ b/_module/nss/ai_a_default.nss @@ -54,13 +54,6 @@ void main() if(ai_TryDivineShieldFeat(oCreature, nInMelee)) return; if(ai_TryDivineMightFeat(oCreature, nInMelee)) return; } - //************************** SKILL FEATURES ************************** - if(ai_TryAnimalEmpathy(oCreature)) return; - // ************************** CLASS FEATURES *************************** - if(ai_TryBarbarianRageFeat(oCreature)) return; - if(ai_TryBardSongFeat(oCreature)) return; - if(ai_TrySummonAnimalCompanionTalent(oCreature)) return; - if(ai_TrySummonFamiliarTalent(oCreature)) return; } // Class and Offensive single target talents. if(nDifficulty >= AI_COMBAT_EFFORTLESS) @@ -74,6 +67,17 @@ void main() if(ai_UseCreatureTalent(oCreature, AI_TALENT_RANGED, nInMelee, nMaxLevel)) return; } } + if(nDifficulty >= AI_COMBAT_MODERATE) + { + //************************** SKILL FEATURES ************************** + if(ai_TryAnimalEmpathy(oCreature)) return; + // ************************** CLASS FEATURES *************************** + if(ai_TryPolymorphSelfFeat(oCreature)) return; + if(ai_TryBarbarianRageFeat(oCreature)) return; + if(ai_TryBardSongFeat(oCreature)) return; + if(ai_TrySummonAnimalCompanionTalent(oCreature)) return; + if(ai_TrySummonFamiliarTalent(oCreature)) return; + } // PHYSICAL ATTACKS - Either we don't have talents or we are saving them. ai_DoPhysicalAttackOnBest(oCreature, nInMelee, !ai_GetAIMode(oCreature, AI_MODE_CHECK_ATTACK)); } diff --git a/_module/nss/ai_a_druid.nss b/_module/nss/ai_a_druid.nss index 6b82c260..53b9303b 100644 --- a/_module/nss/ai_a_druid.nss +++ b/_module/nss/ai_a_druid.nss @@ -17,8 +17,6 @@ void main() if(ai_TryCureConditionTalent(oCreature, nInMelee)) return; int nDifficulty = ai_GetDifficulty(oCreature); int nMaxLevel; - //************************** SKILL FEATURES ************************** - if(ai_TryAnimalEmpathy(oCreature)) return; // Check for moral and get the maximum spell level we should use. if(nDifficulty >= AI_COMBAT_EFFORTLESS) { @@ -30,7 +28,6 @@ void main() { // ************************** CLASS FEATURES *************************** if(ai_TrySummonAnimalCompanionTalent(oCreature)) return; - if(ai_TryPolymorphSelfFeat(oCreature)) return; // *************************** SPELL TALENTS *************************** if(ai_CheckForAssociateSpellTalent(oCreature, nInMelee, nMaxLevel)) return; } @@ -44,6 +41,9 @@ void main() if(ai_UseCreatureTalent(oCreature, AI_TALENT_RANGED, nInMelee, nMaxLevel)) return; } } + if(nDifficulty >= AI_COMBAT_MODERATE && ai_TryPolymorphSelfFeat(oCreature)) return; + //************************** SKILL FEATURES ************************** + if(ai_TryAnimalEmpathy(oCreature)) return; // PHYSICAL ATTACKS - Either we don't have talents or we are saving them. // ************************** Ranged feat attacks ************************** object oTarget; diff --git a/_module/nss/ai_default.nss b/_module/nss/ai_default.nss index cfe8e8f9..f84f6f7d 100644 --- a/_module/nss/ai_default.nss +++ b/_module/nss/ai_default.nss @@ -26,15 +26,11 @@ void main() //**************************** SKILL FEATURES **************************** if(ai_TryAnimalEmpathy(oCreature)) return; //**************************** CLASS FEATURES **************************** - if(ai_TryBarbarianRageFeat(oCreature)) return; - if(ai_TryBardSongFeat(oCreature)) return; - if(ai_TryTurningTalent(oCreature)) return; if(GetLocalInt(GetModule(), AI_RULE_SUMMON_COMPANIONS)) { if(ai_TrySummonFamiliarTalent(oCreature)) return; if(ai_TrySummonAnimalCompanionTalent(oCreature)) return; } - if(ai_TryPolymorphSelfFeat(oCreature)) return; //************************** DEFENSIVE TALENTS *************************** int nRound = ai_GetCurrentRound(oCreature); if(ai_TryDefensiveTalents(oCreature, nInMelee, nMaxLevel, nRound)) return; @@ -44,6 +40,11 @@ void main() // Look for a touch attack since we are in melee. if(nInMelee > 0 && ai_UseCreatureTalent(oCreature, AI_TALENT_TOUCH, nInMelee, nMaxLevel)) return; if(ai_UseCreatureTalent(oCreature, AI_TALENT_RANGED, nInMelee, nMaxLevel)) return; + //**************************** CLASS FEATURES **************************** + if(ai_TryPolymorphSelfFeat(oCreature)) return; + if(ai_TryBarbarianRageFeat(oCreature)) return; + if(ai_TryBardSongFeat(oCreature)) return; + if(ai_TryTurningTalent(oCreature)) return; // PHYSICAL ATTACKS - Either we don't have talents or we are saving them. ai_DoPhysicalAttackOnNearest(oCreature, nInMelee); } diff --git a/_module/nss/ai_druid.nss b/_module/nss/ai_druid.nss index 95cb82b5..7ec19fa4 100644 --- a/_module/nss/ai_druid.nss +++ b/_module/nss/ai_druid.nss @@ -22,8 +22,6 @@ void main() // to take advantage of them as often as possible. if(ai_UseCreatureTalent(oCreature, AI_TALENT_INDISCRIMINANT_AOE, nInMelee, nMaxLevel)) return; if(ai_UseCreatureTalent(oCreature, AI_TALENT_DISCRIMINANT_AOE, nInMelee, nMaxLevel)) return; - //**************************** SKILL FEATURES **************************** - if(ai_TryAnimalEmpathy(oCreature)) return; //**************************** CLASS FEATURES **************************** if(GetLocalInt(GetModule(), AI_RULE_SUMMON_COMPANIONS) && ai_TrySummonAnimalCompanionTalent(oCreature)) return; if(ai_TryPolymorphSelfFeat(oCreature)) return; @@ -34,6 +32,8 @@ void main() // Look for a touch attack since we are in melee. if(nInMelee > 0 && ai_UseCreatureTalent(oCreature, AI_TALENT_TOUCH, nInMelee, nMaxLevel)) return; if(ai_UseCreatureTalent(oCreature, AI_TALENT_RANGED, nInMelee, nMaxLevel)) return; + //**************************** SKILL FEATURES **************************** + if(ai_TryAnimalEmpathy(oCreature)) return; // All else fails lets see if we have any good potions. // PHYSICAL ATTACKS - Either we don't have talents or we are saving them. // ************************ RANGED ATTACKS ******************************* diff --git a/_module/nss/nui_c_storage.nss b/_module/nss/nui_c_storage.nss index db78eaa0..903e0aad 100644 --- a/_module/nss/nui_c_storage.nss +++ b/_module/nss/nui_c_storage.nss @@ -32,7 +32,7 @@ /// Local Override (int): PS_FORCE_SEARCH_BUTTON /// 1 = PS_TRUE /// -1 = PS_FALSE -const int PS_FORCE_SEARCH_BUTTON_DEFAULT = PS_TRUE; +const int PS_FORCE_SEARCH_BUTTON_DEFAULT = PS_FALSE; /// @brief Determines whether item object state is saved to the database. The /// object state includes variables and effects. @@ -51,7 +51,7 @@ const int PS_FORCE_OBJECT_STATE_DEFAULT = PS_TRUE; /// Local Override (int): PS_STORAGE_LIMIT /// -1 = PS_UNLIMITED /// Set to any positive integer to limit item storage to that amount. -const int PS_STORAGE_LIMIT_DEFAULT = 500; +const int PS_STORAGE_LIMIT_DEFAULT = 200; /// @brief Set the maximum distance (meters) a PC can travel from the container /// before the form will auto-close. @@ -61,7 +61,7 @@ const int PS_STORAGE_LIMIT_DEFAULT = 500; /// Local Override (float): PS_DISTANCE /// -1.0 = PS_UNLIMITED_DISTANCE /// Set to any positive float to limit distance to that amount. -const float PS_DISTANCE_DEFAULT = 5.0; +const float PS_DISTANCE_DEFAULT = 2.0; /// @brief Set the container access type. Container inventories can be accessed /// by two methods: exclusive and contentious. @@ -101,7 +101,7 @@ const int PS_ACCESS_TYPE_DEFAULT = PS_ACCESS_EXCLUSIVE; /// 1 = PS_CONTAINER_PUBLIC /// 2 = PS_CONTAINER_CHARACTER /// 3 = PS_CONTAINER_CDKEY -const int PS_CONTAINER_TYPE_DEFAULT = PS_CONTAINER_CDKEY; +const int PS_CONTAINER_TYPE_DEFAULT = PS_CONTAINER_PUBLIC; /// @brief Set the default container type, if the container is an item. Containers /// can be of multiple types: @@ -148,7 +148,7 @@ const int PS_OPEN_INVENTORY_DEFAULT = PS_TRUE; /// -1 = PS_UNLIMITED /// -2 = PS_NONE /// Set to any positive integer to limit gold to that amount. -const int PS_MAX_GOLD_DEFAULT = 1500000; +const int PS_MAX_GOLD_DEFAULT = 1000000; /// @note Reference these terms for the following option: /// Container: A persistent storage object in the game, such as a chest. @@ -168,7 +168,7 @@ const int PS_MAX_GOLD_DEFAULT = 1500000; /// -2 = PS_NONE /// Set to any positive integer to limit storage to that number of container /// items. -const int PS_MAX_CONTAINER_ITEMS_DEFAULT = 100; +const int PS_MAX_CONTAINER_ITEMS_DEFAULT = 10; /// @brief Determines how many items can be stored in stored container items. /// Configuration File: @@ -191,7 +191,7 @@ const int PS_MAX_CONTAINER_ITEMS_DEFAULT = 100; /// @warning Items that fail check involved with container item limitations do /// not have default messages reported to the player. The item will simply fail /// to be stored. -const int PS_MAX_CONTAINER_ITEMS_INVENTORY_DEFAULT = 1000; +const int PS_MAX_CONTAINER_ITEMS_INVENTORY_DEFAULT = 100; /// @brief Creates the form's title. /// @param oContainer The container object being used. diff --git a/_module/nss/nw_c2_default1.nss b/_module/nss/nw_c2_default1.nss index 4801a4d8..6d717da3 100644 --- a/_module/nss/nw_c2_default1.nss +++ b/_module/nss/nw_c2_default1.nss @@ -10,10 +10,8 @@ void main() { // If not runnning normal or better AI then exit for performance reasons if (GetAILevel(OBJECT_SELF) == AI_LEVEL_VERY_LOW) return; - - ExecuteScript("prc_npc_hb", OBJECT_SELF); - object oCreature = OBJECT_SELF; + ExecuteScript("prc_npc_hb", oCreature); if(AI_DEBUG) ai_Debug("nw_c2_default1", "16", GetName(oCreature) + " Heartbeat." + " OnSpawn: " + IntToString(GetLocalInt(oCreature, AI_ONSPAWN_EVENT))); // We run our OnSpawn in the heartbeat so the creator can use the original diff --git a/_module/nss/nw_c2_default2.nss b/_module/nss/nw_c2_default2.nss index b7d5e074..fa6f5f82 100644 --- a/_module/nss/nw_c2_default2.nss +++ b/_module/nss/nw_c2_default2.nss @@ -16,7 +16,7 @@ void main() // * if not runnning normal or better AI then exit for performance reasons //if (GetAILevel() == AI_LEVEL_VERY_LOW) return; object oCreature = OBJECT_SELF; - ExecuteScript("prc_npc_percep", OBJECT_SELF); + ExecuteScript("prc_npc_percep", oCreature); if(AI_DEBUG) ai_Debug("nw_c2_default2", "19", "AI_ONSPAWN_EVENT: " + IntToString(GetLocalInt(oCreature, AI_ONSPAWN_EVENT))); if(!GetLocalInt(oCreature, AI_ONSPAWN_EVENT)) return; if(GetLastPerceptionSeen()) diff --git a/_module/nss/nw_c2_default3.nss b/_module/nss/nw_c2_default3.nss index 567b327f..6e364125 100644 --- a/_module/nss/nw_c2_default3.nss +++ b/_module/nss/nw_c2_default3.nss @@ -17,7 +17,7 @@ void main() { object oCreature = OBJECT_SELF; - ExecuteScript("prc_npc_combat", OBJECT_SELF); + ExecuteScript("prc_npc_combat", oCreature); if(AI_DEBUG) ai_Debug("nw_c2_default3", "20", GetName(oCreature) + " ends combat round." + " Current action: " + IntToString(GetCurrentAction(oCreature))); if(GetSpawnInCondition(NW_FLAG_END_COMBAT_ROUND_EVENT)) diff --git a/_module/nss/nw_c2_default4.nss b/_module/nss/nw_c2_default4.nss index cd1f6160..38603f10 100644 --- a/_module/nss/nw_c2_default4.nss +++ b/_module/nss/nw_c2_default4.nss @@ -12,7 +12,7 @@ void ai_MonsterCommands(object oCreature, object oSpeaker, int nMatch); void main() { object oCreature = OBJECT_SELF; - ExecuteScript("prc_npc_conv", OBJECT_SELF); + ExecuteScript("prc_npc_conv", oCreature); if(AI_DEBUG) ai_Debug("nw_c2_default4", "15", GetName(oCreature) + " listens " + IntToString(GetListenPatternNumber()) + " to " + GetName(GetLastSpeaker()) + "." + " AI_AM_I_SEARCHING: " + IntToString(GetLocalInt(oCreature, AI_AM_I_SEARCHING))); diff --git a/_module/nss/nw_c2_default5.nss b/_module/nss/nw_c2_default5.nss index acc3b3ed..c2e663dd 100644 --- a/_module/nss/nw_c2_default5.nss +++ b/_module/nss/nw_c2_default5.nss @@ -10,7 +10,7 @@ void main() { object oCreature = OBJECT_SELF; - ExecuteScript("prc_npc_physatt", OBJECT_SELF); + ExecuteScript("prc_npc_physatt", oCreature); object oAttacker = GetLastAttacker(oCreature); if(AI_DEBUG) ai_Debug("nw_c2_default5", "14", GetName(oCreature) + " was attacked by " + GetName(oAttacker) + "."); diff --git a/_module/nss/nw_c2_default6.nss b/_module/nss/nw_c2_default6.nss index 53478420..60aef49b 100644 --- a/_module/nss/nw_c2_default6.nss +++ b/_module/nss/nw_c2_default6.nss @@ -13,9 +13,7 @@ void main() { object oCreature = OBJECT_SELF; - - ExecuteScript("prc_npc_damaged", OBJECT_SELF); - + ExecuteScript("prc_npc_damaged", oCreature); // Send the user-defined event signal if(GetSpawnInCondition(NW_FLAG_DAMAGED_EVENT)) { diff --git a/_module/nss/nw_c2_default8.nss b/_module/nss/nw_c2_default8.nss index fa7ef11b..ef07c733 100644 --- a/_module/nss/nw_c2_default8.nss +++ b/_module/nss/nw_c2_default8.nss @@ -10,9 +10,9 @@ #include "0i_actions" void main() { - ExecuteScript("prc_npc_disturb", OBJECT_SELF); - - if(AI_DEBUG) ai_Debug("nw_c2_default8", "13", GetName(OBJECT_SELF) + " is been disturbed!"); + object oCreature = OBJECT_SELF; + ExecuteScript("prc_npc_disturb", oCreature); + if(AI_DEBUG) ai_Debug("nw_c2_default8", "13", GetName(oCreature) + " is been disturbed!"); // We do nothing at the moment... lets not mess up our factions ok? // This should be defined by the server admins and is commented out. //if(ai_GetIsBusy(OBJECT_SELF, FALSE) || ai_Disabled()) return; @@ -21,6 +21,6 @@ void main() // Send the disturbed flag if appropriate. if(GetSpawnInCondition(NW_FLAG_DISTURBED_EVENT)) { - SignalEvent(OBJECT_SELF, EventUserDefined(EVENT_DISTURBED)); + SignalEvent(oCreature, EventUserDefined(EVENT_DISTURBED)); } } diff --git a/_module/nss/nw_c2_defaultb.nss b/_module/nss/nw_c2_defaultb.nss index 31500267..050a3ea2 100644 --- a/_module/nss/nw_c2_defaultb.nss +++ b/_module/nss/nw_c2_defaultb.nss @@ -10,10 +10,10 @@ void main() { object oCreature = OBJECT_SELF; + ExecuteScript("prc_npc_spellat", oCreature); object oCaster = GetLastSpellCaster(); SetLocalObject(oCaster, AI_ATTACKED_SPELL, oCreature); if(ai_Disabled(oCreature)) return; - ExecuteScript("prc_npc_spellat", OBJECT_SELF); if(!GetLastSpellHarmful()) return; // Send the user-defined event as appropriate if(GetSpawnInCondition(NW_FLAG_SPELL_CAST_AT_EVENT)) diff --git a/_module/nss/nw_c2_defaulte.nss b/_module/nss/nw_c2_defaulte.nss index 76f62db6..98e43646 100644 --- a/_module/nss/nw_c2_defaulte.nss +++ b/_module/nss/nw_c2_defaulte.nss @@ -9,6 +9,7 @@ void main() { object oCreature = OBJECT_SELF; + ExecuteScript("prc_npc_blocked", oCreature); // This actually gets either a Creature or Door that is blocking OBJECT_SELF. object oObject = GetBlockingDoor(); if(AI_DEBUG) ai_Debug("nw_c2_defaulte", "14", GetName(oCreature) + " is being blocked by " + GetName(oObject)); diff --git a/_module/nss/pe_crafting.nss b/_module/nss/pe_crafting.nss index 388c86a4..a1a8fac9 100644 --- a/_module/nss/pe_crafting.nss +++ b/_module/nss/pe_crafting.nss @@ -285,6 +285,7 @@ void main() if(nChange) nColorId = GetColorIDChange(oItem, ITEM_APPR_TYPE_ARMOR_COLOR, nMaterialSelected, nChange); oNewItem = CopyItemAndModify(oItem, ITEM_APPR_TYPE_ARMOR_COLOR, nMaterialSelected, nColorId, TRUE); DestroyObject(oItem); + SetColorPalletPointer(oPC, nToken, oNewItem); } // Lock the new item so they can't change it on the character. LockItemInCraftingWindow(oPC, oNewItem, oTarget, nToken); @@ -643,6 +644,7 @@ void main() int nSelected = StringToInt(GetStringRight(sElem, 1)); SetMaterialButtons(oPC, nToken, nSelected); jCraft = JsonObjectSet(jCraft, CRAFT_MATERIAL_SELECTION, JsonInt(nSelected)); + SetLocalJson(oPC, CRAFT_JSON, jCraft); // Change the pallet for the correct material. string sColorPallet; if(nSelected < 4) diff --git a/_module/nss/pe_test.nss b/_module/nss/pe_test.nss deleted file mode 100644 index 7fd799c8..00000000 --- a/_module/nss/pe_test.nss +++ /dev/null @@ -1,227 +0,0 @@ -/*////////////////////////////////////////////////////////////////////////////// - Script Name: pe_test - Programmer: Philos -//////////////////////////////////////////////////////////////////////////////// - PEPS Plugin to help test errors. - Gives gold, Heals, etc. -/*////////////////////////////////////////////////////////////////////////////// -#include "0i_main" -void main() -{ - // Get the last player to use targeting mode - object oPC = GetLastPlayerToSelectTarget(); - string sTargetMode = GetLocalString(oPC, AI_TARGET_MODE); - if(oPC == OBJECT_SELF && sTargetMode != "") - { - // Get the targeting mode data - object oTarget = GetTargetingModeSelectedObject(); - vector vTarget = GetTargetingModeSelectedPosition(); - location lLocation = Location(GetArea(oPC), vTarget, GetFacing(oPC)); - object oAssociate = GetLocalObject(oPC, AI_TARGET_ASSOCIATE); - // If the user manually exited targeting mode without selecting a target, return - if(!GetIsObjectValid(oTarget) && vTarget == Vector()) - { - return; - } - // Targeting code here. - if(sTargetMode == "TEST_LEVEL_TARGET") - { - int nLevel = ai_GetCharacterLevels(oTarget); - int nXPNeeded = StringToInt(Get2DAString("exptable", "XP", nLevel)); - int nXPToGive = nXPNeeded - GetXP(oTarget); - GiveXPToCreature(oTarget, nXPToGive); - ai_SendMessages(GetName(oTarget) + " has gained " + IntToString(nXPToGive) + " experience to gain 1 level.", AI_COLOR_YELLOW, oPC); - } - else if(sTargetMode == "TEST_GOLD_TARGET") - { - GiveGoldToCreature(oTarget, 10000); - ai_SendMessages(GetName(oTarget) + " has gained 10,000 gold.", AI_COLOR_YELLOW, oPC); - } - else if(sTargetMode == "TEST_REST_TARGET") - { - ForceRest(oTarget); - ai_SendMessages(GetName(oTarget) + " has rested.", AI_COLOR_GREEN, oPC); - } - else if(sTargetMode == "TEST_HEAL_TARGET") - { - int nHeal = GetMaxHitPoints(oTarget) - GetCurrentHitPoints(oTarget); - if(nHeal > 0) - { - effect eHeal = EffectHeal(nHeal); - ApplyEffectToObject(DURATION_TYPE_INSTANT, eHeal, oTarget); - ai_SendMessages(GetName(oTarget) + " has been healed.", AI_COLOR_GREEN, oPC); - } - } - else if(sTargetMode == "TEST_ID_TARGET") SetIdentified(oTarget, !GetIdentified(oTarget)); - else if(sTargetMode == "TEST_CLEAR_TARGET") - { - ClearAllActions(TRUE, oTarget); - } - else if(sTargetMode == "TEST_KILL_TARGET") - { - effect eDmg = EffectDamage(10000); - ApplyEffectToObject(DURATION_TYPE_INSTANT, eDmg, oTarget); - ai_SendMessages(GetName(oTarget) + " has been killed.", AI_COLOR_RED, oPC); - // Set this variable on the player so PEPS can run the targeting script for this plugin. - SetLocalString(oPC, AI_PLUGIN_TARGET_SCRIPT, "pe_test"); - // Set Targeting variables. - SetLocalObject(oPC, AI_TARGET_ASSOCIATE, OBJECT_SELF); - SetLocalString(oPC, AI_TARGET_MODE, "TEST_KILL_TARGET"); - EnterTargetingMode(oPC, OBJECT_TYPE_CREATURE, MOUSECURSOR_KILL, MOUSECURSOR_NOKILL); - } - else if(sTargetMode == "TEST_REMOVE_TARGET") - { - SetIsDestroyable(TRUE, FALSE, FALSE, oTarget); - DestroyObject(oTarget); - ai_SendMessages(GetName(oTarget) + " has been removed!", AI_COLOR_RED, oPC); - } - else if(sTargetMode == "TEST_JUMP") - { - JumpToLocation(lLocation); - int nIndex; - object oAssociate; - for(nIndex = 2; nIndex < 6; nIndex++) - { - oAssociate = GetAssociate(nIndex, oPC); - if(oAssociate != OBJECT_INVALID) AssignCommand(oAssociate, JumpToLocation(lLocation)); - } - for(nIndex = 1; nIndex < AI_MAX_HENCHMAN; nIndex++) - { - oAssociate = GetAssociate(ASSOCIATE_TYPE_HENCHMAN, oPC, nIndex); - if(oAssociate != OBJECT_INVALID) AssignCommand(oAssociate, JumpToLocation(lLocation)); - } - // Set this variable on the player so PEPS can run the targeting script for this plugin. - SetLocalString(oPC, AI_PLUGIN_TARGET_SCRIPT, "pe_test"); - // Set Targeting variables. - SetLocalObject(oPC, AI_TARGET_ASSOCIATE, OBJECT_SELF); - SetLocalString(oPC, AI_TARGET_MODE, "TEST_JUMP"); - EnterTargetingMode(oPC, OBJECT_TYPE_TILE, MOUSECURSOR_TRANSITION, MOUSECURSOR_NOWALK); - } - else if(sTargetMode == "TEST_KILL_AREA") - { - effect eDmg = EffectDamage(10000); - object oKill = GetFirstObjectInShape(SHAPE_SPHERE, 6.67, lLocation, FALSE); - while(oKill != OBJECT_INVALID) - { - ApplyEffectToObject(DURATION_TYPE_INSTANT, eDmg, oKill); - oKill = GetNextObjectInShape(SHAPE_SPHERE, 6.67, lLocation, FALSE); - } - } - } - // Run all non-targeting code here, usually NUI events. - else - { - object oPC = NuiGetEventPlayer(); - int nToken = NuiGetEventWindow(); - string sEvent = NuiGetEventType(); - string sElem = NuiGetEventElement(); - int nIndex = NuiGetEventArrayIndex(); - //string sWndId = NuiGetWindowId(oPC, nToken); - //********************************************************************** - //if(GetLocalInt(oPC, AI_NO_NUI_SAVE)) return; - if(sEvent == "click") - { - if(sElem == "btn_level") - { - // Set this variable on the player so PEPS can run the targeting script for this plugin. - SetLocalString(oPC, AI_PLUGIN_TARGET_SCRIPT, "pe_test"); - // Set Targeting variables. - SetLocalObject(oPC, AI_TARGET_ASSOCIATE, OBJECT_SELF); - SetLocalString(oPC, AI_TARGET_MODE, "TEST_LEVEL_TARGET"); - EnterTargetingMode(oPC, OBJECT_TYPE_CREATURE , MOUSECURSOR_EXAMINE, MOUSECURSOR_NOEXAMINE); - } - else if(sElem == "btn_gold") - { - // Set this variable on the player so PEPS can run the targeting script for this plugin. - SetLocalString(oPC, AI_PLUGIN_TARGET_SCRIPT, "pe_test"); - // Set Targeting variables. - SetLocalObject(oPC, AI_TARGET_ASSOCIATE, OBJECT_SELF); - SetLocalString(oPC, AI_TARGET_MODE, "TEST_GOLD_TARGET"); - EnterTargetingMode(oPC, OBJECT_TYPE_CREATURE , MOUSECURSOR_CREATE, MOUSECURSOR_NOCREATE); - } - else if(sElem == "btn_rest") - { - // Set this variable on the player so PEPS can run the targeting script for this plugin. - SetLocalString(oPC, AI_PLUGIN_TARGET_SCRIPT, "pe_test"); - // Set Targeting variables. - SetLocalObject(oPC, AI_TARGET_ASSOCIATE, OBJECT_SELF); - SetLocalString(oPC, AI_TARGET_MODE, "TEST_REST_TARGET"); - EnterTargetingMode(oPC, OBJECT_TYPE_CREATURE , MOUSECURSOR_EXAMINE, MOUSECURSOR_NOEXAMINE); - } - else if(sElem == "btn_heal") - { - // Set this variable on the player so PEPS can run the targeting script for this plugin. - SetLocalString(oPC, AI_PLUGIN_TARGET_SCRIPT, "pe_test"); - // Set Targeting variables. - SetLocalObject(oPC, AI_TARGET_ASSOCIATE, OBJECT_SELF); - SetLocalString(oPC, AI_TARGET_MODE, "TEST_HEAL_TARGET"); - EnterTargetingMode(oPC, OBJECT_TYPE_CREATURE, MOUSECURSOR_HEAL, MOUSECURSOR_NOHEAL); - } - else if(sElem == "btn_id_item") - { - // Set this variable on the player so PEPS can run the targeting script for this plugin. - SetLocalString(oPC, AI_PLUGIN_TARGET_SCRIPT, "pe_test"); - // Set Targeting variables. - SetLocalObject(oPC, AI_TARGET_ASSOCIATE, OBJECT_SELF); - SetLocalString(oPC, AI_TARGET_MODE, "TEST_ID_TARGET"); - EnterTargetingMode(oPC, OBJECT_TYPE_ITEM, MOUSECURSOR_HEAL, MOUSECURSOR_NOHEAL); - } - else if(sElem == "btn_clear") - { - // Set this variable on the player so PEPS can run the targeting script for this plugin. - SetLocalString(oPC, AI_PLUGIN_TARGET_SCRIPT, "pe_test"); - // Set Targeting variables. - SetLocalObject(oPC, AI_TARGET_ASSOCIATE, OBJECT_SELF); - SetLocalString(oPC, AI_TARGET_MODE, "TEST_CLEAR_TARGET"); - EnterTargetingMode(oPC, OBJECT_TYPE_CREATURE, MOUSECURSOR_MAGIC, MOUSECURSOR_NOMAGIC); - } - else if(sElem == "btn_kill") - { - // Set this variable on the player so PEPS can run the targeting script for this plugin. - SetLocalString(oPC, AI_PLUGIN_TARGET_SCRIPT, "pe_test"); - // Set Targeting variables. - SetLocalObject(oPC, AI_TARGET_ASSOCIATE, OBJECT_SELF); - SetLocalString(oPC, AI_TARGET_MODE, "TEST_KILL_TARGET"); - EnterTargetingMode(oPC, OBJECT_TYPE_CREATURE, MOUSECURSOR_KILL, MOUSECURSOR_NOKILL); - } - else if(sElem == "btn_remove") - { - // Set this variable on the player so PEPS can run the targeting script for this plugin. - SetLocalString(oPC, AI_PLUGIN_TARGET_SCRIPT, "pe_test"); - // Set Targeting variables. - SetLocalObject(oPC, AI_TARGET_ASSOCIATE, OBJECT_SELF); - SetLocalString(oPC, AI_TARGET_MODE, "TEST_REMOVE_TARGET"); - EnterTargetingMode(oPC, OBJECT_TYPE_CREATURE | - OBJECT_TYPE_DOOR | OBJECT_TYPE_ITEM | - OBJECT_TYPE_PLACEABLE, MOUSECURSOR_KILL, MOUSECURSOR_NOKILL); - } - else if(sElem == "btn_jump") - { - // Set this variable on the player so PEPS can run the targeting script for this plugin. - SetLocalString(oPC, AI_PLUGIN_TARGET_SCRIPT, "pe_test"); - // Set Targeting variables. - SetLocalObject(oPC, AI_TARGET_ASSOCIATE, OBJECT_SELF); - SetLocalString(oPC, AI_TARGET_MODE, "TEST_JUMP"); - EnterTargetingMode(oPC, OBJECT_TYPE_TILE, MOUSECURSOR_TRANSITION, MOUSECURSOR_NOWALK); - } - else if(sElem == "btn_kill_area") - { - // Set this variable on the player so PEPS can run the targeting script for this plugin. - SetLocalString(oPC, AI_PLUGIN_TARGET_SCRIPT, "pe_test"); - // Set Targeting variables. - SetLocalObject(oPC, AI_TARGET_ASSOCIATE, OBJECT_SELF); - SetLocalString(oPC, AI_TARGET_MODE, "TEST_KILL_AREA"); - SetEnterTargetingModeData(oPC, SPELL_TARGETING_SHAPE_SPHERE, 6.67, 0.0, 3); - EnterTargetingMode(oPC, OBJECT_TYPE_ALL, MOUSECURSOR_KILL, MOUSECURSOR_NOKILL); - } - } - else if(sEvent == "watch") - { - if(sElem == "txt_debug_creature") - { - } - } - } -} - - diff --git a/_module/nss/pi_crafting.nss b/_module/nss/pi_crafting.nss index 0c666614..b7d6309b 100644 --- a/_module/nss/pi_crafting.nss +++ b/_module/nss/pi_crafting.nss @@ -5,12 +5,9 @@ Crafting UI for players items. */////////////////////////////////////////////////////////////////////////////// -#include "nw_inc_nui" #include "0i_nui" #include "0i_items" #include "nw_inc_gff" - - const string CRAFT_JSON = "CRAFT_JSON"; const string CRAFT_COOL_DOWN = "CRAFT_COOL_DOWN"; const string CRAFT_ITEM_SELECTION = "CRAFT_ITEM_SELECTION"; @@ -45,6 +42,7 @@ void main() if(oTarget == OBJECT_INVALID) oTarget = oPC; if(StartingUp(oPC)) return; json jCraft = GetLocalJson(oPC, CRAFT_JSON); + if(JsonGetType(jCraft) == JSON_TYPE_NULL) jCraft = JsonObject(); // Row 1 (Object Name)****************************************************** 508 / 83 json jRow = CreateTextEditBox(JsonArray(), "plc_hold_bind", "txt_item_name", 50, FALSE, 486.0f, 30.0f); // 419 json jCol = JsonArrayInsert(JsonArray(), NuiRow(jRow)); @@ -128,7 +126,7 @@ void main() jImage = NuiWidth(jImage, 320.0); // 256 + 64 jImage = NuiHeight(jImage, 220.0); // 176 + 44 jImage = NuiTooltip(jImage, NuiBind("color_pallet_tooltip")); - json jIndicator = JsonArrayInsert(JsonArray(), NuiDrawListRect(JsonBool(TRUE), NuiColor(255,255,255), JsonBool(FALSE), JsonFloat(2.0), NuiBind("color_pallet_pointer"))); + json jIndicator = JsonArrayInsert(JsonArray(), NuiDrawListRect(JsonBool(TRUE), NuiColor(255,0,0), JsonBool(FALSE), JsonFloat(2.0), NuiBind("color_pallet_pointer"))); jImage = NuiDrawList(jImage, JsonBool(FALSE), jIndicator); jGroupRow = JsonArrayInsert(JsonArray(), jImage); jGroupCol = JsonArrayInsert(JsonArray(), NuiRow(jGroupRow)); @@ -541,7 +539,6 @@ void main() // Lets make sure we clean up any cool down variables. //DeleteLocalInt(oPC, CRAFT_COOL_DOWN); } - json CreateItemCombo(object oPC, json jRow, string sComboBind) { int nCnt; diff --git a/_module/nss/pi_test.nss b/_module/nss/pi_test.nss deleted file mode 100644 index 818da8c1..00000000 --- a/_module/nss/pi_test.nss +++ /dev/null @@ -1,103 +0,0 @@ -/*////////////////////////////////////////////////////////////////////////////// - Script: pi_test - Programmer: Philos -//////////////////////////////////////////////////////////////////////////////// - Plugin for debugging. -*/////////////////////////////////////////////////////////////////////////////// -#include "0i_nui" -#include "0i_player_target" -// Does startup check if the game has just been loaded. -int StartingUp(object oPC); -void main() -{ - object oPC = OBJECT_SELF; - if(StartingUp(oPC)) return; - string sText; - // Set window to not save until it has been created. - //SetLocalInt (oPC, AI_NO_NUI_SAVE, TRUE); - //DelayCommand (0.5f, DeleteLocalInt (oPC, AI_NO_NUI_SAVE)); - // ************************************************************************* Width / Height - // Row 1 ******************************************************************* 636 / 73 - json jRow = JsonArrayInsert(JsonArray(), NuiSpacer()); - jRow = CreateButton(jRow, "Level Up Creature", "btn_level", 150.0f, 20.0f, -1.0, "btn_level_tooltip"); - jRow = JsonArrayInsert(jRow, NuiSpacer()); - jRow = CreateButton(jRow, "Gold for Creature", "btn_gold", 150.0f, 20.0f, -1.0, "btn_gold_tooltip"); - jRow = JsonArrayInsert(jRow, NuiSpacer()); - jRow = CreateButton(jRow, "Force Rest Creature", "btn_rest", 150.0f, 20.0f, -1.0, "btn_rest_tooltip"); - jRow = JsonArrayInsert(jRow, NuiSpacer()); - jRow = CreateButton(jRow, "ID/UnID Item", "btn_id_item", 150.0f, 20.0f, -1.0, "btn_id_item_tooltip"); - jRow = JsonArrayInsert(jRow, NuiSpacer()); - // Add row to the column. - json jCol = JsonArrayInsert(JsonArray(), NuiRow(jRow)); - // Row 2 ******************************************************************* 636 / 101 - jRow = JsonArrayInsert(JsonArray(), NuiSpacer()); - jRow = CreateButton(jRow, "Heal Creature", "btn_heal", 150.0f, 20.0f, -1.0, "btn_heal_tooltip"); - jRow = JsonArrayInsert(jRow, NuiSpacer()); - jRow = CreateButton(jRow, "Clear Creature Actions", "btn_clear", 150.0f, 20.0f, -1.0, "btn_clear_tooltip"); - jRow = JsonArrayInsert(jRow, NuiSpacer()); - jRow = CreateButton(jRow, "Kill Creature", "btn_kill", 150.0f, 20.0f, -1.0, "btn_kill_tooltip"); - jRow = JsonArrayInsert(jRow, NuiSpacer()); - jRow = CreateButton(jRow, "Remove Object", "btn_remove", 150.0f, 20.0f, -1.0, "btn_remove_tooltip"); - jRow = JsonArrayInsert(jRow, NuiSpacer()); - // Add row to the column. - jCol = JsonArrayInsert(jCol, NuiRow(jRow)); - // Row 3 ******************************************************************* 636 / 101 - jRow = JsonArrayInsert(JsonArray(), NuiSpacer()); - jRow = CreateButton(jRow, "Jump To", "btn_jump", 150.0f, 20.0f, -1.0, "btn_jump_tooltip"); - jRow = JsonArrayInsert(jRow, NuiSpacer()); - jRow = CreateButton(jRow, "Kill In Area", "btn_kill_area", 150.0f, 20.0f, -1.0, "btn_kill_area_tooltip"); - jRow = JsonArrayInsert(jRow, NuiSpacer()); - // Add row to the column. - jCol = JsonArrayInsert(jCol, NuiRow(jRow)); - float fHeight = 129.0; - // Set the Layout of the window. - json jLayout = NuiCol(jCol); - string sName = GetName(oPC); - if(GetStringRight(sName, 1) == "s") sName = sName + "'"; - else sName = sName + "'s"; - int nToken = SetWindow(oPC, jLayout, "pi_test_nui", sName + " PEPS Testing Menu", - -1.0, -1.0, 636.0f, fHeight + 12.0f, FALSE, FALSE, TRUE, FALSE, TRUE, "pe_test"); - // Set all binds, events, and watches. - // Row 1 - NuiSetBind(oPC, nToken, "btn_level_event", JsonBool(TRUE)); - NuiSetBind(oPC, nToken, "btn_level_tooltip", JsonString(" Give level to target creature.")); - NuiSetBind(oPC, nToken, "btn_gold_event", JsonBool(TRUE)); - NuiSetBind(oPC, nToken, "btn_gold_tooltip", JsonString(" Give Gold to target creature.")); - NuiSetBind(oPC, nToken, "btn_rest_event", JsonBool(TRUE)); - NuiSetBind(oPC, nToken, "btn_rest_tooltip", JsonString(" Force rest target creature.")); - NuiSetBind(oPC, nToken, "btn_id_item_event", JsonBool(TRUE)); - NuiSetBind(oPC, nToken, "btn_id_item_tooltip", JsonString(" Identify or UnIdentify the target item.")); - // Row 2 - NuiSetBind(oPC, nToken, "btn_heal_event", JsonBool(TRUE)); - NuiSetBind(oPC, nToken, "btn_heal_tooltip", JsonString(" Heal target creature to max hitpoints.")); - NuiSetBind(oPC, nToken, "btn_clear_event", JsonBool(TRUE)); - NuiSetBind(oPC, nToken, "btn_clear_tooltip", JsonString(" Clears a creature's actions including combat.")); - NuiSetBind(oPC, nToken, "btn_kill_event", JsonBool(TRUE)); - NuiSetBind(oPC, nToken, "btn_kill_tooltip", JsonString(" Kill target creature doing 10,000 magic damage.")); - NuiSetBind(oPC, nToken, "btn_remove_event", JsonBool(TRUE)); - NuiSetBind(oPC, nToken, "btn_remove_tooltip", JsonString(" Remove selected object or the nearest object to ground selection.")); - // Row 3 - NuiSetBind(oPC, nToken, "btn_jump_event", JsonBool(TRUE)); - NuiSetBind(oPC, nToken, "btn_jump_tooltip", JsonString(" Jump to target location.")); - NuiSetBind(oPC, nToken, "btn_kill_area_event", JsonBool(TRUE)); - NuiSetBind(oPC, nToken, "btn_kill_area_tooltip", JsonString(" Kills all creatures in target area.")); -} -int StartingUp(object oPC) -{ - if(GetLocalInt(oPC, AI_ADD_PLUGIN)) - { - json jPlugin = JsonArray(); - jPlugin = JsonArrayInsert(jPlugin, JsonString("pi_test")); - jPlugin = JsonArrayInsert(jPlugin, JsonInt(FALSE)); - jPlugin = JsonArrayInsert(jPlugin, JsonString("Testing Menu")); - jPlugin = JsonArrayInsert(jPlugin, JsonString("ir_charsheet")); - json jPlugins = GetLocalJson(oPC, AI_JSON_PLUGINS); - jPlugins = JsonArrayInsert(jPlugins, jPlugin); - SetLocalJson(oPC, AI_JSON_PLUGINS, jPlugin); - SetLocalInt(oPC, AI_PLUGIN_SET, TRUE); - return TRUE; - } - if(!GetLocalInt(oPC, AI_STARTING_UP)) return FALSE; - return TRUE; -} - diff --git a/_module/nss/pinc_henchmen.nss b/_module/nss/pinc_henchmen.nss index a67141a3..a65adf4b 100644 --- a/_module/nss/pinc_henchmen.nss +++ b/_module/nss/pinc_henchmen.nss @@ -814,7 +814,7 @@ json CreateLevelStatList(json jHenchman, object oHenchman, object oPC, int nLeve { jLevelArray = JsonArrayInsert(jLevelArray, jLevel); } - WriteTimestampedLogEntry("pinc_henchmen, 813, Adding LvlStatList to " + GetName(oHenchman)); + WriteTimestampedLogEntry("pinc_henchmen, 813, Creating LvlStatList for " + GetName(oHenchman)); return GffAddList(jHenchman, "LvlStatList", jLevelArray); } int CanSelectFeat(json jCreature, object oCreature, int nFeat, int nPosition = 1) @@ -969,6 +969,7 @@ json ResetFeats(json jHenchman, object oHenchman) int nRace = GetRacialType(oHenchman); string sRace2DAName = Get2DAString("racialtypes", "FeatsTable", nRace); // Give racial feats. + WriteTimestampedLogEntry("pinc_henchmen, 972, Checking for racial feats."); int nRaceRow, nRaceFeat; int nRaceMaxRow = Get2DARowCount(sRace2DAName); while(nRaceRow < nRaceMaxRow) @@ -978,11 +979,12 @@ json ResetFeats(json jHenchman, object oHenchman) jFeat = GffAddWord(jFeat, "Feat", nRaceFeat); jFeat = JsonObjectSet(jFeat, "__struct_id", JsonInt(1)); jFeatList = JsonArrayInsert(jFeatList, jFeat); - WriteTimestampedLogEntry("pinc_henchmen, 973, Adding racial feat: " + + WriteTimestampedLogEntry("pinc_henchmen, 982, Adding racial feat: " + Get2DAString("feat", "LABEL", nRaceFeat)); nRaceRow++; } // Give class feats. + WriteTimestampedLogEntry("pinc_henchmen, 972, Checking for class feats."); int nClass = GetClassByPosition(1, oHenchman); string sGranted, sList; string sClsFeat2DAName = Get2DAString("classes", "FeatsTable", nClass); @@ -1000,13 +1002,14 @@ json ResetFeats(json jHenchman, object oHenchman) jFeat = GffAddWord(jFeat, "Feat", nClassFeat); jFeat = JsonObjectSet(jFeat, "__struct_id", JsonInt(1)); jFeatList = JsonArrayInsert(jFeatList, jFeat); - WriteTimestampedLogEntry("pinc_henchmen, 995, Adding class feat: " + + WriteTimestampedLogEntry("pinc_henchmen, 1005, Adding class feat: " + Get2DAString("feat", "LABEL", nClassFeat)); } } nClassRow++; } // Give any bonus feats from package. + WriteTimestampedLogEntry("pinc_henchmen, 1012, Checking for selectable feats."); int nPackageFeat, nPackageRow; string sBonusFeat2DAName = Get2DAString("classes", "BonusFeatsTable", nClass); int nNumOfFeats = StringToInt(Get2DAString(sBonusFeat2DAName, "Bonus", nLevel)); @@ -1044,10 +1047,11 @@ json ResetFeats(json jHenchman, object oHenchman) } } // Give picked feats from package. + WriteTimestampedLogEntry("pinc_henchmen, 972, Checking for select feats."); nNumOfFeats = 1; if(GetHasFeat(FEAT_QUICK_TO_MASTER, oHenchman)) nNumOfFeats++; nPackageRow = 0; - while(nPackageRow < nPackageMaxRow) + while(nPackageRow < nPackageMaxRow || nNumOfFeats > 0) { nClassRow = 0; nPackageFeat = StringToInt(Get2DAString(sPackage2DAName, "FeatIndex", nPackageRow)); @@ -1064,6 +1068,7 @@ json ResetFeats(json jHenchman, object oHenchman) if(nNumOfFeats < 1) break; nPackageRow++; } + WriteTimestampedLogEntry("pinc_henchmen, 1071, Adding feat list."); jHenchman = GffReplaceList(jHenchman, "FeatList", jFeatList); return jHenchman; } @@ -1079,6 +1084,7 @@ json ResetSkills(json jHenchman, object oHenchman) json jSkillList = JsonArray(); json jSkill; // Setup the Skill List. + WriteTimestampedLogEntry("pinc_henchmen, 1087, Generating skill list."); int nIndex, nSkillMaxRow = Get2DARowCount("skills"); for(nIndex = 0; nIndex < nSkillMaxRow; nIndex++) { @@ -1088,6 +1094,7 @@ json ResetSkills(json jHenchman, object oHenchman) jSkillList = JsonArrayInsert(jSkillList, jSkill); } // Give skill points based on the package. + WriteTimestampedLogEntry("pinc_henchmen, 1097, Gets " + IntToString(nSkillPoints) + " skill points."); int nPackageSkill, nPackageRow, nCurrentRanks, bCrossClass, nClassRow, nNewRanks; string sPackage2DAName = Get2DAString("packages", "SkillPref2DA", nClass); int nPackageMaxRow = Get2DARowCount(sPackage2DAName); @@ -1116,8 +1123,9 @@ json ResetSkills(json jHenchman, object oHenchman) { jSkill = GffReplaceByte(jSkill, "Rank", nCurrentRanks + nNewRanks); jSkillList = JsonArraySet(jSkillList, nPackageSkill, jSkill); - WriteTimestampedLogEntry("pinc_henchmen, 1110, Adding " + IntToString(nNewRanks) + - " ranks to " + Get2DAString("skills", "Label", nPackageSkill)); + WriteTimestampedLogEntry("pinc_henchmen, 1126, Adding " + IntToString(nNewRanks) + + " ranks to " + Get2DAString("skills", "Label", nPackageSkill) + + " CrossClass: " + IntToString(bCrossClass)); nSkillPoints -= nNewRanks; } nPackageRow++; @@ -1127,7 +1135,9 @@ json ResetSkills(json jHenchman, object oHenchman) } json ResetSpellsKnown(json jClass, object oHenchman) { + WriteTimestampedLogEntry("pinc_henchmen, 1138, Checking for spells known."); int nClass = GetClassByPosition(1, oHenchman); + WriteTimestampedLogEntry("pinc_henchmen, 1140, SpellCaster: " + Get2DAString("classes", "SpellCaster", nClass)); if(Get2DAString("classes", "SpellCaster", nClass) == "0") return jClass; int nLevel = 0; // We remake the Known spell list if the character doesn't have a level list! diff --git a/_module/nss/x0_ch_hen_block.nss b/_module/nss/x0_ch_hen_block.nss new file mode 100644 index 00000000..d7d86a35 --- /dev/null +++ b/_module/nss/x0_ch_hen_block.nss @@ -0,0 +1,14 @@ +//::////////////////////////////////////////////////// +//:: X0_CH_HEN_BLOCK +/* + OnBlocked handler for henchmen/associates. + */ +//::////////////////////////////////////////////////// +//:: Copyright (c) 2002 Floodgate Entertainment +//:: Created By: Naomi Novik +//:: Created On: 01/06/2003 +//::////////////////////////////////////////////////// +void main() +{ + ExecuteScript("nw_ch_ace"); +} diff --git a/_module/nss/x0_ch_hen_combat.nss b/_module/nss/x0_ch_hen_combat.nss new file mode 100644 index 00000000..d3e359b0 --- /dev/null +++ b/_module/nss/x0_ch_hen_combat.nss @@ -0,0 +1,36 @@ +//:://///////////////////////////////////////////// +//:: Associate: End of Combat End +//:: NW_CH_AC3 +//:: Copyright (c) 2001 Bioware Corp. +//::////////////////////////////////////////////// +/* + Calls the end of combat script every round +*/ +//::////////////////////////////////////////////// +//:: Created By: Preston Watamaniuk +//:: Created On: Oct 16, 2001 +//::////////////////////////////////////////////// +//::////////////////////////////////////////////// +//:: Modified By: Deva Winblood +//:: Modified On: Jan 16th, 2008 +//:: Added Support for Mounted Combat Feat Support +//::////////////////////////////////////////////// +#include "x0_inc_henai" + +void main() +{ + if (!GetLocalInt(GetModule(),"X3_NO_MOUNTED_COMBAT_FEAT")) + { // set variables on target for mounted combat + DeleteLocalInt(OBJECT_SELF,"bX3_LAST_ATTACK_PHYSICAL"); + DeleteLocalInt(OBJECT_SELF,"nX3_HP_BEFORE"); + DeleteLocalInt(OBJECT_SELF,"bX3_ALREADY_MOUNTED_COMBAT"); + } // set variables on target for mounted combat + if(!GetSpawnInCondition(NW_FLAG_SET_WARNINGS)) + { + ExecuteScript("nw_ch_ac3"); + } + if(GetSpawnInCondition(NW_FLAG_END_COMBAT_ROUND_EVENT)) + { + SignalEvent(OBJECT_SELF, EventUserDefined(1003)); + } +} diff --git a/_module/nss/x0_ch_hen_conv.nss b/_module/nss/x0_ch_hen_conv.nss new file mode 100644 index 00000000..6943250d --- /dev/null +++ b/_module/nss/x0_ch_hen_conv.nss @@ -0,0 +1,91 @@ +//::////////////////////////////////////////////////// +//:: X0_CH_HEN_CONV +// OnDialogue event handler for henchmen/associates. +//::////////////////////////////////////////////////// +//:: Copyright (c) 2002 Floodgate Entertainment +//:: Created By: Naomi Novik +//:: Created On: 01/05/2003 +//::////////////////////////////////////////////////// +#include "x0_inc_henai" +#include "x0_i0_henchman" +#include "0i_associates" +//* GeorgZ - Put in a fix for henchmen talking even if they are petrified +int AbleToTalk(object oSelf) +{ + if (GetHasEffect(EFFECT_TYPE_CONFUSED, oSelf) || GetHasEffect(EFFECT_TYPE_DOMINATED, oSelf) || + GetHasEffect(EFFECT_TYPE_PETRIFY, oSelf) || GetHasEffect(EFFECT_TYPE_PARALYZE, oSelf) || + GetHasEffect(EFFECT_TYPE_STUNNED, oSelf) || GetHasEffect(EFFECT_TYPE_FRIGHTENED, oSelf) + ) + { + return FALSE; + } + + return TRUE; +} +void main() +{ + object oCreature = OBJECT_SELF; + // * XP2, special handling code for interjections + // * This script only fires if someone inits with me. + // * with that in mind, I am now clearing any interjections + // * that the character might have on themselves. + if (GetLocalInt(GetModule(), "X2_L_XP2") == TRUE) + { + SetLocalInt(oCreature, "X2_BANTER_TRY", 0); + SetHasInterjection(GetMaster(oCreature), FALSE); + SetLocalInt(oCreature, "X0_L_BUSY_SPEAKING_ONE_LINER", 0); + SetOneLiner(FALSE, 0); + } + object oLastSpeaker = GetLastSpeaker(); + if (GetTag(oCreature) == "x0_hen_dee") + { + string sCall = GetCampaignString("Deekin", "q6_Deekin_Call"+ GetName(oLastSpeaker), oLastSpeaker); + if (sCall == "") SetCustomToken(1001, GetStringByStrRef(40570)); + else SetCustomToken(1001, sCall); + } + // If we are disabled then we can't listen or talk, Busy is checked in ai_SelectAssociateCommand(). + if (GetIsHenchmanDying(oCreature) || ai_Disabled(oCreature)) return; + object oMaster = GetMaster(); + int nMatch = GetListenPatternNumber(); + object oIntruder; + if (nMatch == -1) + { + if (!ai_GetIsBusy(oCreature)) + { + ai_ClearCreatureActions(); + string sDialogFileToUse = GetDialogFileToUse(GetLastSpeaker()); + BeginConversation(sDialogFileToUse); + } + } + else + { + // listening pattern matched + if (GetIsObjectValid(oMaster)) ai_SelectAssociateCommand(oCreature, oLastSpeaker, nMatch); + // we don't have a master, behave in default way + else if (GetIsObjectValid(oLastSpeaker) && + !GetIsPC(oLastSpeaker) && + GetIsFriend(oLastSpeaker)) + { + object oIntruder = OBJECT_INVALID; + // Determine the intruder if any + if(nMatch == 4) oIntruder = GetLocalObject(oLastSpeaker, "NW_BLOCKER_INTRUDER"); + else if (nMatch == 5) + { + oIntruder = GetLastHostileActor(oLastSpeaker); + if(!GetIsObjectValid(oIntruder)) + { + oIntruder = GetAttemptedAttackTarget(); + if(!GetIsObjectValid(oIntruder)) oIntruder = GetAttemptedSpellTarget(); + } + } + // Actually respond to the shout + RespondToShout(oLastSpeaker, nMatch, oIntruder); + } + } + // Signal user-defined event + if(GetSpawnInCondition(NW_FLAG_ON_DIALOGUE_EVENT)) + { + SignalEvent(oCreature, EventUserDefined(EVENT_DIALOGUE)); + } +} + diff --git a/_module/nss/x0_ch_hen_rest.nss b/_module/nss/x0_ch_hen_rest.nss new file mode 100644 index 00000000..8d2fc789 --- /dev/null +++ b/_module/nss/x0_ch_hen_rest.nss @@ -0,0 +1,15 @@ +//::////////////////////////////////////////////////// +//:: X0_CH_HEN_REST +/* + OnRest event handler for henchmen/associates. + */ +//::////////////////////////////////////////////////// +//:: Copyright (c) 2002 Floodgate Entertainment +//:: Created By: Naomi Novik +//:: Created On: 01/06/2003 +//::////////////////////////////////////////////////// + +void main() +{ + ExecuteScript("nw_ch_aca"); +}