4.10 support:
- CORRECTPIXELSTRETCH where needed on models. - Replace CoordUtil.GetAxes with quaternion version.
This commit is contained in:
parent
46d7a67f3b
commit
e8b9a55378
36 changed files with 142 additions and 175 deletions
|
|
@ -8,10 +8,11 @@ Model "UTPlayerTBoss"
|
|||
SurfaceSkin 0 3 "Boss/boss4.png"
|
||||
SurfaceSkin 0 5 "GunPick1.png"
|
||||
Scale 0.23 0.23 0.23
|
||||
Offset 0 -5 29
|
||||
Offset 0 -5 24
|
||||
RollOffset -90
|
||||
AngleOffset -90
|
||||
IGNORETRANSLATION
|
||||
CORRECTPIXELSTRETCH
|
||||
// Still
|
||||
FrameIndex PLAY A 0 373
|
||||
FrameIndex PLAY B 0 374
|
||||
|
|
|
|||
|
|
@ -14,9 +14,10 @@ Model "UTChainsaw"
|
|||
Path "models"
|
||||
Model 1 "ChainSawPick_d.3d"
|
||||
Skin 1 "JChainSawPick1.png"
|
||||
Offset -10.5 -0.7 6
|
||||
Offset -10.5 -0.7 5
|
||||
Scale 0.14 0.14 0.14
|
||||
RollOffset -90
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex CSWP B 1 0
|
||||
|
||||
|
|
|
|||
|
|
@ -8,10 +8,11 @@ Model "UTPlayerTMale1"
|
|||
SurfaceSkin 0 3 "Commando/cmdo4.png"
|
||||
SurfaceSkin 0 5 "GunPick1.png"
|
||||
Scale 0.23 0.23 0.23
|
||||
Offset 0 -5 29
|
||||
Offset 0 -5 24
|
||||
RollOffset -90
|
||||
AngleOffset -90
|
||||
IGNORETRANSLATION
|
||||
CORRECTPIXELSTRETCH
|
||||
// Still
|
||||
FrameIndex PLAY A 0 373
|
||||
FrameIndex PLAY B 0 374
|
||||
|
|
|
|||
|
|
@ -5,7 +5,8 @@ Model "UTRocketAmmo"
|
|||
Skin 0 "JRocketPack1.png"
|
||||
Scale 0.072 0.072 0.072
|
||||
RollOffset -90
|
||||
ZOffset 7
|
||||
ZOffset 6
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex RPAK A 0 0
|
||||
}
|
||||
|
|
@ -15,9 +16,10 @@ Model "UTRocketAmmo2"
|
|||
Path "models"
|
||||
Model 0 "UTRocket_d.3d"
|
||||
Skin 0 "JuRocket1_.png"
|
||||
Offset 0 1.233 6
|
||||
Offset 0 1.233 5
|
||||
Scale 0.0822 0.0822 0.0822
|
||||
RollOffset -90
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex RCKT A 0 0
|
||||
}
|
||||
|
|
@ -31,6 +33,7 @@ Model "UTGrenade"
|
|||
Scale 0.0822 0.0822 0.0822
|
||||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
CORRECTPIXELSTRETCH
|
||||
AngleOffset 90
|
||||
|
||||
FrameIndex RCKT A 0 0
|
||||
|
|
@ -44,6 +47,7 @@ Model "UTRocket"
|
|||
Scale 0.0822 0.0822 0.0822
|
||||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
CORRECTPIXELSTRETCH
|
||||
AngleOffset 90
|
||||
|
||||
FrameIndex RCKT B 0 1
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@ Model "EnforcerMag"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
USEROTATIONCENTER
|
||||
Rotation-Center 0 0 1
|
||||
CORRECTPIXELSTRETCH
|
||||
Rotation-Center 0 0 .5
|
||||
|
||||
FrameIndex PCAS A 0 0
|
||||
}
|
||||
|
|
@ -36,7 +37,8 @@ Model "UTCasing"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
USEROTATIONCENTER
|
||||
Rotation-Center 0 0 1
|
||||
CORRECTPIXELSTRETCH
|
||||
Rotation-Center 0 0 .5
|
||||
|
||||
FrameIndex PCAS A 0 0
|
||||
}
|
||||
|
|
@ -50,6 +52,7 @@ Model "BulletImpact"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
DONTCULLBACKFACES
|
||||
CORRECTPIXELSTRETCH
|
||||
Skin 0 "Impact_a00.png"
|
||||
FrameIndex BIMP A 0 0
|
||||
Skin 0 "Impact_a01.png"
|
||||
|
|
|
|||
|
|
@ -7,10 +7,11 @@ Model "UTPlayerTFemale1"
|
|||
SurfaceSkin 0 2 "FCommando/cmdo4.png"
|
||||
SurfaceSkin 0 4 "GunPick1.png"
|
||||
Scale 0.23 0.23 0.23
|
||||
Offset -2.5 3 36
|
||||
Offset -2.5 3 30
|
||||
RollOffset -90
|
||||
AngleOffset -90
|
||||
IGNORETRANSLATION
|
||||
CORRECTPIXELSTRETCH
|
||||
// Still
|
||||
FrameIndex PLAY A 0 359
|
||||
FrameIndex PLAY B 0 360
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@ Model "FlakSlug"
|
|||
AngleOffset 180
|
||||
PitchOffset 90
|
||||
USEACTORPITCH
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex FSLG A 0 0
|
||||
}
|
||||
|
|
@ -43,7 +44,8 @@ Model "FlakChunk"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
USEROTATIONCENTER
|
||||
Rotation-Center 0 0 2
|
||||
CORRECTPIXELSTRETCH
|
||||
Rotation-Center 0 0 1
|
||||
|
||||
Skin 0 "chunk_a00.png"
|
||||
FrameIndex FCH1 A 0 0
|
||||
|
|
@ -80,7 +82,8 @@ Model "FlakChunk"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
USEROTATIONCENTER
|
||||
Rotation-Center 0 0 2
|
||||
CORRECTPIXELSTRETCH
|
||||
Rotation-Center 0 0 1
|
||||
|
||||
Skin 1 "chunk_a00.png"
|
||||
FrameIndex FCH2 A 1 0
|
||||
|
|
@ -117,7 +120,8 @@ Model "FlakChunk"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
USEROTATIONCENTER
|
||||
Rotation-Center 0 0 2
|
||||
CORRECTPIXELSTRETCH
|
||||
Rotation-Center 0 0 1
|
||||
|
||||
Skin 2 "chunk_a00.png"
|
||||
FrameIndex FCH3 A 2 0
|
||||
|
|
@ -154,7 +158,8 @@ Model "FlakChunk"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
USEROTATIONCENTER
|
||||
Rotation-Center 0 0 2
|
||||
CORRECTPIXELSTRETCH
|
||||
Rotation-Center 0 0 1
|
||||
|
||||
Skin 3 "chunk_a00.png"
|
||||
FrameIndex FCH4 A 3 0
|
||||
|
|
@ -193,7 +198,8 @@ Model "FlakMag"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
USEROTATIONCENTER
|
||||
Rotation-Center 0 0 1
|
||||
CORRECTPIXELSTRETCH
|
||||
Rotation-Center 0 0 .5
|
||||
|
||||
FrameIndex PCAS A 0 0
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,8 @@ Model "BioAmmo"
|
|||
Scale 0.08 0.08 0.08
|
||||
PitchOffset 180
|
||||
RollOffset 90
|
||||
ZOffset 4
|
||||
CORRECTPIXELSTRETCH
|
||||
ZOffset 3
|
||||
|
||||
FrameIndex BIOA A 0 0
|
||||
}
|
||||
|
|
@ -18,7 +19,8 @@ Model "BioAmmo2"
|
|||
Scale 0.08 0.08 0.08
|
||||
PitchOffset 180
|
||||
RollOffset 90
|
||||
ZOffset 4
|
||||
CORRECTPIXELSTRETCH
|
||||
ZOffset 3
|
||||
|
||||
FrameIndex BIOA A 0 0
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ Model "ImpactHammer"
|
|||
Path "models"
|
||||
Model 1 "ImpPick_d.3d"
|
||||
Skin 1 "JImpPick1.png"
|
||||
CORRECTPIXELSTRETCH
|
||||
Scale 0.2 0.2 0.2
|
||||
RollOffset -90
|
||||
ZOffset 7.5
|
||||
|
|
|
|||
|
|
@ -53,7 +53,8 @@ Model "UTHealthPack"
|
|||
SurfaceSkin 0 2 "fizzfull"
|
||||
Scale 0.2 0.2 0.2
|
||||
RollOffset -90
|
||||
ZOffset 16
|
||||
ZOffset 13
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex HBOX A 0 0
|
||||
}
|
||||
|
|
@ -67,7 +68,8 @@ Model "ActHealthPack"
|
|||
SurfaceSkin 0 2 "fizzfull"
|
||||
Scale 0.2 0.2 0.2
|
||||
RollOffset -90
|
||||
ZOffset 16
|
||||
ZOffset 13
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex HBOX A 0 0
|
||||
}
|
||||
|
|
@ -423,7 +425,8 @@ Model "UTChip"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
USEROTATIONCENTER
|
||||
Rotation-Center 0 0 0
|
||||
CORRECTPIXELSTRETCH
|
||||
Rotation-Center 0 0 .5
|
||||
ZOffset 1
|
||||
|
||||
FrameIndex CHIP A 0 0
|
||||
|
|
@ -503,6 +506,7 @@ Model "WaterRing"
|
|||
DONTCULLBACKFACES
|
||||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex RNGX A 0 0
|
||||
FrameIndex RNGX B 0 1
|
||||
|
|
@ -520,6 +524,7 @@ Model "UTWaterSplash"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
DONTCULLBACKFACES
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex SPSH A 0 1
|
||||
FrameIndex SPSH B 0 2
|
||||
|
|
@ -557,6 +562,7 @@ Model "UTWaterSplish"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
DONTCULLBACKFACES
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex SPSH A 0 1
|
||||
FrameIndex SPSH B 0 2
|
||||
|
|
@ -595,6 +601,7 @@ Model "UTBloodSplash"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
DONTCULLBACKFACES
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex SPSH A 0 1
|
||||
FrameIndex SPSH B 0 2
|
||||
|
|
@ -632,6 +639,7 @@ Model "UTBloodSplish"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
DONTCULLBACKFACES
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex SPSH A 0 1
|
||||
FrameIndex SPSH B 0 2
|
||||
|
|
@ -670,6 +678,7 @@ Model "UTSlimeSplash"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
DONTCULLBACKFACES
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex SPSH A 0 1
|
||||
FrameIndex SPSH B 0 2
|
||||
|
|
@ -707,6 +716,7 @@ Model "UTSlimeSplish"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
DONTCULLBACKFACES
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex SPSH A 0 1
|
||||
FrameIndex SPSH B 0 2
|
||||
|
|
@ -745,6 +755,7 @@ Model "UTNukageSplash"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
DONTCULLBACKFACES
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex SPSH A 0 1
|
||||
FrameIndex SPSH B 0 2
|
||||
|
|
@ -782,6 +793,7 @@ Model "UTNukageSplish"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
DONTCULLBACKFACES
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex SPSH A 0 1
|
||||
FrameIndex SPSH B 0 2
|
||||
|
|
@ -820,6 +832,7 @@ Model "UTLavaSplash"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
DONTCULLBACKFACES
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex SPSH A 0 1
|
||||
FrameIndex SPSH B 0 2
|
||||
|
|
@ -857,6 +870,7 @@ Model "UTLavaSplish"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
DONTCULLBACKFACES
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex SPSH A 0 1
|
||||
FrameIndex SPSH B 0 2
|
||||
|
|
|
|||
|
|
@ -65,7 +65,8 @@ Model "PulseMag"
|
|||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
USEROTATIONCENTER
|
||||
Rotation-Center 0 0 2
|
||||
CORRECTPIXELSTRETCH
|
||||
Rotation-Center 0 0 1
|
||||
|
||||
FrameIndex PCAS A 0 0
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,6 +35,7 @@ Model "Razor2"
|
|||
Scale 0.18 0.18 0.18
|
||||
AngleOffset 90
|
||||
USEACTORPITCH
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex RAZB A 0 0
|
||||
}
|
||||
|
|
@ -50,6 +51,7 @@ Model "Razor2Trail"
|
|||
AngleOffset 90
|
||||
USEACTORPITCH
|
||||
DONTCULLBACKFACES
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex RAZB A 0 0
|
||||
}
|
||||
|
|
@ -65,6 +67,7 @@ Model "Razor2Alt"
|
|||
AngleOffset 90
|
||||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex RAZB A 0 0
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,10 +8,11 @@ Model "UTPlayerTFemale2"
|
|||
SurfaceSkin 0 3 "SGirl/army4.png"
|
||||
SurfaceSkin 0 5 "GunPick1.png"
|
||||
Scale 0.23 0.23 0.23
|
||||
Offset -2.5 3 36
|
||||
Offset -2.5 3 30
|
||||
RollOffset -90
|
||||
AngleOffset -90
|
||||
IGNORETRANSLATION
|
||||
CORRECTPIXELSTRETCH
|
||||
// Still
|
||||
FrameIndex PLAY A 0 359
|
||||
FrameIndex PLAY B 0 360
|
||||
|
|
|
|||
|
|
@ -35,6 +35,8 @@ Model "ShockRifleWave"
|
|||
Path "models"
|
||||
Model 0 "shockrwm_d.3d"
|
||||
Skin 0 "shocktt1.png"
|
||||
CORRECTPIXELSTRETCH
|
||||
RollOffset 90
|
||||
Scale 0.5 0.5 0.5
|
||||
|
||||
FrameIndex SWAV A 0 0
|
||||
|
|
@ -46,6 +48,8 @@ Model "SuperShockRifleWave"
|
|||
Path "models"
|
||||
Model 0 "shockrwm_d.3d"
|
||||
Skin 0 "sshocktt1.png"
|
||||
CORRECTPIXELSTRETCH
|
||||
RollOffset 90
|
||||
Scale 0.5 0.5 0.5
|
||||
|
||||
FrameIndex SWAV A 0 0
|
||||
|
|
|
|||
|
|
@ -8,10 +8,11 @@ Model "UTPlayerTMale2"
|
|||
SurfaceSkin 0 3 "Soldier/sldr4.png"
|
||||
SurfaceSkin 0 5 "GunPick1.png"
|
||||
Scale 0.23 0.23 0.23
|
||||
Offset 0 -5 29
|
||||
Offset 0 -5 24
|
||||
RollOffset -90
|
||||
AngleOffset -90
|
||||
IGNORETRANSLATION
|
||||
CORRECTPIXELSTRETCH
|
||||
// Still
|
||||
FrameIndex PLAY A 0 373
|
||||
FrameIndex PLAY B 0 374
|
||||
|
|
@ -317,8 +318,9 @@ Model "TranslocatorAfterimage"
|
|||
SurfaceSkin 0 2 "Soldier/sldr3.png"
|
||||
SurfaceSkin 0 3 "Soldier/sldr4.png"
|
||||
SurfaceSkin 0 5 "GunPick1.png"
|
||||
Scale 0.256 0.23 0.23
|
||||
Offset 0 -5 29
|
||||
CORRECTPIXELSTRETCH
|
||||
Scale 0.23 0.23 0.23
|
||||
Offset 0 -5 24
|
||||
RollOffset -90
|
||||
AngleOffset -90
|
||||
FrameIndex PLAY A 0 187
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ Model "TranslocatorModule"
|
|||
Scale 0.056 0.056 0.056
|
||||
ZOffset 5
|
||||
USEACTORPITCH
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex TMOD A 0 0
|
||||
FrameIndex TMOD B 0 1
|
||||
|
|
|
|||
|
|
@ -35,6 +35,8 @@ Model "ShockWave"
|
|||
Path "models"
|
||||
Model 0 "shockwavem_d.3d"
|
||||
Skin 0 "shockt1.png"
|
||||
CORRECTPIXELSTRETCH
|
||||
RollOffset 90
|
||||
Scale 1.0 1.0 1.0
|
||||
|
||||
FrameIndex RWAV A 0 0
|
||||
|
|
@ -51,6 +53,7 @@ Model "WarShell"
|
|||
PitchOffset -90
|
||||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex WMIS A 0 0
|
||||
}
|
||||
|
|
@ -64,6 +67,7 @@ Model "GuidedWarShell"
|
|||
PitchOffset -90
|
||||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex WMIS A 0 0
|
||||
}
|
||||
|
|
@ -78,6 +82,7 @@ Model "WarShell220"
|
|||
PitchOffset -90
|
||||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex WMIS A 0 0
|
||||
}
|
||||
|
|
@ -91,6 +96,7 @@ Model "WarShell222"
|
|||
PitchOffset -90
|
||||
USEACTORPITCH
|
||||
USEACTORROLL
|
||||
CORRECTPIXELSTRETCH
|
||||
|
||||
FrameIndex WMIS A 0 0
|
||||
}
|
||||
|
|
@ -101,6 +107,7 @@ Model "WarheadLauncher"
|
|||
Model 1 "whpick_d.3d"
|
||||
Skin 1 "jwhpick1.png"
|
||||
Scale 0.2 0.2 0.2
|
||||
CORRECTPIXELSTRETCH
|
||||
RollOffset -90
|
||||
ZOffset 9
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,7 @@
|
|||
version "4.9"
|
||||
version "4.10"
|
||||
|
||||
#include "zscript/dt_Gutamatics/Include.zsc"
|
||||
#include "zscript/dt_utility.zsc"
|
||||
#include "zscript/dt_coordutil.zsc"
|
||||
#include "zscript/utcommon.zsc"
|
||||
#include "zscript/utgore.zsc"
|
||||
#include "zscript/impacthammer.zsc"
|
||||
|
|
|
|||
|
|
@ -724,7 +724,7 @@ Class BioRifle : UTWeapon
|
|||
else A_QuakeEx(1,1,1,5,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.05);
|
||||
Vector3 x, y, z;
|
||||
double a, s;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+8*y-5*z);
|
||||
Actor p;
|
||||
if ( alt )
|
||||
|
|
|
|||
|
|
@ -131,7 +131,7 @@ Class UTChainsaw : UTWeapon
|
|||
invoker.FireEffect();
|
||||
A_AlertMonsters();
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x-4*z);
|
||||
FLineTraceData d;
|
||||
LineTrace(angle,90,BulletSlope(),TRF_ABSPOSITION,origin.z,origin.x,origin.y,d);
|
||||
|
|
@ -179,7 +179,7 @@ Class UTChainsaw : UTWeapon
|
|||
if ( initial ) invoker.FireEffect();
|
||||
A_AlertMonsters();
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x-2*z);
|
||||
FLineTraceData d;
|
||||
double ang = (angle-60)+120*invoker.sawcnt;
|
||||
|
|
@ -233,7 +233,7 @@ Class UTChainsaw : UTWeapon
|
|||
else A_QuakeEx(0,0,0,2,0,1,"",QF_RELATIVE,rollIntensity:0.2);
|
||||
if ( bAlt || Random[Chainsaw](0,2) ) return;
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),5*x+y-3*z);
|
||||
for ( int i=0; i<5; i++ )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,92 +0,0 @@
|
|||
/*
|
||||
Coordinate Utility helper class.
|
||||
Reproduces the old UnrealScript Get(Un)Axes functions, providing XYZ axis
|
||||
vectors relative to an euler rotation (defaults to left-handed coords).
|
||||
|
||||
Copyright (c)2018-2022 Marisa the Magician, UnSX Team
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to
|
||||
deal in the Software without restriction, including without limitation the
|
||||
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
sell copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
Class dt_CoordUtil
|
||||
{
|
||||
// In Tim Sweeney's own words: "transform by a pitch-yaw-roll rotation"
|
||||
static Vector3, Vector3, Vector3 GetUnAxes( double pitch, double yaw, double roll, bool rhand = false )
|
||||
{
|
||||
Vector3 x = (1,0,0), y = (0,rhand?1:-1,0), z = (0,0,1);
|
||||
Vector3 a, b, c;
|
||||
// pitch and roll in gzdoom work in reverse compared to UE
|
||||
pitch = -pitch;
|
||||
roll = -roll;
|
||||
// yaw
|
||||
a = (cos(yaw),sin(yaw),0);
|
||||
b = (-sin(yaw),cos(yaw),0);
|
||||
c = (0,0,1);
|
||||
x = (x dot a, x dot b, x dot c);
|
||||
y = (y dot a, y dot b, y dot c);
|
||||
z = (z dot a, z dot b, z dot c);
|
||||
// pitch
|
||||
a = (cos(pitch),0,sin(pitch));
|
||||
b = (0,1,0);
|
||||
c = (-sin(pitch),0,cos(pitch));
|
||||
x = (x dot a, x dot b, x dot c);
|
||||
y = (y dot a, y dot b, y dot c);
|
||||
z = (z dot a, z dot b, z dot c);
|
||||
// roll
|
||||
a = (1,0,0);
|
||||
b = (0,cos(roll),-sin(roll));
|
||||
c = (0,sin(roll),cos(roll));
|
||||
x = (x dot a, x dot b, x dot c);
|
||||
y = (y dot a, y dot b, y dot c);
|
||||
z = (z dot a, z dot b, z dot c);
|
||||
return x, y, z;
|
||||
}
|
||||
|
||||
// In Tim Sweeney's own words: "detransform by a pitch-yaw-roll rotation"
|
||||
static Vector3, Vector3, Vector3 GetAxes( double pitch, double yaw, double roll, bool rhand = false )
|
||||
{
|
||||
Vector3 x = (1,0,0), y = (0,rhand?1:-1,0), z = (0,0,1);
|
||||
Vector3 a, b, c;
|
||||
// pitch and roll in gzdoom work in reverse compared to UE
|
||||
pitch = -pitch;
|
||||
roll = -roll;
|
||||
// inverse roll
|
||||
a = (1,0,0);
|
||||
b = (0,cos(roll),sin(roll));
|
||||
c = (0,-sin(roll),cos(roll));
|
||||
x = (x dot a, x dot b, x dot c);
|
||||
y = (y dot a, y dot b, y dot c);
|
||||
z = (z dot a, z dot b, z dot c);
|
||||
// inverse pitch
|
||||
a = (cos(pitch),0,-sin(pitch));
|
||||
b = (0,1,0);
|
||||
c = (sin(pitch),0,cos(pitch));
|
||||
x = (x dot a, x dot b, x dot c);
|
||||
y = (y dot a, y dot b, y dot c);
|
||||
z = (z dot a, z dot b, z dot c);
|
||||
// inverse yaw
|
||||
a = (cos(yaw),-sin(yaw),0);
|
||||
b = (sin(yaw),cos(yaw),0);
|
||||
c = (0,0,1);
|
||||
x = (x dot a, x dot b, x dot c);
|
||||
y = (y dot a, y dot b, y dot c);
|
||||
z = (z dot a, z dot b, z dot c);
|
||||
return x, y, z;
|
||||
}
|
||||
}
|
||||
|
|
@ -64,4 +64,11 @@ Class dt_Utility
|
|||
{
|
||||
return (x+y*cos(angle)*spread+z*sin(angle)*spread).unit();
|
||||
}
|
||||
|
||||
static clearscope Vector3, Vector3, Vector3 GetAxes( double angle, double pitch, double roll )
|
||||
{
|
||||
Vector3 x = (1,0,0), y = (0,-1,0), z = (0,0,1);
|
||||
Quat r = Quat.FromAngles(angle,pitch,roll);
|
||||
return r*x, r*y, r*z;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -388,9 +388,9 @@ Class UTRocketLauncher : UTWeapon
|
|||
A_QuakeEx(2+num,2+num,2+num,6+num,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1+num*0.05);
|
||||
Vector3 x, y, z, x2, y2, z2;
|
||||
double a, s;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+3*y-3*z);
|
||||
[x2, y2, z2] = dt_CoordUtil.GetAxes(BulletSlope(),angle,roll);
|
||||
[x2, y2, z2] = dt_Utility.GetAxes(angle,BulletSlope(),roll);
|
||||
Actor p;
|
||||
if ( weap.bAltFire )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ Class EnforcerLight : DynamicLight
|
|||
if ( target.player )
|
||||
{
|
||||
Vector3 x, y, z, origin;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(target.pitch,target.angle,target.roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(target.angle,target.pitch,target.roll);
|
||||
origin = level.Vec3Offset(target.Vec2OffsetZ(0,0,target.player.viewz),x*12);
|
||||
SetOrigin(origin,true);
|
||||
}
|
||||
|
|
@ -378,13 +378,13 @@ Class Enforcer : UTWeapon
|
|||
A_OverlayRenderstyle(-2,STYLE_Add);
|
||||
}
|
||||
Vector3 x, y, z, x2, y2, z2;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x);
|
||||
int ydir = slave?-1:1;
|
||||
if ( alt ) origin = level.Vec3Offset(origin,-z*3+ydir*y);
|
||||
else origin = level.Vec3Offset(origin,-z+ydir*y*4);
|
||||
double a = FRandom[Enforcer](0,360), s = FRandom[Enforcer](0,alt?invoker.altaccuracy:0.004);
|
||||
[x2, y2, z2] = dt_CoordUtil.GetAxes(BulletSlope(),angle,roll);
|
||||
[x2, y2, z2] = dt_Utility.GetAxes(angle,BulletSlope(),roll);
|
||||
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);
|
||||
|
|
@ -634,7 +634,7 @@ Class Enforcer : UTWeapon
|
|||
UTPlayer(self).PlayReloading();
|
||||
invoker.slavereload = (flak_enforcerreload&&invoker.slaveactive&&(invoker.slaveclipcount<min(invoker.default.slaveclipcount,invoker.Ammo1.Amount)));
|
||||
Vector3 x, y, z, origin;
|
||||
[x,y,z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x,y,z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),x*4.+y*4.-z*8.);
|
||||
let c = Spawn("EnforcerMag",origin);
|
||||
c.angle = angle;
|
||||
|
|
@ -668,7 +668,7 @@ Class Enforcer : UTWeapon
|
|||
UTPlayer(self).PlayReloading();
|
||||
invoker.slavereload = false;
|
||||
Vector3 x, y, z, origin;
|
||||
[x,y,z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x,y,z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),x*4.-y*4.-z*8.);
|
||||
let c = Spawn("EnforcerMag",origin);
|
||||
c.angle = angle;
|
||||
|
|
|
|||
|
|
@ -523,7 +523,7 @@ Class FlakSlug : Actor
|
|||
Spawn("SlugLight",pos);
|
||||
Vector3 x, y, z;
|
||||
double a, s;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Actor p;
|
||||
Vector3 spawnofs;
|
||||
if ( BlockingMobj ) spawnofs = level.Vec3Diff(pos,BlockingMobj.Vec3Offset(0,0,BlockingMobj.height/2)).unit()*8;
|
||||
|
|
@ -674,12 +674,12 @@ Class FlakCannon : UTWeapon
|
|||
A_QuakeEx(1,1,1,3,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.05);
|
||||
Vector3 x, y, z;
|
||||
double a, s;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+4*y-3*z);
|
||||
A_Overlay(-2,"MuzzleFlash");
|
||||
A_OverlayFlags(-2,PSPF_RENDERSTYLE|PSPF_FORCESTYLE,true);
|
||||
A_OverlayRenderstyle(-2,STYLE_Add);
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(BulletSlope(),angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,BulletSlope(),roll);
|
||||
Vector3 offsets[8]; // vanilla adds these to each chunk
|
||||
offsets[0] = (0,0,0);
|
||||
offsets[1] = -z;
|
||||
|
|
@ -732,7 +732,7 @@ Class FlakCannon : UTWeapon
|
|||
A_QuakeEx(2,2,2,6,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
|
||||
Vector3 x, y, z;
|
||||
double a, s;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+2*y-3*z);
|
||||
A_Overlay(-2,"MuzzleFlash");
|
||||
A_OverlayFlags(-2,PSPF_RENDERSTYLE|PSPF_FORCESTYLE,true);
|
||||
|
|
@ -819,7 +819,7 @@ Class FlakCannon : UTWeapon
|
|||
FLKF J 4
|
||||
{
|
||||
Vector3 x, y, z, origin;
|
||||
[x,y,z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x,y,z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),x*4.+y*3.-z*8.);
|
||||
let c = Spawn("FlakMag",origin);
|
||||
c.angle = angle;
|
||||
|
|
|
|||
|
|
@ -107,7 +107,7 @@ Class ImpactHammer : UTWeapon
|
|||
}
|
||||
FLineTraceData d;
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+3*y-4*z);
|
||||
LineTrace(angle,40,BulletSlope(),TRF_ABSPOSITION,origin.z,origin.x,origin.y,d);
|
||||
if ( (invoker.chargesize > 1) && (d.HitType == TRACE_HitActor) )
|
||||
|
|
@ -122,7 +122,7 @@ Class ImpactHammer : UTWeapon
|
|||
invoker.FireEffect();
|
||||
A_AlertMonsters(gameinfo.gametype&GAME_Strife?100:0);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+3*y-4*z);
|
||||
double realcharge = min(1.5,invoker.chargesize);
|
||||
FLineTraceData d;
|
||||
|
|
@ -187,7 +187,7 @@ Class ImpactHammer : UTWeapon
|
|||
A_AlertMonsters(gameinfo.gametype&GAME_Strife?100:0);
|
||||
A_QuakeEx(2,2,2,6,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+3*y-4*z);
|
||||
FLineTraceData d;
|
||||
LineTrace(angle,120,BulletSlope(),TRF_ABSPOSITION,origin.z,origin.x,origin.y,d);
|
||||
|
|
|
|||
|
|
@ -117,10 +117,10 @@ Class Minigun : UTWeapon
|
|||
l.target = self;
|
||||
if ( !alt ) MinigunLight(l).cnt--;
|
||||
Vector3 x, y, z, x2, y2, z2;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+y*2-z*2);
|
||||
double a = FRandom[Minigun](0,360), s = FRandom[Minigun](0,alt?0.05:0.02);
|
||||
[x2, y2, z2] = dt_CoordUtil.GetAxes(BulletSlope(),angle,roll);
|
||||
[x2, y2, z2] = dt_Utility.GetAxes(angle,BulletSlope(),roll);
|
||||
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);
|
||||
|
|
|
|||
|
|
@ -576,7 +576,7 @@ Class UTVisionLight : DynamicLight
|
|||
return;
|
||||
}
|
||||
Vector3 x, y, z, origin;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(target.pitch,target.angle,target.roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(target.angle,target.pitch,target.roll);
|
||||
if ( target.player )
|
||||
origin = target.Vec2OffsetZ(0,0,target.player.viewz);
|
||||
else origin = target.Vec3Offset(0,0,target.height/2);
|
||||
|
|
|
|||
|
|
@ -108,7 +108,7 @@ Class ViewPulseSpark : PulseSpark
|
|||
return;
|
||||
}
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(target.pitch,target.angle,target.roll);
|
||||
[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);
|
||||
SetOrigin(origin,true);
|
||||
bInvisible = (players[consoleplayer].camera != target);
|
||||
|
|
@ -540,7 +540,7 @@ Class StarterBolt : PulseBolt
|
|||
bRELATIVETOFLOOR = (target.pos.z <= target.floorz); // hack, but kinda works
|
||||
if ( target.player )
|
||||
{
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(target.pitch,target.angle,target.roll);
|
||||
[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);
|
||||
}
|
||||
else origin = target.Vec3Offset(0,0,target.missileheight);
|
||||
|
|
@ -678,7 +678,7 @@ Class PulseGun : UTWeapon
|
|||
UTMainHandler.DoFlash(self,Color(32,128,255,128),1);
|
||||
A_AlertMonsters();
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[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);
|
||||
for ( int i=0; i<4; i++ )
|
||||
{
|
||||
|
|
@ -743,7 +743,7 @@ Class PulseGun : UTWeapon
|
|||
A_OverlayRenderstyle(-2,STYLE_Add);
|
||||
Vector3 x, y, z;
|
||||
double a;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[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);
|
||||
origin = level.Vec3Offset(origin,dt_Utility.CircleOffset(y,z,invoker.sangle,2));
|
||||
invoker.sangle += 100;
|
||||
|
|
@ -776,7 +776,7 @@ Class PulseGun : UTWeapon
|
|||
invoker.special1 = 0;
|
||||
A_StartSound("pulse/bolt",CHAN_WEAPON,CHANF_LOOPING);
|
||||
Vector3 x, y, z, origin;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[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);
|
||||
invoker.beam = Spawn("StarterBolt",origin);
|
||||
invoker.beam.angle = angle;
|
||||
|
|
@ -901,7 +901,7 @@ Class PulseGun : UTWeapon
|
|||
PGR2 A 1
|
||||
{
|
||||
Vector3 x, y, z, origin;
|
||||
[x,y,z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x,y,z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),x*4.-y*6.-z*8.);
|
||||
let c = Spawn("PulseMag",origin);
|
||||
c.angle = angle;
|
||||
|
|
|
|||
|
|
@ -256,7 +256,7 @@ Class Ripper2 : UTWeapon
|
|||
if ( alt ) A_QuakeEx(3,3,3,8,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
|
||||
else A_QuakeEx(1,1,1,5,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.08);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+6*y-4*z);
|
||||
Actor p;
|
||||
if ( alt ) p = Spawn("Razor2Alt",origin);
|
||||
|
|
|
|||
|
|
@ -1036,7 +1036,7 @@ Class ViewShockSpark : ShockSpark
|
|||
return;
|
||||
}
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(target.pitch,target.angle,target.roll);
|
||||
[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);
|
||||
SetOrigin(origin,true);
|
||||
bInvisible = (players[consoleplayer].camera != target);
|
||||
|
|
@ -1069,7 +1069,7 @@ Class ShockRifle : UTWeapon
|
|||
A_AlertMonsters();
|
||||
A_QuakeEx(2,2,2,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+2*y-1.5*z);
|
||||
Actor p = Spawn("ShockBeam",origin);
|
||||
p.angle = angle;
|
||||
|
|
@ -1106,7 +1106,7 @@ Class ShockRifle : UTWeapon
|
|||
A_AlertMonsters();
|
||||
A_QuakeEx(2,2,2,8,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+2*y-1.5*z);
|
||||
Actor p = Spawn("ShockBall",origin);
|
||||
p.angle = angle;
|
||||
|
|
@ -1251,7 +1251,7 @@ Class EnhancedShockRifle : UTWeapon
|
|||
A_AlertMonsters();
|
||||
A_QuakeEx(3,3,3,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.15);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+2*y-1.5*z);
|
||||
Actor p = Spawn("SuperShockBeam",origin);
|
||||
p.angle = angle;
|
||||
|
|
@ -1288,7 +1288,7 @@ Class EnhancedShockRifle : UTWeapon
|
|||
A_AlertMonsters();
|
||||
A_QuakeEx(3,3,3,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.15);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+2*y-1.5*z);
|
||||
Actor p = Spawn("SuperShockBall",origin);
|
||||
p.angle = angle;
|
||||
|
|
|
|||
|
|
@ -95,7 +95,7 @@ Class SniperRifle : UTWeapon
|
|||
let l = Spawn("SniperLight",pos);
|
||||
l.target = self;
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x);
|
||||
if ( !zoomed ) origin = level.Vec3Offset(origin,y*4-z*2);
|
||||
FLineTraceData d;
|
||||
|
|
|
|||
|
|
@ -323,7 +323,7 @@ Class TranslocatorAfterimage : Actor
|
|||
angle = target.angle-90;
|
||||
roll = -90;
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(0,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,0,roll);
|
||||
int lump = Wads.CheckNumForFullname("models/TeleSoldier_a.3d");
|
||||
String anivfile = Wads.ReadLump(lump);
|
||||
int numframes = anivfile.ByteAt(0);
|
||||
|
|
@ -417,7 +417,7 @@ Class Translocator : UTWeapon
|
|||
invoker.FireEffect();
|
||||
A_AlertMonsters();
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x-8*y-12*z);
|
||||
let p = Spawn("TranslocatorModule",origin);
|
||||
p.target = self;
|
||||
|
|
@ -592,7 +592,7 @@ Class OldTranslocator : Translocator
|
|||
invoker.FireEffect();
|
||||
A_AlertMonsters();
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
Vector3 origin = (pos.x,pos.y,player.viewz)+15.0*x-10.0*y-4.0*z;
|
||||
let p = Spawn("OldTranslocatorModule",origin);
|
||||
p.target = self;
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ Class UTPlayer : DoomPlayer
|
|||
Player.StartItem "ImpactHammer";
|
||||
Player.StartItem "MiniAmmo", 30;
|
||||
Player.DamageScreenColor "FF 00 00";
|
||||
Player.ViewHeight 46;
|
||||
Player.ViewHeight 44;
|
||||
Player.GruntSpeed 20;
|
||||
Player.Portrait "TNT1A0";
|
||||
+NOMENU;
|
||||
|
|
@ -610,7 +610,7 @@ Class UTPlayer : DoomPlayer
|
|||
Vector3 dir = (0,0,0);
|
||||
if ( vel.length() > double.epsilon ) dir = vel.unit();
|
||||
Vector3 x, y;
|
||||
[x, y] = dt_CoordUtil.GetAxes(pitch,angle,0);
|
||||
[x, y] = dt_Utility.GetAxes(angle,pitch,0);
|
||||
acceleration3 = x*player.cmd.forwardmove+y*player.cmd.sidemove;
|
||||
if ( player.cmd.buttons&BT_JUMP ) acceleration3.z = 0x500;
|
||||
else if ( player.cmd.buttons&BT_CROUCH ) acceleration3.z = -0x500;
|
||||
|
|
@ -639,7 +639,7 @@ Class UTPlayer : DoomPlayer
|
|||
if ( vel.length() > double.epsilon ) dir = vel.unit();
|
||||
double doomfriction = clamp(GetFriction()/ORIG_FRICTION,0.0,1.0);
|
||||
Vector3 x, y;
|
||||
[x, y] = dt_CoordUtil.GetAxes(pitch,angle,0);
|
||||
[x, y] = dt_Utility.GetAxes(angle,pitch,0);
|
||||
acceleration3 = x*player.cmd.forwardmove+y*player.cmd.sidemove;
|
||||
if ( player.cmd.buttons&BT_JUMP ) acceleration3.z = 0x500;
|
||||
else if ( player.cmd.buttons&BT_CROUCH ) acceleration3.z = -0x500;
|
||||
|
|
@ -2025,7 +2025,7 @@ Class UTWeapon : Weapon
|
|||
Vector2 hofs = RotateVector((dropper.radius,0),dropper.angle);
|
||||
SetOrigin(dropper.Vec3Offset(hofs.x,hofs.y,dropper.height*0.5),false);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(dropper.pitch,dropper.angle,dropper.roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(dropper.angle,dropper.pitch,dropper.roll);
|
||||
vel = x*12.0;
|
||||
vel.z += 4.0;
|
||||
angle = dropper.angle;
|
||||
|
|
@ -2215,7 +2215,7 @@ Class UTViewSpark : UTSpark
|
|||
return;
|
||||
}
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(target.pitch,target.angle,target.roll);
|
||||
[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);
|
||||
SetOrigin(origin,true);
|
||||
bInvisible = (players[consoleplayer].camera != target);
|
||||
|
|
@ -2462,7 +2462,7 @@ Class UTViewSmoke : UTSmoke
|
|||
return;
|
||||
}
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(target.pitch,target.angle,target.roll);
|
||||
[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);
|
||||
SetOrigin(origin,true);
|
||||
bInvisible = (players[consoleplayer].camera != target);
|
||||
|
|
@ -2778,7 +2778,7 @@ Class UTParticleMesh : Actor
|
|||
pz[i] = az/4194304.;
|
||||
}
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
for ( int i=0; i<numverts; i++ )
|
||||
parts[i] = Spawn(pclass,level.Vec3Offset(pos,px[i]*scale.x*x+py[i]*scale.x*y+pz[i]*scale.y*z));
|
||||
animframe = 0;
|
||||
|
|
@ -2807,7 +2807,7 @@ Class UTParticleMesh : Actor
|
|||
double theta = animframe-framea;
|
||||
Vector3 posa, posb, ipos;
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
for ( int i=0; i<numverts; i++ )
|
||||
{
|
||||
posa = (px[i+numverts*framea],py[i+numverts*framea],pz[i+numverts*framea]);
|
||||
|
|
|
|||
|
|
@ -182,6 +182,12 @@ Class UTHud : BaseStatusBar
|
|||
|
||||
override void Draw( int state, double TicFrac )
|
||||
{
|
||||
// make sure vanilla nametags don't display
|
||||
DetachMessageID(0x5745504e); // WEPN
|
||||
DetachMessageID(0x53494e56); // SINV
|
||||
// also try with different endianness, just in case
|
||||
DetachMessageID(0x4e504557); // WEPN
|
||||
DetachMessageID(0x564e4953); // SINV
|
||||
Super.Draw(state,TicFrac);
|
||||
HScale = Screen.GetWidth()/1280.;
|
||||
switch ( flak_colorprefs )
|
||||
|
|
@ -1139,12 +1145,6 @@ Class UTHud : BaseStatusBar
|
|||
}
|
||||
}
|
||||
lastwep = CPlayer.PendingWeapon;
|
||||
// make sure vanilla nametags don't display
|
||||
DetachMessageID(0x5745504e); // WEPN
|
||||
DetachMessageID(0x53494e56); // SINV
|
||||
// also try with different endianness, just in case
|
||||
DetachMessageID(0x4e504557); // WEPN
|
||||
DetachMessageID(0x564e4953); // SINV
|
||||
if ( deathmatch||teamplay )
|
||||
{
|
||||
if ( CPlayer.fragcount != lastfragcnt ) lastfrag = level.time;
|
||||
|
|
|
|||
|
|
@ -651,7 +651,7 @@ Class WarheadLauncher : UTWeapon
|
|||
A_AlertMonsters();
|
||||
A_QuakeEx(6,6,6,20,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.2);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
vel -= x*10;
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+2*y-2*z);
|
||||
Actor p = Spawn("WarShell",origin);
|
||||
|
|
@ -665,7 +665,7 @@ Class WarheadLauncher : UTWeapon
|
|||
Weapon weap = Weapon(invoker);
|
||||
if ( !weap ) return;
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
vel -= x*0.2;
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+2*y-2*z);
|
||||
int numpt = Random[Warhead](10,20);
|
||||
|
|
@ -689,7 +689,7 @@ Class WarheadLauncher : UTWeapon
|
|||
A_AlertMonsters();
|
||||
A_QuakeEx(6,6,6,20,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.2);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
[x, y, z] = dt_Utility.GetAxes(angle,pitch,roll);
|
||||
vel -= x*10;
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+2*y-2*z);
|
||||
Actor p = Spawn("GuidedWarShell",origin);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue