Exemple #1
0
    public static Mana AddMana(Mana mana1, Mana mana2)
    {
        Mana manaSum = new Mana(mana1);

        manaSum.ChangeMana(mana2);

        return(manaSum);
    }
Exemple #2
0
    public Mana GetCurrentTurnStartManaForPlayer(Player plyr)
    {
        ManaDate manadateCur = plyr.manacalendar.GetCurrentManaDate();

        //Start with a base of any coloured mana we'll be scheduled to give the player
        Mana manaToGive = new Mana(manadateCur.pmanaScheduled.Get());

        //Add a random mana type (dictated by the random reserves) for each effort mana we're scheduled to recieve
        for (int i = manadateCur.pmanaScheduled.Get().arMana[(int)Mana.MANATYPE.EFFORT]; i > 0; i--)
        {
            manaToGive.ChangeMana(GetNextRandomManaForPlayer(plyr.id));
        }

        //Clear out the effort mana now that it's been distributed as randomized coloured mana
        manaToGive.ChangeMana(Mana.MANATYPE.EFFORT, -manaToGive.arMana[(int)Mana.MANATYPE.EFFORT]);

        return(manaToGive);
    }
 public void ReserveMana(Mana.MANATYPE manaType)
 {
     manaReservedToPay.ChangeMana(manaType);
     subManaChange.NotifyObs(this, manaType);
 }
 public void ChangeMana(Mana.MANATYPE manaType, int nAmount = 1)
 {
     manaOwned.ChangeMana(manaType, nAmount);
     subManaChange.NotifyObs(this, manaType);
 }