Merge branch 'next' into accelerometer
This commit is contained in:
commit
6825f64203
13 changed files with 166 additions and 39 deletions
101
src/d_clisrv.c
101
src/d_clisrv.c
|
|
@ -212,6 +212,8 @@ static textcmdtic_t *textcmds[TEXTCMD_HASH_SIZE] = {NULL};
|
|||
|
||||
consvar_t cv_showjoinaddress = CVAR_INIT ("showjoinaddress", "Off", CV_SAVE, CV_OnOff, NULL);
|
||||
|
||||
consvar_t cv_shownodeip = CVAR_INIT ("showipinnodelist", "Off", CV_SAVE, CV_OnOff, NULL);
|
||||
|
||||
static CV_PossibleValue_t playbackspeed_cons_t[] = {{1, "MIN"}, {10, "MAX"}, {0, NULL}};
|
||||
consvar_t cv_playbackspeed = CVAR_INIT ("playbackspeed", "1", 0, playbackspeed_cons_t, NULL);
|
||||
|
||||
|
|
@ -2918,7 +2920,7 @@ static void Command_Nodes(void)
|
|||
if (playernode[i] != UINT8_MAX)
|
||||
{
|
||||
CONS_Printf(" - node %.2d", playernode[i]);
|
||||
if (I_GetNodeAddress && (address = I_GetNodeAddress(playernode[i])) != NULL)
|
||||
if ((I_GetNodeAddress && (address = I_GetNodeAddress(playernode[i])) != NULL) && (cv_shownodeip.value))
|
||||
CONS_Printf(" - %s", address);
|
||||
}
|
||||
|
||||
|
|
@ -2933,6 +2935,102 @@ static void Command_Nodes(void)
|
|||
}
|
||||
}
|
||||
|
||||
static void Command_Listplayers(void)
|
||||
{
|
||||
const char *address;
|
||||
int width = 0;
|
||||
|
||||
boolean admin;
|
||||
boolean spectator;
|
||||
|
||||
/*
|
||||
Mode of player status for an individual player (admin, spectator).
|
||||
1 for admin
|
||||
2 for spectator
|
||||
4 for both
|
||||
*/
|
||||
int mode = 0;
|
||||
|
||||
INT32 totalplayers = 0;
|
||||
|
||||
const char *cc;
|
||||
char pcc[2];
|
||||
|
||||
INT32 i;
|
||||
int n;
|
||||
|
||||
for (i = 0; i < MAXPLAYERS; ++i)
|
||||
if (playeringame[i])
|
||||
{
|
||||
n = strlen(player_names[i]);
|
||||
if (n > width)
|
||||
width = n;
|
||||
|
||||
if (mode != 7)
|
||||
{
|
||||
admin = IsPlayerAdmin(i);
|
||||
spectator = players[i].spectator;
|
||||
|
||||
if (admin)
|
||||
mode |= 1;
|
||||
if (spectator)
|
||||
mode |= 2;
|
||||
if (admin && spectator)
|
||||
mode |= 4;
|
||||
}
|
||||
}
|
||||
|
||||
for (i = 0; i < MAXPLAYERS; ++i)
|
||||
if (playeringame[i])
|
||||
{
|
||||
admin = IsPlayerAdmin(i);
|
||||
spectator = players[i].spectator;
|
||||
|
||||
if (admin)
|
||||
cc = "\x85";/* red */
|
||||
else if (spectator)
|
||||
cc = "\x86";/* gray */
|
||||
else
|
||||
cc = "";
|
||||
|
||||
UINT16 chatcolor = skincolors[players[i].skincolor].chatcolor;
|
||||
|
||||
if (chatcolor > V_TANMAP)
|
||||
{
|
||||
sprintf(pcc, "%c", '\x80');
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(pcc, "%c", '\x80' + (chatcolor >> V_CHARCOLORSHIFT));
|
||||
}
|
||||
|
||||
CONS_Printf("%.2d: ""%s""%-*s""\x80", i, pcc,width, player_names[i]);
|
||||
|
||||
if ((I_GetNodeAddress && (address = I_GetNodeAddress(playernode[i])) != NULL) && (cv_shownodeip.value))
|
||||
CONS_Printf(" -- %s", address);
|
||||
else/* print spacer */
|
||||
{
|
||||
/* ...but not if there's a crammed status and were admin */
|
||||
if (mode != 7 || !admin)
|
||||
CONS_Printf(" -- ");/* -- self */
|
||||
}
|
||||
|
||||
if (admin)
|
||||
CONS_Printf(M_GetText("%s"" (admin)"),cc);
|
||||
if (spectator)
|
||||
CONS_Printf(M_GetText("%s"" (spectator)"),cc);
|
||||
|
||||
CONS_Printf("\n");
|
||||
|
||||
totalplayers++;
|
||||
}
|
||||
|
||||
if (totalplayers == 1)
|
||||
CONS_Printf("\nThere is 1 player in the game.\n");
|
||||
else
|
||||
CONS_Printf("\nThere are %d players in the game.\n", totalplayers);
|
||||
}
|
||||
|
||||
static void Command_Ban(void)
|
||||
{
|
||||
if (COM_Argc() < 2)
|
||||
|
|
@ -3542,6 +3640,7 @@ void D_ClientServerInit(void)
|
|||
COM_AddCommand("reloadbans", Command_ReloadBan);
|
||||
COM_AddCommand("connect", Command_connect);
|
||||
COM_AddCommand("nodes", Command_Nodes);
|
||||
COM_AddCommand("listplayers", Command_Listplayers);
|
||||
#ifdef HAVE_CURL
|
||||
COM_AddCommand("set_http_login", Command_set_http_login);
|
||||
COM_AddCommand("list_http_logins", Command_list_http_logins);
|
||||
|
|
|
|||
|
|
@ -437,6 +437,7 @@ extern consvar_t cv_httpsource;
|
|||
extern consvar_t cv_kicktime;
|
||||
|
||||
extern consvar_t cv_showjoinaddress;
|
||||
extern consvar_t cv_shownodeip;
|
||||
extern consvar_t cv_playbackspeed;
|
||||
|
||||
extern consvar_t cv_connectawaittime;
|
||||
|
|
|
|||
|
|
@ -1132,6 +1132,7 @@ void D_RegisterServerCommands(void)
|
|||
CV_RegisterVar(&cv_joinnextround);
|
||||
#endif
|
||||
CV_RegisterVar(&cv_showjoinaddress);
|
||||
CV_RegisterVar(&cv_shownodeip);
|
||||
CV_RegisterVar(&cv_blamecfail);
|
||||
|
||||
COM_AddCommand("ping", Command_Ping_f);
|
||||
|
|
|
|||
|
|
@ -1027,6 +1027,11 @@ struct int_const_s const INT_CONST[] = {
|
|||
{"RF_DROPSHADOW",RF_DROPSHADOW},
|
||||
{"RF_ABSOLUTELIGHTLEVEL",RF_ABSOLUTELIGHTLEVEL},
|
||||
{"RF_HIDEINSKYBOX",RF_HIDEINSKYBOX},
|
||||
#ifdef HWRENDER
|
||||
{"RF_NOMODEL",RF_NOMODEL},
|
||||
#else
|
||||
{"RF_NOMODEL",0},
|
||||
#endif
|
||||
{"RF_DONTDRAW",RF_DONTDRAW},
|
||||
{"RF_DONTDRAWP1",RF_DONTDRAWP1},
|
||||
{"RF_DONTDRAWP2",RF_DONTDRAWP2},
|
||||
|
|
|
|||
|
|
@ -929,6 +929,7 @@ const char *blancredits[] = {
|
|||
"\"Superstarxalien\"", // Horncode
|
||||
"\"Freaky Mutant Man\"", // Color profiles menu
|
||||
"\"blondedradio\"", // Screen-tracking item roulette, lifted near-directly from RadioRacers
|
||||
"\"Antoine De Grandpré\"", // Zero Deadzone fix
|
||||
"",
|
||||
"\1Item Design",
|
||||
"\"NepDisk\"",
|
||||
|
|
|
|||
20
src/g_game.c
20
src/g_game.c
|
|
@ -1291,7 +1291,7 @@ retrygetcontrol:
|
|||
|
||||
value = gamekeydown[deviceID][key];
|
||||
|
||||
if (value >= deadzone)
|
||||
if (value > deadzone)
|
||||
{
|
||||
return value;
|
||||
}
|
||||
|
|
@ -1704,8 +1704,17 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics, UINT8 ssplayer)
|
|||
return;
|
||||
}
|
||||
|
||||
fixed_t deadZoneY = cv_deadzoney[forplayer].value;
|
||||
const double deadZoneYDecimal = (double) deadZoneY / FRACUNIT;
|
||||
joystickvector.xaxis = G_PlayerInputAnalog(forplayer, gc_turnright, false, DEADZONE_X) - G_PlayerInputAnalog(forplayer, gc_turnleft, false, DEADZONE_X);
|
||||
joystickvector.yaxis = 0;
|
||||
if (deadZoneYDecimal <= 0)
|
||||
{
|
||||
joystickvector.yaxis = G_PlayerInputAnalog(forplayer, gc_aimbackward, false, DEADZONE_Y) - G_PlayerInputAnalog(forplayer, gc_aimforward, false, DEADZONE_Y);
|
||||
}
|
||||
else
|
||||
{
|
||||
joystickvector.yaxis = 0;
|
||||
}
|
||||
G_HandleAxisDeadZone(forplayer, &joystickvector);
|
||||
|
||||
if (joystickvector.xaxis != 0)
|
||||
|
|
@ -1727,7 +1736,12 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics, UINT8 ssplayer)
|
|||
// use it for aiming to throw items forward/backward and the vote screen
|
||||
// This mean that the turn axis will still be gradient but up/down will be 0
|
||||
// until the stick is pushed far enough
|
||||
joystickvector.yaxis = G_PlayerInputAnalog(forplayer, gc_aimbackward, false, DEADZONE_Y) - G_PlayerInputAnalog(forplayer, gc_aimforward, false, DEADZONE_Y);
|
||||
//
|
||||
// When the deadzone is set to 0 or lower, the aim axis returns to analog to avoid breaking the chasecam and freecam controls
|
||||
if (deadZoneYDecimal > 0)
|
||||
{
|
||||
joystickvector.yaxis = G_PlayerInputAnalog(forplayer, gc_aimbackward, false, DEADZONE_Y) - G_PlayerInputAnalog(forplayer, gc_aimforward, false, DEADZONE_Y);
|
||||
}
|
||||
|
||||
if (encoremode)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -239,7 +239,7 @@ void HWR_DrawStretchyFixedPatch(patch_t *gpatch, fixed_t x, fixed_t y, fixed_t p
|
|||
blendmode++; // realign to constants
|
||||
if ((alphalevel = ((option & V_ALPHAMASK) >> V_ALPHASHIFT)) || blendmode)
|
||||
{
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
Surf.PolyColor.s.red = Surf.PolyColor.s.green = Surf.PolyColor.s.blue = 0xff;
|
||||
|
||||
flags |= HWR_GetBlendModeFlag(blendmode);
|
||||
|
|
@ -364,7 +364,7 @@ void HWR_DrawAffinePatch(patch_t *gpatch, fixed_t x, fixed_t y, const affine_t *
|
|||
blendmode++; // realign to constants
|
||||
if (alphalevel || blendmode)
|
||||
{
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
Surf.PolyColor.s.red = Surf.PolyColor.s.green = Surf.PolyColor.s.blue = 0xff;
|
||||
|
||||
flags |= HWR_GetBlendModeFlag(blendmode);
|
||||
|
|
@ -516,7 +516,7 @@ void HWR_DrawCroppedPatch(patch_t *gpatch, fixed_t x, fixed_t y, fixed_t pscale,
|
|||
blendmode++; // realign to constants
|
||||
if ((alphalevel = ((option & V_ALPHAMASK) >> V_ALPHASHIFT)) || blendmode)
|
||||
{
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
Surf.PolyColor.s.red = Surf.PolyColor.s.green = Surf.PolyColor.s.blue = 0xff;
|
||||
|
||||
flags |= HWR_GetBlendModeFlag(blendmode);
|
||||
|
|
@ -636,7 +636,7 @@ void HWR_DrawFlatFill(INT32 x, INT32 y, INT32 w, INT32 h, lumpnum_t flatlumpnum)
|
|||
void HWR_FadeScreenMenuBack(UINT16 color, UINT8 strength)
|
||||
{
|
||||
FOutVector v[4];
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
|
||||
v[0].x = v[3].x = -1.0f;
|
||||
v[2].x = v[1].x = 1.0f;
|
||||
|
|
@ -682,7 +682,7 @@ void HWR_FadeScreenMenuBack(UINT16 color, UINT8 strength)
|
|||
void HWR_DrawFadeFill(INT32 x, INT32 y, INT32 w, INT32 h, INT32 color, UINT16 actualcolor, UINT8 strength)
|
||||
{
|
||||
FOutVector v[4];
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
float fx, fy, fw, fh;
|
||||
|
||||
// 3--2
|
||||
|
|
@ -762,7 +762,7 @@ void HWR_DrawFadeFill(INT32 x, INT32 y, INT32 w, INT32 h, INT32 color, UINT16 ac
|
|||
void HWR_DrawConsoleBack(UINT32 color, INT32 height)
|
||||
{
|
||||
FOutVector v[4];
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
|
||||
// setup some neat-o translucency effect
|
||||
if (!height) //cool hack 0 height is full height
|
||||
|
|
@ -788,7 +788,7 @@ void HWR_DrawConsoleBack(UINT32 color, INT32 height)
|
|||
void HWR_EncoreInvertScreen(void)
|
||||
{
|
||||
FOutVector v[4];
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
|
||||
v[0].x = v[3].x = -1.0f;
|
||||
v[2].x = v[1].x = 1.0f;
|
||||
|
|
@ -810,7 +810,7 @@ void HWR_EncoreInvertScreen(void)
|
|||
void HWR_DrawTutorialBack(UINT32 color, INT32 boxheight)
|
||||
{
|
||||
FOutVector v[4];
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
INT32 height;
|
||||
if (boxheight < 0)
|
||||
height = -boxheight;
|
||||
|
|
@ -867,7 +867,7 @@ void HWR_drawAMline(const fline_t *fl, INT32 color)
|
|||
void HWR_DrawDiag(INT32 x, INT32 y, INT32 wh, INT32 color)
|
||||
{
|
||||
FOutVector v[4];
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
float fx, fy, fw, fh, fwait = 0;
|
||||
|
||||
if (wh < 0)
|
||||
|
|
@ -961,7 +961,7 @@ void HWR_DrawDiag(INT32 x, INT32 y, INT32 wh, INT32 color)
|
|||
void HWR_DrawConsoleFill(INT32 x, INT32 y, INT32 w, INT32 h, INT32 color, UINT32 actualcolor)
|
||||
{
|
||||
FOutVector v[4];
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
float fx, fy, fw, fh;
|
||||
|
||||
// 3--2
|
||||
|
|
@ -1041,7 +1041,7 @@ void HWR_DrawFill(INT32 x, INT32 y, INT32 w, INT32 h, INT32 color)
|
|||
{
|
||||
FOutVector v[4];
|
||||
FBITFIELD flags;
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
float fx, fy, fw, fh;
|
||||
UINT8 alphalevel = ((color & V_ALPHAMASK) >> V_ALPHASHIFT);
|
||||
UINT8 blendmode = ((color & V_BLENDMASK) >> V_BLENDSHIFT);
|
||||
|
|
|
|||
|
|
@ -816,7 +816,7 @@ void HWR_WallLighting(FOutVector *wlVerts)
|
|||
for (j = 0; j < dynlights->nb; j++)
|
||||
{
|
||||
FVector inter;
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
float dist_p2d, d[4], s;
|
||||
|
||||
if (!dynlights->mo[j])
|
||||
|
|
@ -904,7 +904,7 @@ void HWR_PlaneLighting(FOutVector *clVerts, int nrClipVerts)
|
|||
|
||||
for (j = 0; j < dynlights->nb; j++)
|
||||
{
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
float dist_p2d, s;
|
||||
|
||||
if (!dynlights->mo[j])
|
||||
|
|
@ -979,7 +979,7 @@ void HWR_DoCoronasLighting(FOutVector *outVerts, gl_vissprite_t *spr)
|
|||
if (cv_glcoronas.value && (p_lspr->type & CORONA_SPR))
|
||||
{ // it's an object which emits light
|
||||
FOutVector light[4];
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
float cx = 0.0f, cy = 0.0f, cz = 0.0f; // gravity center
|
||||
float size;
|
||||
UINT8 i;
|
||||
|
|
@ -1065,7 +1065,7 @@ void HWR_DrawCoronas(void)
|
|||
for (j = 0;j < dynlights->nb;j++)
|
||||
{
|
||||
FOutVector light[4];
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
float cx = LIGHT_POS(j).x;
|
||||
float cy = LIGHT_POS(j).y;
|
||||
float cz = LIGHT_POS(j).z; // gravity center
|
||||
|
|
|
|||
|
|
@ -1076,7 +1076,7 @@ static void HWR_ProcessSeg(void) // Sort of like GLWall::Process in GZDoom
|
|||
FUINT lightnum = 255;
|
||||
extracolormap_t *colormap = gl_frontsector->extra_colormap;
|
||||
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
Surf.PolyColor.s.alpha = 255;
|
||||
|
||||
tripwire = P_IsLineTripWire(gl_linedef);
|
||||
|
|
@ -2427,7 +2427,7 @@ static void HWR_RenderPolyObjectPlane(polyobj_t *polysector, boolean isceiling,
|
|||
FBITFIELD blendmode, UINT8 lightlevel, levelflat_t *levelflat, sector_t *FOFsector,
|
||||
UINT8 alpha, extracolormap_t *planecolormap)
|
||||
{
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
FOutVector *v3d;
|
||||
INT32 shader = SHADER_NONE;
|
||||
|
||||
|
|
@ -2576,9 +2576,8 @@ static void HWR_AddPolyObjectPlanes(void)
|
|||
light = R_GetPlaneLight(gl_frontsector, polyobjsector->floorheight, true);
|
||||
if (po_ptrs[i]->translucency > 0)
|
||||
{
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
FBITFIELD blendmode;
|
||||
memset(&Surf, 0x00, sizeof(Surf));
|
||||
blendmode = HWR_TranstableToAlpha(po_ptrs[i]->translucency, &Surf);
|
||||
HWR_AddTransparentPolyobjectFloor(&levelflats[polyobjsector->floorpic], po_ptrs[i], false, polyobjsector->floorheight,
|
||||
(light == -1 ? gl_frontsector->lightlevel : *gl_frontsector->lightlist[light].lightlevel), Surf.PolyColor.s.alpha, polyobjsector, blendmode, (light == -1 ? gl_frontsector->extra_colormap : *gl_frontsector->lightlist[light].extra_colormap));
|
||||
|
|
@ -2599,9 +2598,8 @@ static void HWR_AddPolyObjectPlanes(void)
|
|||
light = R_GetPlaneLight(gl_frontsector, polyobjsector->ceilingheight, true);
|
||||
if (po_ptrs[i]->translucency > 0)
|
||||
{
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
FBITFIELD blendmode;
|
||||
memset(&Surf, 0x00, sizeof(Surf));
|
||||
blendmode = HWR_TranstableToAlpha(po_ptrs[i]->translucency, &Surf);
|
||||
HWR_AddTransparentPolyobjectFloor(&levelflats[polyobjsector->ceilingpic], po_ptrs[i], true, polyobjsector->ceilingheight,
|
||||
(light == -1 ? gl_frontsector->lightlevel : *gl_frontsector->lightlist[light].lightlevel), Surf.PolyColor.s.alpha, polyobjsector, blendmode, (light == -1 ? gl_frontsector->extra_colormap : *gl_frontsector->lightlist[light].extra_colormap));
|
||||
|
|
@ -3126,7 +3124,7 @@ static void HWR_LinkDrawHackAdd(FOutVector *verts, gl_vissprite_t *spr)
|
|||
static void HWR_LinkDrawHackFinish(void)
|
||||
{
|
||||
UINT32 i;
|
||||
FSurfaceInfo surf;
|
||||
FSurfaceInfo surf = {};
|
||||
surf.PolyColor.rgba = 0xFFFFFFFF;
|
||||
surf.TintColor.rgba = 0xFFFFFFFF;
|
||||
surf.FadeColor.rgba = 0xFFFFFFFF;
|
||||
|
|
@ -3191,7 +3189,7 @@ static void HWR_DrawDropShadow(mobj_t *thing, fixed_t scale)
|
|||
patch_t *gpatch = NULL;
|
||||
GLPatch_t *hwrpatch;
|
||||
FOutVector shadowVerts[4];
|
||||
FSurfaceInfo sSurf;
|
||||
FSurfaceInfo sSurf = {};
|
||||
float fscale; float fx; float fy; float offset;
|
||||
extracolormap_t *colormap = NULL;
|
||||
FBITFIELD blendmode = PF_ReverseSubtract;
|
||||
|
|
@ -3395,7 +3393,7 @@ static void HWR_SplitSprite(gl_vissprite_t *spr)
|
|||
FOutVector baseWallVerts[4]; // This is what the verts should end up as
|
||||
patch_t *gpatch;
|
||||
GLPatch_t *hwrpatch;
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
extracolormap_t *colormap = NULL;
|
||||
INT32 lightlevel;
|
||||
boolean lightset = true;
|
||||
|
|
@ -3747,7 +3745,7 @@ static void HWR_DrawSprite(gl_vissprite_t *spr)
|
|||
FOutVector wallVerts[4];
|
||||
patch_t *gpatch;
|
||||
GLPatch_t *hwrpatch;
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
const boolean splat = R_ThingIsFloorSprite(spr->mobj);
|
||||
|
||||
if (!spr->mobj || !spr->mobj->subsector)
|
||||
|
|
@ -4080,7 +4078,7 @@ static inline void HWR_DrawPrecipitationSprite(gl_vissprite_t *spr)
|
|||
FOutVector wallVerts[4];
|
||||
patch_t *gpatch;
|
||||
GLPatch_t *hwrpatch;
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
|
||||
if (!spr->mobj || !spr->mobj->subsector)
|
||||
return;
|
||||
|
|
@ -4661,7 +4659,7 @@ static void HWR_DrawSprites(void)
|
|||
|
||||
if (spr->mobj && spr->mobj->skin && spr->mobj->sprite == SPR_PLAY)
|
||||
{
|
||||
if (LIKELY(!cv_glmodels.value || md2_playermodels[(skin_t*)spr->mobj->skin-skins].notfound || md2_playermodels[(skin_t*)spr->mobj->skin-skins].scale < 0.0f))
|
||||
if (LIKELY(!cv_glmodels.value || md2_playermodels[(skin_t*)spr->mobj->skin-skins].notfound || md2_playermodels[(skin_t*)spr->mobj->skin-skins].scale < 0.0f || (spr->renderflags & RF_NOMODEL)))
|
||||
HWR_DrawSprite(spr);
|
||||
else
|
||||
{
|
||||
|
|
@ -4671,7 +4669,7 @@ static void HWR_DrawSprites(void)
|
|||
}
|
||||
else
|
||||
{
|
||||
if (LIKELY(!cv_glmodels.value || md2_models[spr->mobj->sprite].notfound || md2_models[spr->mobj->sprite].scale < 0.0f))
|
||||
if (LIKELY(!cv_glmodels.value || md2_models[spr->mobj->sprite].notfound || md2_models[spr->mobj->sprite].scale < 0.0f || (spr->renderflags & RF_NOMODEL)))
|
||||
HWR_DrawSprite(spr);
|
||||
else
|
||||
{
|
||||
|
|
@ -6634,7 +6632,7 @@ void HWR_DoPostProcessor(player_t *player)
|
|||
if (player->flashcount && !HWR_ShouldUsePaletteRendering())
|
||||
{
|
||||
FOutVector v[4];
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
|
||||
v[0].x = v[2].y = v[3].x = v[3].y = -4.0f;
|
||||
v[0].y = v[1].x = v[1].y = v[2].x = 4.0f;
|
||||
|
|
|
|||
|
|
@ -1342,7 +1342,7 @@ boolean HWR_DrawModel(gl_vissprite_t *spr)
|
|||
INT32 nextFrame = -1;
|
||||
UINT8 spr2 = 0;
|
||||
FTransform p;
|
||||
FSurfaceInfo Surf;
|
||||
FSurfaceInfo Surf = {};
|
||||
|
||||
if (!cv_glmodels.value || spr->precip)
|
||||
return false;
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ set_shiftxy
|
|||
(R_PointToAngle2(0, 0, dx, dy) - a->angle);
|
||||
|
||||
const fixed_t adj = FixedMul(
|
||||
abs(FCOS(AbsAngle(th - ANGLE_90))),
|
||||
FCOS(AbsAngle(th - ANGLE_90)),
|
||||
FixedHypot(dx, dy)) / 2;
|
||||
|
||||
vector2_t *xy = &player->loop.shift;
|
||||
|
|
|
|||
|
|
@ -1001,6 +1001,9 @@ typedef enum
|
|||
|
||||
RF_ABSOLUTELIGHTLEVEL = 0x00010000, // mobj_t.lightlevel is absolute instead of relative
|
||||
RF_HIDEINSKYBOX = 0x00020000, // do not render in skybox
|
||||
#ifdef HWRENDER
|
||||
RF_NOMODEL = 0x00040000, // do not draw a model for this mobj in opengl, use its sprite instead
|
||||
#endif
|
||||
|
||||
RF_HIDESHIFT = (20),
|
||||
RF_DONTDRAW = 0x0F << RF_HIDESHIFT, // --Don't generate a vissprite
|
||||
|
|
|
|||
|
|
@ -349,8 +349,8 @@ void I_StartupSound(void)
|
|||
|
||||
const char *vendor = alGetString(AL_VENDOR);
|
||||
const char *renderer = alGetString(AL_RENDERER);
|
||||
CONS_Printf("OpenAL Vendor: %s\n", vendor);
|
||||
CONS_Printf("OpenAL Renderer: %s\n", renderer);
|
||||
I_OutputMsg("OpenAL Vendor: %s\n", vendor);
|
||||
I_OutputMsg("OpenAL Renderer: %s\n", renderer);
|
||||
|
||||
|
||||
if (!fastcmp("OpenAL Soft", renderer))
|
||||
|
|
@ -409,8 +409,13 @@ void I_StartupSound(void)
|
|||
music_volume = sfx_volume = 0.f;
|
||||
|
||||
#ifdef HAVE_OPENMPT
|
||||
CONS_Printf("libopenmpt version: %s\n", openmpt_get_string("library_version"));
|
||||
CONS_Printf("libopenmpt build date: %s\n", openmpt_get_string("build"));
|
||||
const char *openmptstr;
|
||||
openmptstr = openmpt_get_string("library_version");
|
||||
I_OutputMsg("libopenmpt version: %s\n", openmptstr);
|
||||
openmpt_free_string(openmptstr);
|
||||
openmptstr = openmpt_get_string("build");
|
||||
I_OutputMsg("libopenmpt build date: %s\n", openmptstr);
|
||||
openmpt_free_string(openmptstr);
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_THREADS
|
||||
|
|
|
|||
Loading…
Reference in a new issue