2025/06/21 Late Update

Fixed Eternal Blade not getting maneuvers at level up.
Gated RKV debug messages.
Fixed RHD sorcerers from being able to use extra slots from bioware spellbooks.
This commit is contained in:
Jaysyn904 2025-06-21 23:27:50 -04:00
parent 4ae73d0f45
commit cd5cf09cbb
3 changed files with 159 additions and 44 deletions

View File

@ -1441,8 +1441,9 @@ int CheckSecondaryPrC(object oPC = OBJECT_SELF)
if (GetHasFeat(FEAT_WILDMAGE_SPELLCASTING_BARD)) return TRUE; if (GetHasFeat(FEAT_WILDMAGE_SPELLCASTING_BARD)) return TRUE;
if (GetHasFeat(FEAT_WWOC_SPELLCASTING_BARD)) return TRUE; if (GetHasFeat(FEAT_WWOC_SPELLCASTING_BARD)) return TRUE;
} }
else if (bBeguiler) if (bBeguiler)
{ {
if(DEBUG) DoDebug("x2_inc_spellhook: CheckSecondaryPrC >>> Entering Beguiler", oPC);
if (GetHasFeat(FEAT_ABCHAMP_SPELLCASTING_BEGUILER)) return TRUE; if (GetHasFeat(FEAT_ABCHAMP_SPELLCASTING_BEGUILER)) return TRUE;
if (GetHasFeat(FEAT_AOTS_SPELLCASTING_BEGUILER)) return TRUE; if (GetHasFeat(FEAT_AOTS_SPELLCASTING_BEGUILER)) return TRUE;
if (GetHasFeat(FEAT_ALCHEM_SPELLCASTING_BEGUILER)) return TRUE; if (GetHasFeat(FEAT_ALCHEM_SPELLCASTING_BEGUILER)) return TRUE;
@ -1492,8 +1493,9 @@ int CheckSecondaryPrC(object oPC = OBJECT_SELF)
} }
else if (bDuskblade) if (bDuskblade)
{ {
if(DEBUG) DoDebug("x2_inc_spellhook: CheckSecondaryPrC >>> Entering Dusblade", oPC);
if (GetHasFeat(FEAT_ABCHAMP_SPELLCASTING_DUSKBLADE)) return TRUE; if (GetHasFeat(FEAT_ABCHAMP_SPELLCASTING_DUSKBLADE)) return TRUE;
if (GetHasFeat(FEAT_AOTS_SPELLCASTING_DUSKBLADE)) return TRUE; if (GetHasFeat(FEAT_AOTS_SPELLCASTING_DUSKBLADE)) return TRUE;
if (GetHasFeat(FEAT_ALCHEM_SPELLCASTING_DUSKBLADE)) return TRUE; if (GetHasFeat(FEAT_ALCHEM_SPELLCASTING_DUSKBLADE)) return TRUE;
@ -1540,8 +1542,9 @@ int CheckSecondaryPrC(object oPC = OBJECT_SELF)
} }
else if (bSorcerer) if (bSorcerer)
{ {
if(DEBUG) DoDebug("x2_inc_spellhook: CheckSecondaryPrC >>> Entering Sorcerer", oPC);
if (GetHasFeat(FEAT_ABERRATION_SPELLCASTING_DRIDER)) return TRUE; if (GetHasFeat(FEAT_ABERRATION_SPELLCASTING_DRIDER)) return TRUE;
if (GetHasFeat(FEAT_MONSTROUS_SPELLCASTING_ARKAMOI)) return TRUE; if (GetHasFeat(FEAT_MONSTROUS_SPELLCASTING_ARKAMOI)) return TRUE;
if (GetHasFeat(FEAT_MONSTROUS_SPELLCASTING_MARRUTACT)) return TRUE; if (GetHasFeat(FEAT_MONSTROUS_SPELLCASTING_MARRUTACT)) return TRUE;
@ -1599,8 +1602,9 @@ int CheckSecondaryPrC(object oPC = OBJECT_SELF)
if (GetHasFeat(FEAT_WILDMAGE_SPELLCASTING_SORCERER)) return TRUE; if (GetHasFeat(FEAT_WILDMAGE_SPELLCASTING_SORCERER)) return TRUE;
if (GetHasFeat(FEAT_WWOC_SPELLCASTING_SORCERER)) return TRUE; if (GetHasFeat(FEAT_WWOC_SPELLCASTING_SORCERER)) return TRUE;
} }
else if (bWarmage) if (bWarmage)
{ {
if(DEBUG) DoDebug("x2_inc_spellhook: CheckSecondaryPrC >>> Entering Warmage", oPC);
if (GetHasFeat(FEAT_AOTS_SPELLCASTING_WARMAGE)) return TRUE; if (GetHasFeat(FEAT_AOTS_SPELLCASTING_WARMAGE)) return TRUE;
if (GetHasFeat(FEAT_ALCHEM_SPELLCASTING_WARMAGE)) return TRUE; if (GetHasFeat(FEAT_ALCHEM_SPELLCASTING_WARMAGE)) return TRUE;
if (GetHasFeat(FEAT_ANIMA_SPELLCASTING_WARMAGE)) return TRUE; if (GetHasFeat(FEAT_ANIMA_SPELLCASTING_WARMAGE)) return TRUE;
@ -1662,14 +1666,71 @@ int BardSorcPrCCheck(object oCaster, int nCastingClass, object oSpellCastItem)
return TRUE; return TRUE;
} }
//check its a sorc spell //check its a sorcerer spell
if(nCastingClass == CLASS_TYPE_SORCERER) if(nCastingClass == CLASS_TYPE_SORCERER)
{ {
if(DEBUG) DoDebug("x2_inc_spellhook: BardSorcPrCCheck >>> nCastingClass is Sorcerer.", oCaster);
//no need to check further if new spellbooks are disabled
if(GetPRCSwitch(PRC_SORC_DISALLOW_NEWSPELLBOOK))
{
if (DEBUG) DoDebug("x2_inc_spellhook: BardSorcPrCCheck >>> PRC_SORC_DISALLOW_NEWSPELLBOOK.", oCaster);
return TRUE;
}
//check they have sorcerer levels
if(!GetLevelByClass(CLASS_TYPE_SORCERER, oCaster))
{
if(DEBUG) DoDebug("x2_inc_spellhook: BardSorcPrCCheck >>> Not a sorcerer.", oCaster);
return TRUE;
}
//check if they are casting via new spellbook
if(GetLocalInt(oCaster, "NSB_Class") != CLASS_TYPE_SORCERER && GetLevelByClass(CLASS_TYPE_ULTIMATE_MAGUS, oCaster))
{
if(DEBUG) DoDebug("x2_inc_spellhook: BardSorcPrCCheck >>> UltMagus using new spellbook.", oCaster);
return FALSE;
}
//check if they are casting via new spellbook
if(GetLocalInt(oCaster, "NSB_Class") == CLASS_TYPE_SORCERER)
{
if(DEBUG) DoDebug("x2_inc_spellhook: BardSorcPrCCheck >>> Using new spellbook.", oCaster);
return TRUE;
}
if(GetLevelByClass(CLASS_TYPE_SUBLIME_CHORD, oCaster) > 0 && CheckSecondaryPrC(oCaster) == TRUE)
{
if (DEBUG) DoDebug("x2_inc_spellhook: BardSorcPrCCheck >>> Sublime Chord w/RHD found.", oCaster);
FloatingTextStringOnCreature("You must use the new spellbook on the class radial.", oCaster, FALSE);
return FALSE;
}
if (CheckSecondaryPrC(oCaster) == TRUE) if (CheckSecondaryPrC(oCaster) == TRUE)
{ {
if (DEBUG) DoDebug("x2_inc_spellhook: BardSorcPrCCheck >>> Sorcerer w/RHD found.", oCaster); if (DEBUG) DoDebug("x2_inc_spellhook: BardSorcPrCCheck >>> Sorcerer w/RHD found.", oCaster);
FloatingTextStringOnCreature("You must use the new spellbook on the class radial.", oCaster, FALSE);
return FALSE;
}
//check they have arcane PrC or Draconic Arcane Grace/Breath
if(!(GetArcanePRCLevels(oCaster, nCastingClass) - GetLevelByClass(CLASS_TYPE_SUBLIME_CHORD, oCaster))
&& !(GetHasFeat(FEAT_DRACONIC_GRACE, oCaster) || GetHasFeat(FEAT_DRACONIC_BREATH, oCaster)))
{
if(DEBUG) DoDebug("x2_inc_spellhook: BardSorcPrCCheck >>> First Sublime Chord check.", oCaster);
return TRUE; return TRUE;
} }
//check they have sorcerer in first arcane slot
//if(GetPrimaryArcaneClass() != CLASS_TYPE_SORCERER)
if(GetPrCAdjustedCasterLevelByType(TYPE_ARCANE, oCaster, TRUE) != GetPrCAdjustedCasterLevelByType(CLASS_TYPE_SORCERER, oCaster, TRUE))
{
if(DEBUG) DoDebug("x2_inc_spellhook: BardSorcPrCCheck >>> GetPrCAdjustedCasterLevelByType.", oCaster);
return TRUE;
}
//at this point, they must be using the bioware spellbook
//from a class that adds to bard
FloatingTextStringOnCreature("You must use the new spellbook on the class radial.", oCaster, FALSE);
return FALSE;
}
/* //check its a sorc spell
if(nCastingClass == CLASS_TYPE_SORCERER)
{
//no need to check further if new spellbooks are disabled //no need to check further if new spellbooks are disabled
if(GetPRCSwitch(PRC_SORC_DISALLOW_NEWSPELLBOOK)) if(GetPRCSwitch(PRC_SORC_DISALLOW_NEWSPELLBOOK))
return TRUE; return TRUE;
@ -1708,7 +1769,7 @@ int BardSorcPrCCheck(object oCaster, int nCastingClass, object oSpellCastItem)
//from a class that adds to sorc //from a class that adds to sorc
FloatingTextStringOnCreature("You must use the new spellbook on the class radial.", oCaster, FALSE); FloatingTextStringOnCreature("You must use the new spellbook on the class radial.", oCaster, FALSE);
return FALSE; return FALSE;
} } */
//check its a bard spell //check its a bard spell
if(nCastingClass == CLASS_TYPE_BARD) if(nCastingClass == CLASS_TYPE_BARD)

View File

@ -79,6 +79,7 @@ void RemoveUncannyDodge(object oInitiator)
DeleteLocalInt(oInitiator, "ETBL_AUD_Applied"); DeleteLocalInt(oInitiator, "ETBL_AUD_Applied");
} }
} }
void BladeGuide(object oInitiator, object oItem) void BladeGuide(object oInitiator, object oItem)
{ {
if (GetBaseItemType(oItem) == BASE_ITEM_ARMOR) if (GetBaseItemType(oItem) == BASE_ITEM_ARMOR)
@ -178,9 +179,10 @@ void main()
int nClass = CLASS_TYPE_ETERNAL_BLADE; int nClass = CLASS_TYPE_ETERNAL_BLADE;
int nLevel = GetLevelByClass(CLASS_TYPE_ETERNAL_BLADE, oInitiator); int nLevel = GetLevelByClass(CLASS_TYPE_ETERNAL_BLADE, oInitiator);
int nMoveTotal = GetKnownManeuversModifier(oInitiator, nClass, MANEUVER_TYPE_MANEUVER); int nBladeClass = GetPrimaryBladeMagicClass(oInitiator);
int nStncTotal = GetKnownManeuversModifier(oInitiator, nClass, MANEUVER_TYPE_STANCE); int nMoveTotal = GetKnownManeuversModifier(oInitiator, nBladeClass, MANEUVER_TYPE_MANEUVER);
int nRdyTotal = GetReadiedManeuversModifier(oInitiator, nClass); int nStncTotal = GetKnownManeuversModifier(oInitiator, nBladeClass, MANEUVER_TYPE_STANCE);
int nRdyTotal = GetReadiedManeuversModifier(oInitiator, nBladeClass);
if(DEBUG) DoDebug("tob_eternalblade running, event: " + IntToString(nEvent)); if(DEBUG) DoDebug("tob_eternalblade running, event: " + IntToString(nEvent));
if(DEBUG) DoDebug("tob_eternalblade nMoveTotal: " + IntToString(nMoveTotal)); if(DEBUG) DoDebug("tob_eternalblade nMoveTotal: " + IntToString(nMoveTotal));
@ -203,57 +205,109 @@ void main()
// It's not pretty, but it works // It's not pretty, but it works
if (nLevel >= 1 && !GetPersistantLocalInt(oInitiator, "ToBEternalBlade1")) if (nLevel >= 1 && !GetPersistantLocalInt(oInitiator, "ToBEternalBlade1"))
{ {
nMoveTotal += 1;
if(DEBUG) DoDebug("tob_eternalblade: Adding Maneuver 1"); if(DEBUG) DoDebug("tob_eternalblade: Adding Maneuver 1");
if(DEBUG) DoDebug("tob_eternalblade SetKnownManeuversModifier 1: " + IntToString(++nMoveTotal)); if(DEBUG) DoDebug("tob_eternalblade SetKnownManeuversModifier 1: " + IntToString(nMoveTotal));
DelayCommand(0.0f, SetKnownManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), ++nMoveTotal, MANEUVER_TYPE_MANEUVER)); //DelayCommand(0.0f, SetKnownManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), nMoveTotal, MANEUVER_TYPE_MANEUVER));
SetKnownManeuversModifier(oInitiator, nBladeClass, nMoveTotal, MANEUVER_TYPE_MANEUVER);
SetPersistantLocalInt(oInitiator, "ToBEternalBlade1", TRUE); SetPersistantLocalInt(oInitiator, "ToBEternalBlade1", TRUE);
SetPersistantLocalInt(oInitiator, "AllowedDisciplines", 270);//DISCIPLINE_DEVOTED_SPIRIT + DISCIPLINE_DIAMOND_MIND + DISCIPLINE_IRON_HEART + DISCIPLINE_WHITE_RAVEN SetPersistantLocalInt(oInitiator, "AllowedDisciplines", DISCIPLINE_DEVOTED_SPIRIT +
DISCIPLINE_DIAMOND_MIND +
DISCIPLINE_IRON_HEART +
DISCIPLINE_WHITE_RAVEN); //:: (270)
if (DEBUG) DoDebug("Granted Maneuver at Level 1: total now " + IntToString(nMoveTotal));
if (DEBUG) DoDebug(IntToString(nStncTotal) +" stances known");
if (DEBUG) DoDebug("Readied maneuvers now: " + IntToString(nRdyTotal));
} }
if (nLevel >= 3 && !GetPersistantLocalInt(oInitiator, "ToBEternalBlade3")) if (nLevel >= 3 && !GetPersistantLocalInt(oInitiator, "ToBEternalBlade3"))
{ {
nMoveTotal += 1;
nRdyTotal += 1;
if(DEBUG) DoDebug("tob_eternalblade: Adding Maneuver 3"); if(DEBUG) DoDebug("tob_eternalblade: Adding Maneuver 3");
if(DEBUG) DoDebug("tob_eternalblade SetKnownManeuversModifier 3: " + IntToString(++nMoveTotal)); if(DEBUG) DoDebug("tob_eternalblade SetKnownManeuversModifier 3: " + IntToString(nMoveTotal));
SetReadiedManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), ++nRdyTotal); SetReadiedManeuversModifier(oInitiator, nBladeClass, nRdyTotal);
DelayCommand(0.0f, SetKnownManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), ++nMoveTotal, MANEUVER_TYPE_MANEUVER)); //DelayCommand(0.0f, SetKnownManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), nMoveTotal, MANEUVER_TYPE_MANEUVER));
SetKnownManeuversModifier(oInitiator, nBladeClass, nMoveTotal, MANEUVER_TYPE_MANEUVER);
SetPersistantLocalInt(oInitiator, "ToBEternalBlade3", TRUE); SetPersistantLocalInt(oInitiator, "ToBEternalBlade3", TRUE);
SetPersistantLocalInt(oInitiator, "AllowedDisciplines", 270);//DISCIPLINE_DEVOTED_SPIRIT + DISCIPLINE_DIAMOND_MIND + DISCIPLINE_IRON_HEART + DISCIPLINE_WHITE_RAVEN SetPersistantLocalInt(oInitiator, "AllowedDisciplines", DISCIPLINE_DEVOTED_SPIRIT +
DISCIPLINE_DIAMOND_MIND +
DISCIPLINE_IRON_HEART +
DISCIPLINE_WHITE_RAVEN); //:: (270)
if (DEBUG) DoDebug("Granted Maneuver at Level 3: total now " + IntToString(nMoveTotal));
if (DEBUG) DoDebug(IntToString(nStncTotal) +" stances known");
if (DEBUG) DoDebug("Readied maneuvers now: " + IntToString(nRdyTotal));
} }
if (nLevel >= 5 && !GetPersistantLocalInt(oInitiator, "ToBEternalBlade5")) if (nLevel >= 5 && !GetPersistantLocalInt(oInitiator, "ToBEternalBlade5"))
{ {
nStncTotal += 1;
nMoveTotal += 1;
if(DEBUG) DoDebug("tob_eternalblade: Adding Maneuver 5"); if(DEBUG) DoDebug("tob_eternalblade: Adding Maneuver 5");
if(DEBUG) DoDebug("tob_eternalblade SetKnownManeuversModifier 5: " + IntToString(++nMoveTotal)); if(DEBUG) DoDebug("tob_eternalblade SetKnownManeuversModifier 5: " + IntToString(++nMoveTotal));
DelayCommand(0.0f, SetKnownManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), ++nStncTotal, MANEUVER_TYPE_STANCE)); //DelayCommand(0.0f, SetKnownManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), nStncTotal, MANEUVER_TYPE_STANCE));
DelayCommand(0.0f, SetKnownManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), ++nMoveTotal, MANEUVER_TYPE_MANEUVER)); //DelayCommand(0.0f, SetKnownManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), nMoveTotal, MANEUVER_TYPE_MANEUVER));
SetKnownManeuversModifier(oInitiator, nBladeClass, nStncTotal, MANEUVER_TYPE_STANCE);
SetKnownManeuversModifier(oInitiator, nBladeClass, nMoveTotal, MANEUVER_TYPE_MANEUVER);
SetPersistantLocalInt(oInitiator, "ToBEternalBlade5", TRUE); SetPersistantLocalInt(oInitiator, "ToBEternalBlade5", TRUE);
SetPersistantLocalInt(oInitiator, "AllowedDisciplines", 270);//DISCIPLINE_DEVOTED_SPIRIT + DISCIPLINE_DIAMOND_MIND + DISCIPLINE_IRON_HEART + DISCIPLINE_WHITE_RAVEN SetPersistantLocalInt(oInitiator, "AllowedDisciplines", DISCIPLINE_DEVOTED_SPIRIT +
DISCIPLINE_DIAMOND_MIND +
DISCIPLINE_IRON_HEART +
DISCIPLINE_WHITE_RAVEN); //:: (270)
if (DEBUG) DoDebug("Granted Maneuver at Level 5: total now " + IntToString(nMoveTotal));
if (DEBUG) DoDebug(IntToString(nStncTotal) +" stances known");
if (DEBUG) DoDebug("Readied maneuvers now: " + IntToString(nRdyTotal));
} }
if (nLevel >= 6 && !GetPersistantLocalInt(oInitiator, "ToBEternalBlade6")) if (nLevel >= 6 && !GetPersistantLocalInt(oInitiator, "ToBEternalBlade6"))
{ {
nRdyTotal += 1;
if(DEBUG) DoDebug("tob_eternalblade: Adding Maneuver 6"); if(DEBUG) DoDebug("tob_eternalblade: Adding Maneuver 6");
SetReadiedManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), ++nRdyTotal); SetReadiedManeuversModifier(oInitiator, nBladeClass, nRdyTotal);
SetPersistantLocalInt(oInitiator, "ToBEternalBlade6", TRUE); SetPersistantLocalInt(oInitiator, "ToBEternalBlade6", TRUE);
if (DEBUG) DoDebug("Granted Maneuver at Level 6: total now " + IntToString(nMoveTotal));
if (DEBUG) DoDebug(IntToString(nStncTotal) +" stances known");
if (DEBUG) DoDebug("Readied maneuvers now: " + IntToString(nRdyTotal));
} }
if (nLevel >= 7 && !GetPersistantLocalInt(oInitiator, "ToBEternalBlade7")) if (nLevel >= 7 && !GetPersistantLocalInt(oInitiator, "ToBEternalBlade7"))
{ {
nMoveTotal += 1;
if(DEBUG) DoDebug("tob_eternalblade: Adding Maneuver 7"); if(DEBUG) DoDebug("tob_eternalblade: Adding Maneuver 7");
if(DEBUG) DoDebug("tob_eternalblade SetKnownManeuversModifier 7: " + IntToString(++nMoveTotal)); if(DEBUG) DoDebug("tob_eternalblade SetKnownManeuversModifier 7: " + IntToString(nMoveTotal));
DelayCommand(0.0f, SetKnownManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), ++nMoveTotal, MANEUVER_TYPE_MANEUVER)); DelayCommand(0.0f, SetKnownManeuversModifier(oInitiator, nBladeClass, nMoveTotal, MANEUVER_TYPE_MANEUVER));
SetPersistantLocalInt(oInitiator, "ToBEternalBlade7", TRUE); SetPersistantLocalInt(oInitiator, "ToBEternalBlade7", TRUE);
SetPersistantLocalInt(oInitiator, "AllowedDisciplines", 270);//DISCIPLINE_DEVOTED_SPIRIT + DISCIPLINE_DIAMOND_MIND + DISCIPLINE_IRON_HEART + DISCIPLINE_WHITE_RAVEN SetPersistantLocalInt(oInitiator, "AllowedDisciplines", DISCIPLINE_DEVOTED_SPIRIT +
DISCIPLINE_DIAMOND_MIND +
DISCIPLINE_IRON_HEART +
DISCIPLINE_WHITE_RAVEN); //:: (270)
if (DEBUG) DoDebug("Granted Maneuver at Level 7: total now " + IntToString(nMoveTotal));
if (DEBUG) DoDebug(IntToString(nStncTotal) +" stances known");
if (DEBUG) DoDebug("Readied maneuvers now: " + IntToString(nRdyTotal));
} }
if (nLevel >= 9 && !GetPersistantLocalInt(oInitiator, "ToBEternalBlade9")) if (nLevel >= 9 && !GetPersistantLocalInt(oInitiator, "ToBEternalBlade9"))
{ {
nMoveTotal += 1;
nRdyTotal += 1;
if(DEBUG) DoDebug("tob_eternalblade: Adding Maneuver 9"); if(DEBUG) DoDebug("tob_eternalblade: Adding Maneuver 9");
if(DEBUG) DoDebug("tob_eternalblade SetKnownManeuversModifier 9: " + IntToString(++nMoveTotal)); if(DEBUG) DoDebug("tob_eternalblade SetKnownManeuversModifier 9: " + IntToString(nMoveTotal));
SetReadiedManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), ++nRdyTotal); SetReadiedManeuversModifier(oInitiator, nBladeClass, nRdyTotal);
DelayCommand(0.0f, SetKnownManeuversModifier(oInitiator, GetPrimaryBladeMagicClass(oInitiator), ++nMoveTotal, MANEUVER_TYPE_MANEUVER)); DelayCommand(0.0f, SetKnownManeuversModifier(oInitiator, nBladeClass, nMoveTotal, MANEUVER_TYPE_MANEUVER));
SetPersistantLocalInt(oInitiator, "ToBEternalBlade9", TRUE); SetPersistantLocalInt(oInitiator, "ToBEternalBlade9", TRUE);
SetPersistantLocalInt(oInitiator, "AllowedDisciplines", 270);//DISCIPLINE_DEVOTED_SPIRIT + DISCIPLINE_DIAMOND_MIND + DISCIPLINE_IRON_HEART + DISCIPLINE_WHITE_RAVEN SetPersistantLocalInt(oInitiator, "AllowedDisciplines", DISCIPLINE_DEVOTED_SPIRIT +
DISCIPLINE_DIAMOND_MIND +
DISCIPLINE_IRON_HEART +
DISCIPLINE_WHITE_RAVEN); //:: (270)
if (DEBUG) DoDebug("Granted Maneuver at Level 9: total now " + IntToString(nMoveTotal));
if (DEBUG) DoDebug(IntToString(nStncTotal) +" stances known");
if (DEBUG) DoDebug("Readied maneuvers now: " + IntToString(nRdyTotal));
} }
// Hook to OnLevelDown to remove the maneuver slots granted here // Hook to OnLevelDown to remove the maneuver slots granted here

View File

@ -28,9 +28,9 @@ void main()
int nStncTotal = GetKnownManeuversModifier(oInitiator, nClass, MANEUVER_TYPE_STANCE); int nStncTotal = GetKnownManeuversModifier(oInitiator, nClass, MANEUVER_TYPE_STANCE);
int nRdyTotal = GetReadiedManeuversModifier(oInitiator, nClass); int nRdyTotal = GetReadiedManeuversModifier(oInitiator, nClass);
DoDebug("nMoveTotal = "+IntToString(nMoveTotal)); if (DEBUG) DoDebug("nMoveTotal = "+IntToString(nMoveTotal));
DoDebug("nStncTotal = "+IntToString(nStncTotal)); if (DEBUG) DoDebug("nStncTotal = "+IntToString(nStncTotal));
DoDebug("nRdyTotal = "+IntToString(nRdyTotal)); if (DEBUG) DoDebug("nRdyTotal = "+IntToString(nRdyTotal));
int nRubyLvl = GetLevelByClass(CLASS_TYPE_RUBY_VINDICATOR, oInitiator); int nRubyLvl = GetLevelByClass(CLASS_TYPE_RUBY_VINDICATOR, oInitiator);
int nRubyBonusMove = nRubyLvl / 2; int nRubyBonusMove = nRubyLvl / 2;
@ -38,9 +38,9 @@ DoDebug("nRdyTotal = "+IntToString(nRdyTotal));
if (nRubyLvl >= 6) nRubyBonusStance = 2; if (nRubyLvl >= 6) nRubyBonusStance = 2;
int nRubyBonusReady = nRubyLvl > 8 ? 2 : nRubyLvl > 4 ? 1 : 0; int nRubyBonusReady = nRubyLvl > 8 ? 2 : nRubyLvl > 4 ? 1 : 0;
int nMod; int nMod;
DoDebug("nRubyBonusMove = "+IntToString(nRubyBonusMove)); if (DEBUG) DoDebug("nRubyBonusMove = "+IntToString(nRubyBonusMove));
DoDebug("nRubyBonusStance = "+IntToString(nRubyBonusStance)); if (DEBUG) DoDebug("nRubyBonusStance = "+IntToString(nRubyBonusStance));
DoDebug("nRubyBonusReady = "+IntToString(nRubyBonusReady)); if (DEBUG) DoDebug("nRubyBonusReady = "+IntToString(nRubyBonusReady));
// We aren't being called from any event, instead from EvalPRCFeats // We aren't being called from any event, instead from EvalPRCFeats
if(nEvent == FALSE) if(nEvent == FALSE)