(WIP) View sway, shake, etc. in weapon animations.
This commit is contained in:
parent
613a88f6c3
commit
e69dfa7e1f
20 changed files with 588 additions and 209 deletions
|
|
@ -226,8 +226,8 @@ Class ItamexHammer : SWWMWeapon
|
|||
Stop;
|
||||
Select:
|
||||
XZW2 I 3 A_FullRaise();
|
||||
XZW2 JK 3;
|
||||
XZW2 LMNO 2;
|
||||
XZW2 JK 3 A_BumpView(-.1,tics:3);
|
||||
XZW2 LMNO 2 A_BumpView(.2,tics:2);
|
||||
XZW2 PQRST 3;
|
||||
Goto Ready;
|
||||
Ready:
|
||||
|
|
@ -239,13 +239,13 @@ Class ItamexHammer : SWWMWeapon
|
|||
Wait;
|
||||
Fire:
|
||||
XZW2 A 2 A_StartSound("itamex/meleestart",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW2 UVWXYZ 1;
|
||||
XZW2 UVWXYZ 1 A_BumpAngle(-1);
|
||||
XZW3 A 1
|
||||
{
|
||||
A_StartSound("itamex/swing",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_PlayerMelee();
|
||||
}
|
||||
XZW3 BCDE 1;
|
||||
XZW3 BCDE 1 A_BumpAngle(4);
|
||||
XZW3 F 1 A_HammerHit();
|
||||
XZW3 GHIJK 2;
|
||||
XZW3 L 2 A_StartSound("itamex/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
|
|
@ -261,8 +261,17 @@ Class ItamexHammer : SWWMWeapon
|
|||
Goto Ready;
|
||||
AltFire:
|
||||
XZW2 A 2 A_StartSound("itamex/meleestart",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW4 DEFG 2 A_AltCharge();
|
||||
XZW4 HIJKLMNOPQRSTU 1 A_AltCharge();
|
||||
XZW4 DEFG 2
|
||||
{
|
||||
A_BumpView(.4,tics:2);
|
||||
A_AltCharge();
|
||||
}
|
||||
XZW4 HIJKLMN 1
|
||||
{
|
||||
A_BumpView(-.2);
|
||||
A_AltCharge();
|
||||
}
|
||||
XZW4 OPQRSTU 1 A_AltCharge();
|
||||
XZW4 V 1 A_AltHold();
|
||||
Wait;
|
||||
AltRelease:
|
||||
|
|
@ -283,7 +292,7 @@ Class ItamexHammer : SWWMWeapon
|
|||
Goto Ready;
|
||||
Zoom:
|
||||
XZW2 A 2 A_StartSound("itamex/meleestart",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW5 XYZ 2 A_BumpAngle(-5);
|
||||
XZW5 XYZ 2 A_BumpAngle(-2,tics:2);
|
||||
XZW6 ABCDEF 1 A_ChargeUp();
|
||||
XZW6 G 0 A_SpinReact();
|
||||
XZW6 G 1 A_SpinMove();
|
||||
|
|
@ -306,36 +315,47 @@ Class ItamexHammer : SWWMWeapon
|
|||
Goto Ready;
|
||||
Reload:
|
||||
XZW2 A 2 A_StartSound("itamex/meleestart",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW6 XYZ 2;
|
||||
XZW6 XYZ 2 A_BumpView(-.1,tics:2);
|
||||
XZW7 ABCDEF 2;
|
||||
XZW7 G 1
|
||||
{
|
||||
A_PlayerCheckGun();
|
||||
A_QuakeEx(.3,.3,.3,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.1);
|
||||
A_StartSound("itamex/meleeend",CHAN_WEAPONEXTRA,pitch:.7,starttime:.2);
|
||||
}
|
||||
XZW7 HIJ 1;
|
||||
XZW7 K 1 A_StartSound("itamex/meleeend",CHAN_WEAPONEXTRA,pitch:.8,starttime:.2);
|
||||
XZW7 LMNO 1;
|
||||
XZW7 P 1 A_StartSound("itamex/meleeend",CHAN_WEAPONEXTRA,pitch:.9,starttime:.2);
|
||||
XZW7 QRST 1;
|
||||
XZW7 HIJ 1 A_BumpView(-.05);
|
||||
XZW7 K 1
|
||||
{
|
||||
A_QuakeEx(.3,.3,.3,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.1);
|
||||
A_StartSound("itamex/meleeend",CHAN_WEAPONEXTRA,pitch:.8,starttime:.2);
|
||||
}
|
||||
XZW7 LMNO 1 A_BumpView(-.05);
|
||||
XZW7 P 1
|
||||
{
|
||||
A_QuakeEx(.3,.3,.3,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.1);
|
||||
A_StartSound("itamex/meleeend",CHAN_WEAPONEXTRA,pitch:.9,starttime:.2);
|
||||
}
|
||||
XZW7 QRST 1 A_BumpView(-.05);
|
||||
XZW7 U 1 A_StopSound(CHAN_WEAPONEXTRA);
|
||||
XZW7 VWXYZ 1;
|
||||
XZW7 VWXYZ 1 A_BumpView(.05);
|
||||
XZW8 A 0 A_StartSound("itamex/meleeend",CHAN_WEAPON,CHANF_OVERLAP,starttime:.42);
|
||||
XZW8 BCDE 3;
|
||||
XZW8 FGHI 2;
|
||||
XZW8 BCDE 3 A_BumpView(-.1,tics:3);
|
||||
XZW8 FGHI 2 A_BumpView(.05,tics:2);
|
||||
Goto Ready;
|
||||
User1:
|
||||
XZW2 A 1;
|
||||
XZW8 J 1 A_StartSound("itamex/meleestart",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW8 KLM 1;
|
||||
XZW8 N 2 A_StartSound("demolitionist/wswing",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW8 OPQ 2;
|
||||
XZW8 OPQ 2 A_BumpView(.5,tics:2);
|
||||
XZW8 R 1
|
||||
{
|
||||
A_BumpFOV(.97);
|
||||
A_QuakeEx(1.,1.,1.,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.4);
|
||||
A_Parry(9);
|
||||
A_PlayerMelee(true);
|
||||
}
|
||||
XZW8 S 1;
|
||||
XZW8 S 1 A_BumpView(-6);
|
||||
XZW8 T 3 A_Melee(50,"demolitionist/whitm",1.2,1.4);
|
||||
XZW8 UVWXYZ 2;
|
||||
XZW9 ABC 2;
|
||||
|
|
@ -345,8 +365,8 @@ Class ItamexHammer : SWWMWeapon
|
|||
Goto Ready;
|
||||
Deselect:
|
||||
XZW2 A 3 A_StartSound("itamex/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW2 BCD 3;
|
||||
XZW2 EFGHI 2;
|
||||
XZW2 BCD 3 A_BumpView(.1,tics:3);
|
||||
XZW2 EFGHI 2 A_BumpView(.2,tics:2);
|
||||
XZW2 J -1 A_FullLower();
|
||||
Stop;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -107,8 +107,10 @@ Class HeavyMahSheenGun : SWWMWeapon
|
|||
if ( invoker.firespeed == 1 )
|
||||
{
|
||||
A_AlertMonsters(swwm_uncapalert?0:3000);
|
||||
A_BumpFOV(.98);
|
||||
A_QuakeEx(1.6,1.6,1.6,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.2);
|
||||
A_BumpFOV(.95);
|
||||
A_BumpView(FRandom[Sheen](-.4,.4));
|
||||
A_BumpAngle(FRandom[Sheen](-.4,.4));
|
||||
A_QuakeEx(2.,2.,2.,6,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.25);
|
||||
A_StartSound("sheen/700rpm",CHAN_WEAPONEXTRA,CHANF_LOOPING,attenuation:.5);
|
||||
invoker.vibrate = .25;
|
||||
A_Overlay(-9999,"EjectRound3");
|
||||
|
|
@ -118,7 +120,9 @@ Class HeavyMahSheenGun : SWWMWeapon
|
|||
else if ( invoker.firespeed == 2 )
|
||||
{
|
||||
A_AlertMonsters(swwm_uncapalert?0:5000);
|
||||
A_BumpFOV(.99+FRandom[Sheen](-.005,.005));
|
||||
A_BumpFOV(.97+FRandom[Sheen](-.01,.01));
|
||||
A_BumpView(FRandom[Sheen](-.3,.3));
|
||||
A_BumpAngle(FRandom[Sheen](-.3,.3));
|
||||
A_QuakeEx(1.8,1.8,1.8,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.15);
|
||||
A_StartSound("sheen/2100rpm",CHAN_WEAPONEXTRA,CHANF_LOOPING,attenuation:.4);
|
||||
invoker.vibrate = min(1.,invoker.vibrate*1.05+.05);
|
||||
|
|
@ -128,7 +132,9 @@ Class HeavyMahSheenGun : SWWMWeapon
|
|||
else if ( invoker.firespeed == 0 )
|
||||
{
|
||||
A_AlertMonsters(swwm_uncapalert?0:2000);
|
||||
A_BumpFOV(.97);
|
||||
A_BumpFOV(.92);
|
||||
A_BumpView(FRandom[Sheen](-.5,.5));
|
||||
A_BumpAngle(FRandom[Sheen](-.5,.5));
|
||||
A_QuakeEx(1.4,1.4,1.4,8,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.25);
|
||||
A_StartSound("sheen/fire",CHAN_WEAPON,CHANF_OVERLAP,attenuation:.6);
|
||||
SWWMUtility.DoKnockback(self,-x,6000.);
|
||||
|
|
@ -360,8 +366,8 @@ Class HeavyMahSheenGun : SWWMWeapon
|
|||
A_FullRaise();
|
||||
if ( invoker.incooldown ) A_StartSound("sheen/overheat",CHAN_WEAPONEXTRA2,CHANF_LOOPING,attenuation:3.);
|
||||
}
|
||||
XZW2 LMNOP 3;
|
||||
XZW2 QRSTUV 2;
|
||||
XZW2 LMNOP 3 A_BumpView(-.05,tics:3);
|
||||
XZW2 QRSTUV 2 A_BumpView(.2,tics:2);
|
||||
XZW2 WX 3;
|
||||
Goto Ready;
|
||||
Ready:
|
||||
|
|
@ -590,9 +596,10 @@ Class HeavyMahSheenGun : SWWMWeapon
|
|||
Stop;
|
||||
AltFire:
|
||||
XZW2 A 3 A_StartSound("sheen/crankin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW5 IJ 2;
|
||||
XZW5 IJ 2 A_BumpView(.2,tics:2);
|
||||
XZW5 K 3
|
||||
{
|
||||
A_QuakeEx(.5,.5,.5,6,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.3);
|
||||
invoker.firespeed = min(2,invoker.firespeed+1);
|
||||
EventHandler.SendInterfaceEvent(PlayerNumber(),"swwmnametag.$SWWM_SHEENSPEED"..(invoker.firespeed+1));
|
||||
}
|
||||
|
|
@ -601,9 +608,10 @@ Class HeavyMahSheenGun : SWWMWeapon
|
|||
Goto Ready;
|
||||
Zoom:
|
||||
XZW2 A 3 A_StartSound("sheen/crankin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW5 NO 2;
|
||||
XZW5 NO 2 A_BumpView(-.2,tics:2);
|
||||
XZW5 P 3
|
||||
{
|
||||
A_QuakeEx(.5,.5,.5,6,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.3);
|
||||
invoker.firespeed = max(0,invoker.firespeed-1);
|
||||
EventHandler.SendInterfaceEvent(PlayerNumber(),"swwmnametag.$SWWM_SHEENSPEED"..(invoker.firespeed+1));
|
||||
}
|
||||
|
|
@ -616,25 +624,30 @@ Class HeavyMahSheenGun : SWWMWeapon
|
|||
A_StartSound("sheen/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_PlayerCheckGun();
|
||||
}
|
||||
XZW5 TUVW 3;
|
||||
XZW5 XYZ 4;
|
||||
XZW5 TUVW 3 A_BumpView(-.3,tics:3);
|
||||
XZW5 XYZ 4 A_BumpView(-.1,tics:4);
|
||||
XZW6 A 4;
|
||||
XZW6 B 3 A_StartSound("sheen/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW6 CDE 3;
|
||||
XZW6 FGHIJKL 2;
|
||||
XZW6 F 2;
|
||||
XZW6 GH 2 A_BumpView(1.,tics:2);
|
||||
XZW6 IJKL 2;
|
||||
Goto Ready;
|
||||
User1:
|
||||
XZW2 A 3 A_StartSound("sheen/meleestart",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW6 MNOPQR 3;
|
||||
XZW6 MNO 3;
|
||||
XZW6 PQR 3 A_BumpAngle(1,3);
|
||||
XZW6 S 3 A_StartSound("demolitionist/wswing",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW6 T 3;
|
||||
XZW6 U 2
|
||||
{
|
||||
A_BumpFOV(.94);
|
||||
A_QuakeEx(1.6,1.6,1.6,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.65);
|
||||
A_Parry(9);
|
||||
A_PlayerMelee();
|
||||
}
|
||||
XZW6 V 2;
|
||||
XZW6 W 2 A_Melee(80+int(invoker.barrelheat/4.),"demolitionist/whitl",1.25,1.3,1.4);
|
||||
XZW6 V 2 A_BumpAngle(-15);
|
||||
XZW6 W 2 A_Melee(80+int(invoker.barrelheat/4.),"demolitionist/whitl",1.35,1.3,1.4);
|
||||
XZW6 XYZ 3;
|
||||
XZW7 AB 4;
|
||||
XZW7 C 4 A_StartSound("sheen/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
|
|
@ -642,7 +655,7 @@ Class HeavyMahSheenGun : SWWMWeapon
|
|||
Goto Ready;
|
||||
Deselect:
|
||||
XZW2 A 2 A_StartSound("sheen/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW2 BCDEFGHIJK 2;
|
||||
XZW2 BCDEFGHIJ 2 A_BumpView(.1,tics:2);
|
||||
XZW2 K -1
|
||||
{
|
||||
A_StopSound(CHAN_WEAPONEXTRA2);
|
||||
|
|
|
|||
|
|
@ -1535,12 +1535,12 @@ Class MisterRifle : SWWMWeapon
|
|||
return A_JumpIf(invoker.boltlock,"DeselectLock");
|
||||
}
|
||||
XZW2 BCDE 2;
|
||||
XZW2 FGHIJKLMNOP 1;
|
||||
XZW2 FGHIJKLMNO 1;
|
||||
XZW2 P -1 A_FullLower();
|
||||
Stop;
|
||||
DeselectLock:
|
||||
XZWB EFGHI 2;
|
||||
XZWB JKLMNOPQRST 1;
|
||||
XZWB JKLMNOPQRS 1;
|
||||
XZWB T -1 A_FullLower();
|
||||
Stop;
|
||||
Flash:
|
||||
|
|
|
|||
|
|
@ -623,7 +623,7 @@ Class Quadravol : SWWMWeapon
|
|||
A_StartSound(invoker.onehand?"quadshot/deselectfast":"quadshot/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
return A_JumpIf(invoker.onehand,"Deselect1H");
|
||||
}
|
||||
XZW2 BCDEFGHIJKLMNOPQR 1;
|
||||
XZW2 BCDEFGHIJKLMNOPQ 1;
|
||||
XZW2 R -1 A_FullLower();
|
||||
Stop;
|
||||
Flash:
|
||||
|
|
|
|||
|
|
@ -426,33 +426,33 @@ extend Class Demolitionist
|
|||
}
|
||||
}
|
||||
}
|
||||
double bstr = CVar.GetCVar('swwm_bumpstrength',player).GetFloat();
|
||||
if ( abs(bumpvelz) > double.epsilon )
|
||||
{
|
||||
lagvel.z += bumpvelz*.5;
|
||||
lagvel.z += bumpvelz*bstr*.5;
|
||||
bumpvelz *= .8;
|
||||
}
|
||||
Vector3 temp = (ViewAngle,ViewPitch,ViewRoll);
|
||||
if ( abs(bumpangle) > double.epsilon )
|
||||
{
|
||||
temp.x += bumpangle*.5;
|
||||
temp.x += bumpangle*bstr*.5;
|
||||
bumpangle *= .8;
|
||||
}
|
||||
if ( abs(bumppitch) > double.epsilon )
|
||||
{
|
||||
temp.y += bumppitch*.5;
|
||||
temp.y += bumppitch*bstr*.5;
|
||||
bumppitch *= .8;
|
||||
}
|
||||
if ( abs(bumproll) > double.epsilon )
|
||||
{
|
||||
temp.z += bumproll*.5;
|
||||
temp.z += bumproll*bstr*.5;
|
||||
bumproll *= .8;
|
||||
}
|
||||
// stabilize view angles
|
||||
if ( temp dot temp < double.epsilon ) temp = (0,0,0);
|
||||
else temp *= .8;
|
||||
if ( ViewAngle != temp.x ) A_SetViewAngle(temp.x,SPF_INTERPOLATE);
|
||||
// IMPORTANT: don't call A_SetViewPitch if the player's min/max pitch are not yet initialized
|
||||
if ( (ViewPitch != temp.y) && !(player.MinPitch == player.MaxPitch == pitch) ) A_SetViewPitch(temp.y,SPF_INTERPOLATE);
|
||||
if ( ViewPitch != temp.y ) A_SetViewPitch(temp.y,SPF_INTERPOLATE);
|
||||
if ( ViewRoll != temp.z ) A_SetViewRoll(temp.z,SPF_INTERPOLATE);
|
||||
if ( player.onground && !lastground ) landvelz = lastvelz;
|
||||
else if ( !player.onground && lastground ) landvelz = 0;
|
||||
|
|
|
|||
|
|
@ -26,6 +26,10 @@ Class SWWMWeapon : Weapon abstract
|
|||
|
||||
int oldtagcolor;
|
||||
|
||||
double bvstr, bastr;
|
||||
Vector3 bvdir;
|
||||
int bvtics, batics;
|
||||
|
||||
bool IsSwapWeapon( Inventory i ) const
|
||||
{
|
||||
if ( bNoSwapWeapon || (i.GetClass() == GetClass()) ) return false;
|
||||
|
|
@ -204,15 +208,26 @@ Class SWWMWeapon : Weapon abstract
|
|||
Demolitionist(self).lastbump *= factor;
|
||||
}
|
||||
|
||||
action void A_BumpView( double factor, Vector3 dir = (0,0,0) )
|
||||
action void A_BumpView( double factor, Vector3 dir = (0,0,0), int tics = 0 )
|
||||
{
|
||||
if ( !(self is 'Demolitionist') ) return;
|
||||
Demolitionist(self).BumpView(factor,dir);
|
||||
if ( tics > 1 )
|
||||
{
|
||||
invoker.bvstr = factor;
|
||||
invoker.bvdir = dir;
|
||||
invoker.bvtics = tics-1;
|
||||
}
|
||||
}
|
||||
action void A_BumpAngle( double factor )
|
||||
action void A_BumpAngle( double factor, int tics = 0 )
|
||||
{
|
||||
if ( !(self is 'Demolitionist') ) return;
|
||||
Demolitionist(self).bumpangle += factor;
|
||||
if ( tics > 1 )
|
||||
{
|
||||
invoker.bastr = factor;
|
||||
invoker.batics = tics-1;
|
||||
}
|
||||
}
|
||||
|
||||
// subtracts given ammo from price, drops excess
|
||||
|
|
@ -601,6 +616,18 @@ Class SWWMWeapon : Weapon abstract
|
|||
override void Tick()
|
||||
{
|
||||
Super.Tick();
|
||||
if ( bvtics > 0 )
|
||||
{
|
||||
if ( Demolitionist(Owner) && Owner.player && (Owner.player.ReadyWeapon == self) )
|
||||
Demolitionist(Owner).BumpView(bvstr,bvdir);
|
||||
bvtics--;
|
||||
}
|
||||
if ( batics > 0 )
|
||||
{
|
||||
if ( Demolitionist(Owner) && Owner.player && (Owner.player.ReadyWeapon == self) )
|
||||
Demolitionist(Owner).BumpAngle += bastr;
|
||||
batics--;
|
||||
}
|
||||
if ( !Owner )
|
||||
{
|
||||
angle -= (180./64.);
|
||||
|
|
|
|||
|
|
@ -61,8 +61,9 @@ Class Hellblazer : SWWMWeapon
|
|||
A_StartSound(bAlt?"hellblazer/altfire":"hellblazer/fire",CHAN_WEAPON,CHANF_OVERLAP,attenuation:(bAlt?1.7:.8));
|
||||
A_AlertMonsters(swwm_uncapalert?0:bAlt?400:1200);
|
||||
double qstr = bAlt?4.:5.;
|
||||
A_QuakeEx(qstr,qstr,qstr,bAlt?4:12,0,8,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.12*qstr);
|
||||
A_QuakeEx(qstr,qstr,qstr,bAlt?4:12,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.12*qstr);
|
||||
A_BumpFOV(bAlt?.96:.93);
|
||||
A_BumpView(bAlt?-2:-3);
|
||||
A_PlayerFire();
|
||||
invoker.clipcount = max(0,invoker.clipcount-1);
|
||||
invoker.magstate[invoker.magpos-invoker.preload] = true;
|
||||
|
|
@ -366,7 +367,7 @@ Class Hellblazer : SWWMWeapon
|
|||
A_StartSound("hellblazer/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_GlassOverlay("Deselect_G");
|
||||
}
|
||||
XZW2 BCDEFGHI 2;
|
||||
XZW2 BCDEFGH 2;
|
||||
XZW2 I -1 A_FullLower();
|
||||
Stop;
|
||||
Deselect_G:
|
||||
|
|
@ -602,10 +603,17 @@ Class Hellblazer : SWWMWeapon
|
|||
XZW8 JKL 2;
|
||||
XZW8 M 2 A_StartSound("hellblazer/open",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW8 NOPQ 2;
|
||||
XZW8 RSTUVWXY 2;
|
||||
XZW8 Z 2 A_StartSound("hellblazer/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW8 R 2 A_QuakeEx(.8,.8,.8,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.2);
|
||||
XZW8 STUVWXY 2;
|
||||
XZW8 Z 2
|
||||
{
|
||||
A_BumpView(-1.);
|
||||
A_StartSound("hellblazer/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW9 ABCDEFGHIJ 2;
|
||||
XZWB VWXYZ 3;
|
||||
XZWB VW 3 A_BumpView(.3,tics:3);
|
||||
XZWB X 3;
|
||||
XZWB YZ 3 A_BumpView(-.3,tics:3);
|
||||
Goto Load_G;
|
||||
Load:
|
||||
XZW4 JKLMNOPQRSTUVWXYZ 2;
|
||||
|
|
@ -614,11 +622,16 @@ Class Hellblazer : SWWMWeapon
|
|||
Load_G:
|
||||
XZW9 J 2 A_PlayerReload();
|
||||
XZW9 KLMNOP 2;
|
||||
XZW9 Q 2 A_StartSound("hellblazer/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW9 Q 2
|
||||
{
|
||||
A_BumpView(1.);
|
||||
A_StartSound("hellblazer/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW9 RSTUVWX 2;
|
||||
XZW9 Y 2 A_StartSound("hellblazer/close",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW9 Z 2;
|
||||
XZWA ABC 2;
|
||||
XZWA A 2 A_QuakeEx(1.2,1.2,1.2,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.3);
|
||||
XZWA BC 2;
|
||||
XZWA D 2 A_StartSound("hellblazer/meleestop",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWA EFGHIJ 2;
|
||||
Goto Ready_G;
|
||||
|
|
@ -653,9 +666,14 @@ Class Hellblazer : SWWMWeapon
|
|||
A_StartSound("demolitionist/wswing",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_PlayerMelee();
|
||||
}
|
||||
XZWB BCD 2;
|
||||
XZWB E 2 A_Parry(9);
|
||||
XZWB FG 1;
|
||||
XZWB BCD 2 A_BumpView(.5,tics:2);
|
||||
XZWB E 2
|
||||
{
|
||||
A_BumpFOV(.96);
|
||||
A_QuakeEx(1.2,1.2,1.2,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.4);
|
||||
A_Parry(9);
|
||||
}
|
||||
XZWB FG 1 A_BumpView(-3);
|
||||
XZWB H 1 A_Melee(75,"demolitionist/whitl",1.05,1.2,1.2);
|
||||
XZWB IJKLM 2;
|
||||
XZWB N 2 A_StartSound("hellblazer/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
|
|
|
|||
|
|
@ -220,10 +220,11 @@ Class Wallbuster : SWWMWeapon
|
|||
player.SetPsprite(PSP_WEAPON,ResolveState("FireTwentyFive"));
|
||||
SWWMHandler.DoFlash(self,Color(80,255,192,64),7);
|
||||
}
|
||||
double qk = min(9.,1.+howmany/5.);
|
||||
double qk = min(9.,1.+howmany/4.);
|
||||
int ql = min(25,6+howmany/2);
|
||||
A_QuakeEx(qk,qk,qk,ql,0,8,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:qk*.15);
|
||||
A_BumpFOV(1.-qk*.04);
|
||||
A_BumpView(-qk*.6);
|
||||
A_AlertMonsters(swwm_uncapalert?0:alertness);
|
||||
A_PlayerFire();
|
||||
if ( flashstr > 0 )
|
||||
|
|
@ -482,7 +483,9 @@ Class Wallbuster : SWWMWeapon
|
|||
Stop;
|
||||
Select:
|
||||
XZW2 G 1 A_FullRaise();
|
||||
XZW2 HIJKLMNOP 2;
|
||||
XZW2 HI 2 A_BumpView(.2,tics:2);
|
||||
XZW2 JKL 2 A_BumpView(-.3,tics:2);
|
||||
XZW2 MNOP 2;
|
||||
Goto Ready;
|
||||
Ready:
|
||||
XZW2 A 1
|
||||
|
|
@ -561,7 +564,11 @@ Class Wallbuster : SWWMWeapon
|
|||
XZW2 A 2 A_StartSound("wallbuster/meleestart",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW4 DEFG 2;
|
||||
XZW4 HIJK 1;
|
||||
XZW4 L 1 A_StartSound("wallbuster/unlock",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW4 L 1
|
||||
{
|
||||
A_QuakeEx(.8,.8,.8,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.3);
|
||||
A_StartSound("wallbuster/unlock",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW4 MNOPQ 1;
|
||||
XZW4 RSTUV 1;
|
||||
Goto Detach;
|
||||
|
|
@ -703,7 +710,11 @@ Class Wallbuster : SWWMWeapon
|
|||
A_ChangeModel("",1,"","",4+i,"models","",CMDL_USESURFACESKIN,-1);
|
||||
}
|
||||
XZW8 OPQRS 1;
|
||||
XZW8 T 1 A_StartSound("wallbuster/lock",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW8 T 1
|
||||
{
|
||||
A_QuakeEx(1.,1.,1.,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.4);
|
||||
A_StartSound("wallbuster/lock",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW8 UVWXY 1;
|
||||
XZW8 Z 1 A_StartSound("wallbuster/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW9 ABC 1;
|
||||
|
|
@ -716,9 +727,14 @@ Class Wallbuster : SWWMWeapon
|
|||
A_StartSound("demolitionist/wswing",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_PlayerMelee();
|
||||
}
|
||||
XZW9 GHI 2;
|
||||
XZW9 J 2 A_Parry(9);
|
||||
XZW9 KLM 1;
|
||||
XZW9 GHI 2 A_BumpView(1,tics:2);
|
||||
XZW9 J 2
|
||||
{
|
||||
A_BumpFOV(.96);
|
||||
A_QuakeEx(1.2,1.2,1.2,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.5);
|
||||
A_Parry(9);
|
||||
}
|
||||
XZW9 KLM 1 A_BumpView(-4);
|
||||
XZW9 N 1 A_Melee(70,"demolitionist/whitl",1.2,1.4,1.3);
|
||||
XZW9 OPQRS 2;
|
||||
XZW9 T 2 A_StartSound("wallbuster/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
|
|
@ -728,7 +744,9 @@ Class Wallbuster : SWWMWeapon
|
|||
Goto Ready;
|
||||
Deselect:
|
||||
XZW2 A 2 A_StartSound("wallbuster/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW2 BCDEFG 2;
|
||||
XZW2 B 2;
|
||||
XZW2 CD 2 A_BumpView(.1,tics:2);
|
||||
XZW2 EF 2 A_BumpView(.2,tics:2);
|
||||
XZW2 G -1 A_FullLower();
|
||||
Stop;
|
||||
FlashRed:
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@ Class Eviscerator : SWWMWeapon
|
|||
if ( !weap ) return;
|
||||
invoker.isfiring = true;
|
||||
A_StartSound("eviscerator/fire",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_QuakeEx(6.,6.,6.,3,0,10,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:1.5);
|
||||
A_QuakeEx(6.,6.,6.,8,0,10,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:1.5);
|
||||
A_BumpFOV(.94);
|
||||
A_SWWMFlash();
|
||||
A_PlayerFire();
|
||||
|
|
@ -146,7 +146,7 @@ Class Eviscerator : SWWMWeapon
|
|||
invoker.isfiring = true;
|
||||
A_StartSound("eviscerator/altfire",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_StartSound("eviscerator/fire",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_QuakeEx(4.,4.,4.,5,0,10,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.9);
|
||||
A_QuakeEx(4.,4.,4.,15,0,10,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.9);
|
||||
A_BumpFOV(.91);
|
||||
A_SWWMFlash();
|
||||
A_PlayerFire();
|
||||
|
|
@ -275,12 +275,12 @@ Class Eviscerator : SWWMWeapon
|
|||
A_StartSound("eviscerator/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
return A_JumpIf(invoker.extended,"DeselectExt");
|
||||
}
|
||||
XZW2 BCDEFGH 2;
|
||||
XZW2 BCDEFG 2;
|
||||
XZW2 H -1 A_FullLower();
|
||||
Stop;
|
||||
DeselectExt:
|
||||
XZW4 Z 2;
|
||||
XZW5 ABCDEFG 2;
|
||||
XZW5 ABCDEF 2;
|
||||
XZW5 G -1 A_FullLower();
|
||||
Stop;
|
||||
Select:
|
||||
|
|
@ -346,7 +346,11 @@ Class Eviscerator : SWWMWeapon
|
|||
Eject:
|
||||
XZW2 A 4;
|
||||
XZW3 STUV 2;
|
||||
XZW3 W 1 A_StartSound("eviscerator/eject",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW3 W 1
|
||||
{
|
||||
A_QuakeEx(.3,.3,.3,4,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.1);
|
||||
A_StartSound("eviscerator/eject",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW3 X 1
|
||||
{
|
||||
int layer = PSP_WEAPON+1;
|
||||
|
|
@ -358,6 +362,7 @@ Class Eviscerator : SWWMWeapon
|
|||
XZW4 AB 1;
|
||||
XZW4 C 1
|
||||
{
|
||||
A_QuakeEx(.5,.5,.5,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.15);
|
||||
A_StartSound("eviscerator/ejectend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_StartLoad();
|
||||
}
|
||||
|
|
@ -367,7 +372,11 @@ Class Eviscerator : SWWMWeapon
|
|||
EjectExt:
|
||||
XZW4 Z 4;
|
||||
XZW6 RSTU 2;
|
||||
XZW6 V 1 A_StartSound("eviscerator/eject",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW6 V 1
|
||||
{
|
||||
A_QuakeEx(.3,.3,.3,4,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.1);
|
||||
A_StartSound("eviscerator/eject",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW6 W 1
|
||||
{
|
||||
int layer = PSP_WEAPON+1;
|
||||
|
|
@ -379,6 +388,7 @@ Class Eviscerator : SWWMWeapon
|
|||
XZW7 A 1;
|
||||
XZW7 B 1
|
||||
{
|
||||
A_QuakeEx(.5,.5,.5,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.15);
|
||||
A_StartSound("eviscerator/ejectend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_StartLoad();
|
||||
}
|
||||
|
|
@ -431,7 +441,11 @@ Class Eviscerator : SWWMWeapon
|
|||
return A_JumpIf(invoker.extended,"ZoomExt");
|
||||
}
|
||||
XZW4 JKLMN 2;
|
||||
XZW4 O 1 A_StartSound("eviscerator/switch");
|
||||
XZW4 O 1
|
||||
{
|
||||
A_QuakeEx(.25,.25,.25,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.1);
|
||||
A_StartSound("eviscerator/switch");
|
||||
}
|
||||
XZW4 PQR 1;
|
||||
XZW4 S 2
|
||||
{
|
||||
|
|
@ -444,7 +458,11 @@ Class Eviscerator : SWWMWeapon
|
|||
ZoomExt:
|
||||
XZW4 Z 2;
|
||||
XZW7 IJK 3;
|
||||
XZW7 L 1 A_StartSound("eviscerator/switch");
|
||||
XZW7 L 1
|
||||
{
|
||||
A_QuakeEx(.25,.25,.25,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.1);
|
||||
A_StartSound("eviscerator/switch");
|
||||
}
|
||||
XZW7 MNO 1;
|
||||
XZW7 P 2
|
||||
{
|
||||
|
|
@ -487,23 +505,42 @@ Class Eviscerator : SWWMWeapon
|
|||
A_PlayerMelee();
|
||||
return A_JumpIf(invoker.extended,"User1Ext");
|
||||
}
|
||||
XZW8 WXY 2;
|
||||
XZW8 Z 1;
|
||||
XZW8 WXY 2 A_BumpAngle(2,2);
|
||||
XZW8 Z 1 A_BumpAngle(2);
|
||||
XZW9 AB 1;
|
||||
XZW9 C 1 A_Parry(9);
|
||||
XZW9 D 1;
|
||||
XZW9 E 2 A_Melee(60,"demolitionist/whitm",1.1,1.2,1.2);
|
||||
XZW9 C 1
|
||||
{
|
||||
A_BumpFOV(.98);
|
||||
A_QuakeEx(.8,.8,.8,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.5);
|
||||
A_Parry(9);
|
||||
}
|
||||
XZW9 D 1 A_BumpAngle(-8);
|
||||
XZW9 E 2
|
||||
{
|
||||
A_BumpAngle(-4);
|
||||
A_Melee(60,"demolitionist/whitm",1.1,1.2,1.2);
|
||||
}
|
||||
XZW9 FGH 2;
|
||||
XZW9 I 2 A_StartSound("eviscerator/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW9 JKL 2;
|
||||
Goto Ready;
|
||||
User1Ext:
|
||||
XZW4 Z 2;
|
||||
XZWA NOP 2;
|
||||
XZWA QRS 1;
|
||||
XZWA T 1 A_Parry(9);
|
||||
XZWA U 1;
|
||||
XZWA V 2 A_Melee(60,"demolitionist/whitm",1.1,1.2);
|
||||
XZWA NOP 2 A_BumpAngle(2,2);
|
||||
XZWA Q 1 A_BumpAngle(2);
|
||||
XZWA RS 1;
|
||||
XZWA T 1
|
||||
{
|
||||
A_BumpFOV(.98);
|
||||
A_QuakeEx(.8,.8,.8,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.5);
|
||||
A_Parry(9);
|
||||
}
|
||||
XZWA U 1 A_BumpAngle(-8);
|
||||
XZWA V 2
|
||||
{
|
||||
A_BumpAngle(-4);
|
||||
A_Melee(60,"demolitionist/whitm",1.1,1.2);
|
||||
}
|
||||
XZWA WXY 2;
|
||||
XZWA Z 2 A_StartSound("eviscerator/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWB ABC 2;
|
||||
|
|
|
|||
|
|
@ -76,6 +76,7 @@ Class Ynykron : SWWMWeapon
|
|||
a.LastHeard = self;
|
||||
}
|
||||
A_QuakeEx(9.,9.,9.,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:2.5);
|
||||
A_BumpView(-5);
|
||||
A_BumpFOV(.7);
|
||||
A_PlayerFire();
|
||||
SWWMHandler.DoFlash(self,Color(120,255,255,255),30);
|
||||
|
|
@ -130,6 +131,11 @@ Class Ynykron : SWWMWeapon
|
|||
Owner.A_SoundVolume(CHAN_WEAPONEXTRA2,(.025*chargelevel)**3.);
|
||||
}
|
||||
if ( Owner.player.ReadyWeapon != self ) return;
|
||||
if ( (chargelevel > 10.) && !(level.maptime&3) )
|
||||
{
|
||||
double str = (chargelevel-10.)/50.;
|
||||
Owner.A_QuakeEx(str,str,str,4,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:str/5.);
|
||||
}
|
||||
let pspm = Owner.player.FindPSprite(PSP_WEAPON);
|
||||
if ( pspm )
|
||||
{
|
||||
|
|
@ -227,7 +233,9 @@ Class Ynykron : SWWMWeapon
|
|||
A_StartSound("ynykron/ready",CHAN_WEAPONEXTRA2,CHANF_LOOP,(.025*invoker.chargelevel)**3.,2.);
|
||||
A_FullRaise();
|
||||
}
|
||||
XZW2 MNOPQRSTUVWXYZ 2;
|
||||
XZW2 MNOP 2 A_BumpView(-.2,tics:2);
|
||||
XZW2 QRSTUV 2 A_BumpView(-.6,tics:2);
|
||||
XZW2 WXYZ 2 A_BumpView(.5,tics:2);
|
||||
XZW3 A 2;
|
||||
Goto Ready;
|
||||
Ready:
|
||||
|
|
@ -262,16 +270,24 @@ Class Ynykron : SWWMWeapon
|
|||
A_OverlayFlags(PSP_WEAPON+1,PSPF_RENDERSTYLE|PSPF_ALPHA|PSPF_FORCESTYLE|PSPF_FORCEALPHA,true);
|
||||
A_OverlayRenderStyle(PSP_WEAPON+1,STYLE_Add);
|
||||
A_OverlayAlpha(PSP_WEAPON+1,0.);
|
||||
A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
A_StartSound("ynykron/ventopen",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_BumpFOV(.995);
|
||||
A_QuakeEx(1.2,1.2,1.2,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.2);
|
||||
A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
}
|
||||
XZWA ABCDEF 2 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
XZWA G 2
|
||||
{
|
||||
A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
A_StartSound("ynykron/ventclose",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
}
|
||||
XZWA H 2 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
XZWA I 2
|
||||
{
|
||||
A_BumpFOV(.99);
|
||||
A_QuakeEx(1.4,1.4,1.4,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.3);
|
||||
A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
}
|
||||
XZWA HI 2 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
Goto Ready;
|
||||
ReadyVentSmoke:
|
||||
XZWB D 1
|
||||
|
|
@ -331,10 +347,19 @@ Class Ynykron : SWWMWeapon
|
|||
A_StartSound("ynykron/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_PlayerReload();
|
||||
}
|
||||
XZW3 WXYZ 2;
|
||||
XZW3 WXYZ 2 A_BumpView(.5,tics:2);
|
||||
XZW4 A 2;
|
||||
XZW4 B 2 A_StopSound(CHAN_WEAPONEXTRA);
|
||||
XZW4 CDEFGHIJKLMNO 2;
|
||||
XZW4 B 2
|
||||
{
|
||||
A_BumpView(-2.);
|
||||
A_BumpFOV(.99);
|
||||
A_QuakeEx(1.4,1.4,1.4,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.3);
|
||||
A_StopSound(CHAN_WEAPONEXTRA);
|
||||
}
|
||||
XZW4 CDEF 2;
|
||||
XZW4 GHIJ 2 A_BumpView(.5,tics:2);
|
||||
XZW4 K 2 A_BumpView(2.);
|
||||
XZW4 LMNO 2;
|
||||
XZW4 P 0
|
||||
{
|
||||
invoker.inverted = true;
|
||||
|
|
@ -349,9 +374,19 @@ Class Ynykron : SWWMWeapon
|
|||
A_StartSound("ynykron/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_PlayerReload();
|
||||
}
|
||||
XZW5 UVWXY 2;
|
||||
XZW5 Z 2 A_StopSound(CHAN_WEAPONEXTRA);
|
||||
XZW6 ABCDEFGHIJKLM 2;
|
||||
XZW5 UVWX 2 A_BumpView(.5,tics:2);
|
||||
XZW5 Y 2;
|
||||
XZW5 Z 2
|
||||
{
|
||||
A_BumpView(-2.);
|
||||
A_BumpFOV(.99);
|
||||
A_QuakeEx(1.4,1.4,1.4,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.3);
|
||||
A_StopSound(CHAN_WEAPONEXTRA);
|
||||
}
|
||||
XZW6 ABCD 2;
|
||||
XZW6 EFGH 2 A_BumpView(.5,tics:2);
|
||||
XZW6 I 2 A_BumpView(2.);
|
||||
XZW6 JKLM 2;
|
||||
XZW6 N 0
|
||||
{
|
||||
invoker.inverted = false;
|
||||
|
|
@ -361,19 +396,36 @@ Class Ynykron : SWWMWeapon
|
|||
PutNormal:
|
||||
XZW4 PQRS 2;
|
||||
XZW4 T 2 A_StartSound("ynykron/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW4 UVWXYZ 2;
|
||||
XZW4 UVWX 2 A_BumpView(.5,tics:2);
|
||||
XZW4 YZ 2 A_BumpView(.5,tics:2);
|
||||
XZW5 A 2 A_StartSound("ynykron/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW5 B 2 A_StartSound("ynykron/idle",CHAN_WEAPONEXTRA,CHANF_LOOP,.3,4.);
|
||||
XZW5 CDEFGHIJK 2;
|
||||
XZW5 B 2
|
||||
{
|
||||
A_BumpView(4.);
|
||||
A_BumpFOV(.98);
|
||||
A_QuakeEx(2.,2.,2.,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.5);
|
||||
A_StartSound("ynykron/idle",CHAN_WEAPONEXTRA,CHANF_LOOP,.3,4.);
|
||||
}
|
||||
XZW5 C 2;
|
||||
XZW5 DEFG 2 A_BumpView(-1,tics:2);
|
||||
XZW5 HIJK 2;
|
||||
XZW5 L 4;
|
||||
Goto Ready;
|
||||
PutInverted:
|
||||
XZW6 NOPQ 2;
|
||||
XZW6 R 2 A_StartSound("ynykron/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW6 STUVWX 2;
|
||||
XZW6 STUVWX 2 A_BumpView(.5,tics:2);
|
||||
XZW6 Y 2 A_StartSound("ynykron/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW6 Z 2 A_StartSound("ynykron/idle",CHAN_WEAPONEXTRA,CHANF_LOOP,.3,4.);
|
||||
XZW7 ABCDEFGHI 2;
|
||||
XZW6 Z 2
|
||||
{
|
||||
A_BumpView(4.);
|
||||
A_BumpFOV(.98);
|
||||
A_QuakeEx(2.,2.,2.,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.5);
|
||||
A_StartSound("ynykron/idle",CHAN_WEAPONEXTRA,CHANF_LOOP,.3,4.);
|
||||
}
|
||||
XZW7 A 2;
|
||||
XZW7 BCDE 2 A_BumpView(-1,tics:2);
|
||||
XZW7 FGHI 2;
|
||||
XZW7 J 4;
|
||||
XZW5 P 0;
|
||||
Goto Ready;
|
||||
|
|
@ -391,7 +443,14 @@ Class Ynykron : SWWMWeapon
|
|||
A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
A_StartSound("ynykron/ventopen",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW7 RSTUV 2 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
XZW7 R 2 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
XZW7 S 2
|
||||
{
|
||||
A_BumpFOV(.995);
|
||||
A_QuakeEx(1.2,1.2,1.2,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.2);
|
||||
A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
}
|
||||
XZW7 TUV 2 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
Discharging:
|
||||
XZW7 W 2
|
||||
{
|
||||
|
|
@ -405,7 +464,13 @@ Class Ynykron : SWWMWeapon
|
|||
A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
A_StartSound("ynykron/ventclose",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW7 YZ 2 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
XZW7 Y 2 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
XZW7 Z 2
|
||||
{
|
||||
A_BumpFOV(.99);
|
||||
A_QuakeEx(1.4,1.4,1.4,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.3);
|
||||
A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||
}
|
||||
Goto Ready;
|
||||
DischargeSmoke:
|
||||
XZWA T 2
|
||||
|
|
@ -432,7 +497,9 @@ Class Ynykron : SWWMWeapon
|
|||
XZW2 A 2;
|
||||
XZW3 BC 2;
|
||||
XZW3 D 2 A_StartSound("ynykron/latch",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW3 EFGHI 2;
|
||||
XZW3 EF 2;
|
||||
XZW3 G 2 A_QuakeEx(1.,1.,1.,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.2);
|
||||
XZW3 HI 2;
|
||||
XZW2 A 0
|
||||
{
|
||||
invoker.chargestate = CS_CHARGING;
|
||||
|
|
@ -451,7 +518,13 @@ Class Ynykron : SWWMWeapon
|
|||
UnloadNormal:
|
||||
XZW2 A 2;
|
||||
XZW3 STU 2;
|
||||
XZW3 V 2 A_StartSound("ynykron/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW3 V 2
|
||||
{
|
||||
A_BumpView(-2.);
|
||||
A_BumpFOV(.99);
|
||||
A_QuakeEx(1.4,1.4,1.4,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.3);
|
||||
A_StartSound("ynykron/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW3 WXYZ 2;
|
||||
XZW4 A 2;
|
||||
XZW4 B 2 A_StopSound(CHAN_WEAPONEXTRA);
|
||||
|
|
@ -502,7 +575,11 @@ Class Ynykron : SWWMWeapon
|
|||
A_StartSound("ynykron/checkout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_PlayerCheckGun();
|
||||
}
|
||||
XZW8 ABCDEFGHIJKLMNOPQRSTUVW 2;
|
||||
XZW8 ABCDE 2 A_BumpView(.3,tics:2);
|
||||
XZW8 FGHIJKL 2 A_BumpView(-.8,tics:2);
|
||||
XZW8 MNOPQR 2 A_BumpView(-.4,tics:2);
|
||||
XZW8 STU 2 A_BumpView(.5,tics:2);
|
||||
XZW8 VW 2;
|
||||
XZW8 X 4; // smoothen more
|
||||
Goto Ready;
|
||||
User1:
|
||||
|
|
@ -513,19 +590,26 @@ Class Ynykron : SWWMWeapon
|
|||
A_StartSound("demolitionist/wswing",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_PlayerMelee();
|
||||
}
|
||||
XZW8 YZ 2;
|
||||
XZW9 AB 2;
|
||||
XZW9 C 1 A_Parry(9);
|
||||
XZW9 DE 1;
|
||||
XZW8 YZ 2 A_BumpAngle(-1.,2);
|
||||
XZW9 AB 2 A_BumpAngle(-.5,2);
|
||||
XZW9 C 1
|
||||
{
|
||||
A_BumpFOV(.93);
|
||||
A_QuakeEx(2.,2.,2.,10,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.8);
|
||||
A_Parry(9);
|
||||
}
|
||||
XZW9 DE 1 A_BumpAngle(10.);
|
||||
XZW9 F 1 A_Melee(100,"demolitionist/whitl",1.5,1.6,1.7,MELEE_Wider);
|
||||
XZW9 GHIJK 1;
|
||||
XZW9 LMNO 2;
|
||||
XZW9 GHIJK 1 A_BumpAngle(2.);
|
||||
XZW9 LMNO 2 A_BumpAngle(.5,2);
|
||||
XZW9 P 2 A_StartSound("ynykron/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW9 QRSTUVWXYZ 2;
|
||||
Goto Ready;
|
||||
Deselect:
|
||||
XZW2 A 2 A_StartSound("ynykron/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW2 BCDEFGHIJK 2;
|
||||
XZW2 BCDE 2 A_BumpView(.1,tics:2);
|
||||
XZW2 FGH 2 A_BumpView(.2,tics:2);
|
||||
XZW2 IJK 2 A_BumpView(.3,tics:2);
|
||||
XZW2 L -1
|
||||
{
|
||||
A_StopSound(CHAN_WEAPONEXTRA);
|
||||
|
|
|
|||
|
|
@ -115,6 +115,8 @@ Class DeepImpact : SWWMWeapon
|
|||
{
|
||||
let weap = Weapon(invoker);
|
||||
if ( !weap ) return;
|
||||
A_BumpFOV(.995);
|
||||
A_BumpView(-.2);
|
||||
A_QuakeEx(.8,.8,.8,2,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.05);
|
||||
A_StartSound("deepimpact/fire",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_AlertMonsters(swwm_uncapalert?0:300);
|
||||
|
|
@ -259,6 +261,8 @@ Class DeepImpact : SWWMWeapon
|
|||
let weap = Weapon(invoker);
|
||||
if ( !weap ) return;
|
||||
A_StopSound(CHAN_WEAPONEXTRA);
|
||||
A_BumpFOV(.85);
|
||||
A_BumpView(-5);
|
||||
A_QuakeEx(6.,6.,6.,10,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.7);
|
||||
A_StartSound("deepimpact/altfire",CHAN_WEAPON,CHANF_OVERLAP,attenuation:.5);
|
||||
A_AlertMonsters(swwm_uncapalert?0:8000);
|
||||
|
|
@ -437,17 +441,26 @@ Class DeepImpact : SWWMWeapon
|
|||
A_StartSound("demolitionist/wswing",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_PlayerMelee();
|
||||
}
|
||||
XZW4 H 2 A_StartSound("demolitionist/reloadbeg",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW4 H 2
|
||||
{
|
||||
A_BumpView(.5,tics:4);
|
||||
A_StartSound("demolitionist/reloadbeg",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW4 I 2;
|
||||
XZW4 J 1 A_Parry(9);
|
||||
XZW4 KLM 1;
|
||||
XZW4 J 1
|
||||
{
|
||||
A_BumpFOV(.98);
|
||||
A_QuakeEx(.5,.5,.5,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.2);
|
||||
A_Parry(9);
|
||||
}
|
||||
XZW4 KLM 1 A_BumpView(-1);
|
||||
XZW4 N 4 A_Melee(60,"demolitionist/whits");
|
||||
XZW4 O 3 { invoker.PlayUpSound(self); }
|
||||
XZW4 PQRSTUV 2;
|
||||
Goto Ready;
|
||||
Deselect:
|
||||
XZW2 A 2 A_StartSound("deepimpact/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW2 BCDEFGHI 2;
|
||||
XZW2 BCDEFGH 2;
|
||||
XZW2 I -1 A_FullLower();
|
||||
Stop;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -217,8 +217,9 @@ Class Spreadgun : SWWMWeapon
|
|||
A_SWWMFlash("FlashGold");
|
||||
A_StartSound("spreadgun/goldfire",CHAN_WEAPON,CHANF_OVERLAP,attenuation:.6);
|
||||
A_AlertMonsters(swwm_uncapalert?0:2500);
|
||||
A_QuakeEx(6.,6.,6.,9,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:1.2);
|
||||
A_QuakeEx(6.,6.,6.,12,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:1.2);
|
||||
A_BumpFOV(.76);
|
||||
A_BumpView(-4);
|
||||
SWWMHandler.DoFlash(self,Color(96,255,224,16),5);
|
||||
}
|
||||
else
|
||||
|
|
@ -226,8 +227,9 @@ Class Spreadgun : SWWMWeapon
|
|||
A_SWWMFlash("FlashRed");
|
||||
A_StartSound("spreadgun/redfire",CHAN_WEAPON,CHANF_OVERLAP,attenuation:.6);
|
||||
A_AlertMonsters(swwm_uncapalert?0:800);
|
||||
A_QuakeEx(3.,3.,3.,9,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.6);
|
||||
A_BumpFOV(.88);
|
||||
A_QuakeEx(2.5,2.5,2.5,8,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.6);
|
||||
A_BumpFOV(.93);
|
||||
A_BumpView(-1);
|
||||
SWWMHandler.DoFlash(self,Color(40,255,192,64),5);
|
||||
}
|
||||
A_PlayerFire();
|
||||
|
|
@ -470,12 +472,12 @@ Class Spreadgun : SWWMWeapon
|
|||
A_StartSound("spreadgun/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
return A_JumpIf(invoker.fired,"DeselectFired");
|
||||
}
|
||||
XZW2 BCDEFGHI 1;
|
||||
XZW2 BCDEFGH 1;
|
||||
XZW2 I -1 A_FullLower();
|
||||
Stop;
|
||||
DeselectFired:
|
||||
XZW2 Z 1;
|
||||
XZW3 ABCDEFGH 1;
|
||||
XZW3 ABCDEFG 1;
|
||||
XZW3 H -1 A_FullLower();
|
||||
Stop;
|
||||
Select:
|
||||
|
|
|
|||
|
|
@ -51,6 +51,7 @@ Class Sparkster : SWWMWeapon
|
|||
A_StartSound("biospark/fire",CHAN_WEAPON,CHANF_OVERLAP,attenuation:.7);
|
||||
A_QuakeEx(2.,2.,2.,5,0,8,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.2);
|
||||
A_BumpFOV(.96);
|
||||
A_BumpView(-.5);
|
||||
A_SWWMFlash();
|
||||
SWWMHandler.DoFlash(self,Color(64,192,255,96),3);
|
||||
A_AlertMonsters(swwm_uncapalert?0:5000);
|
||||
|
|
@ -70,6 +71,7 @@ Class Sparkster : SWWMWeapon
|
|||
A_StartSound("biospark/altfire",CHAN_WEAPON,CHANF_OVERLAP,attenuation:.8);
|
||||
A_QuakeEx(3.,3.,3.,5,0,8,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.3);
|
||||
A_BumpFOV(.95);
|
||||
A_BumpView(-.6);
|
||||
A_SWWMFlash();
|
||||
SWWMHandler.DoFlash(self,Color(64,192,255,96),3);
|
||||
A_AlertMonsters(swwm_uncapalert?0:4000);
|
||||
|
|
@ -89,6 +91,7 @@ Class Sparkster : SWWMWeapon
|
|||
A_StartSound("biospark/thirdfire",CHAN_WEAPON,CHANF_OVERLAP,attenuation:1.5);
|
||||
A_QuakeEx(5.,5.,5.,10,0,8,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.6);
|
||||
A_BumpFOV(.94);
|
||||
A_BumpView(-.8);
|
||||
A_AlertMonsters(swwm_uncapalert?0:1200);
|
||||
A_PlayerFire();
|
||||
SWWMUtility.DoKnockback(self,-x,2500.);
|
||||
|
|
@ -249,7 +252,7 @@ Class Sparkster : SWWMWeapon
|
|||
A_StartSound("biospark/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
return A_JumpIf(invoker.doublestacc,"DoubleDeselect");
|
||||
}
|
||||
XZW2 BCDEFG 2;
|
||||
XZW2 BCDEF 2;
|
||||
XZW2 G -1
|
||||
{
|
||||
A_StopSound(CHAN_WEAPONEXTRA);
|
||||
|
|
@ -258,7 +261,7 @@ Class Sparkster : SWWMWeapon
|
|||
Stop;
|
||||
DoubleDeselect:
|
||||
XZW5 Z 2;
|
||||
XZW6 STUVWX 2;
|
||||
XZW6 STUVW 2;
|
||||
XZW6 X -1
|
||||
{
|
||||
A_StopSound(CHAN_WEAPONEXTRA);
|
||||
|
|
@ -432,6 +435,8 @@ Class Sparkster : SWWMWeapon
|
|||
{
|
||||
invoker.clipcount = 0;
|
||||
invoker.nomag = true;
|
||||
A_BumpView(1);
|
||||
A_QuakeEx(.3,.3,.3,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.1);
|
||||
A_StartSound("biospark/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_StopSound(CHAN_WEAPONEXTRA);
|
||||
}
|
||||
|
|
@ -450,6 +455,8 @@ Class Sparkster : SWWMWeapon
|
|||
invoker.clipcount = 0;
|
||||
invoker.nomag = true;
|
||||
invoker.doublestacc = false;
|
||||
A_BumpView(1);
|
||||
A_QuakeEx(.3,.3,.3,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.1);
|
||||
A_StartSound("biospark/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_StopSound(CHAN_WEAPONEXTRA);
|
||||
A_StopSound(CHAN_WEAPONEXTRA2);
|
||||
|
|
@ -466,6 +473,8 @@ Class Sparkster : SWWMWeapon
|
|||
invoker.Ammo1.Amount = max(0,invoker.Ammo1.Amount-1);
|
||||
invoker.clipcount = invoker.default.clipcount;
|
||||
invoker.nomag = false;
|
||||
A_BumpView(-1.5);
|
||||
A_QuakeEx(.6,.6,.6,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.2);
|
||||
A_StartSound("biospark/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_StartSound("biospark/idle",CHAN_WEAPONEXTRA,CHANF_LOOP,.4,4.);
|
||||
}
|
||||
|
|
@ -486,6 +495,8 @@ Class Sparkster : SWWMWeapon
|
|||
invoker.Ammo1.Amount = max(0,invoker.Ammo1.Amount-1);
|
||||
invoker.clipcount += invoker.default.clipcount;
|
||||
invoker.doublestacc = true;
|
||||
A_BumpView(-2);
|
||||
A_QuakeEx(.75,.75,.75,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.25);
|
||||
A_StartSound("biospark/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_SoundVolume(CHAN_WEAPONEXTRA,.6);
|
||||
A_StartSound("biospark/idle2",CHAN_WEAPONEXTRA2,CHANF_LOOP,.2,4.);
|
||||
|
|
@ -507,6 +518,8 @@ Class Sparkster : SWWMWeapon
|
|||
invoker.Ammo1.Amount = max(0,invoker.Ammo1.Amount-1);
|
||||
invoker.clipcount += invoker.default.clipcount;
|
||||
invoker.doublestacc = true;
|
||||
A_BumpView(-.8);
|
||||
A_QuakeEx(.6,.6,.6,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.2);
|
||||
A_StartSound("biospark/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_SoundVolume(CHAN_WEAPONEXTRA,.6);
|
||||
A_StartSound("biospark/idle2",CHAN_WEAPONEXTRA2,CHANF_LOOP,.2,4.);
|
||||
|
|
@ -546,9 +559,14 @@ Class Sparkster : SWWMWeapon
|
|||
A_PlayerMelee();
|
||||
return A_JumpIf(invoker.doublestacc,"DoubleUser1");
|
||||
}
|
||||
XZW4 EFG 2;
|
||||
XZW4 H 1 A_Parry(9);
|
||||
XZW4 IJ 1;
|
||||
XZW4 EFG 2 A_BumpView(1,tics:2);
|
||||
XZW4 H 1
|
||||
{
|
||||
A_BumpFOV(.98);
|
||||
A_QuakeEx(.8,.8,.8,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.3);
|
||||
A_Parry(9);
|
||||
}
|
||||
XZW4 IJ 1 A_BumpView(-4);
|
||||
XZW4 K 2 A_Melee(60,"demolitionist/whitm",1.,1.1,1.1);
|
||||
XZW4 LMNOPQ 2;
|
||||
XZW4 R 2 A_StartSound("biospark/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
|
|
@ -556,9 +574,14 @@ Class Sparkster : SWWMWeapon
|
|||
Goto Ready;
|
||||
DoubleUser1:
|
||||
XZW5 Z 2;
|
||||
XZW7 RST 2;
|
||||
XZW7 U 1 A_Parry(9);
|
||||
XZW7 VW 1;
|
||||
XZW7 RST 2 A_BumpView(1,tics:2);
|
||||
XZW7 U 1
|
||||
{
|
||||
A_BumpFOV(.98);
|
||||
A_QuakeEx(.8,.8,.8,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.3);
|
||||
A_Parry(9);
|
||||
}
|
||||
XZW7 VW 1 A_BumpView(-4);
|
||||
XZW7 X 2 A_Melee(60,"demolitionist/whitm",1.,1.1);
|
||||
XZW7 YZ 2;
|
||||
XZW8 ABCD 2;
|
||||
|
|
|
|||
|
|
@ -80,6 +80,7 @@ Class ExplodiumGun : SWWMWeapon
|
|||
A_StartSound("explodium/fire",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_QuakeEx(4.5,4.5,4.5,3,0,10,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:1.5);
|
||||
A_BumpFOV(.96);
|
||||
A_BumpView(-.2);
|
||||
A_SWWMFlash();
|
||||
SWWMHandler.DoFlash(self,Color(64,255,224,64),3);
|
||||
A_AlertMonsters(swwm_uncapalert?0:5000);
|
||||
|
|
@ -346,7 +347,8 @@ Class ExplodiumGun : SWWMWeapon
|
|||
A_FullRaise();
|
||||
return A_JumpIf(invoker.firstselect,"FirstSelect");
|
||||
}
|
||||
XZW2 CDEFGH 2;
|
||||
XZW2 CDE 2 A_BumpView(-.1,tics:2);
|
||||
XZW2 FGH 2 A_BumpView(.05,tics:2);
|
||||
Goto Ready;
|
||||
FirstSelect:
|
||||
XZW2 B 1 A_JumpIf(level.maptime>8,1);
|
||||
|
|
@ -356,7 +358,8 @@ Class ExplodiumGun : SWWMWeapon
|
|||
invoker.firstselect = false;
|
||||
invoker.PlayUpSound(self);
|
||||
}
|
||||
XZW2 CDEFGH 2;
|
||||
XZW2 CDE 2 A_BumpView(-.1,tics:2);
|
||||
XZW2 FGH 2 A_BumpView(.05,tics:2);
|
||||
XZW2 A 2;
|
||||
Goto Slide;
|
||||
Ready:
|
||||
|
|
@ -405,13 +408,23 @@ Class ExplodiumGun : SWWMWeapon
|
|||
XZWB E 1 { invoker.clipcount = 0; }
|
||||
XZWB F 1;
|
||||
XZWB G 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWB HIJK 1;
|
||||
XZWB H 1 A_BumpView(.3);
|
||||
XZWB IJK 1;
|
||||
XZWB L 1 A_DropMag();
|
||||
XZWB MNOPQR 1;
|
||||
XZWB S 1 A_StartSound("explodium/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWB S 1
|
||||
{
|
||||
A_BumpView(-.1);
|
||||
A_StartSound("explodium/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZWB TUVWXYZ 1;
|
||||
XZWC ABCD 1;
|
||||
XZWC E 1 { A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP); invoker.clipcount = invoker.default.clipcount; }
|
||||
XZWC E 1
|
||||
{
|
||||
A_BumpView(-.4);
|
||||
A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
invoker.clipcount = invoker.default.clipcount;
|
||||
}
|
||||
XZWC FGHI 1;
|
||||
XZWC J 1
|
||||
{
|
||||
|
|
@ -454,7 +467,9 @@ Class ExplodiumGun : SWWMWeapon
|
|||
A_StartSound("explodium/throwmag",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_PlayerMelee();
|
||||
}
|
||||
XZW6 EFGHIJKLMNOPRS 1;
|
||||
XZW6 EFGHI 1 A_BumpView(.25);
|
||||
XZW6 JKLMNO 1;
|
||||
XZW6 PRS 1 A_BumpView(-1.5);
|
||||
XZW6 T 1 A_ThrowMag();
|
||||
XZW6 UV 2;
|
||||
XZW6 W 2
|
||||
|
|
@ -478,32 +493,43 @@ Class ExplodiumGun : SWWMWeapon
|
|||
XZW3 B 1 { invoker.clipcount = 0; }
|
||||
XZW3 C 1;
|
||||
XZW3 D 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW3 EFGH 1;
|
||||
XZW3 E 1 A_BumpView(.3);
|
||||
XZW3 FGH 1;
|
||||
XZW3 I 1 A_DropMag();
|
||||
Goto ReloadEnd;
|
||||
ReloadEmpty:
|
||||
XZW2 A 1;
|
||||
XZW3 JKLMNOPQRS 1;
|
||||
XZW3 T 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW3 UVWX 1;
|
||||
XZW3 U 1 A_BumpView(.3);
|
||||
XZW3 VWX 1;
|
||||
XZW3 Y 1 A_DropMag();
|
||||
Goto ReloadEnd;
|
||||
ReloadEnd:
|
||||
XZW3 Z 1;
|
||||
XZW4 ABCDE 1;
|
||||
XZW4 F 1 A_StartSound("explodium/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW4 F 1
|
||||
{
|
||||
A_BumpView(-.1);
|
||||
A_StartSound("explodium/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW4 GHIJKLMNOPQ 1;
|
||||
XZW4 R 1 { A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP); invoker.clipcount = invoker.default.clipcount; }
|
||||
XZW4 R 1
|
||||
{
|
||||
A_BumpView(-.4);
|
||||
A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
invoker.clipcount = invoker.default.clipcount;
|
||||
}
|
||||
XZW4 STUV 1;
|
||||
XZW2 A 1 A_JumpIf(!invoker.chambered,"Slide");
|
||||
Goto Ready;
|
||||
Slide:
|
||||
XZW2 A 1;
|
||||
XZW4 WXY 1;
|
||||
XZW4 WXY 1 A_BumpView(-.1);
|
||||
XZW5 A 1 A_StartSound("explodium/slideback",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW5 BC 1;
|
||||
XZW5 D 1 { invoker.chambered = true; invoker.clipcount--; }
|
||||
XZW5 EFG 1;
|
||||
XZW5 EFG 1 A_BumpView(.1);
|
||||
XZW5 H 1 A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW5 IJKLM 1;
|
||||
Goto Ready;
|
||||
|
|
@ -517,10 +543,14 @@ Class ExplodiumGun : SWWMWeapon
|
|||
CheckBullet:
|
||||
XZW2 A 1;
|
||||
XZW7 A 1 A_Overlay(PSP_WEAPON+1,"CheckBulletCasing");
|
||||
XZW7 BCDE 1;
|
||||
XZW7 BCDE 1 A_BumpView(-.2);
|
||||
XZW7 F 1 A_StartSound("explodium/slideback",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW7 GHIJKLMNOP 1;
|
||||
XZW7 Q 1 A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW7 Q 1
|
||||
{
|
||||
A_BumpView(.6);
|
||||
A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW7 RS 1;
|
||||
Goto Ready;
|
||||
CheckBulletCasing:
|
||||
|
|
@ -529,15 +559,16 @@ Class ExplodiumGun : SWWMWeapon
|
|||
Stop;
|
||||
User1:
|
||||
XZW2 A 1;
|
||||
XZW7 TU 1;
|
||||
XZW7 TU 1 A_BumpView(.1);
|
||||
User1Hold:
|
||||
XZW7 V 1
|
||||
{
|
||||
A_BumpAngle(1.);
|
||||
A_PlayerMelee(true);
|
||||
A_StartSound("demolitionist/swing",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_Parry(9);
|
||||
}
|
||||
XZW7 WX 1;
|
||||
XZW7 WX 1 A_BumpAngle(-.5);
|
||||
XZW7 Y 1 A_Melee();
|
||||
XZW7 Z 2;
|
||||
XZW8 ABCDE 2;
|
||||
|
|
@ -546,16 +577,23 @@ Class ExplodiumGun : SWWMWeapon
|
|||
Goto Select;
|
||||
Zoom1:
|
||||
XZW2 A 2 A_StartSound("explodium/checkout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW8 GHIJKLMNOPQRSTUVWXYZ 2;
|
||||
XZW8 GHIJ 2 A_BumpView(-.2);
|
||||
XZW8 KLMNO 2 A_BumpView(-.3);
|
||||
XZW8 PQR 2 A_BumpView(.5);
|
||||
XZW8 STUV 2 A_BumpView(.2);
|
||||
XZW8 WXYZ 2;
|
||||
Goto Ready;
|
||||
Zoom2:
|
||||
XZW2 A 1 A_StartSound("explodium/speen",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW9 ABCDEFGHIJKLMNOPQRSTUVW 1;
|
||||
XZW9 ABCD 1 A_BumpView(.2);
|
||||
XZW9 EFGHIJ 1 A_BumpView(-.2);
|
||||
XZW9 KLMNOP 1 A_BumpView(-.1);
|
||||
XZW9 QRST 1 A_BumpView(.3);
|
||||
XZW9 UVW 1;
|
||||
Goto Ready;
|
||||
Deselect:
|
||||
XZW2 A 2 A_StartSound("explodium/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWA TUVW 2;
|
||||
XZW2 B 2;
|
||||
XZWA TUVW 2 A_BumpView(.1,tics:2);
|
||||
XZW2 B -1 A_FullLower();
|
||||
Stop;
|
||||
Flash:
|
||||
|
|
@ -621,6 +659,7 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
A_StartSound("explodium/fire",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_QuakeEx(4.5,4.5,4.5,3,0,10,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:1.5);
|
||||
A_BumpFOV(.96);
|
||||
A_BumpView(-.2);
|
||||
if ( side == 1 )
|
||||
A_SWWMFlash("Flash");
|
||||
else if ( side == -1 )
|
||||
|
|
@ -776,12 +815,20 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
A_FullRaise();
|
||||
ExplodiumGun(invoker.SisterWeapon).firstselect = false;
|
||||
}
|
||||
XZW2 C 2;
|
||||
XZW2 D 2 { player.SetPSprite(PSP_WEAPON+1,ResolveState("LeftSelect")); }
|
||||
XZW2 EFGHAA 2;
|
||||
XZW2 C 2 A_BumpView(-.1,tics:2);
|
||||
XZW2 D 2
|
||||
{
|
||||
A_BumpView(-.1,tics:2);
|
||||
player.SetPSprite(PSP_WEAPON+1,ResolveState("LeftSelect"));
|
||||
}
|
||||
XZW2 E 2 A_BumpView(-.1,tics:2);
|
||||
XZW2 FGH 2 A_BumpView(.05,tics:2);
|
||||
XZW2 AA 2;
|
||||
Goto Ready;
|
||||
LeftSelect:
|
||||
XZWB BCDEFGH 2;
|
||||
XZWB B 2;
|
||||
XZWB CDE 2 A_BumpView(-.1,tics:2);
|
||||
XZWB FGH 2 A_BumpView(.05,tics:2);
|
||||
Goto LeftReady;
|
||||
Ready:
|
||||
XZW2 A 1
|
||||
|
|
@ -872,18 +919,25 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
A_PlayerReload();
|
||||
A_StartSound("explodium/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZWI WXYZ 2;
|
||||
XZWJ AB 2;
|
||||
XZWI WXY 2 A_BumpView(.2,tics:2);
|
||||
XZWI Z 2 A_BumpView(.1,tics:2);
|
||||
XZWJ AB 2 A_BumpView(.1,tics:2);
|
||||
XZWJ CD 1;
|
||||
XZWJ E 1 { ExplodiumGun(invoker.SisterWeapon).clipcount = 0; }
|
||||
XZWJ F 1;
|
||||
XZWJ G 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWJ HIJ 1;
|
||||
XZWJ H 1 A_BumpView(.2);
|
||||
XZWJ IJ 1;
|
||||
XZWJ K 0 A_DropMag();
|
||||
XZWJ LMN 3;
|
||||
XZWJ O 2 A_StartSound("explodium/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWJ PQR 2;
|
||||
XZWJ S 1 { A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP); ExplodiumGun(invoker.SisterWeapon).clipcount = ExplodiumGun(invoker.SisterWeapon).default.clipcount; }
|
||||
XZWJ S 1
|
||||
{
|
||||
A_BumpView(-.2);
|
||||
A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
ExplodiumGun(invoker.SisterWeapon).clipcount = ExplodiumGun(invoker.SisterWeapon).default.clipcount;
|
||||
}
|
||||
XZWJ TUVW 1;
|
||||
XZWJ X 2 A_StartSound("explodium/select",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWJ Y 2
|
||||
|
|
@ -938,17 +992,24 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
A_PlayerReload();
|
||||
A_StartSound("explodium/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZWL ABCDEF 2;
|
||||
XZWL ABC 2 A_BumpView(.2,tics:2);
|
||||
XZWL DEF 2 A_BumpView(.1,tics:2);
|
||||
XZWL GH 1;
|
||||
XZWL I 1 { invoker.clipcount = 0; }
|
||||
XZWL J 1;
|
||||
XZWL K 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWL LMN 1;
|
||||
XZWL L 1 A_BumpView(.2);
|
||||
XZWL MN 1;
|
||||
XZWL O 0 A_DropMag();
|
||||
XZWL PQR 3;
|
||||
XZWL S 2 A_StartSound("explodium/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWL TUV 2;
|
||||
XZWL W 1 { A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP); invoker.clipcount = invoker.default.clipcount; }
|
||||
XZWL W 1
|
||||
{
|
||||
A_BumpView(-.2);
|
||||
A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
invoker.clipcount = invoker.default.clipcount;
|
||||
}
|
||||
XZWL XYZ 1;
|
||||
XZWM A 1;
|
||||
XZWM B 2 A_StartSound("explodium/select",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
|
|
@ -982,22 +1043,22 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
Stop;
|
||||
Lower:
|
||||
XZW2 A 2;
|
||||
XZW7 TUV 2;
|
||||
XZW7 TUV 2 A_BumpView(.1,tics:2);
|
||||
XZW2 B -1;
|
||||
Stop;
|
||||
LeftLower:
|
||||
XZWB A 2;
|
||||
XZWG TUV 2;
|
||||
XZWG TUV 2 A_BumpView(.1,tics:2);
|
||||
XZWB B -1;
|
||||
Stop;
|
||||
Raise:
|
||||
XZW2 B 2;
|
||||
XZW7 VUT 2;
|
||||
XZW7 VUT 2 A_BumpView(-.1,tics:2);
|
||||
XZW2 A 1;
|
||||
Goto Ready;
|
||||
LeftRaise:
|
||||
XZWB B 2;
|
||||
XZWG VUT 2;
|
||||
XZWG VUT 2 A_BumpView(-.1,tics:2);
|
||||
XZWB A 1;
|
||||
Goto LeftReady;
|
||||
Reload:
|
||||
|
|
@ -1008,36 +1069,46 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
if ( ExplodiumGun(invoker.SisterWeapon).clipcount <= 0 ) return ResolveState("ReloadEmpty");
|
||||
return ResolveState(null);
|
||||
}
|
||||
XZW2 TUVWXY 2;
|
||||
XZW2 TUV 2 A_BumpView(.2,tics:2);
|
||||
XZW2 WXY 2 A_BumpView(.1,tics:2);
|
||||
XZW2 Z 1;
|
||||
XZW3 A 1;
|
||||
XZW3 B 1 { ExplodiumGun(invoker.SisterWeapon).clipcount = 0; }
|
||||
XZW3 C 1;
|
||||
XZW3 D 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW3 EFG 1;
|
||||
XZW3 E 1 A_BumpView(.2);
|
||||
XZW3 FG 1;
|
||||
XZW3 H 0 A_DropMag();
|
||||
Goto ReloadEnd;
|
||||
ReloadEmpty:
|
||||
XZW2 A 1;
|
||||
XZW3 IJKLMN 2;
|
||||
XZW3 IJK 2 A_BumpView(.2,tics:2);
|
||||
XZW3 LMN 2 A_BumpView(.1,tics:2);
|
||||
XZW3 OPQR 1;
|
||||
XZW3 S 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW3 TUV 1;
|
||||
XZW3 T 1 A_BumpView(.2);
|
||||
XZW3 UV 1;
|
||||
XZW3 W 0 A_DropMag();
|
||||
Goto ReloadEnd;
|
||||
ReloadEnd:
|
||||
XZW3 XYZ 3;
|
||||
XZW4 A 2 A_StartSound("explodium/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW4 BCD 2;
|
||||
XZW4 E 1 { A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP); ExplodiumGun(invoker.SisterWeapon).clipcount = ExplodiumGun(invoker.SisterWeapon).default.clipcount; }
|
||||
XZW4 E 1
|
||||
{
|
||||
A_BumpView(-.2);
|
||||
A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
ExplodiumGun(invoker.SisterWeapon).clipcount = ExplodiumGun(invoker.SisterWeapon).default.clipcount;
|
||||
}
|
||||
XZW4 FGHI 1;
|
||||
XZW4 J 2 A_StartSound("explodium/select",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW4 KLMNOP 2;
|
||||
XZW4 KLM 2 A_BumpView(-.2,tics:2);
|
||||
XZW4 NOP 2 A_BumpView(.1,tics:2);
|
||||
Goto Ready;
|
||||
Slide:
|
||||
XZW2 A 9 { player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftLower")); }
|
||||
XZW2 A 1;
|
||||
XZW4 WXY 1;
|
||||
XZW4 WXY 1 A_BumpView(-.1);
|
||||
XZW5 A 1 A_StartSound("explodium/slideback",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW5 BC 1;
|
||||
XZW5 D 1
|
||||
|
|
@ -1045,7 +1116,7 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
ExplodiumGun(invoker.SisterWeapon).chambered = true;
|
||||
ExplodiumGun(invoker.SisterWeapon).clipcount--;
|
||||
}
|
||||
XZW5 EFG 1;
|
||||
XZW5 EFG 1 A_BumpView(.1);
|
||||
XZW5 H 1 A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW5 IJKLM 1;
|
||||
XZW2 A 0 { player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftRaise")); }
|
||||
|
|
@ -1065,36 +1136,46 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
if ( invoker.clipcount <= 0 ) return ResolveState("LeftReloadEmpty");
|
||||
return ResolveState(null);
|
||||
}
|
||||
XZWB TUVWXY 2;
|
||||
XZWB TUV 2 A_BumpView(.2,tics:2);
|
||||
XZWB WXY 2 A_BumpView(.1,tics:2);
|
||||
XZWB Z 1;
|
||||
XZWC A 1;
|
||||
XZWC B 1 { invoker.clipcount = 0; }
|
||||
XZWC C 1;
|
||||
XZWC D 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWC EFG 1;
|
||||
XZWC E 1 A_BumpView(.2);
|
||||
XZWC FG 1;
|
||||
XZWC H 0 A_DropMag();
|
||||
Goto LeftReloadEnd;
|
||||
LeftReloadEmpty:
|
||||
XZWB A 1;
|
||||
XZWC IJKLMN 2;
|
||||
XZWC IJK 2 A_BumpView(.2,tics:2);
|
||||
XZWC LMN 2 A_BumpView(.1,tics:2);
|
||||
XZWC OPQR 1;
|
||||
XZWC S 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWC TUV 1;
|
||||
XZWC T 1 A_BumpView(.2);
|
||||
XZWC UV 1;
|
||||
XZWC W 0 A_DropMag();
|
||||
Goto LeftReloadEnd;
|
||||
LeftReloadEnd:
|
||||
XZWC XYZ 3;
|
||||
XZWD A 2 A_StartSound("explodium/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWD BCD 2;
|
||||
XZWD E 1 { A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP); invoker.clipcount = invoker.default.clipcount; }
|
||||
XZWD E 1
|
||||
{
|
||||
A_BumpView(-.2);
|
||||
A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
invoker.clipcount = invoker.default.clipcount;
|
||||
}
|
||||
XZWD FGHI 1;
|
||||
XZWD J 2 A_StartSound("explodium/select",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWD KLMNOP 2;
|
||||
XZWD KLM 2 A_BumpView(-.2,tics:2);
|
||||
XZWD NOP 2 A_BumpView(.1,tics:2);
|
||||
Goto LeftReady;
|
||||
LeftSlide:
|
||||
XZWB A 9 { player.SetPSPrite(PSP_WEAPON,ResolveState("Lower")); }
|
||||
XZWB A 1;
|
||||
XZWD WXY 1;
|
||||
XZWD WXY 1 A_BumpView(-.1);
|
||||
XZWE A 1 A_StartSound("explodium/slideback",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWE BC 1;
|
||||
XZWE D 1
|
||||
|
|
@ -1102,7 +1183,7 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
invoker.chambered = true;
|
||||
invoker.clipcount--;
|
||||
}
|
||||
XZWE EFG 1;
|
||||
XZWE EFG 1 A_BumpView(.1);
|
||||
XZWE H 1 A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWE IJKLM 1;
|
||||
XZWB A 0 { player.SetPSPrite(PSP_WEAPON,ResolveState("Raise")); }
|
||||
|
|
@ -1113,13 +1194,25 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
A_PlayerCheckGun();
|
||||
A_StartSound("explodium/speen",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW9 ABCDEFG 1;
|
||||
XZW9 H 1 { player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftZoom")); }
|
||||
XZW9 IJKLMNOPQRSTUVW 1;
|
||||
XZW9 ABCD 1 A_BumpView(.2);
|
||||
XZW9 EFG 1 A_BumpView(-.2);
|
||||
XZW9 H 1
|
||||
{
|
||||
A_BumpView(-.2);
|
||||
player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftZoom"));
|
||||
}
|
||||
XZW9 IJ 1 A_BumpView(-.2);
|
||||
XZW9 KLMNOP 1 A_BumpView(-.1);
|
||||
XZW9 QRST 1 A_BumpView(.3);
|
||||
XZW9 UVW 1;
|
||||
Goto Ready;
|
||||
LeftZoom:
|
||||
XZWB A 1;
|
||||
XZWH ABCDEFGHIJKLMNOPQRSTUVW 1;
|
||||
XZWH ABCD 1 A_BumpView(.2);
|
||||
XZWH EFGHIJ 1 A_BumpView(-.2);
|
||||
XZWH KLMNOP 1 A_BumpView(-.1);
|
||||
XZWH QRST 1 A_BumpView(.3);
|
||||
XZWH UVW 1;
|
||||
Goto LeftReady;
|
||||
User1:
|
||||
XZW2 A 1 { player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftUser1")); }
|
||||
|
|
@ -1145,16 +1238,19 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
Stop;
|
||||
Deselect:
|
||||
XZW2 A 2 A_StartSound("explodium/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWA T 2;
|
||||
XZWA U 2 { player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftDeselect")); }
|
||||
XZWA VW 2;
|
||||
XZW2 B 6;
|
||||
XZWA T 2 A_BumpView(.1,tics:2);
|
||||
XZWA U 2
|
||||
{
|
||||
A_BumpView(.1,tics:2);
|
||||
player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftDeselect"));
|
||||
}
|
||||
XZWA VW 2 A_BumpView(.1,tics:2);
|
||||
XZW2 B -1 A_FullLower();
|
||||
Stop;
|
||||
LeftDeselect:
|
||||
XZWB A 2;
|
||||
XZWA PQRS 2;
|
||||
XZWB B 2;
|
||||
XZWA PQRS 2 A_BumpView(.1,tics:2);
|
||||
XZWB B 0;
|
||||
Stop;
|
||||
Flash:
|
||||
XZWZ A 2 Bright
|
||||
|
|
|
|||
|
|
@ -124,8 +124,9 @@ Class CandyGun : SWWMWeapon
|
|||
invoker.chambered = invoker.clipcount;
|
||||
invoker.clipcount = max(invoker.clipcount-1,0);
|
||||
A_StartSound("candygun/fire",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_QuakeEx(5.,5.,5.,5,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:2.);
|
||||
A_BumpFOV(.94);
|
||||
A_QuakeEx(6.3,6.3,6.3,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:2.);
|
||||
A_BumpFOV(.88);
|
||||
A_BumpView(-.35);
|
||||
A_SWWMFlash();
|
||||
SWWMHandler.DoFlash(self,Color(64,224,64,255),5);
|
||||
A_AlertMonsters(swwm_uncapalert?0:9000);
|
||||
|
|
@ -666,13 +667,11 @@ Class CandyGun : SWWMWeapon
|
|||
return A_JumpIf((invoker.clipcount<=0)&&!invoker.chambered,"DeselectLast");
|
||||
}
|
||||
XZWA TUVW 2;
|
||||
XZW2 B 2;
|
||||
XZW2 B -1 A_FullLower();
|
||||
Stop;
|
||||
DeselectLast:
|
||||
XZW9 X 2;
|
||||
XZWE QRST 2;
|
||||
XZWE U 2;
|
||||
XZWE U -1 A_FullLower();
|
||||
Stop;
|
||||
Flash:
|
||||
|
|
|
|||
|
|
@ -473,9 +473,10 @@ Class SilverBullet : SWWMWeapon
|
|||
A_SWWMFlash();
|
||||
A_StartSound("silverbullet/fire",CHAN_WEAPON,CHANF_OVERLAP,attenuation:.3);
|
||||
A_AlertMonsters(swwm_uncapalert?0:16000);
|
||||
A_QuakeEx(8.,8.,8.,10,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:2.);
|
||||
A_QuakeEx(8.5,8.5,8.5,15,0,1,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:2.2);
|
||||
double basezoom = invoker.zoomed?clamp(invoker.zoomlevel,1.,16.):1.;
|
||||
A_BumpFOV(.76);
|
||||
A_BumpView(invoker.proneme?-2:-8);
|
||||
A_BumpFOV(.64);
|
||||
A_PlayerFire();
|
||||
SWWMHandler.DoFlash(self,Color(110,255,192,80),8);
|
||||
let [x, y, z] = SWWMUtility.GetPlayerAxes(self);
|
||||
|
|
@ -826,6 +827,8 @@ Class SilverBullet : SWWMWeapon
|
|||
TNT1 A 12 A_StartSound("silverbullet/meleestart",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
TNT1 A 10
|
||||
{
|
||||
A_QuakeEx(.5,.5,.5,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.4);
|
||||
A_BumpFOV(.99);
|
||||
A_StartSound("silverbullet/boltopen",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
if ( invoker.chambered )
|
||||
{
|
||||
|
|
@ -839,7 +842,12 @@ Class SilverBullet : SWWMWeapon
|
|||
invoker.chambered = (invoker.clipcount>0);
|
||||
invoker.clipcount = max(0,invoker.clipcount-1);
|
||||
}
|
||||
TNT1 A 2 A_StartSound("silverbullet/boltclose",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
TNT1 A 2
|
||||
{
|
||||
A_QuakeEx(1.2,1.2,1.2,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.65);
|
||||
A_BumpFOV(.98);
|
||||
A_StartSound("silverbullet/boltclose",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
TNT1 A 20 A_StartSound("silverbullet/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
Goto ZoomReady;
|
||||
DoCock:
|
||||
|
|
@ -848,6 +856,8 @@ Class SilverBullet : SWWMWeapon
|
|||
XZW3 AB 2;
|
||||
XZW3 C 2
|
||||
{
|
||||
A_QuakeEx(.5,.5,.5,6,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.4);
|
||||
A_BumpFOV(.99);
|
||||
A_StartSound("silverbullet/boltopen",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
if ( invoker.chambered )
|
||||
{
|
||||
|
|
@ -862,7 +872,12 @@ Class SilverBullet : SWWMWeapon
|
|||
invoker.clipcount = max(0,invoker.clipcount-1);
|
||||
}
|
||||
XZW3 DEFG 2;
|
||||
XZW3 H 2 A_StartSound("silverbullet/boltclose",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW3 H 2
|
||||
{
|
||||
A_QuakeEx(1.2,1.2,1.2,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.65);
|
||||
A_BumpFOV(.98);
|
||||
A_StartSound("silverbullet/boltclose",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW3 I 2 A_StartSound("silverbullet/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW3 JKLMNOPQR 2;
|
||||
Goto Ready;
|
||||
|
|
@ -961,7 +976,13 @@ Class SilverBullet : SWWMWeapon
|
|||
A_ChangeModel("",1,"","",4,"models",String.Format("SilverbulletAmmo%s.png",(invoker.clipcount<=0)?"_Empty":""),CMDL_USESURFACESKIN,-1);
|
||||
}
|
||||
XZW4 DEFGHI 2;
|
||||
XZW4 J 2 A_StartSound("silverbullet/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW4 J 2
|
||||
{
|
||||
A_BumpView(-2);
|
||||
A_BumpFOV(.92);
|
||||
A_QuakeEx(1.8,1.8,1.8,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.8);
|
||||
A_StartSound("silverbullet/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW4 KLMN 2;
|
||||
Goto Load;
|
||||
Load:
|
||||
|
|
@ -974,6 +995,9 @@ Class SilverBullet : SWWMWeapon
|
|||
XZW4 S 2
|
||||
{
|
||||
A_LoadMag();
|
||||
A_BumpView(-12);
|
||||
A_BumpFOV(.89);
|
||||
A_QuakeEx(2.6,2.6,2.6,12,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:1.2);
|
||||
A_StartSound("silverbullet/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
}
|
||||
XZW4 T 2 A_StartSound("silverbullet/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
|
|
@ -1021,12 +1045,17 @@ Class SilverBullet : SWWMWeapon
|
|||
A_StartSound("demolitionist/wswing",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
A_PlayerMelee();
|
||||
}
|
||||
XZW5 XYZ 3;
|
||||
XZW6 A 1 A_Parry(9);
|
||||
XZW6 BC 1;
|
||||
XZW5 XYZ 3 A_BumpAngle(-1,3);
|
||||
XZW6 A 1
|
||||
{
|
||||
A_BumpFOV(.94);
|
||||
A_QuakeEx(1.6,1.6,1.6,8,0,15,"",QF_RELATIVE|QF_SCALEDOWN|QF_3D,rollIntensity:.65);
|
||||
A_Parry(9);
|
||||
}
|
||||
XZW6 BC 1 A_BumpAngle(6);
|
||||
XZW6 D 1 A_Melee(90,"demolitionist/whitl",1.6,2.,2.,MELEE_Wider);
|
||||
XZW6 EF 1;
|
||||
XZW6 GHI 2;
|
||||
XZW6 EF 1 A_BumpAngle(4);
|
||||
XZW6 GHI 2 A_BumpAngle(1,2);
|
||||
XZW6 J 3 A_StartSound("silverbullet/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW6 KLMNO 3;
|
||||
XZW6 PQR 2;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue