diff --git a/nwn/nwnprc/trunk/include/prc_inc_assoc.nss b/nwn/nwnprc/trunk/include/prc_inc_assoc.nss index cb1f3895..18e3f572 100644 --- a/nwn/nwnprc/trunk/include/prc_inc_assoc.nss +++ b/nwn/nwnprc/trunk/include/prc_inc_assoc.nss @@ -227,7 +227,7 @@ void ApplyIllmaster(object oCompanion, object oCompSkin) int iCons = GetAbilityModifier(ABILITY_CONSTITUTION, oCompanion); int iDC = 10 + (iHD / 2) + iCons; //Create the onhit item property for causing the blight touch disease - itemproperty ipBlightTouch = ItemPropertyOnHitProps(IP_CONST_ONHIT_DISEASE, iDC, DISEASE_TALONAS_BLIGHT); + itemproperty ipBlightTouch = ItemPropertyOnHitProps(IP_CONST_ONHIT_DISEASE, IPOnHitSaveDC(iDC), DISEASE_TALONAS_BLIGHT); //Get the companion's creature weapons object oBite = GetItemInSlot(INVENTORY_SLOT_CWEAPON_B, oCompanion); object oLClaw = GetItemInSlot(INVENTORY_SLOT_CWEAPON_L, oCompanion); @@ -527,4 +527,6 @@ void UnsummonCompanions(object oPC) if(GetIsObjectValid(oAsso)) DestroyAssociate(oAsso); } -} \ No newline at end of file +} + +//:: void main(){} \ No newline at end of file diff --git a/nwn/nwnprc/trunk/include/prc_ipfeat_const.nss b/nwn/nwnprc/trunk/include/prc_ipfeat_const.nss index 2f5ed35f..238a4053 100644 --- a/nwn/nwnprc/trunk/include/prc_ipfeat_const.nss +++ b/nwn/nwnprc/trunk/include/prc_ipfeat_const.nss @@ -713,7 +713,7 @@ const int IP_CONST_ONHIT_CASTSPELL_NIGHTSHADEPOISON = 201; const int IP_CONST_ONHIT_CASTSPELL_LINGDMG = 202; const int IP_CONST_CASTSPELL_ELDRITCH_GLAIVE_ONHIT = 205; -//:: DAMAGE_BONUS_ +//:: DAMAGE_BONUS_ [iprp_damagecost.2da] const int DAMAGE_BONUS_21 = 73; const int DAMAGE_BONUS_22 = 74; const int DAMAGE_BONUS_23 = 75; @@ -745,7 +745,7 @@ const int DAMAGE_BONUS_48 = 100; const int DAMAGE_BONUS_49 = 101; const int DAMAGE_BONUS_50 = 102; -//:: IP_CONST_DAMAGEBONUS +//:: IP_CONST_DAMAGEBONUS [iprp_damagecost.2da] const int IP_CONST_DAMAGEBONUS_11 = 21; const int IP_CONST_DAMAGEBONUS_12 = 22; const int IP_CONST_DAMAGEBONUS_13 = 23; @@ -831,16 +831,68 @@ const int IP_CONST_DAMAGEBONUS_50 = 102; // IP_CONST_IMMUNITYSPELL - const int IP_CONST_IMMUNITYSPELL_BOLT_WEB = 239; const int IP_CONST_IMMUNITYSPELL_SHADOW_WEB = 240; const int IP_CONST_IMMUNITYSPELL_BELETITH_WEB = 241; const int IP_CONST_IMMUNITYSPELL_NS_WEB = 242; -// IP_CONST_ONHIT_SAVEDC +// IP_CONST_ONHIT_SAVEDC [iprp_onhitcost.2da] +const int IP_CONST_ONHIT_SAVEDC_10 = 10; +const int IP_CONST_ONHIT_SAVEDC_11 = 11; +const int IP_CONST_ONHIT_SAVEDC_12 = 12; +const int IP_CONST_ONHIT_SAVEDC_13 = 13; +const int IP_CONST_ONHIT_SAVEDC_15 = 15; const int IP_CONST_ONHIT_SAVEDC_17 = 17; const int IP_CONST_ONHIT_SAVEDC_19 = 19; +const int IP_CONST_ONHIT_SAVEDC_21 = 21; +const int IP_CONST_ONHIT_SAVEDC_23 = 23; +const int IP_CONST_ONHIT_SAVEDC_25 = 25; +const int IP_CONST_ONHIT_SAVEDC_27 = 27; +const int IP_CONST_ONHIT_SAVEDC_28 = 28; +const int IP_CONST_ONHIT_SAVEDC_29 = 29; +const int IP_CONST_ONHIT_SAVEDC_30 = 30; +const int IP_CONST_ONHIT_SAVEDC_31 = 31; +const int IP_CONST_ONHIT_SAVEDC_32 = 32; +const int IP_CONST_ONHIT_SAVEDC_33 = 33; +const int IP_CONST_ONHIT_SAVEDC_34 = 34; +const int IP_CONST_ONHIT_SAVEDC_35 = 35; +const int IP_CONST_ONHIT_SAVEDC_36 = 36; +const int IP_CONST_ONHIT_SAVEDC_37 = 37; +const int IP_CONST_ONHIT_SAVEDC_38 = 38; +const int IP_CONST_ONHIT_SAVEDC_39 = 39; +const int IP_CONST_ONHIT_SAVEDC_40 = 40; +const int IP_CONST_ONHIT_SAVEDC_41 = 41; +const int IP_CONST_ONHIT_SAVEDC_42 = 42; +const int IP_CONST_ONHIT_SAVEDC_43 = 43; +const int IP_CONST_ONHIT_SAVEDC_44 = 44; +const int IP_CONST_ONHIT_SAVEDC_45 = 45; +const int IP_CONST_ONHIT_SAVEDC_46 = 46; +const int IP_CONST_ONHIT_SAVEDC_47 = 47; +const int IP_CONST_ONHIT_SAVEDC_48 = 48; +const int IP_CONST_ONHIT_SAVEDC_49 = 49; +const int IP_CONST_ONHIT_SAVEDC_50 = 50; +const int IP_CONST_ONHIT_SAVEDC_51 = 51; +const int IP_CONST_ONHIT_SAVEDC_52 = 52; +const int IP_CONST_ONHIT_SAVEDC_53 = 53; +const int IP_CONST_ONHIT_SAVEDC_54 = 54; +const int IP_CONST_ONHIT_SAVEDC_55 = 55; +const int IP_CONST_ONHIT_SAVEDC_56 = 56; +const int IP_CONST_ONHIT_SAVEDC_57 = 57; +const int IP_CONST_ONHIT_SAVEDC_58 = 58; +const int IP_CONST_ONHIT_SAVEDC_59 = 59; +const int IP_CONST_ONHIT_SAVEDC_60 = 60; +const int IP_CONST_ONHIT_SAVEDC_61 = 61; +const int IP_CONST_ONHIT_SAVEDC_62 = 62; +const int IP_CONST_ONHIT_SAVEDC_63 = 63; +const int IP_CONST_ONHIT_SAVEDC_64 = 64; +const int IP_CONST_ONHIT_SAVEDC_65 = 65; +const int IP_CONST_ONHIT_SAVEDC_66 = 66; +const int IP_CONST_ONHIT_SAVEDC_67 = 67; +const int IP_CONST_ONHIT_SAVEDC_68 = 68; +const int IP_CONST_ONHIT_SAVEDC_69 = 69; +const int IP_CONST_ONHIT_SAVEDC_70 = 70; + // Creature Epic Criticals const int IP_CONST_FEAT_DEVCRITICAL_CREATURE = 271; diff --git a/nwn/nwnprc/trunk/include/prc_x2_itemprop.nss b/nwn/nwnprc/trunk/include/prc_x2_itemprop.nss index e69f65ba..e4a1be06 100644 --- a/nwn/nwnprc/trunk/include/prc_x2_itemprop.nss +++ b/nwn/nwnprc/trunk/include/prc_x2_itemprop.nss @@ -1852,13 +1852,148 @@ int IPDamageConstant(int nDamBon) case 18: nIPBonus = IP_CONST_DAMAGEBONUS_18; break; case 19: nIPBonus = IP_CONST_DAMAGEBONUS_19; break; case 20: nIPBonus = IP_CONST_DAMAGEBONUS_20; break; + case 21: nIPBonus = IP_CONST_DAMAGEBONUS_21; break; + case 22: nIPBonus = IP_CONST_DAMAGEBONUS_22; break; + case 23: nIPBonus = IP_CONST_DAMAGEBONUS_23; break; + case 24: nIPBonus = IP_CONST_DAMAGEBONUS_24; break; + case 25: nIPBonus = IP_CONST_DAMAGEBONUS_25; break; + case 26: nIPBonus = IP_CONST_DAMAGEBONUS_26; break; + case 27: nIPBonus = IP_CONST_DAMAGEBONUS_27; break; + case 28: nIPBonus = IP_CONST_DAMAGEBONUS_28; break; + case 29: nIPBonus = IP_CONST_DAMAGEBONUS_29; break; + case 30: nIPBonus = IP_CONST_DAMAGEBONUS_30; break; + case 31: nIPBonus = IP_CONST_DAMAGEBONUS_31; break; + case 32: nIPBonus = IP_CONST_DAMAGEBONUS_32; break; + case 33: nIPBonus = IP_CONST_DAMAGEBONUS_33; break; + case 34: nIPBonus = IP_CONST_DAMAGEBONUS_34; break; + case 35: nIPBonus = IP_CONST_DAMAGEBONUS_35; break; + case 36: nIPBonus = IP_CONST_DAMAGEBONUS_36; break; + case 37: nIPBonus = IP_CONST_DAMAGEBONUS_37; break; + case 38: nIPBonus = IP_CONST_DAMAGEBONUS_38; break; + case 39: nIPBonus = IP_CONST_DAMAGEBONUS_39; break; + case 40: nIPBonus = IP_CONST_DAMAGEBONUS_40; break; + case 41: nIPBonus = IP_CONST_DAMAGEBONUS_41; break; + case 42: nIPBonus = IP_CONST_DAMAGEBONUS_42; break; + case 43: nIPBonus = IP_CONST_DAMAGEBONUS_43; break; + case 44: nIPBonus = IP_CONST_DAMAGEBONUS_44; break; + case 45: nIPBonus = IP_CONST_DAMAGEBONUS_45; break; + case 46: nIPBonus = IP_CONST_DAMAGEBONUS_46; break; + case 47: nIPBonus = IP_CONST_DAMAGEBONUS_47; break; + case 48: nIPBonus = IP_CONST_DAMAGEBONUS_48; break; + case 49: nIPBonus = IP_CONST_DAMAGEBONUS_49; break; + case 50: nIPBonus = IP_CONST_DAMAGEBONUS_50; break; } - if (nDamBon > 20) nIPBonus = IP_CONST_DAMAGEBONUS_20; + if (nDamBon > 20) nIPBonus = IP_CONST_DAMAGEBONUS_50; return nIPBonus; } + +/* int IPDamageConstant(int nDamBon) +{ + int nIPBonus; + switch(nDamBon) + { + case 1: nIPBonus = IP_CONST_DAMAGEBONUS_1; break; + case 2: nIPBonus = IP_CONST_DAMAGEBONUS_2; break; + case 3: nIPBonus = IP_CONST_DAMAGEBONUS_3; break; + case 4: nIPBonus = IP_CONST_DAMAGEBONUS_4; break; + case 5: nIPBonus = IP_CONST_DAMAGEBONUS_5; break; + case 6: nIPBonus = IP_CONST_DAMAGEBONUS_6; break; + case 7: nIPBonus = IP_CONST_DAMAGEBONUS_7; break; + case 8: nIPBonus = IP_CONST_DAMAGEBONUS_8; break; + case 9: nIPBonus = IP_CONST_DAMAGEBONUS_9; break; + case 10: nIPBonus = IP_CONST_DAMAGEBONUS_10; break; + case 11: nIPBonus = IP_CONST_DAMAGEBONUS_11; break; + case 12: nIPBonus = IP_CONST_DAMAGEBONUS_12; break; + case 13: nIPBonus = IP_CONST_DAMAGEBONUS_13; break; + case 14: nIPBonus = IP_CONST_DAMAGEBONUS_14; break; + case 15: nIPBonus = IP_CONST_DAMAGEBONUS_15; break; + case 16: nIPBonus = IP_CONST_DAMAGEBONUS_16; break; + case 17: nIPBonus = IP_CONST_DAMAGEBONUS_17; break; + case 18: nIPBonus = IP_CONST_DAMAGEBONUS_18; break; + case 19: nIPBonus = IP_CONST_DAMAGEBONUS_19; break; + case 20: nIPBonus = IP_CONST_DAMAGEBONUS_20; break; + } + if (nDamBon > 20) nIPBonus = IP_CONST_DAMAGEBONUS_20; + + return nIPBonus; +} */ + int IPOnHitSaveDC(int nSaveDC) +{ + int nIPBonus = IP_CONST_ONHIT_SAVEDC_10; + switch(nSaveDC) + { + case 10: nIPBonus = IP_CONST_ONHIT_SAVEDC_10; break; + case 11: nIPBonus = IP_CONST_ONHIT_SAVEDC_11; break; + case 12: nIPBonus = IP_CONST_ONHIT_SAVEDC_12; break; + case 13: nIPBonus = IP_CONST_ONHIT_SAVEDC_13; break; + case 14: nIPBonus = IP_CONST_ONHIT_SAVEDC_14; break; + case 15: nIPBonus = IP_CONST_ONHIT_SAVEDC_15; break; + case 16: nIPBonus = IP_CONST_ONHIT_SAVEDC_16; break; + case 17: nIPBonus = IP_CONST_ONHIT_SAVEDC_17; break; + case 18: nIPBonus = IP_CONST_ONHIT_SAVEDC_18; break; + case 19: nIPBonus = IP_CONST_ONHIT_SAVEDC_19; break; + case 20: nIPBonus = IP_CONST_ONHIT_SAVEDC_20; break; + case 21: nIPBonus = IP_CONST_ONHIT_SAVEDC_21; break; + case 22: nIPBonus = IP_CONST_ONHIT_SAVEDC_22; break; + case 23: nIPBonus = IP_CONST_ONHIT_SAVEDC_23; break; + case 24: nIPBonus = IP_CONST_ONHIT_SAVEDC_24; break; + case 25: nIPBonus = IP_CONST_ONHIT_SAVEDC_25; break; + case 26: nIPBonus = IP_CONST_ONHIT_SAVEDC_26; break; + case 27: nIPBonus = IP_CONST_ONHIT_SAVEDC_27; break; + case 28: nIPBonus = IP_CONST_ONHIT_SAVEDC_28; break; + case 29: nIPBonus = IP_CONST_ONHIT_SAVEDC_29; break; + case 30: nIPBonus = IP_CONST_ONHIT_SAVEDC_30; break; + case 31: nIPBonus = IP_CONST_ONHIT_SAVEDC_31; break; + case 32: nIPBonus = IP_CONST_ONHIT_SAVEDC_32; break; + case 33: nIPBonus = IP_CONST_ONHIT_SAVEDC_33; break; + case 34: nIPBonus = IP_CONST_ONHIT_SAVEDC_34; break; + case 35: nIPBonus = IP_CONST_ONHIT_SAVEDC_35; break; + case 36: nIPBonus = IP_CONST_ONHIT_SAVEDC_36; break; + case 37: nIPBonus = IP_CONST_ONHIT_SAVEDC_37; break; + case 38: nIPBonus = IP_CONST_ONHIT_SAVEDC_38; break; + case 39: nIPBonus = IP_CONST_ONHIT_SAVEDC_39; break; + case 40: nIPBonus = IP_CONST_ONHIT_SAVEDC_40; break; + case 41: nIPBonus = IP_CONST_ONHIT_SAVEDC_41; break; + case 42: nIPBonus = IP_CONST_ONHIT_SAVEDC_42; break; + case 43: nIPBonus = IP_CONST_ONHIT_SAVEDC_43; break; + case 44: nIPBonus = IP_CONST_ONHIT_SAVEDC_44; break; + case 45: nIPBonus = IP_CONST_ONHIT_SAVEDC_45; break; + case 46: nIPBonus = IP_CONST_ONHIT_SAVEDC_46; break; + case 47: nIPBonus = IP_CONST_ONHIT_SAVEDC_47; break; + case 48: nIPBonus = IP_CONST_ONHIT_SAVEDC_48; break; + case 49: nIPBonus = IP_CONST_ONHIT_SAVEDC_49; break; + case 50: nIPBonus = IP_CONST_ONHIT_SAVEDC_50; break; + case 51: nIPBonus = IP_CONST_ONHIT_SAVEDC_51; break; + case 52: nIPBonus = IP_CONST_ONHIT_SAVEDC_52; break; + case 53: nIPBonus = IP_CONST_ONHIT_SAVEDC_53; break; + case 54: nIPBonus = IP_CONST_ONHIT_SAVEDC_54; break; + case 55: nIPBonus = IP_CONST_ONHIT_SAVEDC_55; break; + case 56: nIPBonus = IP_CONST_ONHIT_SAVEDC_56; break; + case 57: nIPBonus = IP_CONST_ONHIT_SAVEDC_57; break; + case 58: nIPBonus = IP_CONST_ONHIT_SAVEDC_58; break; + case 59: nIPBonus = IP_CONST_ONHIT_SAVEDC_59; break; + case 60: nIPBonus = IP_CONST_ONHIT_SAVEDC_60; break; + case 61: nIPBonus = IP_CONST_ONHIT_SAVEDC_61; break; + case 62: nIPBonus = IP_CONST_ONHIT_SAVEDC_62; break; + case 63: nIPBonus = IP_CONST_ONHIT_SAVEDC_63; break; + case 64: nIPBonus = IP_CONST_ONHIT_SAVEDC_64; break; + case 65: nIPBonus = IP_CONST_ONHIT_SAVEDC_65; break; + case 66: nIPBonus = IP_CONST_ONHIT_SAVEDC_66; break; + case 67: nIPBonus = IP_CONST_ONHIT_SAVEDC_67; break; + case 68: nIPBonus = IP_CONST_ONHIT_SAVEDC_68; break; + case 69: nIPBonus = IP_CONST_ONHIT_SAVEDC_69; break; + case 70: nIPBonus = IP_CONST_ONHIT_SAVEDC_70; break; + } + if (nSaveDC < 10) nIPBonus = IP_CONST_ONHIT_SAVEDC_10; + if (nSaveDC > 70) nIPBonus = IP_CONST_ONHIT_SAVEDC_70; + + return nIPBonus; +} + +/* int IPOnHitSaveDC(int nSaveDC) { int nIPBonus; switch(nSaveDC) @@ -1884,4 +2019,4 @@ int IPOnHitSaveDC(int nSaveDC) if (nSaveDC > 26) nIPBonus = IP_CONST_ONHIT_SAVEDC_26; return nIPBonus; -} \ No newline at end of file +} */ \ No newline at end of file