Updated AMS marker feats. Removed arcane & divine marker feats. Updated Dread Necromancer for epic progression. Updated weapon baseitem models. Updated new weapons for crafting & npc equip. Updated prefix. Updated release archive.
93 lines
3.1 KiB
Plaintext
93 lines
3.1 KiB
Plaintext
//:://////////////////////////////////////////////
|
|
//:: Drug system functions
|
|
//:: prc_inc_drugfunc
|
|
//:://////////////////////////////////////////////
|
|
/** @file
|
|
A bunch of functions common to the drug
|
|
scripts.
|
|
|
|
@author Ornedan
|
|
@data Created 2006.05.29
|
|
*/
|
|
//:://////////////////////////////////////////////
|
|
//:://////////////////////////////////////////////
|
|
|
|
//////////////////////////////////////////////////
|
|
/* Structures */
|
|
//////////////////////////////////////////////////
|
|
|
|
//////////////////////////////////////////////////
|
|
/* Constants */
|
|
//////////////////////////////////////////////////
|
|
|
|
|
|
//////////////////////////////////////////////////
|
|
/* Function prototypes */
|
|
//////////////////////////////////////////////////
|
|
|
|
/**
|
|
* Increments the overdose tracking counter by one for the given drug and queues
|
|
* decrementing it by one after the given period.
|
|
* The value of this counter is what will be returned by GetHasOverdosed().
|
|
*
|
|
*/
|
|
void IncrementOverdoseTracker(object oDrugUser, string sODIdentifier, float fODPeriod);
|
|
|
|
/**
|
|
* Checks if the given drug user is currently in the overdose period of the given drug.
|
|
* The value returned is the number of drug uses in the overdose period of which is
|
|
* currently active.
|
|
*
|
|
* @param oDrugUser A creature using a drug.
|
|
* @param sODIdentifier The name of the drug's overdose identifier.
|
|
* @return The current value of the overdose variable - how many drug uses of
|
|
* the given drug are right now in their overdose period.
|
|
*/
|
|
int GetOverdoseCounter(object oDrugUser, string sODIdentifier);
|
|
|
|
|
|
//////////////////////////////////////////////////
|
|
/* Includes */
|
|
//////////////////////////////////////////////////
|
|
|
|
|
|
//////////////////////////////////////////////////
|
|
/* Internal functions */
|
|
//////////////////////////////////////////////////
|
|
|
|
/** Internal function.
|
|
* Implements the decrementing of the overdose counters.
|
|
*
|
|
* @param oDrugUser A creature using a drug.
|
|
* @param sODIdentifier The name of the drug's overdose identifier.
|
|
*/
|
|
void _prc_inc_drugfunc_DecrementOverdoseTracker(object oDrugUser, string sODIdentifier)
|
|
{
|
|
// Delete the variable if decrementing would it would make it 0
|
|
if(GetLocalInt(oDrugUser, sODIdentifier) <= 1)
|
|
DeleteLocalInt(oDrugUser, sODIdentifier);
|
|
else
|
|
SetLocalInt(oDrugUser, sODIdentifier, GetLocalInt(oDrugUser, sODIdentifier) - 1);
|
|
}
|
|
|
|
|
|
//////////////////////////////////////////////////
|
|
/* Function definitions */
|
|
//////////////////////////////////////////////////
|
|
|
|
void IncrementOverdoseTracker(object oDrugUser, string sODIdentifier, float fODPeriod)
|
|
{
|
|
SetLocalInt(oDrugUser, sODIdentifier, GetLocalInt(oDrugUser, sODIdentifier) + 1);
|
|
DelayCommand(fODPeriod, _prc_inc_drugfunc_DecrementOverdoseTracker(oDrugUser, sODIdentifier));
|
|
}
|
|
|
|
|
|
int GetOverdoseCounter(object oDrugUser, string sODIdentifier)
|
|
{
|
|
return GetLocalInt(oDrugUser, sODIdentifier);
|
|
}
|
|
|
|
|
|
// Test main
|
|
//void main(){}
|