From ca51695870624db023c892fbc32293a40dee4788 Mon Sep 17 00:00:00 2001 From: GenericHeroGuy Date: Sun, 29 Mar 2026 14:41:57 +0200 Subject: [PATCH] dt7 stuff also fixed model loading on my machine --- src/d_ticcmd.h | 2 -- src/deh_tables.c | 5 ----- src/g_demo.c | 20 -------------------- src/g_game.c | 8 +++----- src/hardware/hw_md2.c | 17 ++++++----------- src/hardware/hw_things.c | 4 ++-- src/k_hud.c | 7 +++++-- src/p_mobj.c | 2 ++ src/r_defs.h | 6 ++---- src/screen.c | 4 ++-- 10 files changed, 22 insertions(+), 53 deletions(-) diff --git a/src/d_ticcmd.h b/src/d_ticcmd.h index 8075344ef..d636043c4 100644 --- a/src/d_ticcmd.h +++ b/src/d_ticcmd.h @@ -73,8 +73,6 @@ struct ticcmd_t UINT16 buttons; UINT8 latency; // Netgames: how many tics ago was this ticcmd generated from this player's end? UINT8 flags; - SINT8 tilt; - UINT8 shake; } ATTRPACK; #ifdef __cplusplus diff --git a/src/deh_tables.c b/src/deh_tables.c index ccd166d03..bf06d47d5 100644 --- a/src/deh_tables.c +++ b/src/deh_tables.c @@ -1040,11 +1040,6 @@ 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_NOAFFINE",RF_NOAFFINE}, {"RF_DONTDRAW",RF_DONTDRAW}, {"RF_DONTDRAWP1",RF_DONTDRAWP1}, diff --git a/src/g_demo.c b/src/g_demo.c index 2139722ae..24980f8f5 100644 --- a/src/g_demo.c +++ b/src/g_demo.c @@ -145,8 +145,6 @@ demoghost *ghosts = NULL; #define ZT_AIMING 0x0040 #define ZT_LATENCY 0x0080 #define ZT_FLAGS 0x0100 -#define ZT_IMUTILT 0x0200 -#define ZT_IMUSHAKE 0x0400 // Ziptics are UINT16 now, go nuts #define DEMOMARKER 0x80 // demobuf.end @@ -403,10 +401,6 @@ static UINT8 *G_ReadZipTic(ticcmd_t *cmd, UINT8 *dp, UINT16 version) cmd->latency = READUINT8(dp); if (ziptic & ZT_FLAGS) cmd->flags = READUINT8(dp); - if (ziptic & ZT_IMUTILT) - cmd->tilt = READSINT8(dp); - if (ziptic & ZT_IMUSHAKE) - cmd->shake = READUINT8(dp); if (version < 0x000a && ziptic & 0x8000) // ZT_BOT { @@ -1590,20 +1584,6 @@ void G_WriteDemoTiccmd(ticcmd_t *cmd, INT32 playernum) ziptic |= ZT_FLAGS; } - if (cmd->tilt != oldcmd[playernum].tilt) - { - WRITESINT8(demobuf.p,cmd->tilt); - oldcmd[playernum].tilt = cmd->tilt; - ziptic |= ZT_IMUTILT; - } - - if (cmd->shake != oldcmd[playernum].shake) - { - WRITESINT8(demobuf.p,cmd->shake); - oldcmd[playernum].shake = cmd->shake; - ziptic |= ZT_IMUSHAKE; - } - WRITEUINT16(ziptic_p, ziptic); // attention here for the ticcmd size! diff --git a/src/g_game.c b/src/g_game.c index c8999ad17..cf1941d0c 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -1967,7 +1967,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics, UINT8 ssplayer) if (cv_tiltcontrol[forplayer].value == 1) { - cmd->tilt = INT8_MAX*tilt/FRACUNIT; + //cmd->tilt = INT8_MAX*tilt/FRACUNIT; cmd->flags |= TICCMD_USINGTILT; if (abs(tilt) > MAXGAMEPADTILT) @@ -1975,9 +1975,9 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics, UINT8 ssplayer) } CONS_Debug(DBG_IMU, "Shake: %4.2f\n", FixedToFloat(FV3_Length(&shake))); - cmd->shake = CLAMP((GAMEPADSHAKETHRESHOLD*FV3_Length(&shake))/FRACUNIT, 0, UINT8_MAX); + //cmd->shake = CLAMP((GAMEPADSHAKETHRESHOLD*FV3_Length(&shake))/FRACUNIT, 0, UINT8_MAX); - CONS_Debug(DBG_IMU, "CMD Tilt: %d, Shake: %d\n", cmd->tilt, cmd->shake); + //CONS_Debug(DBG_IMU, "CMD Tilt: %d, Shake: %d\n", cmd->tilt, cmd->shake); } G_DoCameraTurn(cmd, realtics, ssplayer, player); @@ -2012,8 +2012,6 @@ ticcmd_t *G_MoveTiccmd(ticcmd_t* dest, const ticcmd_t* src, const size_t n) dest[i].buttons = (UINT16)SHORT(src[i].buttons); dest[i].latency = src[i].latency; dest[i].flags = src[i].flags; - dest[i].tilt = src[i].tilt; - dest[i].shake = src[i].shake; } return dest; } diff --git a/src/hardware/hw_md2.c b/src/hardware/hw_md2.c index b3ab2bdb1..c22cc34b1 100644 --- a/src/hardware/hw_md2.c +++ b/src/hardware/hw_md2.c @@ -535,17 +535,7 @@ void HWR_InitModels(void) } loadmodelfile: - if (loaded == MD2M_MODELS) - { - modelfile = "models.dat"; - } - else if (loaded == MD2M_BLANMODELS) - { - modelfile = "blanmodels.dat"; - } - - if (!modelfile) - return; // No modelfile somehow? + modelfile = loaded == MD2M_MODELS ? "models.dat" : "blanmodels.dat"; // read the models.dat/blanmodels.dat file //Filename checking fixed ~Monster Iestyn and Golden @@ -556,6 +546,11 @@ loadmodelfile: f = fopen(va("%s"PATHSEP"%s", srb2path, modelfile), "rt"); if (!f) { + if (loaded == MD2M_MODELS) + { + loaded = MD2M_BLANMODELS; + goto loadmodelfile; + } CONS_Printf("Error while loading %s: %s\n", modelfile, strerror(errno)); nomd2s = true; return; diff --git a/src/hardware/hw_things.c b/src/hardware/hw_things.c index 7e9b43847..95957a47a 100644 --- a/src/hardware/hw_things.c +++ b/src/hardware/hw_things.c @@ -1443,7 +1443,7 @@ 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 || (spr->renderflags & RF_NOMODEL))) + 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)) HWR_DrawSprite(spr); else { @@ -1453,7 +1453,7 @@ void HWR_DrawSprites(void) } else { - if (LIKELY(!cv_glmodels.value || md2_models[spr->mobj->sprite].notfound || md2_models[spr->mobj->sprite].scale < 0.0f || (spr->renderflags & RF_NOMODEL))) + if (LIKELY(!cv_glmodels.value || md2_models[spr->mobj->sprite].notfound || md2_models[spr->mobj->sprite].scale < 0.0f)) HWR_DrawSprite(spr); else { diff --git a/src/k_hud.c b/src/k_hud.c index 62c998462..ddf45c7f3 100644 --- a/src/k_hud.c +++ b/src/k_hud.c @@ -5558,7 +5558,6 @@ static void K_drawInput(void) patch_t *shadowPic = kp_inputwheel_shadow; INT16 turning = encoremode ? -stplyr->cmd.turning : stplyr->cmd.turning; - SINT8 tilt = stplyr->cmd.tilt; angle_t rotate = FixedAngle(60 * FixedDiv(abs(turning), 1024) * intsign(turning)); UINT8 *colormap; @@ -5577,7 +5576,11 @@ static void K_drawInput(void) // a la GT7 if (stplyr->cmd.flags & TICCMD_USINGTILT) { - rotate = FixedAngle(60 * ((tilt < 0) ? FixedDiv(-tilt, -(50*INT8_MIN/100)) : FixedDiv(tilt, (50*INT8_MAX/100)))); + fixed_t tilt = G_GetGamepadGravity(stplyrnum).x; + if (demo.playback || !P_IsMachineLocalPlayer(stplyr)) + tilt = -1; + else + rotate = FixedAngle(120 * abs(tilt)); x += 17*FINESINE(rotate>>ANGLETOFINESHIFT) * intsign(tilt); y -= 17*FINECOSINE(rotate>>ANGLETOFINESHIFT); splitflags |= (((leveltime % 3 == 0) && (stplyr->cmd.flags & TICCMD_EXCESSTILT)) ? V_ADD|V_20TRANS : 0); diff --git a/src/p_mobj.c b/src/p_mobj.c index 1d8c80e19..51469e7da 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -10002,6 +10002,7 @@ static boolean P_MobjRegularThink(mobj_t *mobj) mobj->lastlook = player->cmd.turning; } + /* if (player->cmd.shake > GAMEPADSHAKETHRESHOLD) { if (mobj->extravalue3 == 0) mobj->extravalue3 = 1; @@ -10019,6 +10020,7 @@ static boolean P_MobjRegularThink(mobj_t *mobj) { mobj->extravalue2 = 0; } + */ mobj->movecount++; } diff --git a/src/r_defs.h b/src/r_defs.h index 277d676c5..5d6506441 100644 --- a/src/r_defs.h +++ b/src/r_defs.h @@ -1003,9 +1003,7 @@ 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_AFFINEPRESCALE = 0x00040000, // Makes affines scale before rotating, instead of rotating before scaling RF_NOAFFINE = 0x00080000, // Disables affine drawing for this sprite RF_HIDESHIFT = (20), @@ -1024,7 +1022,7 @@ typedef enum RF_MODULATE = ((AST_MODULATE-1)<