generated from Jaysyn/ModuleTemplate
Initial Commit
Initial Commit
This commit is contained in:
73
_module/nss/smith_makeit.nss
Normal file
73
_module/nss/smith_makeit.nss
Normal file
@@ -0,0 +1,73 @@
|
||||
#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));
|
||||
}
|
||||
Reference in New Issue
Block a user