84 lines
3.2 KiB
Plaintext
84 lines
3.2 KiB
Plaintext
|
#include "x0_i0_petrify"
|
||
|
object L1 = GetObjectByTag("SHA_LP1");
|
||
|
object L2 = GetObjectByTag("SHA_LP2");
|
||
|
object L3 = GetObjectByTag("SHA_LP3");
|
||
|
object L4 = GetObjectByTag("SHA_LP4");
|
||
|
object L5 = GetObjectByTag("SHA_LP5");
|
||
|
object sparks = GetObjectByTag("SHA_SPARKS");
|
||
|
object Altar = GetObjectByTag("SHA_SHARALTAR");
|
||
|
void drawStar()
|
||
|
{
|
||
|
// Declare the fire beam effect
|
||
|
effect eBeam1 = EffectBeam(VFX_BEAM_BLACK, L1, BODY_NODE_CHEST);
|
||
|
effect eBeam2 = EffectBeam(VFX_BEAM_BLACK, L2, BODY_NODE_CHEST);
|
||
|
effect eBeam3 = EffectBeam(VFX_BEAM_BLACK, L3, BODY_NODE_CHEST);
|
||
|
effect eBeam4 = EffectBeam(VFX_BEAM_BLACK, L4, BODY_NODE_CHEST);
|
||
|
effect eBeam5 = EffectBeam(VFX_BEAM_BLACK, L5, BODY_NODE_CHEST);
|
||
|
|
||
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBeam1, L3);
|
||
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBeam1, L4);
|
||
|
|
||
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBeam2, L4);
|
||
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBeam2, L5);
|
||
|
|
||
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBeam3, L5);
|
||
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBeam3, L1);
|
||
|
|
||
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBeam4, L1);
|
||
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBeam4, L2);
|
||
|
Altar = GetObjectByTag("SHA_SHARALTAR");
|
||
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBeam5, L2);
|
||
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBeam5, L3);
|
||
|
SetLocalInt(Altar, "STARACTIVE", 1);
|
||
|
ActionWait(1.0);
|
||
|
AssignCommand(L1, PlayAnimation(ANIMATION_PLACEABLE_ACTIVATE));
|
||
|
AssignCommand(L2, PlayAnimation(ANIMATION_PLACEABLE_ACTIVATE));
|
||
|
AssignCommand(L3, PlayAnimation(ANIMATION_PLACEABLE_ACTIVATE));
|
||
|
AssignCommand(L4, PlayAnimation(ANIMATION_PLACEABLE_ACTIVATE));
|
||
|
AssignCommand(L5, PlayAnimation(ANIMATION_PLACEABLE_ACTIVATE));
|
||
|
AssignCommand(sparks, PlayAnimation(ANIMATION_PLACEABLE_ACTIVATE));
|
||
|
}
|
||
|
|
||
|
void DestroyStar()
|
||
|
{
|
||
|
|
||
|
effect oEffect = EffectVisualEffect(VFX_FNF_SUMMON_CELESTIAL);
|
||
|
AssignCommand(L1, PlayAnimation(ANIMATION_PLACEABLE_DEACTIVATE));
|
||
|
AssignCommand(L2, PlayAnimation(ANIMATION_PLACEABLE_DEACTIVATE));
|
||
|
AssignCommand(L3, PlayAnimation(ANIMATION_PLACEABLE_DEACTIVATE));
|
||
|
AssignCommand(L4, PlayAnimation(ANIMATION_PLACEABLE_DEACTIVATE));
|
||
|
AssignCommand(L5, PlayAnimation(ANIMATION_PLACEABLE_DEACTIVATE));
|
||
|
AssignCommand(sparks, PlayAnimation(ANIMATION_PLACEABLE_DEACTIVATE));
|
||
|
Altar = GetObjectByTag("SHA_SHARALTAR");
|
||
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, oEffect, Altar);
|
||
|
ActionWait(1.2);
|
||
|
oEffect = EffectVisualEffect(VFX_IMP_HEALING_X);
|
||
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, oEffect, L1);
|
||
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, oEffect, L2);
|
||
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, oEffect, L3);
|
||
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, oEffect, L4);
|
||
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, oEffect, L5);
|
||
|
|
||
|
SetLocalInt(Altar, "STARACTIVE", 10);
|
||
|
RemoveEffectOfType(L1, EFFECT_TYPE_BEAM);
|
||
|
RemoveEffectOfType(L2, EFFECT_TYPE_BEAM);
|
||
|
RemoveEffectOfType(L3, EFFECT_TYPE_BEAM);
|
||
|
RemoveEffectOfType(L4, EFFECT_TYPE_BEAM);
|
||
|
RemoveEffectOfType(L5, EFFECT_TYPE_BEAM);
|
||
|
}
|
||
|
int isActivated()
|
||
|
{
|
||
|
int Active = GetLocalInt(Altar, "STARACTIVE");
|
||
|
if(Active == 1)
|
||
|
{
|
||
|
return TRUE;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
return FALSE;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
//void main() {}
|
||
|
|