AOC_PRC8/_module/nss/smith_makeit.nss

74 lines
3.7 KiB
Plaintext
Raw Permalink Normal View History

2025-04-03 11:24:16 -04:00
#include "x2_inc_ws_smith"
void MakeNewWeapon(object oPC);
void LightShow();
void main()
{
object oPC = GetPCSpeaker();
object oItem = GetRightHandWeapon(oPC);
if (GetIsObjectValid(oItem) == FALSE)
{ return; }
ActionPauseConversation();
MakeNewWeapon(oPC);
return;
}
void MakeNewWeapon(object oPC)
{
wsEnhanceItem(oPC, oPC);
AssignCommand(oPC, ActionPlayAnimation(ANIMATION_FIREFORGET_VICTORY2));
PlaySound("sff_explblind");
LightShow();
}
void LightShow()
{
object oPC = GetPCSpeaker();
object oAnv = OBJECT_SELF;
object oWSA = GetNearestObjectByTag("SpearRack", oAnv, 2);
object oWSB = GetNearestObjectByTag("x2_medium_crate4");
object oFgA = GetNearestObjectByTag("CEPTCandleThin");
object oFgB = GetNearestObjectByTag("CEPTCandlePlain");
object oBar = GetNearestObjectByTag("Ankh", oAnv, 2);
effect eBlu = EffectVisualEffect(VFX_DUR_LIGHT_BLUE_10);
effect eRed = EffectVisualEffect(VFX_DUR_LIGHT_RED_10);
effect eOrg = EffectVisualEffect(VFX_DUR_LIGHT_ORANGE_10);
effect eYel = EffectVisualEffect(VFX_DUR_LIGHT_YELLOW_10);
effect ePur = EffectVisualEffect(VFX_DUR_LIGHT_PURPLE_10);
effect eMag = EffectVisualEffect(VFX_IMP_MAGBLUE);
effect eSon = EffectVisualEffect(VFX_IMP_SUPER_HEROISM);
ApplyEffectToObject(DURATION_TYPE_INSTANT,eSon,oPC);
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eBlu,oFgA,0.5);
DelayCommand(0.125,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eOrg,oAnv,0.25));
DelayCommand(0.25,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eOrg,oWSB,0.5));
DelayCommand(0.375,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePur,oBar,0.25));
DelayCommand(0.5,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eRed,oFgB,0.5));
DelayCommand(0.625,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eYel,oWSA,0.25));
DelayCommand(0.75,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePur,oWSB,0.5));
DelayCommand(0.875,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eOrg,oWSA,0.25));
DelayCommand(1.0,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eBlu,oBar,0.5));
DelayCommand(1.125,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eBlu,oFgB,0.25));
DelayCommand(1.25,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eOrg,oFgA,0.5));
DelayCommand(1.375,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePur,oWSB,0.25));
DelayCommand(1.5,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eYel,oAnv,0.5));
DelayCommand(1.625,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eRed,oBar,0.25));
DelayCommand(1.75,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eOrg,oFgB,0.5));
DelayCommand(1.875,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eOrg,oWSA,0.25));
DelayCommand(2.0,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eBlu,oFgA,0.5));
DelayCommand(2.125,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eRed,oAnv,0.25));
DelayCommand(2.25,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eYel,oWSB,0.5));
DelayCommand(2.375,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePur,oBar,0.25));
DelayCommand(2.5,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePur,oWSA,0.5));
DelayCommand(2.625,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eOrg,oFgA,0.25));
DelayCommand(2.75,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eBlu,oAnv,0.5));
DelayCommand(2.875,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eOrg,oFgB,0.25));
DelayCommand(3.0,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePur,oBar,0.5));
DelayCommand(3.125,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eOrg,oWSA,0.25));
DelayCommand(3.25,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eRed,oFgA,0.5));
DelayCommand(3.375,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,ePur,oWSB,0.25));
DelayCommand(3.5,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eBlu,oFgB,0.5));
DelayCommand(3.625,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eOrg,oBar,0.25));
DelayCommand(3.75,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eRed,oAnv,0.5));
}