コード例 #1
0
    public void ChangeSpell()
    {
        int n = SpellStyle.GetNames(typeof(SpellStyle)).Length - 1;

        System.Random r    = new System.Random();
        int           rInt = r.Next(0, n);

        playerShooting.SetupSpelling((SpellStyle)(rInt + 1));
        //playerShooting.SetupSpelling(SpellStyle.Fireball);
    }
コード例 #2
0
    public void SetupSpelling(SpellStyle spellStyle)
    {
        spellObjects = new Dictionary <string, GameObject>();
        foreach (Spell spell in spells)
        {
            spellObjects.Add(spell.name, spell.prefab);
        }

        this.spellStyle = spellStyle;

        switch (spellStyle)
        {
        case SpellStyle.Fireball:
            maxBulletNumber     = 5;
            currentBulletNumber = maxBulletNumber;
            restoreBulletTime   = 0.25f;
            break;

        case SpellStyle.LaserBeam:
            break;

        case SpellStyle.WaterBomb:
            maxBulletNumber     = 3;
            currentBulletNumber = maxBulletNumber;
            restoreBulletTime   = 0.5f;
            break;

        case SpellStyle.Meteor:
            maxBulletNumber     = 2;
            currentBulletNumber = maxBulletNumber;
            restoreBulletTime   = 1.75f;
            break;

        default:
            Debug.LogWarning("Spell doesn't selected");
            return;
        }
    }