Beispiel #1
0
    private GameObject InstantiateSpellGroup(Spell[] spellTypes, Vector3 position, Vector3 direction)
    {
        GameObject spell = (GameObject)Instantiate(_spellPrefab, position + direction * 1.15f, Quaternion.identity);

        SpellBehaviour sbehaviour = spell.GetComponent <SpellBehaviour>();
        SpellDisplay   sdisplay   = spell.GetComponent <SpellDisplay>();

        sbehaviour.SetDirection(direction);
        sbehaviour.SetSpeed(spellTypes[1].speed);
        sbehaviour.SetDamage(spellTypes[1].damage);
        sbehaviour.SetToken(_playerData.Token);

        /*
         * FALTA:
         * - La animación del primer puesto
         */
        sdisplay._renderer.sprite = groupSpell;
        sdisplay._renderer.color  = spellTypes[1].elementoSegundoPuesto; // funciona

        if (spellTypes.Length == 3)
        {
            switch (spellTypes[2].funcionTercerPuesto)
            {
            case 0:
                fasterSpell(sbehaviour);
                break;

            default:
                fasterSpell(sbehaviour);
                break;
            }
        }

        spell.SetActive(true);

        return(spell);
    }
Beispiel #2
0
    /***********************************************************************/

    /*
     * FUNCIONES DE HECHIZO EN TERCER PUESTO
     */
    /***********************************************************************/

    // TercerPuesto == 0
    private void fasterSpell(SpellBehaviour spellBehaviour)
    {
        spellBehaviour.SetSpeed((int)Mathf.Ceil((float)(spellBehaviour.GetSpeed()) * 2.5f));
    }