Ejemplo n.º 1
0
    // pickup spawning
    public void PickedUp(GameObject pickup)
    {
        PickupsType type   = pickup.GetComponent <Pickups>().Type;
        int         amount = pickup.GetComponent <Pickups>().Amount;

        switch (type)
        {
        case PickupsType.Health:
            data.DamegPlayer(amount * -1);
            break;

        case PickupsType.Ammo:
            data.AddAmmo(amount);
            level.AmmoGatherd += amount;
            break;

        case PickupsType.Shotgun:
        case PickupsType.Pistol:
        case PickupsType.Machinegun:
            type = player.GetComponent <PlayerAttack>().gun.GetComponent <Weapons>().Type;
            player.GetComponent <PlayerAttack>().gun.GetComponent <Weapons>().Copy(pickup);
            if (type != PickupsType.Nothing)
            {
                GameObject temp = DropPickup(
                    pickup.transform.position,
                    amount,
                    type
                    );
                // ignore the player for 15 sec
                IgnorePlayer(temp.GetComponent <Collider2D>(), true);
                temp.GetComponent <Weapons>().Dropped();
            }
            break;
        }
    }
Ejemplo n.º 2
0
    internal GameObject DropPickup(Vector3 position, int amount, PickupsType type)
    {
        GameObject pickup;

        pickup = Instantiate(Pickups[(int)type], position, Quaternion.identity);
        pickup.GetComponent <Pickups>().SetAmount(amount);
        return(pickup);
    }