From f76762381fce0b4682b6971e19886948194c647d Mon Sep 17 00:00:00 2001 From: Eddoursul Date: Mon, 29 Jan 2024 05:52:32 +0100 Subject: [PATCH] Simplified _00E_FS_NQR_SQ_01_Functions, removed SKSE dependency --- Enderal - Forgotten Stories.esm | Bin 10461137 -> 10461145 bytes scripts/_00e_fs_nqr_sq_01_functions.pex | Bin 2668 -> 1963 bytes .../scripts/_00e_fs_nqr_sq_01_functions.psc | 116 +++++------------- 3 files changed, 28 insertions(+), 88 deletions(-) diff --git a/Enderal - Forgotten Stories.esm b/Enderal - Forgotten Stories.esm index ee98d79a75508c5607c169dc464642df8bb43eea..bf3eb2ce4c59a115d5db05d808030fbcd4519ade 100644 GIT binary patch delta 449 zcmYkz%TiKt0Knl+VHRmxYUB+|E6a+o%=Y zDyXE2YHFyZj$71Yq5(6FG;y0dSh$N!GxxA^pB7qa;{gwO#ABZDly*9J#&c}Ez)mL) zx^U7>4=?HE6@9#>p8;G9GK8C9Mi^y`aVD6=!xYoZFv}cX-tZP5@Q!)>yypWSSy*5E z8|y! KRFT&zTK)lAxxf7Y delta 445 zcmXZTNmmVE0D$2x2`M5&rpzKFnPmzMhD*vkT_LlOA!R5$TokUUjMqZHz~S5-{(_~g zg{6gd7LM;Y-gBPi`|b0e^shmih+cY2*GGoF`spvz09mpPG)RuYhR8M4FvE?IXQWX^ z8)K||-R$HT7 zg-TV{T4%itqBh#3+GaIsZL!rh+wHK^F1ziq*FG`()j8mxL+TxN#8Jl_cfv`hG&t>y zvl^Xq-USymxujW(%dWWUnpSPDyWu8oxh?LFyY6ZK(D5r7sf_m|JA(VcgWzGRCz<$} z9{Jey{avCk@~JDkJ5i96n-(iBE{|2z#;The>+2fgRo#i;QSdl;5+bw6uriL|D^ x2GTIqWM!SON!HeK!@G5v6ya|%2Wb|!m&0ptnyea?y diff --git a/scripts/_00e_fs_nqr_sq_01_functions.pex b/scripts/_00e_fs_nqr_sq_01_functions.pex index 9196f410474ee591c2a95b8d978a4aca13d76313..25ee561136df9648b50c44881ad762a04ae3635a 100644 GIT binary patch literal 1963 zcmZ`&-Buh$5dM09Vc8{s2^a`wQB3#|SpE_-Dhj&n;T(g3)o{6IGTR$QXJ^PvFC1RO zr|=ED^&D^Y6?_2iz3~RW?%r7lIZo|tS5;Sk^;OmMzbC)_mCZnakNkDzXFP1xYW3EB zvvqiM+-e@RYU{22Ug#-53X|2d#6zjxZb!X1=>=7c%2Z#y@WU$hFvH`r)k#|6o4A#{ z(Z@UKai$n*NYzxXk{E78Dza+6Db){WD1Ub*!-n5cT^aUJY53>zSYEhs`>=k35ibhc zzGmSDD4hE3whWO!>d8c5&T-!2+w>UL=q1WMKd$e$&fOS!*Hcl92Wez&JFU(ANv1(} z9Op&gUdlLi%sNimjTe`(bi?O<;vFd2O$_KzCyKj)PX;q7ZXdPj$x!OrP3}Zns5nj| z3fi^4x6~z8^y)|HDcrk7-yX)yE%(i;Fg&1&NgH>&CKUVmF!euGpwLvYAHK%pbi`G4 z>Z)oiRWA+`8nWv3;#h{N%5HLMMaQu-%N<6n>Dk-ok_%sXr&1sEld3JQsv?7voJr5` z__Ezc8Vcowg&KAo4fc{_Dn(&EZ1*!HGU%Wjg?sX~A6g&Nv-@Wo$R31BlhM{Da(ht} zVCb;dHN!#K|2|S~V80#+KaJc%PLC`#w~?=hD!xR?*PVLl20c@u27QA3eh|5XBu`Q3 z*nkm!!h=jDZK%_IjasIDjiW8i=If|Os-wrU8=cGDAg~OJyY05tQYtkR>Y@88;Jr9V z^knr^N`&)=_SrMi=^)JlD6R*i(Mst4rigTwkTPxQ;yUnm|V1YOQ2bB?lBR zj1ePcl+7-Kb9fJTaSv0*Q2^#JOL<7CQs(h7aEGC_9cDUjs2MJZy8d`D8Fgvo28!a4>!WxUVh zCUX%JxKH%HF-k?SRT)fU#wO7JVp`w_)UvwsqWQdUj3Z;l;IQol#(ySI z>c@*b==fZK-E&Og+;RA0{l?bA|H5qB;aj3i{|@>NhnZvaJ4EUG(vaWL337Q>IhtqU X`vPAH?50d|JKz5CCu7;O!Kd~gc_?Iz literal 2668 zcmaJ>Yg1E47=9LVfpAkmDB>krt@TC|f}*L_B28kva7iL|TAlQmEOP3}Im|g5DE&qK z8Fu`|f*v-plU4FW&t*H~;~DUREzn;e0cfD>cjY=Gtbh zS>J5t^38JBZz(tMqlMk5g-pZsyli79?D|MFs!yL{3-kYDM8`uFsp`s662p~11(r;5zDt6mUEj8)t{S(E!t*j_8WKx)Trx22DfR^Yc?4ao73 z-0aFoVWL>v@SFn~)=K5(o)aSJv{Vq{La}%(m3oV2m2RY*y;yUuSd7tc9E8&Gt4ekv z<78+%2s@rj|MMUDk-pTmF|nc+PZ%o}D}mR}^|+ai8?}PhKg*WFnbYR>lZU zeE`wA#&AC)Onm|&W~|wVE|Kn`!2Ab(kEV{qT0qRh#iHJ~Sg~}m$i#PZNIVPz52=#x zy!NP3jWiC|e}hap2wRff3l&mz6>8pOpzEtfP?MctPZC?n zY3*pG*vVZabOSMDGt1|YEcq%t=ri(tYOzlhkSu$Fqxy^`Ou2Mg_1p57s?RWXB2wF1 zj@OkK;cWN8rQdMS-Cvn)SGk_64lusTky4V$t%RX-fQ(jGJK7D>kDSO5iL&drF-nnc zo%O3vIvJBBl02;_WNfZB$(4575OIx!bO6_nI=~ z%YECGOyHONwxtu1^tLe?_z&e9*FV;^d|cZ_Ow=filnj}IzO%gLyv2r^)zJJswkQY> zN_sE59yKvq-wF2nYUgY=E1vf$Ahuhzaz!B zM_@p|ZJHR2i3BJb#)w&?7&X!)kiuZ~%}*d_WQU|84}I`NKxOn&@N5x$1b&sa>1 zW5RMy;G`ucF=dJASSN*36dEsSoWKnEy~7A*Y2Q1H8!I}zh|g^v z`d^$DxPP?{1s3QsM~aF$Et#d_eG_Q0r>I4So~G!*AqM)$)5kJnQ}C_vX0i8=1?@tE zUJ@vz%(j%c|J&bxkae4O#LbQ0C7P@lc*aD#K4zs=80!u<@-J(O9tE!PKt8v^#~vu4 zX5oUV$ubYNrS_lp6q?!!Dza7-zkmP!FMTku>Cjf(X2F^+8ok0yuO4Y?JT&#_*Oc=` zuQ#bj*{Vs%OjCk|rieG);yxO;VB-G6yr?osyYB=>dQ&@SnAd1G$Qdc=YSIN?g^T>x zW22|GBJilEugCoo<>Xe6aQVI*xg&$d@-YYU2?sDq-KU4TVgSzwCB`+L%`C+O4UZJs_T(Hblbbd{{c6_;urt` diff --git a/source/scripts/_00e_fs_nqr_sq_01_functions.psc b/source/scripts/_00e_fs_nqr_sq_01_functions.psc index 16b05c84..3a54f3ce 100644 --- a/source/scripts/_00e_fs_nqr_sq_01_functions.psc +++ b/source/scripts/_00e_fs_nqr_sq_01_functions.psc @@ -1,7 +1,7 @@ Scriptname _00E_FS_NQR_SQ_01_Functions extends Quest ;===================================================================================== -; FUNCTIONS +; FUNCTIONS ;===================================================================================== Function SetUp() @@ -14,107 +14,47 @@ Function SetUp() EndFunction -;Old Function -;Function GiveReward() -; -; int iTotalReward -; Int NumItems = PlayerREF.GetNumItems() -; Int i = 0 -; -; int[] elementCountToRemoveForEachItem = Utility.CreateIntArray(_00E_FS_PyreanItems.getSize()) -; -; While (i < NumItems) -; -; Form Entry = PlayerREF.GetNthForm(i) -; -; If Entry as MiscObject -; -; if _00E_FS_PyreanItems.HasForm(Entry) -; -; Int itemIndexInFormlist = _00E_FS_PyreanItems.Find(Entry) -; float fValue = (Entry.GetGoldValue() + Entry.GetGoldValue()*0.33)*PlayerREF.GetItemCount(Entry) -; -; iTotalReward = iTotalReward + fValue as Int -; elementCountToRemoveForEachItem[itemIndexInFormlist] = PlayerREF.GetItemCount(Entry) -; -; EndIf -; EndIf -; -; i += 1 -; -; EndWhile -; -; i = 0 -; -; While (i < _00E_FS_PyreanItems.GetSize()) -; PlayerREF.RemoveItem(_00E_FS_PyreanItems.GetAt(i), elementCountToRemoveForEachItem[i]) -; i += 1 -; Endwhile -; -; PlayerREF.AddItem(Gold001, iTotalReward) -; -;EndFunction - Function OpenGiftmenu() - RegisterForMenu("GiftMenu") - FS_NQR05_SQ_01_FakeREF.AddInventoryEventFilter(_00E_FS_PyreanItems) - FS_NQR05_SQ_01_FakeREF.ShowGiftMenu(True, _00E_FS_PyreanItems, True, False) - FS_NQR05_SQ_01_FakeREF.RemoveAllInventoryEventFilters() + FS_NQR05_SQ_01_FakeREF.RemoveAllItems() + FS_NQR05_SQ_01_FakeREF.ShowGiftMenu(True, _00E_FS_PyreanMiscItems, True, False) + Utility.Wait(0.2) -EndFunction - -Event OnMenuClose(String MenuName) + GiveRewardNEW() - UnregisterForMenu("GiftMenu") - If MenuName == "GiftMenu" && FS_NQR05_SQ_01_FakeREF.GetNumItems() > 0 - GiveRewardNEW() - EndIf -EndEvent - +EndFunction Function GiveRewardNEW() - int iTotalReward - Int NumItems = FS_NQR05_SQ_01_FakeREF.GetNumItems() - Int i = 0 - - int[] elementCountToRemoveForEachItem = Utility.CreateIntArray(_00E_FS_PyreanItems.getSize()) - - While (i < NumItems) - - Form Entry = FS_NQR05_SQ_01_FakeREF.GetNthForm(i) - - If Entry as MiscObject - - if _00E_FS_PyreanItems.HasForm(Entry) - - Int itemIndexInFormlist = _00E_FS_PyreanItems.Find(Entry) - float fValue = (Entry.GetGoldValue() + Entry.GetGoldValue()*0.33)*FS_NQR05_SQ_01_FakeREF.GetItemCount(Entry) - - iTotalReward = iTotalReward + fValue as Int - elementCountToRemoveForEachItem[itemIndexInFormlist] = FS_NQR05_SQ_01_FakeREF.GetItemCount(Entry) - - EndIf - EndIf - - i += 1 + Int NumItems = FS_NQR05_SQ_01_FakeREF.GetNumItems() + + if NumItems <= 0 + return + endif - EndWhile + int iTotalReward + Int i = 0 + While (i < NumItems) - i = 0 + Form Entry = FS_NQR05_SQ_01_FakeREF.GetNthForm(i) + int iGoldValue = Entry.GetGoldValue() + + if iGoldValue > 0 + float fValue = (iGoldValue + iGoldValue * 0.33) * FS_NQR05_SQ_01_FakeREF.GetItemCount(Entry) + iTotalReward = iTotalReward + fValue as Int + endif - While (i < _00E_FS_PyreanItems.GetSize()) - FS_NQR05_SQ_01_FakeREF.RemoveItem(_00E_FS_PyreanItems.GetAt(i), elementCountToRemoveForEachItem[i]) - i += 1 - Endwhile + i += 1 - PlayerREF.AddItem(Gold001, iTotalReward) + EndWhile + + FS_NQR05_SQ_01_FakeREF.RemoveAllItems() + PlayerREF.AddItem(Gold001, iTotalReward) EndFunction ;===================================================================================== -; PROPERTIES +; PROPERTIES ;===================================================================================== Actor Property FS_NQR_SQ_01_ScionGustavREF Auto @@ -123,6 +63,6 @@ Actor Property FS_NQR05_SQ_01_FakeREF Auto Scene Property FS_NQR_SQ_01_Scene_01 Auto -Formlist Property _00E_FS_PyreanItems Auto +Formlist Property _00E_FS_PyreanMiscItems Auto MiscObject Property Gold001 Auto \ No newline at end of file