コード例 #1
0
        public static int GetSavingThrow(Character chr, Combat.SavingThrow savingThrow)
        {
            switch (savingThrow)
            {
            case Combat.SavingThrow.BreathWeapon:
                return(GetBWSavingThrow(chr));

            case Combat.SavingThrow.ParalyzationPoisonDeath:
                return(GetPPDSavingThrow(chr));

            case Combat.SavingThrow.PetrificationPolymorph:
                return(GetPPSavingThrow(chr));

            case Combat.SavingThrow.RodStaffWand:
                return(GetRSWSavingThrow(chr));

            case Combat.SavingThrow.Spell:
            default:
                return(GetSpellsSavingThrow(chr));
            }
        }
コード例 #2
0
        private static int GetProfessionAdjustment(Character.ClassType baseProfession, Combat.SavingThrow savingThrow)
        {
            int PPD = 0; int PP = 0; int RSW = 0; int S = 0; int BW = 0;

            switch (baseProfession)
            {
            case Character.ClassType.Berserker:
                #region PPD+++, PP+++, RSW+, S+, BW++
                PPD += -4;
                PP  += -4;
                RSW += -0;
                S   += -0;
                BW  += 2;
                break;

                #endregion
            case Character.ClassType.Sorcerer:
                #region PPD++, PP++, RSW+, S++, BW
                PPD += -2;
                PP  += -2;
                RSW += -1;
                S   += -2;
                BW  += 0;
                break;

                #endregion
            case Character.ClassType.Ravager:
                #region PPD+++, PP+++, RSW++, S++, BW+++
                PPD += -3;
                PP  += -3;
                RSW += -2;
                S   += -2;
                BW  += -3;
                break;

                #endregion
            case Character.ClassType.Fighter:
                #region PPD++, PP++, RSW+, S, BW
                PPD += -2;
                PP  += -2;
                RSW += -1;
                S   += 0;
                BW  += 0;
                break;

                #endregion
            case Character.ClassType.Knight:
                #region PPD++++, PP++++, RSW++, S++, BW+
                PPD += -4;
                PP  += -4;
                RSW += -2;
                S   += -2;
                BW  += -1;
                break;

                #endregion
            case Character.ClassType.Thaumaturge:
                #region PPD++, PP++, RSW, S+, BW
                PPD += -2;
                PP  += -2;
                RSW += 0;
                S   += -1;
                BW  += 0;
                break;

                #endregion
            case Character.ClassType.Thief:
                #region PPD+++++, PP++, RSW+, S+, BW+
                PPD += -5;
                PP  += -2;
                RSW += -1;
                S   += -1;
                BW  += 1;
                break;

                #endregion
            case Character.ClassType.Martial_Artist:
                #region PPD++, PP++, RSW+, S, BW
                PPD += -2;
                PP  += -2;
                RSW += -1;
                S   += 0;
                BW  += 0;
                break;

                #endregion
            case Character.ClassType.Wizard:
                #region PPD, PP, RSW+++, S+++, BW+
                PPD += 0;
                PP  += 0;
                RSW += -3;
                S   += -3;
                BW  += -1;
                break;

                #endregion
            default:
                break;
            }

            switch (savingThrow)
            {
            case Combat.SavingThrow.BreathWeapon:
                return(BW);

            case Combat.SavingThrow.ParalyzationPoisonDeath:
                return(PPD);

            case Combat.SavingThrow.PetrificationPolymorph:
                return(PP);

            case Combat.SavingThrow.RodStaffWand:
                return(RSW);

            case Combat.SavingThrow.Spell:
                return(S);

            default:
                return(0);
            }
        }
コード例 #3
0
        private static int GetHomelandAdjustment(string race, Combat.SavingThrow savingThrow)
        {
            int PPD = 0; int PP = 0; int RSW = 0; int S = 0; int BW = 0;

            switch (race)
            {
            case "Illyria":
                PPD += -2;
                PP  += -2;
                RSW += -1;
                S   += 0;
                BW  += 0;
                break;

            case "Mu":
                PPD += 0;
                PP  += 0;
                RSW += -1;
                S   += -1;
                BW  += -2;
                break;

            case "Lemuria":
                PPD += 0;
                PP  += 0;
                RSW += -2;
                S   += -2;
                BW  += 0;
                break;

            case "Leng":
                PPD += 0;
                PP  += -1;
                RSW += -1;
                S   += -1;
                BW  += -1;
                break;

            case "Draznia":
                PPD += -2;
                PP  += -2;
                RSW += -1;
                S   += 0;
                BW  += 0;
                break;

            case "Hovath":
                PPD += -1;
                PP  += 0;
                RSW += -1;
                S   += -2;
                BW  += 0;
                break;

            case "Mnar":
                PPD += -1;
                PP  += -1;
                RSW += 0;
                S   += 0;
                BW  += -2;
                break;

            case "the plains":
            case "Barbarian":
                PPD += -1;
                PP  += -1;
                RSW += -2;
                S   += 0;
                BW  += 0;
                break;

            default:
                //PPD += 0;
                //PP += -1;
                //RSW += -1;
                //S += 0;
                //BW += -2;
                break;
            }

            switch (savingThrow)
            {
            case Combat.SavingThrow.BreathWeapon:
                return(BW);

            case Combat.SavingThrow.ParalyzationPoisonDeath:
                return(PPD);

            case Combat.SavingThrow.PetrificationPolymorph:
                return(PP);

            case Combat.SavingThrow.RodStaffWand:
                return(RSW);

            case Combat.SavingThrow.Spell:
                return(S);

            default:
                return(0);
            }
        }