From adb77dd4d946478ea0b94fef7e7e9e3a7eddb7a8 Mon Sep 17 00:00:00 2001 From: Eddoursul Date: Fri, 8 Jul 2022 22:21:36 +0200 Subject: [PATCH] Added RegisterPersistentStorage --- Scripts/ArtifactTrackerPlayer.pex | Bin 4924 -> 4981 bytes .../ArtifactTrackerDLL/src/PapyrusFunctions.h | 11 +++++++++++ Source/Scripts/ArtifactTrackerPlayer.psc | 2 ++ 3 files changed, 13 insertions(+) diff --git a/Scripts/ArtifactTrackerPlayer.pex b/Scripts/ArtifactTrackerPlayer.pex index 90de806dcf1bf89ef51e25b9d6c02805dc96867f..47314429fb8a398488634feaf6b03de35fecaf78 100644 GIT binary patch literal 4981 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 literal 4924 zcmaJ@+jbPk72P!&X+{?$5E3_I7y?Ly*a{Z|Mlly5jgV|1$w**qOrSMgVp{6yo^BY*;UmwJu{Ni2h^udpE}ols^-6+{o`LRX;=J07{q$pFm<}63g3@fwT7u>l9~;DKira0jGn1PMUH_mxFer? zj7jCw7Y60PP5GtZo(vjGbs3=F@Y8-6OY~R5!1Yu;93MSZ&vmIWcweqd#!-<|zURa! ztfda}cf!!e=;UO1_5RcOMAl-H{?ivugyMP_)qF2bFzDIX<^xy0MAtm)HR##YP5q8c zPO=rN+jVKunF|}S)P@S1a(gR`Tnx83V(Ik95hGjnDw~b^vWzyhG+!r&^qUS$H$Z>u zT?@m_m8$gDF|@R{AuCBUJq&dug5ljUVNfY$4$V4qf`O(H28sM)7)TTd@-TY*1ih1! zO7M^cDl`($_mXYow;ZA~AFGghrGnd{0%y-k5_!RM^u$Rt74aQ3YUxWK4v1BzP z9VlHHg*hiy%|~I%bv2WZHwkAorptbVGw_gu z!Rp}fRCUL3*2d#fje|P(V5VfgqtB`CC{eZHf5_IOn%;$ zs-y<5RMBUe`yS!2*6@6nXwrz#Q>jjlX#G5l5{IT%pYC-k z4z()tWWm1XnWYXIjJ83bY3@L~SZQ8w2XegSC6%gFNcQ4VsOMF|LjgOk%L=hWyclQ~ z1G#0eeRfqkwJiOHI?+|~&B-+VD>|D?zRT=Ej>T78It^DWbJa4}i21Z$_Be})nv55o zRsE2+k4zMB=4WuYr8FxH!k6g;6jf#Pq^CZwqiAOG;)N!65hrx>BXw%U>eM16&1Dc* zBCpO{tau1Kz<$6N4fJcz8qH4N}5t}tXC^P91~wvS+h z7p*`}UE_-BvP>Qn4&$Jfb^~P`)pQK+;5gpJ37jPTph>4;Xbg(RaSlHuy{GAYOyI|) zOPVg@16(0}NV=|R5*W8)?Pnj zR-ziNpKf;jUE`@hL4jKWHz{4voOUe)&U8f6{k{9{>3yc$+-JPd|DwQ>z?806 z4$B91c53-@*{0Y{wNC}^r(x!DSYg7ugsTE$yMzw}j(?A@hncVOQ?0%}+sjwGF!j|g z{6D@PWxjw`UylSnx8*lUQSwD5InInId7Mecn&}X5EWa)t_6f|8AJXL`SL$pG6-v~h zx%Q5K$&R(+r`39Y>J{8YX9Mj^TGZ`SgVTYPn+7XS_!79I5k&1Wc>;;(E!z@waqmy{ z7mKJh-vQSl-*uiHXIZ!n0gn~iP!&&0>!nK$t12xuHcV+ZY-v?( z_AKpQh3qvpsvTacyS-SAy-VM2TNuyx|lzIM4FMPd;6`^j8f0bXpM!MdeFkb-^Z@)q&&EZ{0?pH zsBhg|e?@c5FsHd!N(v_QwZN+!es1)?ZtAlRZ&F*T*{`|W<(md{TmNmU(|JLUWck|( KRn6)+82$&LcWfpA diff --git a/Source/ArtifactTrackerDLL/src/PapyrusFunctions.h b/Source/ArtifactTrackerDLL/src/PapyrusFunctions.h index 9eccee1..858c088 100644 --- a/Source/ArtifactTrackerDLL/src/PapyrusFunctions.h +++ b/Source/ArtifactTrackerDLL/src/PapyrusFunctions.h @@ -73,6 +73,15 @@ namespace Papyrus::PapyrusFunctions } } + inline void RegisterPersistentStorage(RE::StaticFunctionTag*, + RE::TESObjectREFR* ref) + { + if (ref) { + ArtifactTracker::g_persistentStorage->AddForm(ref); + ArtifactTracker::g_persistentMap[ref->formID] = ref; + } + } + inline void Bind(VM& a_vm) { BIND(Load); @@ -93,5 +102,7 @@ namespace Papyrus::PapyrusFunctions logger::info("Registered GetPlayerFollowers"sv); BIND(GetCurrentContainer); logger::info("Registered GetCurrentContainer"sv); + BIND(RegisterPersistentStorage); + logger::info("Registered RegisterPersistentStorage"sv); } } diff --git a/Source/Scripts/ArtifactTrackerPlayer.psc b/Source/Scripts/ArtifactTrackerPlayer.psc index 1641dd9..af48507 100644 --- a/Source/Scripts/ArtifactTrackerPlayer.psc +++ b/Source/Scripts/ArtifactTrackerPlayer.psc @@ -183,3 +183,5 @@ ObjectReference function GetCurrentContainer() native global function SyncCellStorage() native global Actor[] function GetPlayerFollowers() native global + +function RegisterPersistentStorage(ObjectReference ref) native global