// Pickup Activity private static void PickupActivity() { if (inputUse) { if (checkPickup) { tmpPickup.PickupItem(); } inputUse = false; ResetPickup(); } else { if (hitCollider != prevHitCollider || tmpPickup == null) { tmpPickup = hitCollider.GetComponent <IPickup>(); HudElements.Crosshair.SetColor(ECrosshairColor.Normal); } if (!checkPickup) { return; } switch (tmpPickup.PickupType) { case EPickupType.Melee: case EPickupType.Firearms: case EPickupType.Thrown: if (WeaponsManager.WeaponIsAvailable(tmpPickup.WeaponIndex)) { if ((tmpPickup.PickupType != EPickupType.Melee) && (tmpPickup.Amount > 0) && !AmmoBackpack.IsFull(tmpPickup.AmmoIndex)) { crosshairMode = ECrosshairMode.Ammo; } else { crosshairMode = ECrosshairMode.Cancel; } } else if (WeaponsManager.WeaponTypeIsStandart(tmpPickup.WeaponIndex) && WeaponsManager.crowded) { crosshairMode = ECrosshairMode.Swap; } else { crosshairMode = ECrosshairMode.Hand; } break; case EPickupType.Ammo: if (AmmoBackpack.IsFull(tmpPickup.AmmoIndex)) { crosshairMode = ECrosshairMode.Cancel; } else { crosshairMode = ECrosshairMode.Ammo; } break; case EPickupType.Health: if (PlayerCharacter.Instance.isFull) { crosshairMode = ECrosshairMode.Cancel; } else { crosshairMode = ECrosshairMode.Health; } break; default: crosshairMode = ECrosshairMode.Hand; break; } //crosshairMode HudElements.Crosshair.SetPointSprite(crosshairMode); } }