public override bool Interact(GameObject target, InstancePickupData instancePickupData)
    {
        Destructible destructible = target.GetComponent <Destructible>();

        if (destructible)
        {
            destructible.Hurt(-health);
            return(true);
        }

        return(false);
    }
Beispiel #2
0
    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);
    }
Beispiel #3
0
 public abstract bool Interact(GameObject target, InstancePickupData instancePickupData);
Beispiel #4
0
    private void Awake()
    {
        instancePickupData = pickupData.NewInstanceData();

        StartCoroutine(DoEnableAfterTime());
    }