mirror of
https://github.com/ZDoom/gzdoom.git
synced 2024-11-11 23:32:02 +00:00
Merge remote-tracking branch 'origin/master' into asmjit
This commit is contained in:
commit
c099b2d3c8
7 changed files with 110 additions and 28 deletions
|
@ -16,7 +16,7 @@ matrix:
|
||||||
- CMAKE_OPTIONS="-DCMAKE_BUILD_TYPE=Debug -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9"
|
- CMAKE_OPTIONS="-DCMAKE_BUILD_TYPE=Debug -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9"
|
||||||
|
|
||||||
- os: osx
|
- os: osx
|
||||||
osx_image: xcode9.4
|
osx_image: xcode10
|
||||||
env:
|
env:
|
||||||
- CMAKE_OPTIONS="-DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9"
|
- CMAKE_OPTIONS="-DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9"
|
||||||
|
|
||||||
|
|
|
@ -523,18 +523,21 @@ bool EV_SilentLineTeleport (line_t *line, int side, AActor *thing, int id, INTBO
|
||||||
|
|
||||||
// Is this really still necessary with real math instead of imprecise trig tables?
|
// Is this really still necessary with real math instead of imprecise trig tables?
|
||||||
#if 1
|
#if 1
|
||||||
|
const double fudgeamount = 1. / 65536.;
|
||||||
|
|
||||||
int side = reverse || (player && stepdown);
|
int side = reverse || (player && stepdown);
|
||||||
int fudge = FUDGEFACTOR;
|
int fudge = FUDGEFACTOR;
|
||||||
|
|
||||||
double dx = line->Delta().X;
|
double dx = line->Delta().X;
|
||||||
double dy = line->Delta().Y;
|
double dy = line->Delta().Y;
|
||||||
|
|
||||||
// Make sure we are on correct side of exit linedef.
|
// Make sure we are on correct side of exit linedef.
|
||||||
while (P_PointOnLineSidePrecise(p, l) != side && --fudge >= 0)
|
while (P_PointOnLineSidePrecise(p, l) != side && --fudge >= 0)
|
||||||
{
|
{
|
||||||
if (fabs(dx) > fabs(dy))
|
if (fabs(dx) > fabs(dy))
|
||||||
p.Y -= (dx < 0) != side ? -1 : 1;
|
p.Y -= (dx < 0) != side ? -fudgeamount : fudgeamount;
|
||||||
else
|
else
|
||||||
p.X += (dy < 0) != side ? -1 : 1;
|
p.X += (dy < 0) != side ? -fudgeamount : fudgeamount;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -363,7 +363,10 @@ void FMD3Model::RenderFrame(FModelRenderer *renderer, FTexture * skin, int frame
|
||||||
surfaceSkin = TexMan(surf->skins[0]);
|
surfaceSkin = TexMan(surf->skins[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!surfaceSkin) return;
|
if (!surfaceSkin)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
renderer->SetMaterial(surfaceSkin, false, translation);
|
renderer->SetMaterial(surfaceSkin, false, translation);
|
||||||
|
|
|
@ -48,16 +48,16 @@ const char *GetVersionString();
|
||||||
#ifdef GIT_DESCRIPTION
|
#ifdef GIT_DESCRIPTION
|
||||||
#define VERSIONSTR GIT_DESCRIPTION
|
#define VERSIONSTR GIT_DESCRIPTION
|
||||||
#else
|
#else
|
||||||
#define VERSIONSTR "3.6pre"
|
#define VERSIONSTR "3.7pre"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// The version as seen in the Windows resource
|
// The version as seen in the Windows resource
|
||||||
#define RC_FILEVERSION 3,5,9999,0
|
#define RC_FILEVERSION 3,6,9999,0
|
||||||
#define RC_PRODUCTVERSION 3,5,9999,0
|
#define RC_PRODUCTVERSION 3,6,9999,0
|
||||||
#define RC_PRODUCTVERSION2 VERSIONSTR
|
#define RC_PRODUCTVERSION2 VERSIONSTR
|
||||||
// These are for content versioning.
|
// These are for content versioning.
|
||||||
#define VER_MAJOR 3
|
#define VER_MAJOR 3
|
||||||
#define VER_MINOR 6
|
#define VER_MINOR 7
|
||||||
#define VER_REVISION 0
|
#define VER_REVISION 0
|
||||||
|
|
||||||
// Version identifier for network games.
|
// Version identifier for network games.
|
||||||
|
|
|
@ -451,7 +451,7 @@ vec3 AmbientOcclusionColor()
|
||||||
//
|
//
|
||||||
if (uFogEnabled == -1)
|
if (uFogEnabled == -1)
|
||||||
{
|
{
|
||||||
fogdist = pixelpos.w;
|
fogdist = max(16.0, pixelpos.w);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -489,7 +489,7 @@ void main()
|
||||||
{
|
{
|
||||||
if (uFogEnabled == 1 || uFogEnabled == -1)
|
if (uFogEnabled == 1 || uFogEnabled == -1)
|
||||||
{
|
{
|
||||||
fogdist = pixelpos.w;
|
fogdist = max(16.0, pixelpos.w);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -179,7 +179,9 @@ class ThrustFloor : Actor
|
||||||
while (it.Next())
|
while (it.Next())
|
||||||
{
|
{
|
||||||
let targ = it.thing;
|
let targ = it.thing;
|
||||||
double blockdist = radius + it.thing.radius;
|
if (targ != null)
|
||||||
|
{
|
||||||
|
double blockdist = radius + targ.radius;
|
||||||
if (abs(targ.pos.x - it.Position.X) >= blockdist || abs(targ.pos.y - it.Position.Y) >= blockdist)
|
if (abs(targ.pos.x - it.Position.X) >= blockdist || abs(targ.pos.y - it.Position.Y) >= blockdist)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
@ -202,6 +204,7 @@ class ThrustFloor : Actor
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Spike up -----------------------------------------------------------------
|
// Spike up -----------------------------------------------------------------
|
||||||
|
|
||||||
|
|
|
@ -606,6 +606,28 @@ class LevelCompatibility play
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case '57386AEF275684BA06756359B08F4391': // Perdition's Gate MAP03
|
||||||
|
{
|
||||||
|
// Stairs where one sector is too thin to score.
|
||||||
|
SetSectorSpecial(227, 0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case 'F1A9938C4FC3906A582AB7D5088B5F87': // Perdition's Gate MAP12
|
||||||
|
{
|
||||||
|
// Sector unintentionally left as a secret near switch
|
||||||
|
SetSectorSpecial(112, 0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case '5C419E581D9570F44A24163A83032086': // Perdition's Gate MAP27
|
||||||
|
{
|
||||||
|
// Sectors unintentionally left as secrets and cannot be scored
|
||||||
|
SetSectorSpecial(338, 0);
|
||||||
|
SetSectorSpecial(459, 0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
case 'FCCA97FC851F6473EAA069F74247B317': // pg-raw.wad map31
|
case 'FCCA97FC851F6473EAA069F74247B317': // pg-raw.wad map31
|
||||||
{
|
{
|
||||||
SetLineSectorRef(331, Line.front, 74);
|
SetLineSectorRef(331, Line.front, 74);
|
||||||
|
@ -621,8 +643,59 @@ class LevelCompatibility play
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case '712BB4CFBD0753178CA0C6814BE4C288': // beta version of map12 BTSX_E1 - patch some rendering glitches that are problematic to detect
|
case '5379C080299EB961792B50AD96821543': // Hell to Pay MAP14
|
||||||
{
|
{
|
||||||
|
// Two secrets are unreachable without jumping and crouching.
|
||||||
|
SetSectorSpecial(82, 0);
|
||||||
|
SetSectorSpecial(83, 0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case '7837B5334A277F107515D649BCEFB682': // Hell to Pay MAP22
|
||||||
|
{
|
||||||
|
// Four enemies (six if multiplayer) never spawn in the map,
|
||||||
|
// so the lines closest to them should teleport them instead.
|
||||||
|
SetLineSpecial(1835, Teleport, 0, 40);
|
||||||
|
SetLineActivation(1835, SPAC_MCross);
|
||||||
|
SetLineFlags(1835, Line.ML_REPEAT_SPECIAL);
|
||||||
|
|
||||||
|
SetLineSpecial(1847, Teleport, 0, 40);
|
||||||
|
SetLineActivation(1847, SPAC_MCross);
|
||||||
|
SetLineFlags(1847, Line.ML_REPEAT_SPECIAL);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case '1A1AB6415851B9F17715A0C36412752E': // Hell to Pay MAP24
|
||||||
|
{
|
||||||
|
// Remove Chaingunner far below the map, making 100% kills
|
||||||
|
// impractical.
|
||||||
|
SetThingFlags(70, 0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case 'A7ACB57A2CAF17434D0DFE0FAC0E0480': // Hell to Pay MAP28
|
||||||
|
{
|
||||||
|
// Three Lost Souls placed outside the map for some reason.
|
||||||
|
for(int i=0; i<3; i++)
|
||||||
|
{
|
||||||
|
SetThingFlags(217+i, 0);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case '2F1A18633C30E938B50B6D928C730CB6': // Hell to Pay MAP29
|
||||||
|
{
|
||||||
|
// Three Lost Souls placed outside the map, again...
|
||||||
|
for(int i=0; i<3; i++)
|
||||||
|
{
|
||||||
|
SetThingFlags(239+i, 0);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case '712BB4CFBD0753178CA0C6814BE4C288': // beta version of map12 BTSX_E1
|
||||||
|
{
|
||||||
|
// patch some rendering glitches that are problematic to detect
|
||||||
AddSectorTag(545, 32000);
|
AddSectorTag(545, 32000);
|
||||||
AddSectorTag(1618, 32000);
|
AddSectorTag(1618, 32000);
|
||||||
SetLineSpecial(2853, Sector_Set3DFloor, 32000, 4);
|
SetLineSpecial(2853, Sector_Set3DFloor, 32000, 4);
|
||||||
|
|
Loading…
Reference in a new issue