2025/05/02 Update

Updated Foresight to use EffectBonusFeat.
Updated PRCRemoveProtections to not dispel extraordinary & supernatural effects.
Expanded DAMAGE_BONUS cap to 50.
Expanded various functions to use new DAMAGE_BONUS cap.
This commit is contained in:
Jaysyn904
2025-05-02 14:38:26 -04:00
parent 9815ea91a1
commit 880d0e5527
14 changed files with 619 additions and 89 deletions

View File

@@ -58,8 +58,38 @@ int BonusAtk(int nDmg)
case 18: return DAMAGE_BONUS_18;
case 19: return DAMAGE_BONUS_19;
case 20: return DAMAGE_BONUS_20;
case 21: return DAMAGE_BONUS_21;
case 22: return DAMAGE_BONUS_22;
case 23: return DAMAGE_BONUS_23;
case 24: return DAMAGE_BONUS_24;
case 25: return DAMAGE_BONUS_25;
case 26: return DAMAGE_BONUS_26;
case 27: return DAMAGE_BONUS_27;
case 28: return DAMAGE_BONUS_28;
case 29: return DAMAGE_BONUS_29;
case 30: return DAMAGE_BONUS_30;
case 31: return DAMAGE_BONUS_31;
case 32: return DAMAGE_BONUS_32;
case 33: return DAMAGE_BONUS_33;
case 34: return DAMAGE_BONUS_34;
case 35: return DAMAGE_BONUS_35;
case 36: return DAMAGE_BONUS_36;
case 37: return DAMAGE_BONUS_37;
case 38: return DAMAGE_BONUS_38;
case 39: return DAMAGE_BONUS_39;
case 40: return DAMAGE_BONUS_40;
case 41: return DAMAGE_BONUS_41;
case 42: return DAMAGE_BONUS_42;
case 43: return DAMAGE_BONUS_43;
case 44: return DAMAGE_BONUS_44;
case 45: return DAMAGE_BONUS_45;
case 46: return DAMAGE_BONUS_46;
case 47: return DAMAGE_BONUS_47;
case 48: return DAMAGE_BONUS_48;
case 49: return DAMAGE_BONUS_49;
case 50: return DAMAGE_BONUS_50;
}
if(nDmg > 20) return DAMAGE_BONUS_20;
if(nDmg > 50) return DAMAGE_BONUS_50;
return -1; // Invalid value received
}

View File

@@ -13,6 +13,66 @@
#include "prc_class_const"
int GetIntToDamage(int nCheck)
{
int nDam;
if (nCheck >= 50) nDam = DAMAGE_BONUS_50;
else if (nCheck == 49) nDam = DAMAGE_BONUS_49;
else if (nCheck == 48) nDam = DAMAGE_BONUS_48;
else if (nCheck == 47) nDam = DAMAGE_BONUS_47;
else if (nCheck == 46) nDam = DAMAGE_BONUS_46;
else if (nCheck == 45) nDam = DAMAGE_BONUS_45;
else if (nCheck == 44) nDam = DAMAGE_BONUS_44;
else if (nCheck == 43) nDam = DAMAGE_BONUS_43;
else if (nCheck == 42) nDam = DAMAGE_BONUS_42;
else if (nCheck == 41) nDam = DAMAGE_BONUS_41;
else if (nCheck == 40) nDam = DAMAGE_BONUS_40;
else if (nCheck == 39) nDam = DAMAGE_BONUS_39;
else if (nCheck == 38) nDam = DAMAGE_BONUS_38;
else if (nCheck == 37) nDam = DAMAGE_BONUS_37;
else if (nCheck == 36) nDam = DAMAGE_BONUS_36;
else if (nCheck == 35) nDam = DAMAGE_BONUS_35;
else if (nCheck == 34) nDam = DAMAGE_BONUS_34;
else if (nCheck == 33) nDam = DAMAGE_BONUS_33;
else if (nCheck == 32) nDam = DAMAGE_BONUS_32;
else if (nCheck == 31) nDam = DAMAGE_BONUS_31;
else if (nCheck == 30) nDam = DAMAGE_BONUS_30;
else if (nCheck == 29) nDam = DAMAGE_BONUS_29;
else if (nCheck == 28) nDam = DAMAGE_BONUS_28;
else if (nCheck == 27) nDam = DAMAGE_BONUS_27;
else if (nCheck == 26) nDam = DAMAGE_BONUS_26;
else if (nCheck == 25) nDam = DAMAGE_BONUS_25;
else if (nCheck == 24) nDam = DAMAGE_BONUS_24;
else if (nCheck == 23) nDam = DAMAGE_BONUS_23;
else if (nCheck == 22) nDam = DAMAGE_BONUS_22;
else if (nCheck == 21) nDam = DAMAGE_BONUS_21;
else if (nCheck >= 20) nDam = DAMAGE_BONUS_20;
else if (nCheck == 19) nDam = DAMAGE_BONUS_19;
else if (nCheck == 18) nDam = DAMAGE_BONUS_18;
else if (nCheck == 17) nDam = DAMAGE_BONUS_17;
else if (nCheck == 16) nDam = DAMAGE_BONUS_16;
else if (nCheck == 15) nDam = DAMAGE_BONUS_15;
else if (nCheck == 14) nDam = DAMAGE_BONUS_14;
else if (nCheck == 13) nDam = DAMAGE_BONUS_13;
else if (nCheck == 12) nDam = DAMAGE_BONUS_12;
else if (nCheck == 11) nDam = DAMAGE_BONUS_11;
else if (nCheck == 10) nDam = DAMAGE_BONUS_10;
else if (nCheck == 9) nDam = DAMAGE_BONUS_9;
else if (nCheck == 8) nDam = DAMAGE_BONUS_8;
else if (nCheck == 7) nDam = DAMAGE_BONUS_7;
else if (nCheck == 6) nDam = DAMAGE_BONUS_6;
else if (nCheck == 5) nDam = DAMAGE_BONUS_5;
else if (nCheck == 4) nDam = DAMAGE_BONUS_4;
else if (nCheck == 3) nDam = DAMAGE_BONUS_3;
else if (nCheck == 2) nDam = DAMAGE_BONUS_2;
else if (nCheck == 1) nDam = DAMAGE_BONUS_1;
// Null line in the 2da
else nDam = 0;
return nDam;
}
/* int GetIntToDamage(int nCheck)
{
int IntToDam = -1;
@@ -99,7 +159,7 @@ int GetIntToDamage(int nCheck)
return IntToDam;
}
*/
void main()
{
//Declare main variables.

View File

@@ -111,7 +111,37 @@ void main()
case 17: nDamageBonusConstant = DAMAGE_BONUS_17; break;
case 18: nDamageBonusConstant = DAMAGE_BONUS_18; break;
case 19: nDamageBonusConstant = DAMAGE_BONUS_19; break;
default: nDamageBonusConstant = DAMAGE_BONUS_20; // The value is >= 20, the bonus limit is +20
case 20: nDamageBonusConstant = DAMAGE_BONUS_20; break;
case 21: nDamageBonusConstant = DAMAGE_BONUS_21; break;
case 22: nDamageBonusConstant = DAMAGE_BONUS_22; break;
case 23: nDamageBonusConstant = DAMAGE_BONUS_23; break;
case 24: nDamageBonusConstant = DAMAGE_BONUS_24; break;
case 25: nDamageBonusConstant = DAMAGE_BONUS_25; break;
case 26: nDamageBonusConstant = DAMAGE_BONUS_26; break;
case 27: nDamageBonusConstant = DAMAGE_BONUS_27; break;
case 28: nDamageBonusConstant = DAMAGE_BONUS_28; break;
case 29: nDamageBonusConstant = DAMAGE_BONUS_29; break;
case 30: nDamageBonusConstant = DAMAGE_BONUS_30; break;
case 31: nDamageBonusConstant = DAMAGE_BONUS_31; break;
case 32: nDamageBonusConstant = DAMAGE_BONUS_32; break;
case 33: nDamageBonusConstant = DAMAGE_BONUS_33; break;
case 34: nDamageBonusConstant = DAMAGE_BONUS_34; break;
case 35: nDamageBonusConstant = DAMAGE_BONUS_35; break;
case 36: nDamageBonusConstant = DAMAGE_BONUS_36; break;
case 37: nDamageBonusConstant = DAMAGE_BONUS_37; break;
case 38: nDamageBonusConstant = DAMAGE_BONUS_38; break;
case 39: nDamageBonusConstant = DAMAGE_BONUS_39; break;
case 40: nDamageBonusConstant = DAMAGE_BONUS_40; break;
case 41: nDamageBonusConstant = DAMAGE_BONUS_41; break;
case 42: nDamageBonusConstant = DAMAGE_BONUS_42; break;
case 43: nDamageBonusConstant = DAMAGE_BONUS_43; break;
case 44: nDamageBonusConstant = DAMAGE_BONUS_44; break;
case 45: nDamageBonusConstant = DAMAGE_BONUS_45; break;
case 46: nDamageBonusConstant = DAMAGE_BONUS_46; break;
case 47: nDamageBonusConstant = DAMAGE_BONUS_47; break;
case 48: nDamageBonusConstant = DAMAGE_BONUS_48; break;
case 49: nDamageBonusConstant = DAMAGE_BONUS_49; break;
default: nDamageBonusConstant = DAMAGE_BONUS_50; // The value is >= 50
}
DelayApplyEffectToObject(0.0f, PRC_Shifter_ApplyEffects_Generation, DURATION_TYPE_PERMANENT, SupernaturalEffect(EffectDamageIncrease(nDamageBonusConstant, nSTR_DamageType)), oShifter);
}