Amon_PRC8/_module/nss/rall_death.nss
Jaysyn904 c5cffc37af Initial Commit
Initial Commit [v1.01]
2025-04-03 19:00:46 -04:00

96 lines
2.7 KiB
Plaintext

void main()
{
object oPC = GetLastKiller();
while (GetIsObjectValid(GetMaster(oPC)))
{
oPC=GetMaster(oPC);
}
if (!GetIsPC(oPC)) return;
object oTarget;
oTarget = GetObjectByTag("KingRall");
int nInt;
nInt = GetObjectType(oTarget);
if (nInt != OBJECT_TYPE_WAYPOINT) ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_SCREEN_SHAKE), oTarget);
else ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_SCREEN_SHAKE), GetLocation(oTarget));
oTarget = GetObjectByTag("KingRall");
nInt = GetObjectType(oTarget);
if (nInt != OBJECT_TYPE_WAYPOINT) ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_WORD), oTarget);
else ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_WORD), GetLocation(oTarget));
oTarget = GetObjectByTag("KingRall");
nInt = GetObjectType(oTarget);
effect eEffect;
eEffect = EffectVisualEffect(VFX_FNF_SCREEN_SHAKE);
if (nInt != OBJECT_TYPE_WAYPOINT)
DelayCommand(3.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oTarget));
else
DelayCommand(3.0, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eEffect, GetLocation(oTarget)));
oTarget = GetObjectByTag("KingRall");
nInt = GetObjectType(oTarget);
eEffect = EffectVisualEffect(VFX_FNF_WORD);
if (nInt != OBJECT_TYPE_WAYPOINT)
DelayCommand(3.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oTarget));
else
DelayCommand(3.0, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eEffect, GetLocation(oTarget)));
oTarget = GetObjectByTag("KingRall");
nInt = GetObjectType(oTarget);
eEffect = EffectVisualEffect(VFX_FNF_WAIL_O_BANSHEES);
if (nInt != OBJECT_TYPE_WAYPOINT)
DelayCommand(3.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oTarget));
else
DelayCommand(3.0, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eEffect, GetLocation(oTarget)));
oTarget = GetObjectByTag("KingRall");
nInt = GetObjectType(oTarget);
eEffect = EffectVisualEffect(VFX_FNF_WAIL_O_BANSHEES);
if (nInt != OBJECT_TYPE_WAYPOINT)
DelayCommand(3.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oTarget));
else
DelayCommand(3.0, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eEffect, GetLocation(oTarget)));
object oCaster;
oCaster = GetObjectByTag("RallThrone");
oTarget = GetObjectByTag("RallThrone");
AssignCommand(oCaster, ActionCastSpellAtObject(SPELL_DARKNESS, oTarget, METAMAGIC_ANY, TRUE, 1, PROJECTILE_PATH_TYPE_DEFAULT, TRUE));
int nDiceRoll = d100(1);
if(nDiceRoll <= 10)
{
CreateItemOnObject("Rall1", OBJECT_SELF, 1);
}
else if(nDiceRoll <= 20)
{
CreateItemOnObject("Rall2", OBJECT_SELF, 1);
}
else if(nDiceRoll <= 30)
{
CreateItemOnObject("Rall3", OBJECT_SELF, 1);
}
}