1.3 update, cleaning up and GZDoom 4.11 features.

This commit is contained in:
Marisa the Magician 2023-08-25 23:45:52 +02:00
commit ac4c53b3ef
21 changed files with 279 additions and 351 deletions

View file

@ -107,9 +107,7 @@ Class ViewPulseSpark : PulseSpark
Destroy();
return;
}
Vector3 x, y, z;
[x, y, z] = dt_Utility.GetAxes(target.angle,target.pitch,target.roll);
Vector3 origin = level.Vec3Offset(target.Vec2OffsetZ(0,0,target.player.viewz),x*ofs.x+y*ofs.y+z*ofs.z);
Vector3 origin = dt_Utility.GetFireOffset(target,ofs.x,ofs.y,ofs.z);
SetOrigin(origin,true);
bInvisible = (players[consoleplayer].camera != target);
if ( isFrozen() ) return;
@ -536,13 +534,9 @@ Class StarterBolt : PulseBolt
Destroy();
return;
}
Vector3 x, y, z, origin;
Vector3 origin;
bRELATIVETOFLOOR = (target.pos.z <= target.floorz); // hack, but kinda works
if ( target.player )
{
[x, y, z] = dt_Utility.GetAxes(target.angle,target.pitch,target.roll);
origin = level.Vec3Offset(target.Vec2OffsetZ(0,0,target.player.viewz),8*x+4.1*y-2.7*z);
}
if ( target.player ) origin = dt_Utility.GetFireOffset(target,8,4.1,-2.7);
else origin = target.Vec3Offset(0,0,target.missileheight);
SetOrigin(origin,true);
A_SetAngle(target.angle);
@ -677,9 +671,7 @@ Class PulseGun : UTWeapon
invoker.FireEffect();
UTMainHandler.DoFlash(self,Color(32,128,255,128),1);
A_AlertMonsters();
Vector3 x, y, z;
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+4.1*y-2.7*z);
Vector3 origin = dt_Utility.GetFireOffset(self,10,4.1,-2.7);
for ( int i=0; i<4; i++ )
{
let s = Spawn("UTViewSmoke",origin);
@ -743,8 +735,8 @@ Class PulseGun : UTWeapon
A_OverlayRenderstyle(-2,STYLE_Add);
Vector3 x, y, z;
double a;
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+3*y-1.8*z);
[x, y, z] = dt_Utility.GetPlayerAxes(self);
Vector3 origin = dt_Utility.GetFireOffset(self,10,3,-1.8);
origin = level.Vec3Offset(origin,dt_Utility.CircleOffset(y,z,invoker.sangle,2));
invoker.sangle += 100;
Actor p = Spawn("PulseBall",origin);
@ -775,9 +767,7 @@ Class PulseGun : UTWeapon
{
invoker.special1 = 0;
A_StartSound("pulse/bolt",CHAN_WEAPON,CHANF_LOOPING);
Vector3 x, y, z, origin;
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+4.1*y-2.7*z);
Vector3 origin = dt_Utility.GetFireOffset(self,10,4.1,-2.7);
invoker.beam = Spawn("StarterBolt",origin);
invoker.beam.angle = angle;
invoker.beam.pitch = BulletSlope();
@ -818,6 +808,7 @@ Class PulseGun : UTWeapon
PulseGun.ClipCount 50;
UTWeapon.DropAmmo 15;
UTWeapon.NameColor "80 FF 80";
UTWeapon.BobDamping .4;
}
States
{
@ -901,8 +892,8 @@ Class PulseGun : UTWeapon
PGR2 A 1
{
Vector3 x, y, z, origin;
[x,y,z] = dt_Utility.GetAxes(angle,pitch,roll);
origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),x*4.-y*6.-z*8.);
[x,y,z] = dt_Utility.GetPlayerAxes(self);
origin = dt_Utility.GetFireOffset(self,4,-6,-8);
let c = Spawn("PulseMag",origin);
c.angle = angle;
c.pitch = pitch;