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.
84 lines
2.0 KiB
Plaintext
84 lines
2.0 KiB
Plaintext
/*
|
|
Implicable Foe - Heartbeat
|
|
*/
|
|
#include "prc_alterations"
|
|
|
|
int GetIsDisabled(object oCreature);
|
|
|
|
void main()
|
|
{
|
|
object oCreator = GetAreaOfEffectCreator();
|
|
switch(GetCurrentAction(oCreator))
|
|
{
|
|
case ACTION_ANIMALEMPATHY:
|
|
case ACTION_ATTACKOBJECT:
|
|
case ACTION_CASTSPELL:
|
|
case ACTION_CLOSEDOOR:
|
|
case ACTION_COUNTERSPELL:
|
|
case ACTION_DIALOGOBJECT:
|
|
case ACTION_DISABLETRAP:
|
|
case ACTION_DROPITEM:
|
|
case ACTION_EXAMINETRAP:
|
|
case ACTION_FLAGTRAP:
|
|
case ACTION_FOLLOW:
|
|
case ACTION_HEAL:
|
|
case ACTION_ITEMCASTSPELL:
|
|
case ACTION_KIDAMAGE:
|
|
case ACTION_LOCK:
|
|
case ACTION_MOVETOPOINT:
|
|
case ACTION_OPENDOOR:
|
|
case ACTION_OPENLOCK:
|
|
case ACTION_PICKPOCKET:
|
|
case ACTION_PICKUPITEM:
|
|
case ACTION_RANDOMWALK:
|
|
case ACTION_RECOVERTRAP:
|
|
case ACTION_REST:
|
|
case ACTION_SETTRAP:
|
|
case ACTION_SIT:
|
|
case ACTION_SMITEGOOD:
|
|
case ACTION_TAUNT:
|
|
case ACTION_USEOBJECT:
|
|
FloatingTextStringOnCreature("Your concentration is broken.", oCreator, FALSE);
|
|
DestroyObject(OBJECT_SELF);
|
|
break;
|
|
}
|
|
if(GetIsDisabled(oCreator))
|
|
{
|
|
FloatingTextStringOnCreature("Your concentration is broken.", oCreator, FALSE);
|
|
DestroyObject(OBJECT_SELF);
|
|
}
|
|
}
|
|
|
|
int GetIsDisabled(object oCreature)
|
|
{
|
|
int bReturn = FALSE;
|
|
effect e = GetFirstEffect(oCreature);
|
|
while(GetIsEffectValid(e))
|
|
{
|
|
switch(GetEffectType(e))
|
|
{
|
|
case EFFECT_TYPE_CHARMED:
|
|
case EFFECT_TYPE_CONFUSED:
|
|
case EFFECT_TYPE_CUTSCENE_PARALYZE:
|
|
case EFFECT_TYPE_CUTSCENEIMMOBILIZE:
|
|
case EFFECT_TYPE_DAZED:
|
|
case EFFECT_TYPE_DOMINATED:
|
|
case EFFECT_TYPE_ENTANGLE:
|
|
case EFFECT_TYPE_FRIGHTENED:
|
|
case EFFECT_TYPE_PARALYZE:
|
|
case EFFECT_TYPE_PETRIFY:
|
|
case EFFECT_TYPE_SLEEP:
|
|
case EFFECT_TYPE_STUNNED:
|
|
bReturn = TRUE;
|
|
break;
|
|
}
|
|
e = GetNextEffect(oCreature);
|
|
}
|
|
if(GetIsDead(oCreature))
|
|
{
|
|
bReturn = TRUE;
|
|
}
|
|
return bReturn;
|
|
}
|
|
|