Files
Anphillia_PRC8/_module/nss/spell_inc.nss
Jaysyn904 28cdb617b3 Initial commit
Adding all of the current content for Anphillia Unlimited.
2024-01-04 07:49:38 -05:00

81 lines
2.9 KiB
Plaintext

// Temporary for spell names..
#include "cnr_spells_inc"
int spell_GetLevel(int nSpellID, int nCasterClass = -1);
string spell_GetName(int nSpellID);
int spell_GetSchool(int nSpellID);
int spell_GetSpellFocusFeat(int nSpellSchool, int bGreaterFocusFeat=FALSE);
string spell_GetName(int nSpellID)
{
return CnrGetNameForSpell(nSpellID);
}
int spell_GetLevel(int nSpellID, int nCasterClass = -1)
{
string sColumn;
switch (nCasterClass)
{
case CLASS_TYPE_BARD: sColumn="Bard"; break;
case CLASS_TYPE_CLERIC: sColumn="Cleric"; break;
case CLASS_TYPE_DRUID: sColumn="Druid"; break;
case CLASS_TYPE_PALADIN: sColumn="Paladin"; break;
case CLASS_TYPE_RANGER: sColumn="Ranger"; break;
case CLASS_TYPE_WIZARD:
case CLASS_TYPE_SORCERER: // Wizards and Sorcerers use the same column.
sColumn="Wiz_Sorc"; break;
default: sColumn="Innate"; break;
}
string sLevel = Get2DAString("spells", sColumn, nSpellID);
return (sLevel=="") ? -1 : StringToInt(sLevel);
}
int spell_GetSchool(int nSpellID)
{
string sSchool = Get2DAString("spells", "School", nSpellID);
if (sSchool == "A") return SPELL_SCHOOL_ABJURATION;
if (sSchool == "C") return SPELL_SCHOOL_CONJURATION;
if (sSchool == "D") return SPELL_SCHOOL_DIVINATION;
if (sSchool == "E") return SPELL_SCHOOL_ENCHANTMENT;
if (sSchool == "V") return SPELL_SCHOOL_EVOCATION;
if (sSchool == "I") return SPELL_SCHOOL_ILLUSION;
if (sSchool == "N") return SPELL_SCHOOL_NECROMANCY;
if (sSchool == "T") return SPELL_SCHOOL_TRANSMUTATION;
return SPELL_SCHOOL_GENERAL;
}
int spell_GetSpellFocusFeat(int nSpellSchool, int bGreaterFocusFeat=FALSE)
{
switch (nSpellSchool)
{
case SPELL_SCHOOL_ABJURATION:
return bGreaterFocusFeat ? FEAT_GREATER_SPELL_FOCUS_ABJURATION : FEAT_SPELL_FOCUS_ABJURATION;
case SPELL_SCHOOL_CONJURATION:
return bGreaterFocusFeat ? FEAT_GREATER_SPELL_FOCUS_CONJURATION : FEAT_SPELL_FOCUS_CONJURATION;
case SPELL_SCHOOL_DIVINATION:
return bGreaterFocusFeat ? FEAT_GREATER_SPELL_FOCUS_DIVINATION : FEAT_SPELL_FOCUS_DIVINATION;
case SPELL_SCHOOL_ENCHANTMENT:
return bGreaterFocusFeat ? FEAT_GREATER_SPELL_FOCUS_ENCHANTMENT : FEAT_SPELL_FOCUS_ENCHANTMENT;
case SPELL_SCHOOL_EVOCATION:
return bGreaterFocusFeat ? FEAT_GREATER_SPELL_FOCUS_EVOCATION : FEAT_SPELL_FOCUS_EVOCATION;
case SPELL_SCHOOL_ILLUSION:
return bGreaterFocusFeat ? FEAT_GREATER_SPELL_FOCUS_ILLUSION : FEAT_SPELL_FOCUS_ILLUSION;
case SPELL_SCHOOL_NECROMANCY:
return bGreaterFocusFeat ? FEAT_GREATER_SPELL_FOCUS_NECROMANCY : FEAT_SPELL_FOCUS_NECROMANCY;
case SPELL_SCHOOL_TRANSMUTATION:
return bGreaterFocusFeat ? FEAT_GREATER_SPELL_FOCUS_TRANSMUTATION : FEAT_SPELL_FOCUS_TRANSMUTATION;
}
return -1;
}