Ejemplo n.º 1
0
        private void TryApplyDereBonus(Dere dere, ref double atk, ref double def, BodereBonus bodere)
        {
            if (dere == Dere.Bodere)
            {
                switch (bodere)
                {
                case BodereBonus.Minus:
                    atk -= atk / 10;
                    break;

                case BodereBonus.Plus:
                    atk += atk / 10;
                    break;

                default:
                    break;
                }
            }
            else if (Fun.TakeATry(5))
            {
                var tenAtk = atk / 10;
                var tenDef = def / 10;

                switch (dere)
                {
                case Dere.Yandere:
                    atk += tenAtk;
                    break;

                case Dere.Dandere:
                    def += tenDef;
                    break;

                case Dere.Kuudere:
                    atk -= tenAtk;
                    def += tenAtk;
                    break;

                case Dere.Mayadere:
                    def -= tenDef;
                    atk += tenDef;
                    break;

                default:
                    break;
                }
            }
        }
Ejemplo n.º 2
0
        public static bool IsResistTo(this Card card, Dere dere)
        {
            if (card.Dere == dere && dere != Dere.Yato)
            {
                return(true);
            }

            switch (card.Dere)
            {
            case Dere.Tsundere:
                return(false);

            case Dere.Kamidere:
                if (dere == Dere.Yandere)
                {
                    return(true);
                }
                return(false);

            case Dere.Deredere:
                if (dere == Dere.Dandere)
                {
                    return(true);
                }
                return(false);

            case Dere.Yandere:
                if (dere == Dere.Kuudere)
                {
                    return(true);
                }
                return(false);

            case Dere.Dandere:
                if (dere == Dere.Mayadere)
                {
                    return(true);
                }
                return(false);

            case Dere.Kuudere:
                if (dere == Dere.Bodere)
                {
                    return(true);
                }
                return(false);

            case Dere.Mayadere:
                if (dere == Dere.Kamidere)
                {
                    return(true);
                }
                return(false);

            case Dere.Bodere:
                if (dere == Dere.Deredere)
                {
                    return(true);
                }
                return(false);

            case Dere.Yami:
                return(false);

            case Dere.Raito:
                if (dere != Dere.Yami)
                {
                    return(true);
                }
                return(false);

            case Dere.Yato:
                return(true);

            default:
                return(false);
            }
        }