Initial upload.
Adding base PRC 4.19a files to repository.
This commit is contained in:
104
trunk/smp/smp_inc_difficlt.nss
Normal file
104
trunk/smp/smp_inc_difficlt.nss
Normal file
@@ -0,0 +1,104 @@
|
||||
/*:://////////////////////////////////////////////
|
||||
//:: Name Difficulty settings include
|
||||
//:: FileName SMP_INC_DIFFICLT
|
||||
//:://////////////////////////////////////////////
|
||||
Biowares scaling effects for now.
|
||||
|
||||
MAY REMOVE OR UPDATE!
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Jasperre
|
||||
//::////////////////////////////////////////////*/
|
||||
|
||||
// SMP_INC_DIFFICLT. Get Difficulty Duration
|
||||
// - If they are a PC, and the duration is over 3...
|
||||
// - (Very) Easy = 1/4th of the duration.
|
||||
// - Normal = 1/2th of the duration
|
||||
// Scales for Confusion.
|
||||
float SMP_PRCGetScaledDuration(float fActualDuration, object oTarget);
|
||||
// SMP_INC_DIFFICLT. Get Scaled Effect
|
||||
// - Works on PC's or Henchmen/familiars of a PC.
|
||||
// - Frightened
|
||||
// - Very Easy = -2 Attack, Easy = -4 Attack.
|
||||
// - Paralyze, Stun, Confuse
|
||||
// - Very Easy = Daze
|
||||
// - Charm, Domination
|
||||
// - Change to Daze
|
||||
effect SMP_GetScaledEffect(effect eStandard, object oTarget);
|
||||
|
||||
// SMP_INC_DIFFICLT. Get Difficulty Duration
|
||||
// - If they are a PC, and the duration is over 3...
|
||||
// - (Very) Easy = 1/4th of the duration.
|
||||
// - Normal = 1/2th of the duration
|
||||
// Scales for Confusion.
|
||||
float SMP_PRCGetScaledDuration(float fActualDuration, object oTarget)
|
||||
{
|
||||
int nDiff = GetGameDifficulty();
|
||||
float fNew = fActualDuration;
|
||||
// We do NOT scale durations for now.
|
||||
/* if(GetIsPC(oTarget) && fActualDuration > 3.0)
|
||||
{
|
||||
if(nDiff == GAME_DIFFICULTY_VERY_EASY || nDiff == GAME_DIFFICULTY_EASY)
|
||||
{
|
||||
nNew = fActualDuration / 4;
|
||||
}
|
||||
else if(nDiff == GAME_DIFFICULTY_NORMAL)
|
||||
{
|
||||
nNew = fActualDuration / 2;
|
||||
}
|
||||
if(fNew < 1.0)
|
||||
{
|
||||
fNew = 1.0;
|
||||
}
|
||||
} */
|
||||
return fNew;
|
||||
}
|
||||
// SMP_INC_DIFFICLT. Get Scaled Effect
|
||||
// - Works on PC's or Henchmen/familiars of a PC.
|
||||
// - Frightened
|
||||
// - Very Easy = -2 Attack, Easy = -4 Attack.
|
||||
// - Paralyze, Stun, Confuse
|
||||
// - Very Easy = Daze
|
||||
// - Charm, Domination
|
||||
// - Change to Daze
|
||||
effect SMP_GetScaledEffect(effect eStandard, object oTarget)
|
||||
{
|
||||
int nDiff = GetGameDifficulty();
|
||||
effect eNew = eStandard;
|
||||
object oMaster = GetMaster(oTarget);
|
||||
if(GetIsPC(oTarget) || (GetIsObjectValid(oMaster) && GetIsPC(oMaster)))
|
||||
{
|
||||
int nType = GetEffectType(eStandard);
|
||||
if(nType == EFFECT_TYPE_FRIGHTENED && nDiff == GAME_DIFFICULTY_VERY_EASY)
|
||||
{
|
||||
eNew = EffectAttackDecrease(-2);
|
||||
return eNew;
|
||||
}
|
||||
if(nType == EFFECT_TYPE_FRIGHTENED && nDiff == GAME_DIFFICULTY_EASY)
|
||||
{
|
||||
eNew = EffectAttackDecrease(-4);
|
||||
return eNew;
|
||||
}
|
||||
if(nDiff == GAME_DIFFICULTY_VERY_EASY &&
|
||||
(nType == EFFECT_TYPE_PARALYZE ||
|
||||
nType == EFFECT_TYPE_STUNNED ||
|
||||
nType == EFFECT_TYPE_CONFUSED))
|
||||
{
|
||||
eNew = EffectDazed();
|
||||
return eNew;
|
||||
}
|
||||
else if(nType == EFFECT_TYPE_CHARMED || nType == EFFECT_TYPE_DOMINATED)
|
||||
{
|
||||
eNew = EffectDazed();
|
||||
return eNew;
|
||||
}
|
||||
}
|
||||
return eNew;
|
||||
}
|
||||
|
||||
// End of file Debug lines. Uncomment below "/*" with "//" and compile.
|
||||
/*
|
||||
void main()
|
||||
{
|
||||
return;
|
||||
}
|
||||
//*/
|
Reference in New Issue
Block a user