From 7b24aa0767e6c36c37bdfedf4655174eb45fda10 Mon Sep 17 00:00:00 2001 From: Eddoursul Date: Thu, 26 Oct 2023 21:22:14 +0200 Subject: [PATCH] Implemented Papyrus script version checking, added versions to 4 core scripts --- SKSE/Plugins/EnderalSE.dll | 4 +- scripts/_00e_game_skillmenusc.pex | Bin 35313 -> 35366 bytes scripts/_00e_playersetupscript.pex | Bin 5249 -> 5302 bytes scripts/_00e_questfunctions.pex | Bin 42477 -> 42530 bytes .../_00e_theriantrophist_alchemycontrol.pex | Bin 17404 -> 17457 bytes source/Enderal DLL/src/EventListener.cpp | 4 ++ source/Enderal DLL/src/Main.cpp | 1 + source/Enderal DLL/src/Util.h | 66 ++++++++++++++++++ source/scripts/_00e_game_skillmenusc.psc | 4 ++ source/scripts/_00e_playersetupscript.psc | 3 + source/scripts/_00e_questfunctions.psc | 4 ++ .../_00e_theriantrophist_alchemycontrol.psc | 4 ++ 12 files changed, 88 insertions(+), 2 deletions(-) diff --git a/SKSE/Plugins/EnderalSE.dll b/SKSE/Plugins/EnderalSE.dll index 322381a1..f169fb6c 100644 --- a/SKSE/Plugins/EnderalSE.dll +++ b/SKSE/Plugins/EnderalSE.dll @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:82ba7402253520095db4ee25e1f07759b0cc0913465293ec5a9d45029a00e8bb -size 738304 +oid sha256:e5a11c44f90d68c3ce54dc019838aa64d1420799dcc2641c454a85ce3b87dd71 +size 719872 diff --git a/scripts/_00e_game_skillmenusc.pex b/scripts/_00e_game_skillmenusc.pex index 28fc71ee83b5e064af057d6dd96d49435721a6fd..10a1613c7419b8c8255ea218e1eb9263412be5ed 100644 GIT binary patch literal 35366 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 Jc4$qW{txCKDn9@K literal 35313 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 T0h{yTRzU3nWgSznCGvj&^=$yE diff --git a/scripts/_00e_playersetupscript.pex b/scripts/_00e_playersetupscript.pex index 5e7b344525dee6fcffd45cb2cfd90ef0749db2b4..acdf3b3ad0327b4d50c7ad3286b14e80101dbc80 100644 GIT binary patch literal 5302 zcma)ATXPiG5$;*-N~;SJ;vzsYFgSLwLC7l!fmq*IWC;|b3tAyCkZeY~XLkq9&Mb4$ zB5>>&1J3m!x2GfzspKV9@k3IsRLYe~8mnoWPK>6NKxwo-8d*9$D2 z`c=%2wM<*5@6!-=s!~&Sddd&5gLgvl{+X*QE3=EMrRBov%%#%W>`HNdX_2xQm0$D? zUs3l($9F<@u*6c?xu#stbZqKevgd8nr`=0-XxC-Os9ZD}iuTXi#=526GCh91ZCX~t z*;KR_h8F^8G&a?|?JIZFuxMn?FfGrhs)Z}Lsb$x(oLZm?mT7p(qXR3d>MF0k-~_h6 z2-V(_&8JXLX+^=AW#w+reqjr4!*Q=EvsM?W2k+{tyfNpvHOKdrUGyE-gv#Cp!^GLP zVV4zk*3C*q+0KaeH^V^#j8GMH%-Gb?FHsFbZ};)>A1dO z`+C)J^``4Im8%EMis74fZB(x~y6yNnz;#=$=_}pz$7nF0zpOTuX-`>I>I!_*GW{*;oA>7J1!V^dPDN4Q zHN*6iQJ7hbbE(Yr=52V2I#vRk4oNt+XB13v4Xa{V)U%=tD+GdeaZ}(>tQl5-mg6;* zsw@PSPuWXY<#HeD;@*SmqYRjWPZ`M_O4qpA^g#y0E^Kjspd+*4F{Qa;X~A(-sZgz& zT)xU1Q(lw$uLP#Q>TnZaA1G5%>p_ir7Py#e>Vk8Z+%HzaW$6SyN>EjF!>*tR(H6K2 zTaLS-w@kmTM;i3v?3li6DfF^YJ+RRld~P48WGP`KjiTXH#z<>YHVpLyLVU^aq_Y7h zZk)n*6)F{BqIKhw)C14w7w07p2G`dLtHr3}=9#BnASp*26Yg}vO(oo!ggYys zqkA^wJ_v)8ZXxv4h`l?dV?OMzdemNlaf1P3IM5s_s&Wi1P3asdKm+G_#trPKmswk5 z`chNb`dfx?=yRsU9Tu3PKcn8IoyGnpwvC^StsI}GgVms!CMXo9_c;gAi6S?TVvhU>1w6*YEi&t`I;$V6-6nz^+p9TC;A)f|uz9jiQ zK1GM67a92WU_hgbky}%E6CRAeN{Zo?xqZk0N{owO&UG4`ozzp@*mBJV=Q#~s<%?Lw zn^9)rCr#9Ur{l(&cs8C(yiM|Gd?J=jOwew?jZn|p<)E>SI9BLfY)cqM5A6kgmOnAL z4atX!?mHZH9i6jmR!wxJFrTvsW0=rAjt$^LzR$5QsG5oIA($S2U;do>@ja+fO2bcD z*be*(!$V;*yrN6kPNI{vJE1`ur2U{F&>N)PP!&^ovzaj5q1+CSQjdbpog&Vw$KKJ z)R2i@Ug-((*RV!?L>bxw-J|;;7VTouL(n673}O+G>Z2d*pdZqY=*RRE5HA=YK=4!0 z&p^Kr`Xw>_8uS~`$DrTR?;`qyeoud(Pw9{JCrSZQ8ss40$$mn6XfJaZXK5b*mS>0# zgv>#JEzfW)Vd&*K4E*IeN_xl~qvt~=i*W1@Pw0Zu7qC~3>q78e#Oi2p6!A)ChGE&E za7K%nP@6WKKA*kv4>}I@(avM^63mDOBMAACcyJhM7}E@LK<4F#v|&y*4Z%Daidl6p z@?#IOV-JndE69)&G>+*BoIVNuG)>VNI*Sx}h0fu9vR|W7jgH}UN~8RMMq|Q__6RpN zgcl#uF--g9utOTXs?lqan3DNW{<=ovvMl}jXP^CbU&oUtPyT%Xp@-^dhOqDrjoxe< zo^Kn51{{>yiFK!+lLCW=iCr2U#49ufiqqSQwGXYPFRRkxvJ5s zXiw1^{8`1n45y6FBW`{$-e-g#iZP_;rnrg2k!pd}=0fp)5vqP)GhIuhpoGB;utZ{P3qD zV<|jTDk-W$LG)is0VXiJ4FfjFl4NK=Hi8yfM~O*mf+cl6x&xN%Of5S+ zIVnqXceqU>Gv2gavnH%X&6?pJcwn;9XV#zzUmQs>IheB~v;gv^$Q!aZR0Xpvjqb!@ zNs*gCb~}Qs=Pw-f4UKNc=W0;piAdl|W0$n5$Sj_IstdsUq<3Mqd*=|j(mva}bLejm z@t;xwnt1q8(Ayr4G;JabExIdV*up!iZKUsJ0of_{$ z=v1pcs=0P>9nPTme`N70F@@(O@xr#Hx7eF?ck4 zKo9OQ4tdNo+)AFh4#GSMe{p-Zl|YIJz3BwJrZ`%wsz~RqHh9cEz isQxw^$CvSUfC_RFBDUze+bZ}DsbL<{@3l#(K=dDnnM&LM literal 5249 zcmb7IS#um$6+S(SG+Hd#k#{>zha@<06j_TUTjPaD^2nOlBgqK@C*0>6jhY@>&aC{C(iPUJcF+SE;{Xnr`U%p{>)9 zO8Bw1<>>SsI*yyF(vq9L3PRlAn^1gg;ojO>VR^l>I=8;CRM{x3m5VFOl)I&Za$p3C z`fj;_8?ikrPSLRfI=tdUPTX+~^On(6bgbYQo3^@X`TTX;vhAk3qi6(P&V{&c?5Ls> zC~wEG>CB>G*}hRzrMu(PtDbAS^-#^(mfas{Iv*tx$huO~Lb3 z)lsYy&+N`p)^!=Yti-UZV)J^9JrnZl>;Tif^Eles)~9VmT4-72CA-O zT7l&{@Mw5t^P#E+Fs(err+&p@T83>sQoe53wjMN;?x?EreZ$++?}o|`{87Ehit*>m zeuVC*4$YBp$M7sS^!1OU_2Nrjj1r=rz~VTb|oeo*uSL zBe0zMsBXHt;|4mw_1c~lDBTLi=t4d(m9bzOzF*le>K^V_R>!9+^OZY{Pg_u`z#+;& z-xeLo=kKT;W&3-6pqjEVA|^t%+I6aQw-7a-5>vINRehU4iuF^L%XsNj(eQ4BNDA>R(fa9f6$K8Bdsrgqcj3OO(bWN>)?UV-=xlHxW!H%nW6v z7n1d5>e-T{QEwPnwiWErV9_r+CFO)A*Hkok->`zt>JU#puG9^~4lzXimQrRZv;)d5 z!Cj9hD<`Oo5kpxpa{*o$Ha`m)Z;1BcD*gVZ3PWI z)}WUQWBRJCFseuO(81&jcsgQG$%Ile2b-=r*2(D<^&_0(a#8B!$mYh}dO3b2^32l! zfD(*2D@k2Vb+}6%Zo0$Gbhyj%PDK!B+Q6ThiKnmVsQu_6(Bqc?cr`g#4h^%(ROYjo zzDnnAL6``Hcf8Pv$F99MrmwV=qu(?FLtnIPehh#Qo)SzhnY>!7;|oe{$?)ZULPhfP zCw%XmX$q5ccgOn)cprEC6*>v^cA?n{_TrZ?c_eA}V0Ze+2YQ2_9L}3OTzcRN@+h*Z zRkM)Bs9$rAYDW#*?>Yb`;s;%4UeztUk6eTag|SAZRl+Xn!s4!R2XJaWq3+TM|W!n3aaQt!LYJX-N(Cx&c<`w)@#bZ zEJCnt*Et_Rm2T|dvT{tc zZea&Alb(u8v2qLAdEjC!CJFD9^~5wiEu+oA&m;yQevx_7MNja_pzZq0=8QmqnzLFo4x9AXl{ArZZ@J~kAH2xKam%?O; zUdFkEhG>YM0*!!<(@8o-XFz9#o*^CdEa*AE{IJGvgjSqyYwE2MSy3JzI%YaN8hI(&<{a;V2BX>k3c^L{Z!~@#PoB}FF?Np z{hEFg({Jf_^n3aP{gM7mDa1{O8F_qiKcOQ4l|LFn7@?!W(=lKypA(6M5tq+tSeDOO zdOBjx(K8XlIgn3|J_7|}p%=QIgOYeLLeK9nPS6Xu5%1_o+%w7I9Nat=EwqG*RBNX* zujcOl6B#~}96pUyKb}>^GYf>Rn38@s7v6Jl56T9o!g|K%YV?J|FBUoOP+`w=V z{8NHTQACM*IplB=+bq=LbGW@Bw_g(}c47RsMz3Li865WS3s(|V0@S|%A-d-Cu}Nh4 z3qYe3FCQZz;7hP7cj6xVVppZTuF;ng{8RMhxHx*diz7u3;tKDH5?0aZfw-8WH(>1n z{>ySwMaXq$XoOyj8cGg|+SDiP5GLz^rrJcURWV6S)Sg1^)ne0wQJ@$Po1!sInaLsG zQ-uI}>%y4=45UgU6Q0$;$!XvKz6Kv_ypH2&BtB+dg)lPk>DX9FHPgVp%Njkz^i0uK z>?V&HTZ(8)3}YWgh384r+^;W8num}$2PHB7eft)8R=V^oUaV-4Z3CbjLUaiMwlvbg z!bFSBWji2ki}f_6^RM$+jkZxle6-UAo~+|Znt?qZ3h>b=z#IcI5OFTUuKI?KY3xI~ z(HxaEtzStTfF_TaWUA1BX)BKmwgA9sN&h!A&&69{U!dt z;MeiWMnBbZ-Ra2C`$)qF^bJYFhxm?%z&AB|p94vulirz2(YFx92ao~K55YnIw}p!< HWS;21Iw(IQ diff --git a/scripts/_00e_questfunctions.pex b/scripts/_00e_questfunctions.pex index 45e777f2498647fa03072f6a5c26f2049f9893d4..8f41a404e0d1240d348c4bce297dcf2e0aa0e5d6 100644 GIT binary patch literal 42530 zcmbt+2Vh*q@%QY$lPt-Sd%>oOYMPBLxr!=TlC5Cb#*%HiI7v_T;nSVCJK2b0N`O!j z5(ps)kc1?J6iN~x2@rZop@mdPAcXW#LJ9#w|9&&O`}UpgjQ`=&_KShtu^mE_CTR zTT+?&;IlLt&BC6Ox!Hhg29#CH!a`ReSqQ0mS+MCT1s5YKM(_2&dWN$ibO(oOW4a4D)!>K|cmDxbk+A?MHr?1WA!VRf>A3)_>ablz8;#-;7q9B_xZ5ar$371?Az)ve6t29xR3so`>PpX&Jk zj(kUEO)`Vdrki0zjeuZq1v;P|?7&M)>bk;0b6+8w>*`CUL)yK$|D@r3p*uAgt`2jl zY=6s0TV_Kl6LL2N5UE390-lqNI9 z>2!8WM}In8x-nV6*)@_0a~nn+(s5mzQbSC4cUG8H&Ci_5Q`M@>+M#|H#BmO_ z5frL%&mEXqmtHkoph@k?eqd@zV+_ri{uX@E*jOHok3C2!T5JkIzZo}#Jy)O!MR{$R zeyYZQ>rx{2Q_OeUz(Ck1Q;=s7-l1Hs2=}yj$;vDbRa(p}pD%63nsIjxg<(I zb`-+FJd3AO!5vJIUCO%Fhi!}S}(Om{As$qzs((fLHoBj&R?4+$AcW*FT>VbZ#6sxRzc z5z54lU6tt!Gs8>M**qqzXARhiX-ubEve`{Eg&!d&gUQ^8&z;J-OLNHqR&Ad>nX@|~ zqVc-mz{$fYGrD|dSTN;+9J8P7+t>}Q$P{P>h+Px*LA-M#%;#9WDXTKgIbcPNmTYD? z-`wAi(M=nbYuJf=o&{)Ye|C^X0}Scg#1;tr1}DQZC6yafzzAvV%Vzq8#n6ZfG0AjC z_r_GdJ}<_z9;v}FnJLs4vh}@TJro1NWXo3 zu!HrPY-aX`QH^P@rY3PNox}N5Uk?Pb4{G1jdE~r?-kz@HU@}biY)6#=9_gm!^|>gL4ejOKkcqhtk@ro=Af8a~pa-6y~7|f_=WNxFXyf zrt>3kBZEEpWgD~k!WKBFwoEuU(w)tUYktFlIn>s$($QFLftDSvD|*eb9vd)IbWxbBCs;0pnIX zlczX`B(*Er)7fN!cC`pCdpdzZ*s>B-NWG~|O~!tTy0OBVYzYH4aIHKmEo{gzVh1<# zK)3S9HFFpAc#G20ktyV|ozi-GQ`3snKnP>o3JKfjCwG^D)^H#>oMz`>G)TPDs&xOl zWO_KHT`alHeH&BYJX@~3@r;HC``B`$lg|3}Ko|2Hmu6w+;O`7)$7g#_f-TNDFH9Jy z2(4i)lO&`jAn}`Au(1aEJhy==#46BaM@%~13`=Q5X~(7}_FnMMeW4u-rm0|G|pHMY_$y{v{WP4%U1<7uXAXq{wk2(yD>AvZEg z4|O`6&AZt@Kw57zuk z*O+{nG0~M?__6iLTn2TdaB7ctE$py3c(9o&E`qacfc= zHWrq{(!;7^kZ8uz);+hOIo}s%`a9v%q#|atdAL87T?*0L0KeGW*&_LMVio&rF1HtX zE14SDg}89JP+j6lLrJ7LEU$T*US7Z&S!D;T1>wk~C4~JB&5R48v3B;wT9*|k1TG`X zhjRs~4mEYeSh139XUF11=VcnYvr++5)7dq5zL|pdqgt~4BXj4iYd=Z~Yd5Fz!(g3A zI~z@7=}WlcJWf$B5owP2GRCiK^>(Oi8IcO(-E6OEYnO})@eRb(H!p()J83ukY zrp33oMr&ZVV^*}B9Czd+Lbq!^WPI>n%OP#jg%eNs@OgbbYY>eO8|?tQ> zt~9Ca&#vOdg5%lhbO;Y;w52nf3C)0=doJQALe3n=3K1Iy|8I+&<`r2ZhBckt-B~l3$etH964{gR8lyJm1^%Ktmx9vg zM*LhsXpD9kH86|C&0#DU0O_D(G@M4f6_2uZx5%w>@(PDN1TR85I#;y{0ehAspfwxjS7r;{Ijl9M7VLkK ziE0nA$~8u6PB{c|HwF=GPv)ApB#p3eILNyJSf6jn<_uHEY%&kDvqfeWmrJ21a6>F| zX8aS_pye_{!Ppuw742}7rq#TxIRn{@#d2K-q%uRMCSzfKk zZgGQykL5K879Pv8>HfJkoT(X1<@-!zNaKuNt_=G&VP_zuvifGH9X1HIu4@zGoDIg? zyGXQzh7t~sHT@tAz|tBbZq}tS)rF01O`ViX4wm>MHw|FzDqca1BuhBlg0NXeS{*v3 zlWSHaeMKWVawL~bNi!#4#dTqzv0yd=W;f!nHHO$MGKNc&Ln-!BkfTn-e#>&%JeI7P zft)o9uspqp&x`hYq{EoNnNho3iI1>yikYuOKO9N4#Oqv(HC{ShvMnVDoJ=$~^hC?F z9>=X#pz$lm(axdEMhRuvCgFB-8Y|^~3=}I^W0ofLV!@I!8yaa|Ba(A1B?1u>N}&|p zr#h1-WplC+>&Wznr${~w>8O3ENPCKlmP4SUBE(CvR#Em?*bobr(} z3+YfyjdTym9Kd2cT$W32cE$mDtzm9UDj!?IIcJSfVPTKK81*`_scC)K%kBU>Nya@m zwwMLzN)Uzp&=6tss=~%FXQWR0M;rk&xF*Sa2`$(GNr!#8k#=nGNa;9dH>?R*QqD$i zBl;f|#4p-zQ?m*%ram_37@c(#9Ha|bRySnbIFIU#rZ2^|6m}locd?9Rm|HA6yJH1s zMK-g+TeK2uf*`~BdB2i$D2kQXtQW26Vh?X+7b@>i6shho_VCTHW|w1;H6YB8Q5-E> z-3I5`^;pNWvW8%9$>@%A7)8{Ip2e8$0u&=Rc`UTpYnAL>nB~~gp7>h9t-p)6r@E8a z0nAt?%j9iiNz=ev1#Y?Ak@2f#QQTCfL~)%7wWO}$^NC_YVe{JZL-2=1VLZCwmEIQK z`ijLZWzA5L^~P3#pGx6?4G&~%(QP}}@Bm$>?G|t~FL>n(tdW3xV>P@jFJm^`M+>q?WF0SVv zY_h@Owh|?D6&f%qyW7d@7Pmi8R!L1fF9s3yVnKmhRyh)*kjjkGSej)?Y__CB#1)8+ zO_rHXD1ELV+GN&4F3vKgJ!1cPgF%qF$l4ZK_Yf7^_(dEFxv-~5JmOnY*zhx2?xxmC zM~B%9-C1~M^GY^rX`&RzSD{pAvaBf3G{bazsuXdB_LThX#H+NMY3-)0%#6))f&DMH5EHW3)pl`DTBGW|Wo~lQCk2>;2+CJ6WSb zCmJs}%@neMp{bG~czgXWBkfb#w`G{{)~}|m1Qtzgi4CWTC0m0uu_R`vi6uMvRwK3* zj$2k2b?}El z(z319JMKl;YaBMjqQ>nIS8n&5W;!gT5hqP9vY=-FXq26gj{b^tMP$azd2y@<1&fX% zX;vw{qFGRvqS&;^l8Wu&us|-vwDq{4szS*iN z+Lsc&vOB4~bxC`bj@9;OgvD%J(JoTW>Qd>(P?2)F)h5k|_w1%q4h+1vFk#F`m#8(TD~bko^)V)og*%dwr-%b=o(D)Q}O>1aaHW-<1JY5b@FoND76 zkan8wIJUho8-*DA2{f^&E1b^cMpZ(V<$#&=uHw@%8wrUiv&TiWlMK*S=Kzl*6}Mw+ z8@O;$L^pn~MRdi)3Zu5!Eg5C3X4h)#iL6{kVWZVTSQKXzs@$=*H7CWA?6(?hoE8@) z9Pr{qvuKOO3aAYeOBWWNWIppRUT{&RiA~D&RHUP_in4CS>}PJ{JeelAkkB2TQf+*z zgl5J=@8TVPnjSBUh2><#^?kO{Y>i^eR0zZGO3sAa+N=s*GhTu1T4w&CC^c zzqiXW**1J1FKc!+Xj=J=9E*NCo0((}3|H_b3soET;kb+@mYif*F)0$J`1ypjm}b1? zx1MNR@k)(qc^sX087=2P`{l-qtqg*%*dTVQmH6&F;(()tYeR-Dqw2P<&q;&*%C@{nR{L^ zm#UkZxYuE%@l4CNTxiYo1e;4#TfCiJQ4jRFnG zM3jb)O&2!OM4toOKbXoS<5^-CHYJ&FJT3DUEcD4mKDpQ@mk49Ao*0zNv};0huAASO z;+u(^s0srX4?wldV7_<8d-_z1{I+}^*Qxk|u4fA_N)8U<9G)h1Y{155*p8dKnSPv5 zrm&|}m$xX)-Ky&{!}a zs!%5SKj>8DpMO zeM#Kotsll=XjG>@#8FHA=2WtN8SXswj)ZeuFY}@y&RgR08X^iCA`0g%rm-Ld_cWg7mtA?OLbcMqes{7L zSTdWln?k9*Tlw1HH|&SG4O!98H`S>Y_YH8}5to{E*rRN{QC)V^S(JB ze`TT4usWLTNc0*SX^MX#0t`Wbg5l#ve^IWCdg8#^Oj6z@2zk33ZxT3s3nDREIF}NT z$Bo3-Oz~pD6w~o2qv}*GlC%X8K?@>XSTH|AA6a%7LI|0>@L~Ohn~KO^H7<6|8Y3}p zTtWftcvKMe(Kw$b4<=86dox_c?lf}%IAl}`s_e`AGD<(FQD-C>Oy^g z2&Ljvf_i8*8-vY!6&BJh4@-}z?;S3OglqIP zPQI4nW<#FC0II_K0dihW0aBD;X{S19v-nx#B&+3^q!TxsDbYF1uS=m;U)YS-6YvHJ zUmC`dwu@6JAyVkvKe#?t%pay-Mu=WyI~eaN$?G|CC3IY8chPGW)i5fXi~+Oaj1jQ& zgS|0#z-J7s!yPc((}0z+*TiuvRNloZDoSP8U%DbDB|=e)XeiIdJG~hSGEN2zC2G%w zA!0l?0Js^KgrA9$&<`8nG&K06m#79mI}P)xG9_0ce8mMmiTKC_`n(>jG8MtKYD0%) zg6ifpB1){hKrq}+b+3}^V7v1CGHxh!JJT+hh4^L?)8+FaO7+!r^JTiJ?}GZxE^ zyu+U0_gZL{+d0CUA@x|IA5ae_Y{UcJI$*zRUO&OkRvqsYXI*Xo7M9sybhdXKlBD?SusN6=p>}B;~5<=wuW;bTzd1ZSVCvI&lOC1?Z z5Ufv)3sRW<9)0E7jA;G%y!@G;d|X7wq=J zHi!Y1)#^HE9*oO6+7(*_cmt9>vD`&C=128bMZNMqa~^SeIwhJlPS+ z^wvq}%&+c=%eE9l-drluS_oOC-2xh)+~jsigm|h=xo4K0s@{&gY*5koUK1v-!j+pG zFZZhRQPM_L4K8|Wbcy*cvCt(JQ*GWJKFKQ9Hic4H22)L52$3<^%*eFBr`L$bh3^7e zd6{Cy+S@*yPGc$~mM-=zUE&34iD&7O23a#Z*;toN(m(eb;u?z(CY)Nh3|`WgW$W2^Vrj^XwZd4)r{*KJ&c# zV6`}5Ac}I#>mCu-d0soQPZJ^XYKAqb%U!Zi_AvP10Ic9QK25l?(?D|vA3BwNQw%$2 z%^h&2Be*3k?@sc93+4i^^w#kjpV#QC23irAjUT`U9Y2m{ePq!P$yN>EBDt*VD|_XF zXha5+_zM<&y-AI+@Wygq4xLQXte635u*+xl3_;N=L8X_;6 z1L>%Yk{X^P@YNBbM%ppeoyApP>~NW9*(L!ei_d(FACv zYiJtO0To2D)4s7;vs&I)7Nb>Z(zpkXbqoj|%ipU8R%daA&SruoQs`;L3c}HfCB&Fi z%W$CphDLc_$QQ*Lc`=2>j_P`mMpRR0Un+%W^JbT-cayp}TG1|!rg!l|?C-NtIC^E< znq^0`VHh)HL#8^LFq>}<3$(8acE#)hSaE?Gy3~AZ(8FxNW#vY!;V?#VVYJ#tcwuWJ zx^SuapqpRIjoxml;^;sOqZ=j`_fZmLVxM5C1P=y3LUfC(AsSsnB)o{_U1=0AG%TTU zb~;9v^(Pfnp+qhGj-IAwqIayx8a&#ySXf94X_1A+w3wDyXrd-MD1yW2Flq+0#9%2crM4Kf zQ#%Ihp@TZ;h#0J(6|^!2t7sJ+8G|*%unxd17{feC0(t?KRf;xBvYN|s7Pzd2D4 z`zZsn)oe9K;6Mcs1Tz@HBEVwR6oZ4*LF!<@Ap(ag1I?;gwFoR#06{PloKUL(tJN9< zlD#8Qr8>rgWbTCjC9$(h>;lnI8I@H->SUEuc~wxuYO~rRwRUB8odGx#a2DWffpgS3 zQe00oPF+|87paTX#R4ByAC*eG;iq}jCj~B7pE4i?yJP;<=K!B)kgPq3)~l}wT&Ebm zX5s6K;d%=BPu;H`P!9qg z0{j5*L%@#&9#)U2M*)uk9tZry!V`+&XBK|07=9&W@5w`a2Jl<;EZ}$QIrW?r>_t?o z{;K|_UMPYW)l2FnsjxTEc=amaHNfivZzzU01>RQgNVQqee_bH}O9?^U2mfg(5R&^6 z)#<5v8elqL2f$3gj(R7(v&QVA%6>!>^qzWefmwQ%-d7(0n62jk4%Bn?JUve;?oYIf zUIbVSSORDQ90WKRaELxs9|kxa(5zbkO98FA4bZNa>E+s3{sSAWsT_FM?BK2@KlPuFMYt@=#K1dTKFg#s7p zi}b|;AJre#9}~DlU!p&uFO9)v`Z9gFG;JW-LthEFN?#55g8m}lOMtHct^<4(@HPDn z!1Wex(%;nI*0%`Us&Ccb(cjhI)3*t_Mxq9NH{f1 z7!Q~rFfm}58cYjdIw496h&qFvf}Mk10re5=7VH-69>E>~!z{o)fPDc6SePBm4h{s& z1+!-}9YSSchfgf<4< z0&9b{!BN4{!7);>2+|$&je`E5KiB}+2uKAd32X{B1!;k7z%Ue?49E+T#Y7W>Qvf4H zaB6UBa5~_OU@L=ET>|SFTo7CoTr6-&@QL730V9)5;Ae29)I5ljUzFs*L^}lE2yPI# zF}Mlv&EQ+Xw*fZ;ZUNj1xGlIHa7Xa{;LhMKX?O^9EO;pRL10|zp+wceV}Qqlp8%c! z{51Hf)I5ynz~EWHbHVQce+>R=;co%M3xF2^FO7nigO`JU0R9R1SMYCvR|1CDf;WS= zExZ%FlRz&JmBaC0g3}6d6p|+NYawb()F$cx;}a7BlL1o!(*V-}I{;=Tb_VPM*e$U~ zVlTknfLVZj0Q+qN<|O7M<^dJ}7A7#;=ov0@MWSUp(3)sVv;&s^5AdPH5s4Lm)rmEL zu0(fYEnq$1sKn8UV*tkij!&GB=mGS`pfAyv=m!i4fvqrVi7epcL@tp}6abq6rzA!a zrzTDVoS8T)adzUI#QA^=1TIWmC{5cS=!r`KmnA+4_*CMG#HXd89riwPjlh=@rSRp% zwTWw`;xe9>uS*iPyEbtP;8wtQ0N(@L2Dm+OyHw~vppdv5a8Kf1!2N&+5)URGM8x(X zq9YWTjlXq=A?WQyf`91mHUz(`IG1QO;$Hb%LtQ4(O>0eJ9j!Nsqg>)>mpF!wHATnK z@g{Ks^_awoh?M28*H!MLev=bA%mc2k4W=>+BO#==xKebIX|RdXCNW4ElgPT3Lv*sq z$+>Rwj)H>A8K%u#hZi~(v;|?g{EfJlr@DHlxsFfAVn_bA5_>lMo#pDB?Gop>1PAl@ zt008)mK*20#7A8F3tVRx(nVaG=wjE|M-lnU-zA>R@mK{|_I<+S5?$&#yv()yq|4!j zg8W_Kiaza%KI16(tjoEQt}>OccGK`V$IQ>WI$v;!Yure_=(_llqvy-6&b2P_71#T9 z@#*}k8}Zj%;_I%#H=Oic?{aQ%q}=G{{w7D|H(i}?xo*DgD&Op;{1#W|R>$w}xSa1| zx%A+1mJ!*o(EjngRa>_j>I205&og0 z<43N}kLh7U;v){vqgZUo-{Y>;Ph90ET%Dh~qMx}=f9?{$pkJEizjCdfbcv^2t6#er z{*4SnS15YgwSUHy{nkzTvySDzb8L9d&Fb$R>OUBM5dG1S_$O(u35!E(9sc4He|3q! zIe~xP@#O`V^P=nYC0F_HZhBvKo&Lko^H0abf4QQ6yTmI_rvBpw|Ef#8=9<6mX#THb z!W*vnn=a=qm-DtuyyFt@y2N{ybuhZd!YXBW$X2LEX={a4U|FLQwxz1Dqg9o*KQ+b` zRk@sMSEt5uM2&TIYF(nvPJBW&2=m=EV@QTM3@(MahT zwa~ZORV|7h=nb{l_w#eL1g63wcvLlc)Kk?#p0?Z6!G5Ios6#OQmbO2sLp|!xtHb=m zXVu{lVT<~Ysu==eA6`-|aLo2$6LveInL9_d`iJkRw&+2PRqdYYi`6nnnWf-2YI#I8 z4X6(P@T~e!gn*t@M?m^)r>oTpPtKoJr>}OZ;?TxcdqS=9!w%JIkNQP*q;K<0wZ=c3 zt-AaK52GIgxS_AkYOl%@Jj zb-btGR&|0OLbvLPu&Ek#q95r>mGs!&R=rU*IzjbCCD=Ucj~?hJD)bL;sewpb)Xr*y zXVvG_MqlmgxZxem_MPe^Pr?0alkfB|DvjvIj_0Fl&=2kbmGNyJQCVMduNp$EVcUFB zo$O2QQn`q|bd1V-3UaCdH)PvnMj^CDiS8ef~zOGL3ZJtvj{^6_YRR3_H zIt|gFMR2-0-BWO$I>V3jX0{@=)RZs&Wozi^Xhy*?BA=8L=UP~UEm)Q>Ozn0e07m88KW+SWwzrJnQGhU-T4@#sPAs6OFQ|5{xdaTF_z%c6ehXvN{F=||P8%f0k|UwtYnpNAmzr(dYgMikI1iep$ige%omUPiyIuJ)*JQJ?b*j8JkZuD(Fsc!NQ*DDT=ZMA~>R`j4IsBe2o%&VKD61r5~;(2|wy4833 zU&TSQ#df#)Zsa7eL-jph@&$F97nhH#+kMHq>JE?kCiQ(^@@1e^IFZ>w-Dx_&qq+-2 ztWkHOQ3Lb-z4M zP}oFP_i_5Hagx4g8ou~Bn53||Y|3Dsx!%35tQKe=5ws6Dv=1ru0I;FO{b+=W_j1XY zdIfqwmbxD(euM|Kd{k0D=5oYu3iMcV6w`&rDZzX1z4yixu25YDCr~^lo&P{kd=T8! zO8wIj0=zP>Rj6Dv048vI1NfJxiU(LU9`G1hMdM*XMBo38 z^-Tx)sfr8yD@y&xR^t;-6JNsGc&T|66Bek~D5+k@$p=ToO!BkX`Nw(#jJ&!i)2Ba#%`9`JZD?Lx}qZ~rgfX7OFB@PEK@C{u-Rzsp?2sBE1F8+s* zH6RX*0u)r0iLn8O4@w~N9Hsc6#0a}yU?-}42m;d;GZ6+gD*$wNwDO<>p593Jfj^?k zhO2rZM!X0XWw8%e^%4`V>LzggpwZ!~UdS9V;i_H;wR7RBUgX17r1c`G(IT#ka8)n% z;VPFcc4bkxs+Tyl4=KF_1`RC`a3WmQi@5~hD(JD{sy+x0n9+k3Qc;WtyS>noW5QLv zusB>T!3kUR7>BF6iMxQqKq&k_;-;NrJdLzuT1>PQJQqax5HR^rd=7)Q9*&%`a1DpR z0VJC5CH7f|FbN5W(P1tVf^?YiB4Ed%oQoP<^-!q_19Et*>furqCJy~gjnmYO1!qFH zpzEdhv|_&7pzmX$Bdv_*R`9W1>1L%{_z~AcbPN7fu*2d6`jY~l#ih25EnDi!67ZF6 zwv0V!D;|aQuOkGqA_xBJW$0Mr{zixX5d3ulJuFvrB?vfzQ~Etd9i?jspu2x$5H;-K+G`ZVr!eY4G6~&V)%T@(Y@(!T)2q zC_v&kNdV7&ikC#ISgC$fk zO&%m@VP@rH+)=ctbZSia#A8XpsV3(%ixR>%f@(D1BM$WG z)TPhBhgEHyaC9qF?M$fJSx~#PVOGvT>4%|qxRk5UL;m>)KtF=?1^B)Y&lh30v881G zFq(@!Cv}47kJs+o=P%@JD_WweQLZx$OZ8Uh#92l)&*H4|s)=TCaR;)qkYk1dlk>bH}ALnvnTz~?b$!?YFq4i_Z+VBOL z;K%u36Ur|@3Pbpqq(0(MNdi-VEh5ygidSKmfvA45&(;Z65pn%nk&8l1?B%u%h}oLB z=PXnZ*Z%L~!G1*PGt6L-`UplK-PW1Gq9hvZh0$OybQH>9tIS{}lLyQ7%wW;l4faAm z*o(|yFH!oU_@J$SbNA{Y?2eUj#R)z$h6DB-8|XW+d*3pKscdhe@{do`4K21xrX zTpI9xP9*J0p%a;4qoi4ZjMciz6setLjAKp9ouihvSXxTjx4hc6+*w*yN=te^YH5q5 zrKEjJiMk@U%@+d8V>rZIL%*B`qN4aIu038e099|8ZNeI9Bx)> z=X0@hvSW!-(;k?tFUnkj^Iw8#`!WLDI(;p;`4xItUk9W3RT#Uk!4Q6(j@92l-u3w0 zU}6z{BkJ9RI^RUA^&sk6<_nv|kgyk_@|9%)ycC(N#eIhIw0nY1?g94~9 zV#=@Dab1UkuW_2UW8j@4?}%)u+g}CC*Bwu8QTpq)tsSD^VGAWav5=UKZ#4Mn0vVDn z$-lLTpnJ*?WZh+)prSTgEbkCnUnh3Rjf7XfqefEH@OQUdLp^%iJL3 z8!w}8LJtuJ2qZGhv>}GNE+&vIKZ3Djxd+M_1|>Hwhw_`qM-6z4hb%4=@`^Xsx7xgb z5{IsM^fBoIlYyR{z@X@TLrw$^Wg(3;5ISL#FcMv@p*~C>mJ^lgb%`bobf^C(Je*U z=%DoV;?h4BKR!|Xcz@9&pE^dEZ&!3-@#9yEAD?rNc!?wyup*Zq&2$t+pmZYErcuqx z(Mwo;2OY2ZP;{)uJwtsL4DQ|d;P6x5i=`&8Y8-&-`|D0%#iC{kAEf9XDt(92cd>f0H<4pgTv5<4CU@Zx6Mheuu{ZpY z_)${>OKQ}<4>i!|Lr9^?{gPUXCiiobK&YX&g_Nm~4b)!C1v60h0n-XNka__7_j0g` z1uRaG=p5ALiq)f(^Zg&;EgrNDc_hI5AV?9s7%lhy5F_OV8(`C!)X zLfPH2X^m0;*fR)N_$Yab#BzoY9?L&@bHUP$dcgAj;>eDa$-kHE1%3YmM%I{U{dsrh(# z7YzOpU;rYxLpX#-1pzWq@R*`spujAuAK?NxgvU$|CK%?XC06zkV`U%bipI+Nxe+V- zxbL*s%5tX>HIbpiggzpEZIog3b`<#aPYmJ2cGTi1HkOQBXfnofG))-j6P}eUeNwqJ z8gSH?8Mo>JmYW$%M9z>yRK8c^=H7o}8+9I68VBpfqB(>dO8m@++Ys!>X@Q@0zb^hc z=6SqWonOGx{1R(noUZF9ApuX}^K0bcX0U!5(!p!vXAp@07QthDZQO~jF80j9YUnIp z4GHnF%LEDn{tKml4gvoK&&C9h`YSYpod1{iTlAA=j`Xik@D$R)-*BAxYvkh*jegC= zh@7??>Wc7JjmFLxVfO_)_Z0jMMhc!D=uV^tpMJrl3`E70xLQn}?$InKSN1qUGIJ0*($gxcO75c&K#iNPesmN4d{eayx z{T%05xxnrxa0vq&Cdh<7853p>52XzIqx$zAk=ZnT%J8*xf6fpQtquGg*ze0iEWw6EfI}dBKl7t315H47pnXfFAUjE zF#CT(KF#q4#l>zMar{luU!t1yXR!yg*w@wid6a{g(f;*M$t#Dra)BQhIC>l;dQ0o5eC-b#wF6= z1l@-3bo-D0Y1L3~rBOdpqxZZRQhaZULaca3f_HfnK9`4$h1Zc!PvIInCA zHEDDUob%~7n5Pj7WMX7MYzT0oc!k0%+^E4*g4enw&4v-0eML0gK_HXGw})hUWwK;? zEtZS7jpgFeSn47yJRNZ?Ki@W%=rjsdgqAT5i%d}*%W2!j;?}-AR>5L}BZzku3t>RQ z3J7xoX~YHZD*dJ-vH|AwJxH=tfnFdTNk=eI1=zrmvI;2+D%>1d)qc{F^#KgXzL?k; zcBC15P{EXN&y}|48t59zDx)&vLazPbJ@1B|KX}i$Z(W4FXr5zZ zeyRMJFa6*>+bxDi0Q{Q-TQP+TBF^BrFTkFWJ3fYkn}(aGvKT`U6K$@kU^)(G6TuGZhrtYU zJ`~IZzp(m49&JU3pFxHr3%m$Joi5})-( z?Ja7Yi0>IEY)6oxgPjafR8^ybom8+Ry5EWWOMqv;;p5^_qukkzQiw^Q`i@*3vw`Z? zu+l!h9~U>8!~gBwfm>G8FxUm#if~ID5kIJcUAUwF&5%-~N2r2bG2-f=-b{9|8$@?^ zL_T{U0@@QIy%)asM&2ycY5?uGL8rJJfNLbd9xA8@HL<0La=Qq>w31=&_F;1Y zz*ifLYeAzIee^A>C$&onCiGdn3@nX?6+-C9De_I+U^fg4ldv0;$x67VD52S~u*4%1 z1$&_eZ&(C-V-$EqqrJHiB(OG*qKedVG+y%YCHn_tg_g*vtd!flyYld zO9pTGU9Iq=F_sMQZ`9gX&Q=W}h&A~jwq$F=(r%BBV>={4{b;4K*GxvQgX!auuo#ZW zn%eLlYij1V<%sZ`Lt_!Da%<|K-syPRx!;cZ0JF$}S&#V(sK_qa>l(!@>hOvJyBF+Z z%|Z=AfqfKh5W|K^-G`Zt6FmrG;I1O$TK;~h0t;ZOnIV{l=2&gp4fj`c9U7WyrXkIa zlLEcMBO61UvEii+7|<{0u3LvjJ?V(!rj z53{%53U;>GzZ_6vdA)yG5*rNP5)bCVWF>+IJCH^gv-x}#6oc8wW(U8Jgt34bpW%yo z_|+tyLkLS_T%->c zfb@kRz0OEyu?>aoEV7}XcL9@FvZEa=0IL?sIL#Gi5Go1wk&8Ls2u*Y-Z}60yE;An5 z&%1Qq@h-ZwQ0Al-E%uMKfUzQlR|af{z!n7p{9}5M>omDE#?~ZUKpoks$FEw+ycHeL^PIbU9MA^`MH79GMTChy zXw(!Z4nIJ`GGBR%B?z*9Q27&#>jnlu$biCeU0gHK<-tr=DUS~(Tvi5;@lm_Q8knIRY(K;Dg)3v;v%IRl#Ax5cG+3 zD;U(u&j{s$l_C^v{D|>3!&|oDpQ*@S?Wj8yUt9rqjJZ^BX_RqI;F883msAC=!+{H} z+f7CO!V}k*3RoU<$nvrZj$qXPTgU=y_=gI@>sg|QOJYM*=q5fymha*r9&T#z*p`{G zEn@<(YToA9JQAtOd_rrCewjhSxcCWt5?(N_ZSmaWay)NAYt*(#cygq~FbFUI{{J&* zSK$|4`{WTX)xj$CAtR}PRbH+Xe|0Fj0bd_dYN{|5dl5_(YOh9Z5f@XN)|lEaN^Sa_ z)VAD1?IR=lQ4ZXAQ;Bg8nA+bqh7*&rMp2&~8u+<9%2{D0u>-kB$iEdOWgya(0c|H9 z5LAKKPNgO~VuPZ$_*%S?sbd8arRu`Ly}d{ubO&qsVtueKSdSmGTaTZ!TOU_C{Knid zP^e?A_c#veV)q-oOK@wPd@!?-+Xq=|#!#t4pJ=&)a%R7?)R6&;tj`<*3 z5MUK{3?}MW6&%Oy*>fGsiG7fHywy}}bp^)@F*vcFsAyQ`09$6k2~L+$;{;y=N9X*& zua%+tC9vO1*?yZU6=(z9h6<>lMFn^b!Zt;2S^7q zz@oe+`hy zw5bXliedhZ0jv1G)x|xVy}TU5dH1}Dm7LGA@}mX8C6UmHgMcx zT`__yKs|Osv6L2k>}3aRnhh<|1DO8-u8N(F09Q-vO!fwsjWF15G;EM@>tG|qsxDdu zSNj3!AVpUNC&^X-|1{(vynn{*%1b1+iMKrlRgl70Mg=Efs|Oa+4HixF3@L zXjhLN7Csn)+TtcYpMeKCsBNBBNxV_Oy>|qHIGUwr6@G}45#W&LJfsn!pKMQIS-Irm zJkB?F zv8Z5J*W)KDH$xz{*yTwzW^FSU=*<|xW~Pt#aInhzh9d`$2garzHARM5;kHOiHmh=x z9|jH5i$yEDtNY91Rou`Zfk~96a6&^CmAEfBOfyT|E&3;L&ayuuej}j(zE|o-+fJhU$m5XDZVg?#ZE4+!cO?5;Ou3T z3_fXn)#dP0Gr$(?$$vsP2@YQ>l7g`mz19>Qj=B4ktWPeNng}Qivt#FP>rBq4?aV`* z)`>9lBwlX2fP)SM1D`h+chOve@Td}mM?rAgyh0?H798BJjD<2h55<=hAL^cK{8a>AnSOAxscb-2w&9y1K1Rf AF#rGn literal 42477 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≪GcDF!_H-^*;%>4 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 E4?ZDRb^rhX literal 17404 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 EventListener* return std::addressof(singleton); } +// Unused void EventListener::Install() { RE::ScriptEventSourceHolder::GetSingleton()->AddEventSink(EventListener::GetSingleton()); @@ -57,6 +58,9 @@ auto EventListener::ProcessEvent( movie->Invoke("_root.QuestJournalFader.Menu_mc.RestoreSavedSettings", nullptr, args.data(), static_cast(args.size())); } } + } else if (!a_event->opening && a_event->menuName == RE::MainMenu::MENU_NAME) { + RE::UI::GetSingleton()->RemoveEventSink(EventListener::GetSingleton()); + CheckScriptVersions(); } return RE::BSEventNotifyControl::kContinue; diff --git a/source/Enderal DLL/src/Main.cpp b/source/Enderal DLL/src/Main.cpp index 29303b84..2c17e3ea 100644 --- a/source/Enderal DLL/src/Main.cpp +++ b/source/Enderal DLL/src/Main.cpp @@ -141,6 +141,7 @@ SKSEPluginLoad(const LoadInterface* skse) { InitializeMessaging(); SKSE::GetModCallbackEventSource()->AddEventSink(EventListener::GetSingleton()); + RE::UI::GetSingleton()->AddEventSink(EventListener::GetSingleton()); GetPapyrusInterface()->Register(Papyrus::Bind); diff --git a/source/Enderal DLL/src/Util.h b/source/Enderal DLL/src/Util.h index 82883927..e2d67ec6 100644 --- a/source/Enderal DLL/src/Util.h +++ b/source/Enderal DLL/src/Util.h @@ -65,6 +65,72 @@ inline void CheckIncompatibleMods() CheckEnderalStatics(); } +inline bool PapyrusGlobalFunctionExists(const char* scriptName, const char* funcName) +{ + logger::info("Real - GetGlobalFunctionNames of {}", scriptName); + std::vector functionNames; + RE::BSTSmartPointer typeInfoPtr; + RE::BSScript::Internal::VirtualMachine::GetSingleton()->GetScriptObjectType(RE::BSFixedString(scriptName), typeInfoPtr); + auto functionCount = typeInfoPtr->GetNumGlobalFuncs(); + auto functions = typeInfoPtr->GetGlobalFuncIter(); + for (uint32_t i = 0; i < functionCount; i++) { + if (functions[i].func->GetName().c_str() == funcName) { + return true; + } + } + return false; +} + +inline void CheckScriptVersions() +{ + class ScriptVersionCallback : public RE::BSScript::IStackCallbackFunctor + { + private: + std::uint32_t expectedVersion; + const RE::BSFixedString scriptName; + const RE::BSFixedString funcName = "_GetScriptVersion"; + public: + ScriptVersionCallback(const RE::BSFixedString a_scriptName, int a_version) : + scriptName(a_scriptName), + expectedVersion(a_version) + { + if (PapyrusGlobalFunctionExists(scriptName.c_str(), funcName.c_str())) { + const auto vm = RE::BSScript::Internal::VirtualMachine::GetSingleton(); + auto callbackPtr = RE::BSTSmartPointer(this); + vm->DispatchStaticCall(scriptName, funcName, RE::MakeFunctionArguments(), callbackPtr); + } else { + auto a_script = scriptName; + auto a_version = expectedVersion; + SKSE::GetTaskInterface()->AddTask([a_script, a_version]() { + RE::DebugMessageBox(std::format("Script {} is overwritten by a mod, incompatible with current version of Enderal. Expected version: {}, installed version: N/A.", a_script.c_str(), a_version).c_str()); + }); + } + } + + void operator()(RE::BSScript::Variable a_result) + { + if (a_result.GetUInt() != expectedVersion) { + RE::DebugMessageBox(std::format("Script {} is overwritten by a mod, incompatible with current version of Enderal. Expected version: {}, installed version: {}.", scriptName.c_str(), expectedVersion, a_result.GetUInt()).c_str()); + } + } + bool CanSave() { return false; } + void SetObject(const RE::BSTSmartPointer&) {} + }; + + RE::BSTSmartPointer{ + new ScriptVersionCallback("_00E_PlayerSetUpScript", 1) + }; + RE::BSTSmartPointer{ + new ScriptVersionCallback("_00E_QuestFunctions", 1) + }; + RE::BSTSmartPointer{ + new ScriptVersionCallback("_00E_Game_SkillmenuSC", 1) + }; + RE::BSTSmartPointer{ + new ScriptVersionCallback("_00E_Theriantrophist_AlchemyControl", 1) + }; +} + inline void LoadINI(std::map* settings, const char* iniPath) { for (auto it = settings->begin(); it != settings->end(); it++) { diff --git a/source/scripts/_00e_game_skillmenusc.psc b/source/scripts/_00e_game_skillmenusc.psc index a222c6f9..66c4b356 100644 --- a/source/scripts/_00e_game_skillmenusc.psc +++ b/source/scripts/_00e_game_skillmenusc.psc @@ -11,6 +11,10 @@ Import Math Import ActorValueInfo Import _00E_QuestFunctions +int function _GetScriptVersion() Global + return 1 +endFunction + ; This script handles the custom character menu ;===================================================================================== diff --git a/source/scripts/_00e_playersetupscript.psc b/source/scripts/_00e_playersetupscript.psc index db085833..dafbeea5 100644 --- a/source/scripts/_00e_playersetupscript.psc +++ b/source/scripts/_00e_playersetupscript.psc @@ -3,6 +3,9 @@ Scriptname _00E_PlayerSetUpScript extends ObjectReference Float Property CURRENT_PATCH_VERSION = 2.13 AutoReadOnly +int function _GetScriptVersion() Global + return 1 +endFunction ;===================================================================================== ; EVENTS diff --git a/source/scripts/_00e_questfunctions.psc b/source/scripts/_00e_questfunctions.psc index 8430b42b..90b3bd5d 100644 --- a/source/scripts/_00e_questfunctions.psc +++ b/source/scripts/_00e_questfunctions.psc @@ -4,6 +4,10 @@ Scriptname _00E_QuestFunctions extends Quest Conditional Import math Import Utility +int function _GetScriptVersion() Global + return 1 +endFunction + ;===================================================================================== ; EXP ;===================================================================================== diff --git a/source/scripts/_00e_theriantrophist_alchemycontrol.psc b/source/scripts/_00e_theriantrophist_alchemycontrol.psc index 39bd250c..ed266ec0 100644 --- a/source/scripts/_00e_theriantrophist_alchemycontrol.psc +++ b/source/scripts/_00e_theriantrophist_alchemycontrol.psc @@ -91,6 +91,10 @@ string[] aPotionModels ; FUNCTIONS ;===================================================================================== +int function _GetScriptVersion() Global + return 1 +endFunction + function _addNamedPotion(Potion aPotion, string sName, string sModel) if ! aPotion || sName == ""