internal static bool Prefix(PlayerManager __instance, GearItem gi) { if (ComponentUtils.GetComponent <FirstPersonItem>(gi) != null) { return(true); } if (ComponentUtils.GetEquippableModComponent(gi) is null) { return(true); } var currentGi = __instance.m_ItemInHands; if (currentGi != null) { __instance.UnequipItemInHands(); } if (gi != currentGi) { __instance.EquipItem(gi, false); } return(false); }
public static void Prefix(bool enable) { if (enable) { PlayerManager playerManager = GameManager.GetPlayerManagerComponent(); GearEquipper.Unequip(ComponentUtils.GetEquippableModComponent(playerManager.m_ItemInHands)); } }
internal static void Prefix(PlayerManager __instance, GearItem gi) { EquippableModComponent equippable = ComponentUtils.GetEquippableModComponent(__instance.m_ItemInHands); if (equippable != null) { __instance.UnequipItemInHands(); } }
internal static void Postfix(PlayerManager __instance, PlayerControlMode mode) { if (mode == lastMode) { return; } lastMode = mode; EquippableModComponent equippable = ComponentUtils.GetEquippableModComponent(__instance.m_ItemInHands); equippable?.OnControlModeChangedWhileEquipped?.Invoke(); }
private static void Postfix(GearItem gi, ref bool __result) { if (__result || gi is null) { return; } EquippableModComponent equippable = ComponentUtils.GetEquippableModComponent(gi); if (equippable != null) { __result = true; } }
public static bool Prefix(MonoBehaviour context) { PlayerManager playerManager = GameManager.GetPlayerManagerComponent(); if (playerManager is null || GameManager.ControlsLocked() || InterfaceManager.IsOverlayActiveImmediate() || !InputManager.GetFirePressed(context) || InputManager.GetFireReleased(context)) { return(true); } EquippableModComponent equippable = ComponentUtils.GetEquippableModComponent(playerManager.m_ItemInHands); if (equippable?.Implementation is null) { return(true); } equippable.OnPrimaryAction?.Invoke(); return(false); }
public static bool Prefix() { PlayerManager playerManager = GameManager.GetPlayerManagerComponent(); if (playerManager is null || InterfaceManager.IsOverlayActiveImmediate() || playerManager.IsInPlacementMode() || playerManager.ItemInHandsPlaceable()) { return(true); } EquippableModComponent equippable = ComponentUtils.GetEquippableModComponent(playerManager.m_ItemInHands); if (equippable is null) { return(true); } equippable.OnSecondaryAction?.Invoke(); return(false); }
internal static void Postfix(PlayerManager __instance) { GearEquipper.Equip(ComponentUtils.GetEquippableModComponent(__instance.m_ItemInHands)); }