Example #1
0
 public static void Prefix(InventoryItem ____heldItem)
 {
     if (____heldItem != null && ____heldItem.item) //____heldItem.item can be null on game quitting
     {
         Pickupable pickupable = ____heldItem.item;
         NitroxId   itemId     = NitroxEntity.GetId(pickupable.gameObject);
         PlayerTool component  = pickupable.GetComponent <PlayerTool>();
         PlayerHeldItemChanged.ChangeType type = component ? PlayerHeldItemChanged.ChangeType.HOLSTER_AS_TOOL : PlayerHeldItemChanged.ChangeType.HOLSTER_AS_ITEM;
         player.BroadcastHeldItemChanged(itemId, type, null);
     }
 }
        public static void Postfix(InventoryItem ____heldItem, NitroxTechType __state)
        {
            if (____heldItem == null)
            {
                return;
            }
            Pickupable pickupable = ____heldItem.item;
            NitroxId   itemId     = NitroxEntity.GetId(pickupable.gameObject);
            PlayerTool component  = pickupable.GetComponent <PlayerTool>();

            PlayerHeldItemChanged.ChangeType type = component ? PlayerHeldItemChanged.ChangeType.DRAW_AS_TOOL : PlayerHeldItemChanged.ChangeType.DRAW_AS_ITEM;
            player.BroadcastHeldItemChanged(itemId, type, __state);
        }
Example #3
0
 public void BroadcastHeldItemChanged(NitroxId itemId, PlayerHeldItemChanged.ChangeType techType, NitroxTechType isFirstTime)
 {
     packetSender.Send(new PlayerHeldItemChanged(multiplayerSession.Reservation.PlayerId, itemId, techType, isFirstTime));
 }