1.1.3 mini-update:

- Propagate swingers removal from DT.
 - Updated patron credits.
This commit is contained in:
Marisa the Magician 2021-01-24 14:33:00 +01:00
commit ff8d145a2b
24 changed files with 32 additions and 191 deletions

View file

@ -1,7 +1,6 @@
# DOOMREAL
The Unreal 1 counterpart to Doom Tournament. Adds Unreal 1 weapons and items
(including dummied out stuff and others).
The Unreal 1 counterpart to Doom Tournament. Adds Unreal 1 weapons and items (including dummied out stuff and others).
This mod requires GZDoom 4.3 or later, and runs on top of Doom Tournament.
@ -73,21 +72,15 @@ This mod requires GZDoom 4.3 or later, and runs on top of Doom Tournament.
## In progress
- N/A, this is the 1.2.1 release.
- N/A, this is the 1.1.3 release.
## Planned
- Shifted to a 1.2 update:
- Extension to the Translator so it can show item descriptions and whatnot
when picking them up. Give it some usability for normal gameplay. Could
eventually extend it further to make it more like Serious Sam's NETRICSA.
- Extension to the Translator so it can show item descriptions and whatnot when picking them up. Give it some usability for normal gameplay. Could eventually extend it further to make it more like Serious Sam's NETRICSA.
- Impaler "slice" animation for melee alt.
- Alternate flamethrower secondary that behaves more like the Unreal Bible
describes (unlit blobs at a rate of 4 per second that catch on fire with
explosions/lava/etc).
- Alternate Impaler primary that follows the Bible (laser shots from the
crystal), shifts crystal shooting to pressing both buttons at once.
- Alternate flamethrower secondary that behaves more like the Unreal Bible describes (unlit blobs at a rate of 4 per second that catch on fire with explosions/lava/etc).
- Alternate Impaler primary that follows the Bible (laser shots from the crystal), shifts crystal shooting to pressing both buttons at once.
- Actual Bonesaw?
- Implement ASMD behavior described in the Unreal novels (highly destructive
green beam that bounces off mirrors and water).
- Implement ASMD behavior described in the Unreal novels (highly destructive green beam that bounces off mirrors and water).
- Redo Quadshot animations (including partial reloads).

View file

@ -82,11 +82,13 @@ OptionMenu "UnrealCreditsMenu"
StaticText "Epic Games, id Software, Bethesda Softworks"
StaticText " "
StaticText "$STING_CPATRON", "White"
StaticText "Christian Grab, john, Alexa Jones-Gonzales,"
StaticText "Jonas Höglund, Valerie Thiessen, Corey Hectus,"
StaticText "dac, Pietro Gagliardi, Artem Bashev,"
StaticText "Xada Xephron, Zard1084, NekoMithos,"
StaticText "Max Zeal, m8f, 3d0xp0xy"
StaticText "Snacks, Artem Bashev, john,"
StaticText "Jonas Höglund, Lilian Lamp, Valerie Thiessen,"
StaticText "Corey Hectus, Dac, Pietro Gagliardi, Xada Xephron,"
StaticText "Alexa Jones-Gonzales, John, NekoMithos,"
StaticText "bouncytem, Figo, Holly_Rook,"
StaticText "Namsan, YaGirlJuniper, Ashley Lambert,"
StaticText "LordMisfit, m8f, 3d0xp0xy"
StaticText " "
StaticText "$STING_CTHANK", "White"
StaticText "KynikossDragonn, Raffine52, The Cutting Room Floor"

View file

@ -559,12 +559,8 @@ Class ASMDBeam : Actor
if ( t.Results.HitActor is 'ASMDHitbox' )
{
BeamExplode(mult>1.5);
if ( target )
{
if ( !sv_infiniteammo && !target.FindInventory('PowerInfiniteAmmo',true) )
if ( target && !sv_infiniteammo && !target.FindInventory('PowerInfiniteAmmo',true) )
target.TakeInventory('ASMDAmmo',2);
UTMainHandler.DoSwing(target,(FRandom[ASMD](-0.1,-0.6),FRandom[ASMD](-0.1,0.5)),10,-2,3,SWING_Spring,3,6);
}
let b = t.Results.HitActor.target;
b.bAMBUSH = true;
b.ExplodeMissile();
@ -687,7 +683,6 @@ Class ASMD : UnrealWeapon
A_OverlayFlags(PSP_FLASH,PSPF_RenderStyle,true);
A_OverlayRenderstyle(PSP_FLASH,STYLE_Add);
UTMainHandler.DoFlash(self,Color(80,64,32,255),1);
UTMainHandler.DoSwing(self,(FRandom[ASMD](-0.1,-0.6),FRandom[ASMD](-0.1,0.5)),2,-0.3,3,SWING_Spring,0,4);
if ( !Dampener.Active(self) ) A_AlertMonsters();
A_QuakeEx(1,1,1,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
Vector3 x, y, z;
@ -719,7 +714,6 @@ Class ASMD : UnrealWeapon
A_OverlayFlags(PSP_FLASH,PSPF_RenderStyle,true);
A_OverlayRenderstyle(PSP_FLASH,STYLE_Add);
UTMainHandler.DoFlash(self,Color(80,64,32,255),1);
UTMainHandler.DoSwing(self,(FRandom[ASMD](-0.1,-0.6),FRandom[ASMD](-0.1,0.5)),3,-0.4,3,SWING_Spring,0,4);
if ( !Dampener.Active(self) ) A_AlertMonsters();
A_QuakeEx(1,1,1,8,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
Vector3 x, y, z;

View file

@ -182,7 +182,6 @@ Class Automag : UnrealWeapon
else A_Overlay(-3,"LeftMuzzleFlash");
A_OverlayFlags(-3,PSPF_RENDERSTYLE|PSPF_FORCESTYLE,true);
A_OverlayRenderstyle(-3,STYLE_Add);
UTMainHandler.DoSwing(self,(FRandom[Automag](0.5,0.2),FRandom[Automag](-0.3,0.2)),2,0.5,1,SWING_Spring,0,2);
}
else
{
@ -190,7 +189,6 @@ Class Automag : UnrealWeapon
else A_Overlay(-2,"MuzzleFlash");
A_OverlayFlags(-2,PSPF_RENDERSTYLE|PSPF_FORCESTYLE,true);
A_OverlayRenderstyle(-2,STYLE_Add);
UTMainHandler.DoSwing(self,(FRandom[Automag](-0.2,-0.5),FRandom[Automag](-0.3,0.2)),2,0,1,SWING_Spring,0,2);
}
Vector3 x, y, z, x2, y2, z2;
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);

View file

@ -222,7 +222,6 @@ Class Betamag : UnrealWeapon
else A_Overlay(-3,"LeftMuzzleFlash");
A_OverlayFlags(-3,PSPF_RENDERSTYLE|PSPF_FORCESTYLE,true);
A_OverlayRenderstyle(-3,STYLE_Add);
UTMainHandler.DoSwing(self,(FRandom[Betamag](0.5,0.2),FRandom[Betamag](-0.3,0.2)),2,0,1,SWING_Spring,0,2);
}
else
{
@ -230,7 +229,6 @@ Class Betamag : UnrealWeapon
else A_Overlay(-2,"MuzzleFlash");
A_OverlayFlags(-2,PSPF_RENDERSTYLE|PSPF_FORCESTYLE,true);
A_OverlayRenderstyle(-2,STYLE_Add);
UTMainHandler.DoSwing(self,(FRandom[Betamag](-0.2,-0.5),FRandom[Betamag](-0.3,0.2)),2,0,1,SWING_Spring,0,2);
}
Vector3 x, y, z, x2, y2, z2;
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
@ -502,20 +500,14 @@ Class Betamag : UnrealWeapon
{
A_Overlay(-9999,null);
invoker.slavewhip = true;
UTMainHandler.DoSwing(self,(FRandom[Betamag](-0.5,-0.4),FRandom[Betamag](0.2,0.3)),4,0.3,8,SWING_Spring,5);
}
AUTW ABCDE 2;
AUTW F 0
{
if ( self is 'UTPlayer' ) UTPlayer(self).PlayAttacking3();
A_StartSound("betamag/whip",CHAN_WEAPON,CHANF_OVERLAP);
UTMainHandler.DoSwing(self,(FRandom[Betamag](-0.3,-0.2),FRandom[Betamag](-0.8,-0.5)),7,-1,8,SWING_Spring,2,0.5);
}
AUTW FGHIJ 2;
AUTW K 0
{
UTMainHandler.DoSwing(self,(FRandom[Betamag](0.2,0.3),FRandom[Betamag](0.8,0.5)),3,0.5,6,SWING_Spring,3,3);
}
AUTW KLM 1;
AUTW N 0 A_BetamagWhip();
AUTW NOPQR 1;
@ -533,7 +525,6 @@ Class Betamag : UnrealWeapon
if ( !((invoker.Ammo1.Amount<=0) && (player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK))) && !(player.cmd.buttons&BT_RELOAD) ) return ResolveState("LeftIdle");
invoker.slavewhip = false;
A_Overlay(-9998,null);
UTMainHandler.DoSwing(self,(FRandom[Betamag](0.4,0.5),FRandom[Betamag](0.2,0.3)),4,0.3,8,SWING_Spring,5);
return ResolveState(null);
}
2UTW ABCDE 2;
@ -541,13 +532,8 @@ Class Betamag : UnrealWeapon
{
if ( self is 'UTPlayer' ) UTPlayer(self).PlayAttacking3();
A_StartSound("betamag/whip",CHAN_LEFTWEAPON,CHANF_OVERLAP);
UTMainHandler.DoSwing(self,(FRandom[Betamag](0.2,0.3),FRandom[Betamag](-0.8,-0.5)),7,-1,8,SWING_Spring,2,0.5);
}
2UTW FGHIJ 2;
2UTW K 0
{
UTMainHandler.DoSwing(self,(FRandom[Betamag](-0.3,-0.2),FRandom[Betamag](0.8,0.5)),3,0.5,6,SWING_Spring,3,3);
}
2UTW KLM 1;
2UTW N 0 A_BetamagWhip(true);
2UTW NOPQR 1;

View file

@ -327,8 +327,6 @@ Class BigGun : UnrealWeapon
invoker.FireEffect();
UTMainHandler.DoFlash(self,Color(32,255,128,0),1);
A_QuakeEx(2,2,2,3,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollintensity:0.12);
for ( int i=0; i<6; i++ )
UTMainHandler.DoSwing(self,(FRandom[BigGun](-0.04,-0.2),FRandom[BigGun](-0.2,0.2)),FRandom[BigGun](6,9),FRandom[BigGun](-2,-3),Random[BigGun](2,4),SWING_Spring,Random[BigGun](3,4),FRandom[BigGun](1.5,2.3));
Vector3 x, y, z, x2, y2, z2;
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
vel -= x*(player.onground?9.5:2.5);
@ -452,13 +450,8 @@ Class BigGun : UnrealWeapon
BIGS A 0
{
invoker.clipout = false;
UTMainHandler.DoSwing(self,(FRandom[BigGun](-0.3,-0.2),FRandom[BigGun](0.4,0.5)),3,0,6,SWING_Spring,2,1.8);
}
BIGS ABC 2 A_WeaponReady(WRF_NOFIRE);
BIGS D 0
{
UTMainHandler.DoSwing(self,(FRandom[BigGun](0.2,0.3),FRandom[BigGun](-0.8,-1.2)),3,0,6,SWING_Spring,2,2.0);
}
BIGS DEFGHI 2 A_WeaponReady(WRF_NOFIRE);
Goto Idle;
Dummy:
@ -471,30 +464,17 @@ Class BigGun : UnrealWeapon
A_WeaponReady(WRF_ALLOWRELOAD);
else A_WeaponReady();
}
} Wait;
}
Wait;
Idle:
BIGI A 0 A_Overlay(-9999,"Dummy");
BIGI A 20 A_Jump(80,"Twiddle1","Twiddle1","Twiddle2");
Wait;
Twiddle1:
BIGW A 3
{
UTMainHandler.DoSwing(self,(FRandom[BigGun](-0.1,-0.15),FRandom[BigGun](0.2,0.3)),2,0,12,SWING_Spring,5,2);
}
BIGW BCDEFGHIJKLMNO 3;
BIGW ABCDEFGHIJKLMNO 3;
Goto Idle;
Twiddle2:
BIGT A 2
{
UTMainHandler.DoSwing(self,(FRandom[BigGun](-0.1,-0.15),FRandom[BigGun](0.2,0.3)),3,0,6,SWING_Spring,5,2);
UTMainHandler.DoSwing(self,(FRandom[BigGun](-0.1,-0.15),FRandom[BigGun](-0.4,-0.6)),4,0,12,SWING_Spring,6,1.4);
}
BIGT BCDEFGHIJKLMNOP 2;
BIGT Q 2
{
UTMainHandler.DoSwing(self,(FRandom[BigGun](-0.15,-0.1),FRandom[BigGun](0.4,0.5)),3,0.5,6,SWING_Spring,2,1.5);
}
BIGT RSTUVWXY 2;
BIGT ABCDEFGHIJKLMNOPQRSTUVWXY 2;
Goto Idle;
Fire:
BIGF A 0
@ -544,12 +524,10 @@ Class BigGun : UnrealWeapon
{
A_ClearRefire();
A_Overlay(-9999,"Null");
UTMainHandler.DoSwing(self,(FRandom[BigGun](0.7,0.3),FRandom[BigGun](0.4,0.3)),3,0.2,10,SWING_Spring,70,0.8);
}
BIGR ABCDEFGHIJKL 2;
BIGR M 2
{
UTMainHandler.DoSwing(self,(FRandom[BigGun](0.3,0.4),FRandom[BigGun](0.6,0.8)),6,-1,3,SWING_Spring,2,3);
invoker.clipout = true;
A_QuakeEx(2,2,2,5,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollintensity:0.18);
A_StartSound("big/punch",CHAN_WEAPONMISC,CHANF_OVERLAP,Dampener.Active(self)?.3:1.);
@ -570,7 +548,6 @@ Class BigGun : UnrealWeapon
BIR2 ABCDEF 2;
BIR2 G 2
{
UTMainHandler.DoSwing(self,(FRandom[BigGun](0.2,0.3),FRandom[BigGun](0.3,0.5)),6,-1,3,SWING_Spring,2,3);
invoker.clipout = false;
let aadd = min(invoker.ammo1.amount,invoker.default.clipcount-invoker.clipcount);
invoker.clipcount += aadd;
@ -584,31 +561,13 @@ Class BigGun : UnrealWeapon
BIR2 M 2
{
invoker.PlayUpSound(self);
UTMainHandler.DoSwing(self,(FRandom[BigGun](-0.3,-0.2),FRandom[BigGun](0.4,0.5)),3,0.5,7,SWING_Spring,3,1.5);
}
BIR2 NOP 2;
BIR2 Q 2
{
UTMainHandler.DoSwing(self,(FRandom[BigGun](0.2,0.3),FRandom[BigGun](-0.8,-1.2)),3,-0.5,7,SWING_Spring,3,1.5);
}
BIR2 RSTUVWXYZ[\] 2;
BIR3 A 2
{
UTMainHandler.DoSwing(self,(FRandom[BigGun](-0.3,-0.2),FRandom[BigGun](0.4,0.5)),2,-0.5,3,SWING_Spring,1,2.);
}
BIR3 BCDEF 2;
BIR2 NOPQRSTUVWXYZ[\] 2;
BIR3 ABCDEF 2;
Goto Idle;
Deselect:
BIGD A 1
{
A_Overlay(-9999,"Null");
UTMainHandler.DoSwing(self,(FRandom[BigGun](0.2,0.3),FRandom[BigGun](-0.8,-1.2)),3,0,6,SWING_Spring,2,1.5);
}
BIGD BC 1;
BIGD D 1
{
UTMainHandler.DoSwing(self,(FRandom[BigGun](-0.3,-0.2),FRandom[BigGun](0.4,0.5)),3,0,6,SWING_Spring,2,1.5); }
BIGD EFGHIJK 1;
BIGD A 1 A_Overlay(-9999,"Null");
BIGD BCDEFGHIJK 1;
BIGD K 1 A_Lower(int.max);
Wait;
MuzzleFlash:

View file

@ -88,7 +88,6 @@ Class Bonesaw : UnrealWeapon
}
action void A_Slice()
{
UTMainHandler.DoSwing(self,(FRandom[Bonesaw](-1,1),FRandom[Bonesaw](-1,1)),0.3,-0.2,2,SWING_Spring,0,2);
invoker.special1++;
Vector3 x, y, z, origin;
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
@ -216,13 +215,8 @@ Class Bonesaw : UnrealWeapon
{
A_Overlay(-9999,"Null");
A_StartSound("bonesaw/claw",CHAN_WEAPON,CHANF_OVERLAP,Dampener.Active(self)?.1:1.);
UTMainHandler.DoSwing(self,(FRandom[Bonesaw](-0.1,0.1),FRandom[Bonesaw](-0.2,-0.3)),4,0.2,8,SWING_Spring,2,2.);
}
CSWA ABC 2;
CSWA D 0
{
UTMainHandler.DoSwing(self,(FRandom[Bonesaw](-0.1,0.1),FRandom[Bonesaw](0.8,0.5)),6,-1,8,SWING_Spring,2,1.2);
}
CSWA DEF 1;
CSWA G 0 A_Clamp();
CSWA GH 1;

View file

@ -547,7 +547,6 @@ Class DispersionPistol : UnrealWeapon
}
A_OverlayFlags(PSP_FLASH,PSPF_RenderStyle,true);
A_OverlayRenderstyle(PSP_FLASH,STYLE_Add);
UTMainHandler.DoSwing(self,(FRandom[DPistol](-0.1,-0.3),FRandom[DPistol](-0.1,0.3)),2+invoker.upgradelevel*0.5,-0.3,3,SWING_Spring,0,3+invoker.upgradelevel);
if ( !Dampener.Active(self) ) A_AlertMonsters(gameinfo.gametype&GAME_Strife?120:0);
A_QuakeEx(2,2,2,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
Vector3 x, y, z;
@ -621,7 +620,6 @@ Class DispersionPistol : UnrealWeapon
A_OverlayFlags(PSP_FLASH,PSPF_RenderStyle,true);
A_OverlayRenderstyle(PSP_FLASH,STYLE_Add);
double ss = 0.5+invoker.chargesize*0.3;
UTMainHandler.DoSwing(self,(FRandom[DPistol](-0.1,-0.3)*ss,FRandom[DPistol](-0.1,0.3))*ss,2+invoker.upgradelevel*0.5,-0.3,3,SWING_Spring,0,3+invoker.upgradelevel);
if ( !Dampener.Active(self) ) A_AlertMonsters(gameinfo.gametype&GAME_Strife?120:0);
int qs = int(1+invoker.chargesize*0.3);
A_QuakeEx(qs,qs,qs,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
@ -674,7 +672,6 @@ Class DispersionPistol : UnrealWeapon
if ( !weap ) return ResolveState(null);
if ( !(player.cmd.buttons&BT_ALTATTACK) ) return ResolveState(next);
DefaultAmmo(weap.Ammo1).rechargephase = 0;
UTMainHandler.DoSwing(self,(FRandom[DPistol](-1,1),FRandom[DPistol](-1,1)),0.02*invoker.chargesize,0,2,SWING_Spring);
A_WeaponOffset(FRandom[DPistol](-1,1)*1.2*invoker.chargesize,32+FRandom[DPistol](-1,1)*1.2*invoker.chargesize);
A_SoundVolume(CHAN_WEAPONMISC,Dampener.Active(self)?.4:1.);
if ( !Dampener.Active(self) ) A_AlertMonsters();

View file

@ -363,16 +363,8 @@ Class FlameGun : UnrealWeapon
A_StartSound(bAlt?"flamegun/alt":"flamegun/fire",CHAN_WEAPON,CHANF_OVERLAP,Dampener.Active(self)?.2:1.);
invoker.FireEffect();
UTMainHandler.DoFlash(self,Color(32,96,255,0),1);
if ( bAlt )
{
A_QuakeEx(2,2,2,6,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
UTMainHandler.DoSwing(self,(FRandom[FlameGun](-0.6,-0.5),FRandom[FlameGun](-0.3,0.3)),4,-1,5,SWING_Spring,3,2.5);
}
else
{
A_QuakeEx(1,1,1,2,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
UTMainHandler.DoSwing(self,(FRandom[FlameGun](-0.3,-0.2),FRandom[FlameGun](-0.2,0.2)),4,-1,3,SWING_Spring,2,2);
}
if ( bAlt ) A_QuakeEx(2,2,2,6,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
else A_QuakeEx(1,1,1,2,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
if ( !Dampener.Active(self) ) A_AlertMonsters();
Vector3 x, y, z, x2, y2, z2, dir;
double a, s;

View file

@ -211,7 +211,6 @@ Class SMiniGun : UnrealWeapon
for ( int i=0; i<(bAlt?4:1); i++ )
{
if ( bAlt && !weap.DepleteAmmo(weap.bAltFire,true,1) ) break;
UTMainHandler.DoSwing(self,basedir+(FRandom[SMini](-0.04,0.04),FRandom[SMini](-0.04,0.04)),FRandom[SMini](6,8),FRandom[SMini](-1,-2),Random[SMini](3,4),SWING_Spring,Random[SMini](3,4),FRandom[SMini](2.2,3.5));
int pos = bAlt?i:invoker.special1;
origin = level.Vec3Offset(origin,x*(!(pos%2)?-1.5:1.5)+y*(pos<2?1.5:-1.5));
double a = FRandom[Minigun](0,360), s = FRandom[Minigun](0,bAlt?0.12:0.03);
@ -264,15 +263,7 @@ Class SMiniGun : UnrealWeapon
SMIS A 1 A_Raise(int.max);
Wait;
Ready:
SMIS A 0
{
UTMainHandler.DoSwing(self,(FRandom[SMini](-0.3,-0.2),FRandom[SMini](0.4,0.5)),3,0,4,SWING_Spring,2,1.8);
}
SMIS ABC 2 A_WeaponReady(WRF_NOFIRE);
SMIS D 0
{
UTMainHandler.DoSwing(self,(FRandom[SMini](0.2,0.3),FRandom[SMini](-0.8,-1.2)),3,0,4,SWING_Spring,2,2.0);
}
SMIS DEFGHI 2 A_WeaponReady(WRF_NOFIRE);
Goto Idle;
Dummy:
@ -354,16 +345,8 @@ Class SMiniGun : UnrealWeapon
SMIR A 1;
Stop;
Deselect:
#### # 1
{
A_Overlay(-9999,"Null");
UTMainHandler.DoSwing(self,(FRandom[SMini](0.4,0.6),FRandom[SMini](-0.4,-0.2)),3,0,4,SWING_Spring,2,2.0);
}
#### # 1 A_Overlay(-9999,"Null");
SMID ABC 1;
SMID D 0
{
UTMainHandler.DoSwing(self,(FRandom[SMini](-0.3,-0.2),FRandom[SMini](0.4,0.5)),3,0,4,SWING_Spring,2,1.8);
}
SMID DEF 1;
SMID F 1 A_Lower(int.max);
Wait;

View file

@ -790,7 +790,6 @@ Class Impaler : UnrealWeapon
A_StartSound("impaler/fire",CHAN_WEAPON,CHANF_OVERLAP,Dampener.Active(self)?.1:1.);
invoker.FireEffect();
UTMainHandler.DoFlash(self,Color(16,224,64,255),1);
UTMainHandler.DoSwing(self,(FRandom[Impaler](-0.1,-0.2),FRandom[Impaler](-0.1,0.1)),4,-1.5,2,SWING_Spring,2,2);
if ( !Dampener.Active(self) ) A_AlertMonsters();
A_QuakeEx(1,1,1,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
Vector3 x, y, z;
@ -845,7 +844,6 @@ Class Impaler : UnrealWeapon
}
invoker.FireEffect();
UTMainHandler.DoFlash(self,Color(16,255,32,255),3);
UTMainHandler.DoSwing(self,(FRandom[Impaler](-1,1),FRandom[Impaler](-1,1)),0.05,0.05,8,SWING_Spring);
A_AlertMonsters();
Vector3 x, y, z;
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
@ -935,7 +933,6 @@ Class Impaler : UnrealWeapon
action void A_Stab()
{
invoker.FireEffect();
UTMainHandler.DoSwing(self,(FRandom[Impaler](-1,1),FRandom[Impaler](-1,1)),0.3,-0.2,2,SWING_Spring,0,2);
for ( int i=0; i<8; i++ ) if ( TryHit(angle+i*(45./16),15) || TryHit(angle-i*(45./16),15) ) return;
}
override void DoEffect()

View file

@ -957,7 +957,6 @@ Class UFlamethrower : UnrealWeapon
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+2.3*y-2.7*z);
Actor p = Spawn("UNapalmGlob",origin);
p.A_SetScale(0.5+invoker.chargesize/3.5);
UTMainHandler.DoSwing(self,(FRandom[FlameT](-0.6,-1.3),FRandom[FlameT](-0.9,-0.2)),1+invoker.chargesize*0.3,-0.1,3,SWING_Spring,3,2);
p.angle = angle;
p.pitch = BulletSlope();
p.vel = (cos(p.angle)*cos(p.pitch),sin(p.angle)*cos(p.pitch),-sin(p.pitch))*p.speed;

View file

@ -147,7 +147,6 @@ Class OLSMP : UnrealWeapon
A_Overlay(-2,"MuzzleFlash");
A_OverlayFlags(-2,PSPF_RENDERSTYLE|PSPF_FORCESTYLE,true);
A_OverlayRenderstyle(-2,STYLE_Add);
UTMainHandler.DoSwing(self,(FRandom[Automag](-2.,-5.)*invoker.altaccuracy,FRandom[Automag](-3.,2.)*invoker.altaccuracy),3,1,2,SWING_Spring,1,2);
Vector3 x, y, z, x2, y2, z2;
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
if ( alt )

View file

@ -526,16 +526,8 @@ Class Peacemaker : UnrealWeapon
PEMC # 1 A_CountUp(1);
Wait;
PEMF ABCD 2;
PEMF E 0
{
A_StartSound("peace/down",CHAN_WEAPONMISC,volume:.4);
UTMainHandler.DoSwing(self,(FRandom[Peace](-0.1,-0.04),FRandom[Peace](0.4,0.6)),3,0,7,SWING_Spring,3,0.8);
}
PEMF E 0 A_StartSound("peace/down",CHAN_WEAPONMISC,volume:.4);
PEMF EFG 2;
PEMF H 0
{
UTMainHandler.DoSwing(self,(FRandom[Peace](0.08,0.12),FRandom[Peace](-1.2,-0.9)),4,0,6,SWING_Spring,3,1.5);
}
PEMF HI 2; // hello
PEMF I -1 A_PeacemakerThrow();
Stop;
@ -544,16 +536,8 @@ Class Peacemaker : UnrealWeapon
PEMC # 1 A_CountUp(1);
Wait;
PEMF ABCD 2;
PEMF E 0
{
A_StartSound("peace/down",CHAN_WEAPONMISC,volume:.4);
UTMainHandler.DoSwing(self,(FRandom[Peace](-0.1,-0.04),FRandom[Peace](0.4,0.6)),3,0,7,SWING_Spring,3,0.8);
}
PEMF E 0 A_StartSound("peace/down",CHAN_WEAPONMISC,volume:.4);
PEMF EFG 2;
PEMF H 0
{
UTMainHandler.DoSwing(self,(FRandom[Peace](0.08,0.12),FRandom[Peace](-1.2,-0.9)),4,0,6,SWING_Spring,3,1.5);
}
PEMF HI 2; // howdy
PEMF I -1 A_PeacemakerThrow(true);
Stop;

View file

@ -261,8 +261,6 @@ Class QuadShot : UnrealWeapon
double spread = invoker.clipcount;
for ( int i=0; i<invoker.clipcount; i++ )
{
for ( int i=0; i<3; i++ )
UTMainHandler.DoSwing(self,(FRandom[Quadshot](-0.04,-0.2),FRandom[Quadshot](-0.2,0.2)),FRandom[Quadshot](6,8),FRandom[Quadshot](-1.,-1.5),Random[Quadshot](6,8),SWING_Spring,0,FRandom[Quadshot](1.8,2.4));
for ( int i=0; i<10; i++ )
{
a = FRandom[Quadshot](0,360);
@ -283,8 +281,6 @@ Class QuadShot : UnrealWeapon
{
A_QuakeEx(1,1,1,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.12);
A_StartSound("quadshot/fire",CHAN_WEAPON,CHANF_OVERLAP,!Dampener.Active(self)?1.:.2);
for ( int i=0; i<3; i++ )
UTMainHandler.DoSwing(self,(FRandom[Quadshot](-0.04,-0.2),FRandom[Quadshot](-0.2,0.2)),FRandom[Quadshot](5,7),FRandom[Quadshot](-1,-1.5),Random[Quadshot](3,6),SWING_Spring,0,FRandom[Quadshot](1.8,2.4));
for ( int i=0; i<10; i++ )
{
a = FRandom[Quadshot](0,360);

View file

@ -245,8 +245,6 @@ Class Razorjack : UnrealWeapon
UTMainHandler.DoFlash(self,Color(16,255,0,255),1);
A_AlertMonsters();
A_QuakeEx(1,1,1,5,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.08);
if ( bAlt ) UTMainHandler.DoSwing(self,(FRandom[Ripper](-0.6,-0.3),FRandom[Ripper](0.2,0.4)),1,-0.3,2,SWING_Spring,2,2);
else UTMainHandler.DoSwing(self,(FRandom[Ripper](-0.3,0.3),FRandom[Ripper](0.2,0.6)),1,-0.3,2,SWING_Spring,2,2);
Vector3 x, y, z;
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
Vector3 origin = Vec2OffsetZ(0,0,player.viewz);

View file

@ -124,17 +124,10 @@ Class URifle : UnrealWeapon
if ( alt ) A_StartSound("rifle/fire",CHAN_WEAPON,CHANF_OVERLAP,Dampener.Active(self)?.3:1.,pitch:FRandom[Sniper](0.9,1.1));
else A_StartSound("rifle/fire",CHAN_WEAPON,CHANF_OVERLAP,Dampener.Active(self)?.3:1.);
if ( !Dampener.Active(self) ) A_AlertMonsters();
if ( zoomed )
{
A_QuakeEx(1,1,1,2,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.09);
for ( int i=0; i<3; i++ )
UTMainHandler.DoSwing(self,(FRandom[Sniper](-0.3,0.05),FRandom[Sniper](-0.3,0.1)),2,-0.5,Random[Sniper](3,4),SWING_Spring,Random[Sniper](3,4),Random[Sniper](4,5));
}
if ( zoomed ) A_QuakeEx(1,1,1,2,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.09);
else
{
A_QuakeEx(2,2,2,3,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.12);
for ( int i=0; i<(alt?6:3); i++ )
UTMainHandler.DoSwing(self,(FRandom[Sniper](-0.3,0.05),FRandom[Sniper](-0.3,0.1)),4,-1,Random[Sniper](3,4),SWING_Spring,Random[Sniper](3,4),Random[Sniper](4,5));
A_Overlay(-2,"MuzzleFlash");
A_OverlayFlags(-2,PSPF_RENDERSTYLE|PSPF_FORCESTYLE,true);
A_OverlayRenderstyle(-2,STYLE_Add);

View file

@ -559,7 +559,6 @@ Class Stinger : UnrealWeapon
A_OverlayRenderstyle(PSP_FLASH,STYLE_Add);
invoker.FireEffect();
UTMainHandler.DoFlash(self,Color(16,0,64,255),1);
UTMainHandler.DoSwing(self,(FRandom[Stinger](-0.1,-0.2),FRandom[Stinger](-0.1,0.1)),4,-1.5,2,SWING_Spring,2,2);
if ( !Dampener.Active(self) ) A_AlertMonsters();
A_QuakeEx(1,1,1,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
Vector3 x, y, z;
@ -604,7 +603,6 @@ Class Stinger : UnrealWeapon
A_OverlayRenderstyle(PSP_FLASH,STYLE_Add);
invoker.FireEffect();
UTMainHandler.DoFlash(self,Color(16,0,64,255),1);
UTMainHandler.DoSwing(self,(FRandom[Stinger](-0.3,-0.8),FRandom[Stinger](-0.4,0.4)),4,-1,3,SWING_Spring,3,5);
if ( !Dampener.Active(self) ) A_AlertMonsters();
A_QuakeEx(1,1,1,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
Vector3 x, y, z;

View file

@ -360,7 +360,6 @@ Class Stunner : UnrealWeapon
double mult = Amplifier.GetMult(self,int(invoker.ChargeSize*50)+50);
invoker.FireEffect();
A_QuakeEx(1+int(0.5*invoker.chargesize),1+int(0.5*invoker.chargesize),1+int(0.5*invoker.chargesize),5+int(1.2*invoker.chargesize),0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.05+0.01*invoker.chargesize);
UTMainHandler.DoSwing(self,(FRandom[Stunner](-0.04,0.04),FRandom[Stunner](-0.9,-0.4)),1+invoker.chargesize*0.3,-0.1,3,SWING_Spring,3,2.5);
A_Overlay(-2,"Null");
Vector3 x, y, z;
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
@ -421,7 +420,6 @@ Class Stunner : UnrealWeapon
Weapon weap = Weapon(invoker);
if ( !weap ) return ResolveState(null);
StunnerAmmo(weap.Ammo1).rechargephase = 0;
UTMainHandler.DoSwing(self,(FRandom[Stunner](-1,1),FRandom[Stunner](-1,1)),0.02*invoker.chargesize,0,2,SWING_Spring);
A_WeaponOffset(FRandom[Stunner](-1,1)*1.2*invoker.chargesize,32+FRandom[Stunner](-1,1)*1.2*invoker.chargesize);
A_SoundVolume(CHAN_WEAPONMISC,Dampener.Active(self)?.15:1.);
if ( !Dampener.Active(self) && !(gameinfo.gametype&GAME_Strife) ) A_AlertMonsters();

View file

@ -623,13 +623,8 @@ Class UBioRifle : UnrealWeapon
{
p = Spawn("UBioGlob",origin);
p.A_SetScale(0.5+invoker.chargesize/3.5);
UTMainHandler.DoSwing(self,(FRandom[GES](-0.6,-1.3),FRandom[GES](-0.9,-0.2)),1+invoker.chargesize*0.3,-0.1,3,SWING_Spring,3,2);
}
else
{
p = Spawn("UBioGel",origin);
UTMainHandler.DoSwing(self,(FRandom[GES](-0.6,-1.3),FRandom[GES](-0.9,-0.2)),2,-0.5,2,SWING_Spring,2,2);
}
else p = Spawn("UBioGel",origin);
p.angle = angle;
p.pitch = BulletSlope();
p.vel = (cos(p.angle)*cos(p.pitch),sin(p.angle)*cos(p.pitch),-sin(p.pitch))*p.speed;

View file

@ -415,8 +415,6 @@ Class Eightball : UnrealWeapon
if ( self is 'UTPlayer' )
UTPlayer(self).PlayAttacking3();
A_QuakeEx(2+num,2+num,2+num,6+num,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1+num*0.05);
for ( int i=0; i<num; i++ )
UTMainHandler.DoSwing(self,(FRandom[Eightball](-0.8,-0.8),FRandom[Eightball](-0.5,0.5)),1,-0.2,Random[Eightball](3,4),SWING_Spring,Random[Eightball](2,5),Random[Eightball](2,4));
Vector3 x, y, z, x2, y2, z2;
double a, s;
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);

View file

@ -199,7 +199,6 @@ Class UFlakCannon : UnrealWeapon
A_OverlayRenderstyle(PSP_FLASH,STYLE_Add);
invoker.FireEffect();
UTMainHandler.DoFlash(self,Color(48,255,96,0),1);
UTMainHandler.DoSwing(self,(FRandom[Flak](-0.3,-0.8),FRandom[Flak](-0.5,0.5)),4,-1.5,2,SWING_Spring,2,2);
if ( !Dampener.Active(self) ) A_AlertMonsters();
A_QuakeEx(1,1,1,3,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.05);
Vector3 x, y, z;
@ -258,7 +257,6 @@ Class UFlakCannon : UnrealWeapon
A_OverlayRenderstyle(PSP_FLASH,STYLE_Add);
invoker.FireEffect();
UTMainHandler.DoFlash(self,Color(32,255,96,0),1);
UTMainHandler.DoSwing(self,(FRandom[Flak](-0.4,-0.8),FRandom[Flak](0.4,0.8)),4,-1,3,SWING_Spring,3,5);
if ( !Dampener.Active(self) ) A_AlertMonsters();
A_QuakeEx(2,2,2,6,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
Vector3 x, y, z;

View file

@ -44,16 +44,8 @@ Class UMinigun : UnrealWeapon
UTMainHandler.DoFlash(self,Color(32,255,255,0),1);
if ( !Dampener.Active(self) ) A_AlertMonsters();
A_SoundVolume(CHAN_WEAPON,Dampener.Active(self)?.1:1.);
if ( alt )
{
A_QuakeEx(2,2,2,8,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.12);
UTMainHandler.DoSwing(self,(FRandom[Minigun](-1,1),FRandom[Minigun](-1,1)),0.5,0,2,SWING_Spring,0,3);
}
else
{
A_QuakeEx(1,1,1,8,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.08);
UTMainHandler.DoSwing(self,(FRandom[Minigun](-1,1),FRandom[Minigun](-1,1)),0.3,0,2,SWING_Spring,0,3);
}
if ( alt ) A_QuakeEx(2,2,2,8,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.12);
else A_QuakeEx(1,1,1,8,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.08);
let l = Spawn("MinigunLight",pos);
l.target = self;
if ( !alt ) MinigunLight(l).cnt--;

View file

@ -155,7 +155,6 @@ Class UTranslocator : UnrealWeapon
if ( !weap ) return;
A_StartSound("telehand/throw",CHAN_WEAPON);
invoker.FireEffect();
UTMainHandler.DoSwing(self,(FRandom[Translocator](0.2,-0.4),FRandom[Translocator](0.2,-0.7)),2,-0.3,3,SWING_Spring,2,3);
Vector3 x, y, z;
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x-8*y-12*z);
@ -175,7 +174,6 @@ Class UTranslocator : UnrealWeapon
if ( !weap ) return;
A_StartSound("transloc/return",CHAN_WEAPON);
invoker.FireEffect();
UTMainHandler.DoSwing(self,(FRandom[Translocator](-0.2,-0.4),FRandom[Translocator](-0.2,0.7)),3,-1,2,SWING_Spring,2,2);
if ( invoker.module && invoker.module.bAMBUSH )
{
UTMainHandler.DoFlash(self,Color(255,255,255,255),50);