static void Postfix(ItemObject __instance, FTrigger fTrigger) { foreach (LuaPowerTrigger hook in LuaPowerData.luaHooks.FindAll((LuaPowerTrigger hook) => { return(hook._trigger == fTrigger); })) { EffectActions.CallFunctionWithItem(hook._func, __instance); } }
static void Postfix(Being __instance, FTrigger fTrigger) { if (__instance == S.I.batCtrl.currentPlayer) { foreach (LuaPowerTrigger hook in LuaPowerData.luaHooks.FindAll( (LuaPowerTrigger hook) => { return(hook._trigger == fTrigger && (hook._being == __instance || (hook._being == null && __instance == MoreLuaPower.GetPlayer()) )); } )) { if ((LuaPowerHooks.triggerItem == null || LuaPowerHooks.triggerItem.item == null)) { LuaPowerHooks.triggerItem = new ItemObject(); LuaPowerHooks.triggerItem.being = __instance; LuaPowerHooks.triggerItem.item = __instance.gameObject.AddComponent <MPLHook>(); LuaPowerHooks.triggerItem.item.being = __instance; LuaPowerHooks.triggerItem.item.itemObj = LuaPowerHooks.triggerItem; } EffectActions.CallFunctionWithItem(hook._func, LuaPowerHooks.triggerItem); } } }
static void Postfix(Being __instance, FTrigger fTrigger) { if (__instance == S.I.batCtrl.currentPlayer) { if ((LuaPowerHooks.triggerItem == null || LuaPowerHooks.triggerItem.item == null) && S.I.batCtrl.currentPlayer != null) { LuaPowerHooks.triggerItem = new ItemObject(); LuaPowerHooks.triggerItem.item = S.I.batCtrl.currentPlayer.gameObject.AddComponent <Artifact>(); LuaPowerHooks.triggerItem.item.being = S.I.batCtrl.currentPlayer; } foreach (LuaPowerTrigger hook in LuaPowerData.luaHooks.FindAll((LuaPowerTrigger hook) => { return(hook._trigger == fTrigger); })) { if (LuaPowerHooks.triggerItem != null) { EffectActions.CallFunctionWithItem(hook._func, LuaPowerHooks.triggerItem); } else { Debug.Log("ERROR: Hooks are not loaded, but it is trying to trigger. Is there a player?"); } } } }