Exemplo n.º 1
0
    public void Explode(int gems, GemManager.GemType gemType)
    {
        int projectiles = gems * 2;

        for (int i = 0; i < projectiles; i++)
        {
            GameObject b = Instantiate(projectile, transform.position, Quaternion.Euler(0, 0, i * (360f / projectiles)));
            //TODO: usar el nuevo pooling
            b.SetActive(true);

            switch (gemType)
            {
            case GemManager.GemType.Homing:
                Homing h = b.GetComponent <Homing>();
                h.rotSpeed    = 7f;
                h.maxAngleDif = 90f;
                h.enabled     = true;
                b.GetComponentInChildren <SpriteRenderer>().sprite = sprites[0];
                break;

            case GemManager.GemType.Bouncing:
                b.GetComponent <PlayerProjectile>().bounces        = gems;
                b.GetComponentInChildren <SpriteRenderer>().sprite = sprites[1];

                break;
            }
        }
    }
Exemplo n.º 2
0
    public void AddGem(int index, GemManager.GemType type, int amount)
    {
        UICrystalImages [index].enabled = type != GemManager.GemType.None;
        UIButtonHints [index].enabled   = type == GemManager.GemType.None;

        UICrystalImages [index].sprite         = crystalSprites [(int)type];
        UICrystalAmountLabels [index].fontSize = (amount == GemManager.MAX_GEMS ? 20 : 30);
        UICrystalAmountLabels [index].text     = (amount == 0 ? "" : amount == GemManager.MAX_GEMS ? MAX : amount.ToString());
    }