internal static IntPtr ItemCacheGetRow(int parItemId) { if (ItemCacheGetRowFunction == null) { ItemCacheGetRowFunction = Memory.Reader.RegisterDelegate <ItemCacheGetRowDelegate>(new IntPtr(0x0055BA30)); } return(ItemCacheGetRowFunction(new IntPtr(0x00C0E2A0), parItemId, new IntPtr(0x0018F1E0), 0, 0, 0)); }
internal static IntPtr ItemCacheGetRow(int parItemId) { if (ItemCacheGetRowFunction == null) { ItemCacheGetRowFunction = Memory.Reader.RegisterDelegate <ItemCacheGetRowDelegate>(funcs.ItemCacheGetRow); } return(ItemCacheGetRowFunction(funcs.ItemCacheGetRowFixedPtr1, parItemId, funcs.ItemCacheGetRowFixedPtr2, 0, 0, 0x0)); }
internal static IntPtr ItemCacheGetRow(int parItemId, PrivateEnums.ItemCacheLookupType parLookupType) { if (!ObjectManager.Instance.IsIngame) { return(IntPtr.Zero); } if (ItemCacheGetRowFunction == null) { ItemCacheGetRowFunction = Memory.Reader.RegisterDelegate <ItemCacheGetRowDelegate>(funcs.ItemCacheGetRow); } ulong val = 0; switch (parLookupType) { case PrivateEnums.ItemCacheLookupType.None: return (MainThread.Instance.Invoke( () => ItemCacheGetRowFunction(funcs.ItemCacheBasePtr, parItemId, ref val, CacheCallbacks.Instance.ItemCallbackPtr, 0, 0x0))); case PrivateEnums.ItemCacheLookupType.Vendor: val = ObjectManager.Instance.Player.VendorGuid; return (MainThread.Instance.Invoke( () => ItemCacheGetRowFunction(funcs.ItemCacheBasePtr, parItemId, ref val, CacheCallbacks.Instance.ItemCallbackPtr, 0, 0x0))); case PrivateEnums.ItemCacheLookupType.Quest: val = ObjectManager.Instance.Player.QuestNpcGuid; return (MainThread.Instance.Invoke( () => ItemCacheGetRowFunction(funcs.ItemCacheBasePtr, parItemId, ref val, CacheCallbacks.Instance.ItemCallbackPtr, 0, 0x0))); default: return(IntPtr.Zero); } }