992 lines
20 KiB
Plaintext
992 lines
20 KiB
Plaintext
// KE_SPELL_FACTOR //
|
|
|
|
// #include "nw_i0_tool"
|
|
// #include "x2_inc_spellhook"
|
|
|
|
// Tarashons includefile for all the new spells //
|
|
|
|
// All damage spells in "Alangara - New Dawn" follows a custom designed damage progression chart, based upon
|
|
// levels and extra effects of the given spell. Besides this all damage spell are ajusted via the nFactor
|
|
// defined in this script.
|
|
|
|
// Current tweak factors include, Class, Level, Basic powerlevel of the module and Reborn status. However
|
|
// with this system in place we can fast and easely incoorporate new factors that we might invent at a later point.
|
|
|
|
|
|
float CalculateFactor()
|
|
|
|
{
|
|
|
|
|
|
// nBasic is to be able to tweak the generel powerlevel of damage spells in the module //
|
|
float nBasic = (100.0/100.0);
|
|
|
|
// nFactor here is ment for NPC/Monster casters basically setting their damage at 40% //
|
|
// int nFactor = (40/100);
|
|
|
|
// float fFactor = (100.0/100.0);
|
|
|
|
object oPC = (OBJECT_SELF);
|
|
|
|
// nLevel is to be able to atune the powerlevel via levels to more accurately ajust gamebalance //
|
|
|
|
float nLevel = 1.0;
|
|
|
|
// Level 1 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 1)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 1)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 1)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 1)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 1)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 2 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 2)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 2)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 2)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 2)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 2)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 3 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 3)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 3)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 3)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 3)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 3)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 4 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 4)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 4)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 4)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 4)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 4)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 5 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 5)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 5)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 5)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 5)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 5)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 6 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 6)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 6)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 6)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 6)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 6)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 7 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 7)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 7)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 7)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 7)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 7)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 8 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 8)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 8)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 8)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 8)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 8)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 9 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 9)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 9)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 9)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 9)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 9)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 10 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 10)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 10)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 10)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 10)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 10)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 11 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 11)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 11)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 11)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 11)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 11)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 12 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 12)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 12)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 12)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 12)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 12)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 13 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 13)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 13)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 13)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 13)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 13)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 14 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 14)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 14)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 14)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 14)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 14)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 15 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 15)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 15)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 15)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 15)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 15)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 16 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 16)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 16)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 16)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 16)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 16)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 17 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 17)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 17)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 17)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 17)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 17)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 18 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 18)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 18)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 18)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 18)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 18)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 19 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 19)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 19)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 19)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 19)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 19)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 20 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 20)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 20)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 20)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 20)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 20)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 21 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 21)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 21)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 21)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 21)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 21)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 22 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 22)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 22)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 22)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 22)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 22)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 23 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 23)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 23)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 23)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 23)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 23)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 24 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 24)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 24)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 24)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 24)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 24)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 25 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 25)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 25)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 25)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 25)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 25)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 26 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 26)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 26)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 26)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 26)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 26)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 27 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 27)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 27)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 27)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 27)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 27)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 28 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 28)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 28)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 28)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 28)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 28)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 29 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 29)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 29)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 29)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 29)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 29)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 30 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 30)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 30)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 30)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 30)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 30)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 31 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 31)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 31)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 31)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 31)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 31)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 32 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 32)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 32)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 32)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 32)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 32)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 33 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 33)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 33)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 33)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 33)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 33)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 34 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 34)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 34)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 34)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 34)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 34)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 35 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 35)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 35)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 35)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 35)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 35)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 36 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 36)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 36)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 36)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 36)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 36)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 37 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 37)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 37)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 37)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 37)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 37)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 38 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 38)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 38)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 38)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 38)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 38)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 39 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 39)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 39)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 39)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 39)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 39)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
// Level 40 //
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC) == 40)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC) == 40)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC) == 40)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC) == 40)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
if (GetLevelByClass(CLASS_TYPE_BARD, oPC) == 40)
|
|
{
|
|
nLevel = (100.0/100.0);
|
|
}
|
|
|
|
|
|
|
|
// nClass is for setting overall ajustments for specific classes //
|
|
|
|
float nClass = 1.0;
|
|
|
|
if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC)>0)
|
|
{
|
|
nClass = (11.0/10.0);
|
|
}
|
|
|
|
if (GetLevelByClass(CLASS_TYPE_DRUID, oPC)>0)
|
|
{
|
|
nClass = (8.0/10.0);
|
|
}
|
|
|
|
if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC)>0)
|
|
{
|
|
nClass = (7.5/10.0);
|
|
}
|
|
|
|
|
|
|
|
// nReborn is for adding extra spellpower to Reborn characters //
|
|
|
|
float nReborn = 1.0;
|
|
|
|
if (GetItemPossessedBy(oPC, "MN_REBORN")!= OBJECT_INVALID)
|
|
{
|
|
nReborn = 1.2;
|
|
}
|
|
|
|
|
|
// nHostile is to make sure monster casters does much less damage than players //
|
|
|
|
float nHostile = 1.0;
|
|
|
|
if (GetItemPossessedBy(oPC, "hostilecaster")!= OBJECT_INVALID)
|
|
{
|
|
nHostile = 0.4;
|
|
}
|
|
|
|
|
|
// nTouched is to make sure Touched casters does more damage than normal ones //
|
|
// at 125 % they will effectively do 35% * 1.25 so 43,75% damage of players //
|
|
|
|
float nTouched = 1.0;
|
|
|
|
if (GetItemPossessedBy(oPC, "touchedcaster")!= OBJECT_INVALID)
|
|
{
|
|
nTouched = 1.25;
|
|
}
|
|
|
|
// Setting the final nFactor that is the intire purpose of this script //
|
|
|
|
float fFactor;
|
|
float fFactor1;
|
|
float fFactor2;
|
|
float fFactor3;
|
|
float fFactor4;
|
|
|
|
fFactor1 = nClass * nBasic;
|
|
|
|
fFactor2 = fFactor1 * nLevel;
|
|
|
|
fFactor3 = fFactor2 * nReborn;
|
|
|
|
fFactor4 = fFactor3 * nTouched;
|
|
|
|
fFactor = fFactor4 * nHostile;
|
|
|
|
|
|
// return the calculated factor
|
|
return fFactor;
|
|
|
|
}
|
|
|