Updated a few AA effects to use database values instead of hardcoded values.

This commit is contained in:
KayenEQ
2015-10-09 13:08:24 -04:00
parent 43671fa749
commit 2cf59ae2f2
5 changed files with 59 additions and 185 deletions
+2 -127
View File
@@ -941,135 +941,10 @@ bool Client::TradeskillExecute(DBTradeskillRecipe_Struct *spec) {
float res = zone->random.Real(0, 99);
int aa_chance = 0;
//AA modifiers
//can we do this with nested switches?
if(spec->tradeskill == SkillAlchemy){
switch(GetAA(aaAlchemyMastery)){
case 1:
aa_chance = 10;
break;
case 2:
aa_chance = 25;
break;
case 3:
aa_chance = 50;
break;
}
}
aa_chance = spellbonuses.ReduceTradeskillFail[spec->tradeskill] + itembonuses.ReduceTradeskillFail[spec->tradeskill] + aabonuses.ReduceTradeskillFail[spec->tradeskill];
if(spec->tradeskill == SkillJewelryMaking){
switch(GetAA(aaJewelCraftMastery)){
case 1:
aa_chance = 10;
break;
case 2:
aa_chance = 25;
break;
case 3:
aa_chance = 50;
break;
}
}
const Item_Struct* item = nullptr;
if (spec->tradeskill == SkillBlacksmithing) {
switch(GetAA(aaBlacksmithingMastery)) {
case 1:
aa_chance = 10;
break;
case 2:
aa_chance = 25;
break;
case 3:
aa_chance = 50;
break;
}
}
if (spec->tradeskill == SkillBaking) {
switch(GetAA(aaBakingMastery)) {
case 1:
aa_chance = 10;
break;
case 2:
aa_chance = 25;
break;
case 3:
aa_chance = 50;
break;
}
}
if (spec->tradeskill == SkillBrewing) {
switch(GetAA(aaBrewingMastery)) {
case 1:
aa_chance = 10;
break;
case 2:
aa_chance = 25;
break;
case 3:
aa_chance = 50;
break;
}
}
if (spec->tradeskill == SkillFletching) {
switch(GetAA(aaFletchingMastery2)) {
case 1:
aa_chance = 10;
break;
case 2:
aa_chance = 25;
break;
case 3:
aa_chance = 50;
break;
}
}
if (spec->tradeskill == SkillPottery) {
switch(GetAA(aaPotteryMastery)) {
case 1:
aa_chance = 10;
break;
case 2:
aa_chance = 25;
break;
case 3:
aa_chance = 50;
break;
}
}
if (spec->tradeskill == SkillTailoring) {
switch(GetAA(aaTailoringMastery)) {
case 1:
aa_chance = 10;
break;
case 2:
aa_chance = 25;
break;
case 3:
aa_chance = 50;
break;
}
}
if (spec->tradeskill == SkillResearch) {
switch(GetAA(aaArcaneTongues)) {
case 1:
aa_chance = 10;
break;
case 2:
aa_chance = 25;
break;
case 3:
aa_chance = 50;
break;
}
}
chance = mod_tradeskill_chance(chance, spec);
if (((spec->tradeskill==75) || GetGM() || (chance > res)) || zone->random.Roll(aa_chance)) {