Initial Commit
Initial Commit [v1.32PRC8]
This commit is contained in:
168
_module/nss/rd_level.nss
Normal file
168
_module/nss/rd_level.nss
Normal file
@@ -0,0 +1,168 @@
|
||||
//:: rd_level.nss
|
||||
|
||||
//#include "prc_inc_util"
|
||||
|
||||
//void main () {}
|
||||
|
||||
int LevelMob(object oCreature, int iLevels);
|
||||
int GetPackage(int iClass);
|
||||
|
||||
int LevelMob(object oCreature, int iLevels)
|
||||
{
|
||||
int iNewLevel;
|
||||
int iIndex;
|
||||
int iClass;
|
||||
int iPackage;
|
||||
|
||||
if (GetClassByPosition(2,oCreature) == CLASS_TYPE_INVALID)
|
||||
{
|
||||
iClass = GetClassByPosition(1,oCreature);
|
||||
iPackage =PACKAGE_INVALID;
|
||||
} else {
|
||||
iClass = CLASS_TYPE_INVALID;
|
||||
iPackage =PACKAGE_INVALID;
|
||||
}
|
||||
|
||||
iIndex = 1;
|
||||
while (iIndex <= iLevels)
|
||||
{
|
||||
iNewLevel=LevelUpHenchman(oCreature,iClass,TRUE,iPackage);
|
||||
iIndex++;
|
||||
}
|
||||
|
||||
//Force Rest to mem spells
|
||||
ForceRest(oCreature);
|
||||
|
||||
//Give more treasure to be lvl appropriate
|
||||
//rem this out cuz too much code is running and getting error
|
||||
//CTG_GenerateNPCTreasure(TREASURE_TYPE_MONSTER, oCreature);
|
||||
|
||||
return iNewLevel;
|
||||
}
|
||||
|
||||
//Setup Random Packages, note that Wizards won't get random packages
|
||||
//so that specific wizard types can be used. Example: Necromancer.
|
||||
int GetPackage(int iClass)
|
||||
{
|
||||
int iPackage;
|
||||
int iRandom;
|
||||
|
||||
iPackage = PACKAGE_INVALID;
|
||||
switch (iClass)
|
||||
{
|
||||
case CLASS_TYPE_SORCERER:
|
||||
iRandom=Random(10)+1;
|
||||
switch (iRandom)
|
||||
{
|
||||
case 1: iPackage = PACKAGE_SORCERER; break;
|
||||
case 2: iPackage = PACKAGE_SORCERER_ABJURATION; break;
|
||||
case 3: iPackage = PACKAGE_SORCERER_CONJURATION; break;
|
||||
case 4: iPackage = PACKAGE_SORCERER_DIVINATION; break;
|
||||
case 5: iPackage = PACKAGE_SORCERER_DRAGONDISCIPLE; break;
|
||||
case 6: iPackage = PACKAGE_SORCERER_ENCHANTMENT; break;
|
||||
case 7: iPackage = PACKAGE_SORCERER_EVOCATION; break;
|
||||
case 8: iPackage = PACKAGE_SORCERER_ILLUSION; break;
|
||||
case 9: iPackage = PACKAGE_SORCERER_NECROMANCY; break;
|
||||
case 10: iPackage = PACKAGE_SORCERER_TRANSMUTATION; break;
|
||||
}
|
||||
break;
|
||||
case CLASS_TYPE_CLERIC:
|
||||
iRandom=Random(6)+1;
|
||||
switch (iRandom)
|
||||
{
|
||||
case 1: iPackage = PACKAGE_CLERIC; break;
|
||||
case 2: iPackage = PACKAGE_CLERIC_BATTLE_PRIEST; break;
|
||||
case 3: iPackage = PACKAGE_CLERIC_DEADWALKER; break;
|
||||
case 4: iPackage = PACKAGE_CLERIC_DIVINE; break;
|
||||
case 5: iPackage = PACKAGE_CLERIC_ELEMENTALIST; break;
|
||||
case 6: iPackage = PACKAGE_CLERIC_SHAMAN; break;
|
||||
}
|
||||
break;
|
||||
case CLASS_TYPE_DRUID:
|
||||
iRandom=Random(6)+1;
|
||||
switch (iRandom)
|
||||
{
|
||||
case 1: iPackage = PACKAGE_DRUID; break;
|
||||
case 2: iPackage = PACKAGE_DRUID_DEATH; break;
|
||||
case 3: iPackage = PACKAGE_DRUID_GRAY; break;
|
||||
case 4: iPackage = PACKAGE_DRUID_HAWKMASTER; break;
|
||||
case 5: iPackage = PACKAGE_DRUID_INTERLOPER; break;
|
||||
case 6: iPackage = PACKAGE_DRUID_SHIFTER; break;
|
||||
}
|
||||
break;
|
||||
case CLASS_TYPE_BARD:
|
||||
iRandom=Random(6)+1;
|
||||
switch (iRandom)
|
||||
{
|
||||
case 1: iPackage = PACKAGE_BARD; break;
|
||||
case 2: iPackage = PACKAGE_BARD_BLADE; break;
|
||||
case 3: iPackage = PACKAGE_BARD_GALLANT; break;
|
||||
case 4: iPackage = PACKAGE_BARD_HARPER; break;
|
||||
case 5: iPackage = PACKAGE_BARD_JESTER; break;
|
||||
case 6: iPackage = PACKAGE_BARD_LOREMASTER; break;
|
||||
}
|
||||
break;
|
||||
case CLASS_TYPE_BARBARIAN:
|
||||
iRandom=Random(6)+1;
|
||||
switch (iRandom)
|
||||
{
|
||||
case 1: iPackage = PACKAGE_BARBARIAN; break;
|
||||
case 2: iPackage = PACKAGE_BARBARIAN_BLACKGUARD; break;
|
||||
case 3: iPackage = PACKAGE_BARBARIAN_BRUTE; break;
|
||||
case 4: iPackage = PACKAGE_BARBARIAN_ORCBLOOD; break;
|
||||
case 5: iPackage = PACKAGE_BARBARIAN_SAVAGE; break;
|
||||
case 6: iPackage = PACKAGE_BARBARIAN_SLAYER; break;
|
||||
}
|
||||
break;
|
||||
case CLASS_TYPE_FIGHTER:
|
||||
iRandom=Random(6)+1;
|
||||
switch (iRandom)
|
||||
{
|
||||
case 1: iPackage = PACKAGE_FIGHTER; break;
|
||||
case 2: iPackage = PACKAGE_FIGHTER_COMMANDER; break;
|
||||
case 3: iPackage = PACKAGE_FIGHTER_FINESSE; break;
|
||||
case 4: iPackage = PACKAGE_FIGHTER_GLADIATOR; break;
|
||||
case 5: iPackage = PACKAGE_FIGHTER_PIRATE; break;
|
||||
case 6: iPackage = PACKAGE_FIGHTER_WEAPONMASTER; break;
|
||||
}
|
||||
break;
|
||||
case CLASS_TYPE_MONK:
|
||||
iRandom=Random(6)+1;
|
||||
switch (iRandom)
|
||||
{
|
||||
case 1: iPackage = PACKAGE_MONK; break;
|
||||
case 2: iPackage = PACKAGE_MONK_ASSASSIN; break;
|
||||
case 3: iPackage = PACKAGE_MONK_DEVOUT; break;
|
||||
case 4: iPackage = PACKAGE_MONK_GIFTED; break;
|
||||
case 5: iPackage = PACKAGE_MONK_PEASANT; break;
|
||||
case 6: iPackage = PACKAGE_MONK_SPIRIT; break;
|
||||
}
|
||||
break;
|
||||
case CLASS_TYPE_RANGER:
|
||||
iRandom=Random(6)+1;
|
||||
switch (iRandom)
|
||||
{
|
||||
case 1: iPackage = PACKAGE_RANGER; break;
|
||||
case 2: iPackage = PACKAGE_RANGER_ARCANEARCHER; break;
|
||||
case 3: iPackage = PACKAGE_RANGER_GIANTKILLER; break;
|
||||
case 4: iPackage = PACKAGE_RANGER_MARKSMAN; break;
|
||||
case 5: iPackage = PACKAGE_RANGER_STALKER; break;
|
||||
case 6: iPackage = PACKAGE_RANGER_WARDEN; break;
|
||||
}
|
||||
break;
|
||||
case CLASS_TYPE_ROGUE:
|
||||
iRandom=Random(6)+1;
|
||||
switch (iRandom)
|
||||
{
|
||||
case 1: iPackage = PACKAGE_ROGUE; break;
|
||||
case 2: iPackage = PACKAGE_ROGUE_BANDIT; break;
|
||||
case 3: iPackage = PACKAGE_ROGUE_GYPSY; break;
|
||||
case 4: iPackage = PACKAGE_ROGUE_SCOUT; break;
|
||||
case 5: iPackage = PACKAGE_ROGUE_SHADOWDANCER; break;
|
||||
case 6: iPackage = PACKAGE_ROGUE_SWASHBUCKLER; break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
return iPackage;
|
||||
}
|
Reference in New Issue
Block a user