1.2 update, w/ GZDoom 4.9 stuff:
- Customizable player skins here too.
- Integrated re-skin add-ons ("Old Sounds" is still separate).
- The usual fixes and optimizations.
- All weapons are now left-handed, where possible.
This commit is contained in:
parent
5346b420e3
commit
a21aa43f35
1485 changed files with 1157 additions and 380 deletions
|
|
@ -5,20 +5,14 @@ Class BCasing : UTCasing
|
|||
BounceSound "automag/casing";
|
||||
}
|
||||
}
|
||||
Class BCasing2 : UTCasing
|
||||
{
|
||||
Default
|
||||
{
|
||||
BounceSound "automag/casing";
|
||||
}
|
||||
}
|
||||
|
||||
Class Betamag : UnrealWeapon
|
||||
{
|
||||
bool SlaveActive, SlaveDown, SlaveAltFire, SlaveWhip, SlaveSpin;
|
||||
int SlaveRefire;
|
||||
double AltAccuracy;
|
||||
|
||||
int OldSkin;
|
||||
|
||||
override bool TryPickup( in out Actor toucher )
|
||||
{
|
||||
if ( !sting_proto ) return false; // not allowed
|
||||
|
|
@ -27,6 +21,45 @@ Class Betamag : UnrealWeapon
|
|||
override void Tick()
|
||||
{
|
||||
Super.Tick();
|
||||
switch ( sting_altbetamag )
|
||||
{
|
||||
case 1:
|
||||
if ( OldSkin != 1 )
|
||||
{
|
||||
A_ChangeModel("",1,"","",1,"models","Autom1_.png");
|
||||
A_ChangeModel("",0,"","",0,"models","Autom1.png",CMDL_USESURFACESKIN);
|
||||
A_ChangeModel("",2,"","",0,"models","Autom1.png",CMDL_USESURFACESKIN);
|
||||
}
|
||||
OldSkin = 1;
|
||||
break;
|
||||
case 2:
|
||||
if ( OldSkin != 2 )
|
||||
{
|
||||
A_ChangeModel("",1,"","",1,"models","AutoHand1_.png");
|
||||
A_ChangeModel("",0,"","",0,"models","AutoHand1.png",CMDL_USESURFACESKIN);
|
||||
A_ChangeModel("",2,"","",0,"models","Autom1.png",CMDL_USESURFACESKIN);
|
||||
}
|
||||
OldSkin = 2;
|
||||
break;
|
||||
case 3:
|
||||
if ( OldSkin != 3 )
|
||||
{
|
||||
A_ChangeModel("",1,"","",1,"models","Autom1_.png");
|
||||
A_ChangeModel("",0,"","",0,"models","Autom1.png",CMDL_USESURFACESKIN);
|
||||
A_ChangeModel("",2,"","",0,"models","AutoHand1.png",CMDL_USESURFACESKIN);
|
||||
}
|
||||
OldSkin = 2;
|
||||
break;
|
||||
case 0:
|
||||
if ( OldSkin != 0 )
|
||||
{
|
||||
A_ChangeModel("",1,"","",1,"models","AutoHand1_.png");
|
||||
A_ChangeModel("",0,"","",0,"models","AutoHand1.png",CMDL_USESURFACESKIN);
|
||||
A_ChangeModel("",2,"","",0,"models","AutoHand1.png",CMDL_USESURFACESKIN);
|
||||
}
|
||||
OldSkin = 0;
|
||||
break;
|
||||
}
|
||||
if ( sting_protomags && (MaxAmount <= 1) ) MaxAmount = 2;
|
||||
else if ( !sting_protomags && (MaxAmount > 1) ) MaxAmount = 1;
|
||||
if ( Owner && !sting_protomags && (Amount > 1) )
|
||||
|
|
@ -233,13 +266,13 @@ Class Betamag : UnrealWeapon
|
|||
Vector3 x, y, z, x2, y2, z2;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x);
|
||||
int ydir = slave?-1:1;
|
||||
int ydir = slave?1:-1;
|
||||
if ( alt ) origin = level.Vec3Offset(origin,-z*2.5+ydir*y*1.5);
|
||||
else origin = level.Vec3Offset(origin,-z*1.5+ydir*y*2);
|
||||
double a = FRandom[Betamag](0,360), s = FRandom[Betamag](0,alt?invoker.altaccuracy:0.);
|
||||
if ( invoker.Amount > 1 ) s = s*2.+FRandom[Betamag](0,0.01);
|
||||
[x2, y2, z2] = dt_CoordUtil.GetAxes(BulletSlope(),angle,roll);
|
||||
Vector3 dir = (x2+y2*cos(a)*s+z2*sin(a)*s).unit();
|
||||
Vector3 dir = dt_Utility.ConeSpread(x2,y2,z2,a,s);
|
||||
FLineTraceData d;
|
||||
LineTrace(atan2(dir.y,dir.x),10000,asin(-dir.z),TRF_ABSPOSITION,origin.z,origin.x,origin.y,d);
|
||||
UTBulletTrail.DoTrail(self,origin,dir,10000,int((invoker.Amount+alt)**2));
|
||||
|
|
@ -294,7 +327,9 @@ Class Betamag : UnrealWeapon
|
|||
s.alpha *= 0.5;
|
||||
}
|
||||
origin = level.Vec3Offset(origin,x*5+ydir*y*8-z*2);
|
||||
let c = Spawn(slave?"BCasing2":"BCasing",origin);
|
||||
let c = Spawn("BCasing",origin);
|
||||
if ( !slave && ((invoker.OldSkin == 1) || (invoker.OldSkin == 3)) ) c.A_ChangeModel("",0,"","",0,"models","Autom1.png");
|
||||
else if ( slave && ((invoker.OldSkin == 1) || (invoker.OldSkin == 2)) ) c.A_ChangeModel("",0,"","",0,"models","Autom1.png");
|
||||
c.angle = angle;
|
||||
c.pitch = pitch;
|
||||
c.vel = x*FRandom[Junk](-1.5,1.5)+y*ydir*FRandom[Junk](2,4)+z*FRandom[Junk](2,3);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue