EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Development::Server Code Submissions (https://www.eqemulator.org/forums/forumdisplay.php?f=669)
-   -   Monk weight (https://www.eqemulator.org/forums/showthread.php?t=35821)

Cowboy6534 10-02-2012 03:57 PM

Monk weight
 
This is part of the useintervalac code with monk weight by level added in. Instead of the static 15 stones that it currently is.

Starting at line 633 of the attack.cpp

Code:

                if(IsClient())
                {
                        armor = CastToClient()->GetRawACNoShield(shield_ac);
                        weight = (CastToClient()->CalcCurrentWeight() / 10.0);
                }
                else if(IsNPC())
                {
                        armor = spellbonuses.AC + itembonuses.AC + (CastToNPC()->GetRawAC() / RuleR(Combat, NPCACFactor)) + 1;
                }

                if(GetClass() == WIZARD || GetClass() == MAGICIAN || GetClass() == NECROMANCER || GetClass() == ENCHANTER)
                {
                        softcap = RuleI(Combat, ClothACSoftcap);
                }
                else if(GetClass() == MONK && GetLevel() >=60 && weight <= 24.0)
                {
                        softcap = RuleI(Combat, MonkACSoftcap);
                }
                else if(GetClass() == MONK && GetLevel() <=59 && GetLevel() >=55 && weight <=20.0)
                {
                        softcap = RuleI(Combat, MonkACSoftcap);
                }
                else if(GetClass() == MONK && GetLevel() <=54 && GetLevel() >=51 && weight <=18.0)
                {
                        softcap = RuleI(Combat, MonkACSoftcap);
                }
                else if(GetClass() == MONK && GetLevel() <=50 && GetLevel() >=45 && weight <=17.0)
                {
                        softcap = RuleI(Combat, MonkACSoftcap);
                }
                else if(GetClass() == MONK && GetLevel() <=44 && GetLevel() >=30 && weight <=16.0)
                {
                        softcap = RuleI(Combat, MonkACSoftcap);
                }
                else if(GetClass() == MONK && GetLevel() <=29 && GetLevel() >=15 && weight <=15.0)
                {
                        softcap = RuleI(Combat, MonkACSoftcap);
                }
                else if(GetClass() == MONK && GetLevel() <=14 && GetLevel() >=1 && weight <=14.0)
                {
                        softcap = RuleI(Combat, MonkACSoftcap);
                }
                else if(GetClass() == DRUID || GetClass() == BEASTLORD || GetClass() == MONK)
                {
                        softcap = RuleI(Combat, LeatherACSoftcap);
                }
                else if(GetClass() == SHAMAN || GetClass() == ROGUE || GetClass() == BERSERKER || GetClass() == RANGER)
                {
                        softcap = RuleI(Combat, ChainACSoftcap);
                }
                else
                {
                        softcap = RuleI(Combat, PlateACSoftcap);
                }
               
                softcap += shield_ac;
                armor += shield_ac;
                softcap += (softcap * (aa_mit * RuleR(Combat, AAMitigationACFactor)));
                if(armor > softcap)
                {
                        int softcap_armor = armor - softcap;
                        if(GetClass() == WARRIOR)
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, WarriorACSoftcapReturn);
                        }
                        else if(GetClass() == SHADOWKNIGHT || GetClass() == PALADIN)
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, KnightACSoftcapReturn);
                        }
                        else if(GetClass() == MONK && GetLevel() >=60 && weight <= 24.0)
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, KnightACSoftcapReturn);
                        }
                        else if(GetClass() == MONK && GetLevel() <=59 && GetLevel() >=55 && weight <=20.0)
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, KnightACSoftcapReturn);
                        }
                        else if(GetClass() == MONK && GetLevel() <=54 && GetLevel() >=51 && weight <=18.0)
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, KnightACSoftcapReturn);
                        }
                        else if(GetClass() == MONK && GetLevel() <=50 && GetLevel() >=45 && weight <=17.0)
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, KnightACSoftcapReturn);
                        }
                        else if(GetClass() == MONK && GetLevel() <=44 && GetLevel() >=30 && weight <=16.0)
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, KnightACSoftcapReturn);
                        }
                        else if(GetClass() == MONK && GetLevel() <=29 && GetLevel() >=15 && weight <=15.0)
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, KnightACSoftcapReturn);
                        }
                        else if(GetClass() == MONK && GetLevel() <=14 && GetLevel() >=1 && weight <=14.0)
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, KnightACSoftcapReturn);
                        }                       
                        else if(GetClass() == CLERIC || GetClass() == BARD || GetClass() == BERSERKER || GetClass() == ROGUE || GetClass() == SHAMAN || GetClass() == MONK)
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, LowPlateChainACSoftcapReturn);
                        }
                        else if(GetClass() == RANGER || GetClass() == BEASTLORD)
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, LowChainLeatherACSoftcapReturn);
                        }
                        else if(GetClass() == WIZARD || GetClass() == MAGICIAN || GetClass() == NECROMANCER || GetClass() == ENCHANTER || GetClass() == DRUID)
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, CasterACSoftcapReturn);
                        }
                        else
                        {
                                softcap_armor = softcap_armor * RuleR(Combat, MiscACSoftcapReturn);
                        }
                        armor = softcap + softcap_armor;


Cowboy6534 10-02-2012 04:04 PM

Levels and weight limits acquired from http://www.monkly-business.net/index...geid=abilities and the last time I checked on live these were still correct.


All times are GMT -4. The time now is 06:04 AM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.