public override bool Interact(GameObject target, InstancePickupData instancePickupData) { Destructible destructible = target.GetComponent <Destructible>(); if (destructible) { destructible.Hurt(-health); return(true); } return(false); }
public override bool Interact(GameObject target, InstancePickupData instancePickupData) { Shooter shooter = target.GetComponent <Shooter>(); if (shooter) { if (instancePickupData is InstanceWeaponPickupData instanceWeaponPickupData) { return(shooter.EquipWeaponAtFirstAvailableSlot(weapon, instanceWeaponPickupData.durability)); } else { return(shooter.EquipWeaponAtFirstAvailableSlot(weapon)); } } return(false); }
public abstract bool Interact(GameObject target, InstancePickupData instancePickupData);
private void Awake() { instancePickupData = pickupData.NewInstanceData(); StartCoroutine(DoEnableAfterTime()); }