Esempio n. 1
0
    public Card GetCard()
    {
        Card c = new Card()
        {
            name = this.name,
        };

        if (cardType == eCardType.mood)
        {
            c = new MoodCard()
            {
                name        = this.name,
                moodChanges = new List <MoodValue>()
            };
            var cm = c as MoodCard;
            for (int i = 0; i < moodChanges.Length / 2; i++)
            {
                int amount = int.Parse(moodChanges[i * 2 + 1]);
                if (amount > 0)
                {
                    cm.moodChanges.Add(new MoodValue()
                    {
                        mood  = (Note.Mood)System.Enum.Parse(typeof(Note.Mood), moodChanges[i * 2], true),
                        value = amount,
                    });
                }
            }

            return(cm);
        }

        if (cardType == eCardType.combo)
        {
            var cm = new ComboCard()
            {
                name = this.name,
            };
            cm.multiplier = comboMultiplier;
            cm.mood       = (Note.Mood)System.Enum.Parse(typeof(Note.Mood), comboMood, true);
            return(cm);
        }

        if (cardType == eCardType.draw)
        {
            var cm = new DrawCard()
            {
                name = this.name,
            };
            cm.cardsToDraw = cardsToDraw;
            return(cm);
        }

        return(c);
    }
Esempio n. 2
0
    private void PlayCombo(Note note, ComboCard c)
    {
        comboScore += note.moodScores[c.mood] * c.multiplier;

        var v = GetMoodValues(note, c.mood);

        for (int i = 0; i < v.Count; i++)
        {
            v[i].value += comboScore;

            Debug.Log("ADd combo score to value for " + v[i].mood + " taking it from " + (v[i].value - comboScore) + " to " + v[i].value);
        }

        //5 + (2) = 2
        // 200% = 4
        // 300% = 12
    }