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); }
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 }