forked from Jaysyn/PRC8
Updated Release Archive. Fixed Mage-killer prereqs. Removed old LETO & ConvoCC related files. Added organized spell scroll store. Fixed Gloura spellbook. Various TLK fixes. Reorganized Repo. Removed invalid user folders. Added DocGen back in.
68 lines
2.6 KiB
Plaintext
68 lines
2.6 KiB
Plaintext
/*
|
|
Put into: OnLevelup Event
|
|
*/
|
|
//:://////////////////////////////////////////////
|
|
//:: Created By: Stratovarius and DarkGod
|
|
//:: Created On: 2003-07-16
|
|
//:://////////////////////////////////////////////
|
|
|
|
//Added hook into EvalPRCFeats event
|
|
// Aaon Graywolf - Jan 6, 2004
|
|
//Added delay to EvalPRCFeats event to allow module setup to take priority
|
|
// Aaon Graywolf - Jan 6, 2004
|
|
|
|
#include "prc_inc_function"
|
|
#include "prc_inc_domain"
|
|
#include "psi_inc_psifunc"
|
|
#include "true_inc_trufunc"
|
|
#include "inv_inc_invfunc"
|
|
#include "tob_inc_tobfunc"
|
|
#include "prc_inc_wpnrest"
|
|
|
|
void main()
|
|
{
|
|
object oPC = GetPCLevellingUp();
|
|
//if(DEBUG) DoDebug("prc_levelup running for '" + GetName(oPC) + "'");
|
|
|
|
// Update class info for EvalPRCFeats()
|
|
SetupCharacterData(oPC);
|
|
|
|
object oSkin = GetPCSkin(oPC);
|
|
DelayCommand(0.0, ScrubPCSkin(oPC, oSkin));
|
|
DelayCommand(0.0, DeletePRCLocalInts(oSkin));
|
|
//if(DEBUG) DoDebug("prc_levelup: DeleteLocals");
|
|
|
|
// Gives people the proper spells from their bonus domains
|
|
// This should run before EvalPRCFeats, because it sets a variable
|
|
DelayCommand(0.1, CheckBonusDomains(oPC));
|
|
//if(DEBUG) DoDebug("prc_levelup: BonusDomain");
|
|
//All of the PRC feats have been hooked into EvalPRCFeats
|
|
//The code is pretty similar, but much more modular, concise
|
|
//And easy to maintain.
|
|
// - Aaon Graywolf
|
|
DelayCommand(0.2, EvalPRCFeats(oPC));
|
|
DelayCommand(0.4, DoWeaponsEquip(oPC));
|
|
//if(DEBUG) DoDebug("prc_levelup: PRCFeats");
|
|
// Check to see which special prc requirements (i.e. those that can't be done)
|
|
// through the .2da's, the newly leveled up player meets.
|
|
ExecuteScript("prc_prereq", oPC); // update prereqs now, for prc_enforce_feat
|
|
DelayCommand(0.5, ExecuteScript("prc_prereq", oPC)); // Execute again after delay so that deleveling (if necessary) gets to happen before it.
|
|
|
|
//:: Run PrC marker feat check
|
|
ExecuteScript("prc_enforce_mark", oPC);
|
|
ExecuteScript("prc_enforce_feat", oPC);
|
|
ExecuteScript("prc_enforce_psi", oPC);
|
|
//Restore Power Points for Psionics
|
|
ExecuteScript("prc_psi_ppoints", oPC);
|
|
//if(DEBUG) DoDebug("prc_levelup: PowerPoints");
|
|
DelayCommand(0.1, FeatSpecialUsePerDay(oPC));
|
|
|
|
// These scripts fire events that should only happen on levelup
|
|
ExecuteScript("prc_vassal_treas", oPC);
|
|
ExecuteScript("tob_evnt_recover", oPC);
|
|
ExecuteScript("moi_wchb_royal", oPC);
|
|
|
|
// Execute scripts hooked to this event for the player triggering it
|
|
ExecuteAllScriptsHookedToEvent(oPC, EVENT_ONPLAYERLEVELUP);
|
|
if(DEBUG) DoDebug("prc_levelup: Exiting");
|
|
} |