- consolidated the dynamic tile handling for Duke and RR frontends

This commit is contained in:
Christoph Oelckers 2020-03-06 17:12:38 +01:00
parent 12a655b58f
commit a5c2152530
35 changed files with 125 additions and 2800 deletions

View file

@ -813,6 +813,8 @@ set (PCH_SOURCES
common/rendering/hwrenderer/postprocessing/hw_postprocess.cpp
common/rendering/hwrenderer/postprocessing/hw_postprocess_cvars.cpp
common/rendering/hwrenderer/utility/hw_shaderpatcher.cpp
dukerr/namesdyn.cpp
)
macro( use_precompiled_header )

View file

@ -397,30 +397,6 @@ void PreloadCache(void)
if ((++cnt & 7) == 0)
gameHandleEvents();
#if 0
if (videoGetRenderMode() != REND_CLASSIC && totalclock - clock > (kTicRate>>2))
{
int const percentComplete = min(100, tabledivide32_noinline(100 * cnt, nPrecacheCount));
// this just prevents the loading screen percentage bar from making large jumps
while (percentDisplayed < percentComplete)
{
gameHandleEvents();
Bsprintf(tempbuf, "Loaded %d%% (%d/%d textures)\n", percentDisplayed, cnt, nPrecacheCount);
viewLoadingScreenUpdate(tempbuf, percentDisplayed);
videoNextPage();
if (totalclock - clock >= 1)
{
clock = totalclock;
percentDisplayed++;
}
}
clock = totalclock;
}
#endif
}
}
memset(gotpic,0,sizeof(gotpic));
@ -1296,20 +1272,6 @@ RESTART:
gRestartGame = 0;
gGameStarted = 0;
levelSetupOptions(0,0);
#if 0
// What's this loop for? Needs checking
while (gGameMenuMgr.m_bActive)
{
gGameMenuMgr.Process();
gameHandleEvents();
if (G_FPSLimit())
{
videoClearScreen(0);
gGameMenuMgr.Draw();
videoNextPage();
}
}
#endif
if (gGameOptions.nGameType != 0)
{
if (!gDemo.at0 && gDemo.at59ef > 0 && gGameOptions.nGameType == 0 && !bNoDemo && demo_playloop)

View file

@ -1011,13 +1011,7 @@ void netInitialize(bool bConsole)
while (numplayers < gNetPlayers)
{
handleevents();
#if 0
if (quitevent)
{
netServerDisconnect();
QuitGame();
}
#endif
if (!bConsole && inputState.GetKeyStatus(sc_Escape))
{
netServerDisconnect();
@ -1174,13 +1168,7 @@ void netInitialize(bool bConsole)
while (bWaitServer)
{
handleevents();
#if 0
if (quitevent)
{
netClientDisconnect();
QuitGame();
}
#endif
if (!bConsole && inputState.GetKeyStatus(sc_Escape))
{
netClientDisconnect();

View file

@ -16,7 +16,6 @@ set( PCH_SOURCES
src/gameexec.cpp
src/gamevars.cpp
src/global.cpp
src/namesdyn.cpp
src/network.cpp
src/osdcmds.cpp
src/player.cpp

View file

@ -24,7 +24,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#define actors_h_
#include "player.h"
# include "namesdyn.h"
# include "dukerr/namesdyn.h"
#include "dukerr/actors.h"
BEGIN_DUKE_NS

View file

@ -37,7 +37,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include "menu/menu.h"
#include "gstrings.h"
#include "version.h"
#include "namesdyn.h"
#include "dukerr/namesdyn.h"
#include "menus.h"
#include "../../glbackend/glbackend.h"
@ -603,7 +603,7 @@ bool GameInterface::DrawSpecialScreen(const DVector2 &origin, int tilenum)
int32_t m, l;
if (!haveCredits)
{
if (tilenum == CREDITSTEXT1)
if (tilenum == 2504)
{
Menu_DrawBackground(origin);
m = int(origin.X * 65536) + (20 << 16);
@ -663,7 +663,7 @@ bool GameInterface::DrawSpecialScreen(const DVector2 &origin, int tilenum)
shadowminitext(m, l, "Michael Hadwin", 12); l += 7 << 16;
return true;
}
else if (tilenum == CREDITSTEXT2__STATIC)
else if (tilenum == 2505)
{
Menu_DrawBackground(origin);
m = int(origin.X * 65536) + (20 << 16);
@ -705,7 +705,7 @@ bool GameInterface::DrawSpecialScreen(const DVector2 &origin, int tilenum)
shadowminitext(m, l, "Thanks for the hardware, guys.", 12); l += 7 << 16;
return true;
}
else if (tilenum == CREDITSTEXT3)
else if (tilenum == 2506)
{
Menu_DrawBackground(origin);
mgametextcenter(int(origin.X * 65536), int(origin.Y * 65536) + (50 << 16), "Duke Nukem 3D is a trademark of\n"

View file

@ -117,7 +117,7 @@ EDUKE32_STATIC_ASSERT(7 <= MAXTILES-MAXUSERTILES);
#include "global.h"
#include "inv.h"
#include "macros.h"
#include "namesdyn.h"
#include "dukerr/namesdyn.h"
#include "network.h"
#include "player.h"
#include "quotes.h"

View file

@ -31,7 +31,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include "m_crc32.h"
#include "duke3d.h"
#include "gameexec.h"
#include "namesdyn.h"
#include "dukerr/namesdyn.h"
#include "osd.h"
#include "savegame.h"
#include "printf.h"

View file

@ -103,25 +103,6 @@ int32_t g_spriteGravity = 176;
int32_t g_timerTicsPerSecond = TICRATE;
int32_t g_tripbombRadius = 3880;
int16_t g_blimpSpawnItems[15] =
{
RPGSPRITE__STATIC,
CHAINGUNSPRITE__STATIC,
DEVISTATORAMMO__STATIC,
RPGAMMO__STATIC,
RPGAMMO__STATIC,
JETPACK__STATIC,
SHIELD__STATIC,
FIRSTAID__STATIC,
STEROIDS__STATIC,
RPGAMMO__STATIC,
RPGAMMO__STATIC,
RPGSPRITE__STATIC,
RPGAMMO__STATIC,
FREEZESPRITE__STATIC,
FREEZEAMMO__STATIC
};
char CheatKeys[2] = { sc_D, sc_N };
END_DUKE_NS

View file

@ -177,7 +177,6 @@ extern int32_t g_timerTicsPerSecond;
extern int32_t g_tripbombRadius;
extern int32_t g_volumeCnt;
extern int16_t g_blimpSpawnItems[15];
extern int32_t g_gametypeFlags[MAXGAMETYPES];

View file

@ -22,6 +22,8 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#pragma once
#include "dukerr/namesdyn.h"
BEGIN_DUKE_NS
enum dukeinv_t
@ -58,21 +60,4 @@ extern int const icon_to_inv[ICON_MAX];
extern int const inv_to_icon[GET_MAX];
enum dukeweapon_t
{
KNEE_WEAPON, // 0
PISTOL_WEAPON,
SHOTGUN_WEAPON,
CHAINGUN_WEAPON,
RPG_WEAPON,
HANDBOMB_WEAPON, // 5
SHRINKER_WEAPON,
DEVISTATOR_WEAPON,
TRIPBOMB_WEAPON,
FREEZE_WEAPON,
HANDREMOTE_WEAPON, // 10
GROW_WEAPON,
MAX_WEAPONS
};
END_DUKE_NS

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1763,10 +1763,10 @@ static void G_DrawTileScaled(int drawX, int drawY, int tileNum, int drawShade, i
int drawYOffset = 0;
int drawXOffset = 192<<16;
switch (hudweap.cur)
switch (DYNAMICWEAPONMAP(hudweap.cur))
{
case DEVISTATOR_WEAPON:
case TRIPBOMB_WEAPON:
case DEVISTATOR_WEAPON__STATIC:
case TRIPBOMB_WEAPON__STATIC:
drawXOffset = 160<<16;
break;
default:
@ -2257,9 +2257,9 @@ void P_DisplayWeapon(void)
int const weaponPal = P_GetHudPal(pPlayer);
if (!FURY)
switch (currentWeapon)
switch (DYNAMICWEAPONMAP(currentWeapon))
{
case KNEE_WEAPON:
case KNEE_WEAPON__STATIC:
{
int const kneePal = P_GetKneePal(pPlayer, weaponPal);
@ -2274,7 +2274,7 @@ void P_DisplayWeapon(void)
break;
}
case TRIPBOMB_WEAPON:
case TRIPBOMB_WEAPON__STATIC:
weaponX += 8;
weaponYOffset -= 10;
@ -2292,7 +2292,7 @@ void P_DisplayWeapon(void)
weaponPal);
break;
case RPG_WEAPON:
case RPG_WEAPON__STATIC:
weaponX -= sintable[(768 + ((*weaponFrame) << 7)) & 2047] >> 11;
weaponYOffset += sintable[(768 + ((*weaponFrame) << 7)) & 2047] >> 11;
@ -2320,7 +2320,7 @@ void P_DisplayWeapon(void)
weaponBits, weaponPal);
break;
case SHOTGUN_WEAPON:
case SHOTGUN_WEAPON__STATIC:
weaponX -= 8;
if (WW2GI)
@ -2427,7 +2427,7 @@ void P_DisplayWeapon(void)
}
break;
case CHAINGUN_WEAPON:
case CHAINGUN_WEAPON__STATIC:
if (*weaponFrame > 0)
{
weaponYOffset -= sintable[(*weaponFrame)<<7]>>12;
@ -2554,7 +2554,7 @@ void P_DisplayWeapon(void)
CHAINGUN, weaponShade, weaponBits, weaponPal);
break;
case PISTOL_WEAPON:
case PISTOL_WEAPON__STATIC:
if ((*weaponFrame) < PWEAPON(screenpeek, PISTOL_WEAPON, TotalTime)+1)
{
static uint8_t pistolFrames[] = { 0, 1, 2 };
@ -2613,7 +2613,7 @@ void P_DisplayWeapon(void)
break;
case HANDBOMB_WEAPON:
case HANDBOMB_WEAPON__STATIC:
{
static uint8_t pipebombFrames [] = { 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2 };
@ -2663,7 +2663,7 @@ void P_DisplayWeapon(void)
}
break;
case HANDREMOTE_WEAPON:
case HANDREMOTE_WEAPON__STATIC:
{
static uint8_t remoteFrames[] = { 0, 1, 1, 2, 1, 1, 0, 0, 0, 0, 0 };
@ -2676,7 +2676,7 @@ void P_DisplayWeapon(void)
}
break;
case DEVISTATOR_WEAPON:
case DEVISTATOR_WEAPON__STATIC:
if (WW2GI)
{
if (*weaponFrame)
@ -2761,7 +2761,7 @@ void P_DisplayWeapon(void)
}
break;
case FREEZE_WEAPON:
case FREEZE_WEAPON__STATIC:
if (!(duke3d_globalflags & DUKE3D_NO_WIDESCREEN_PINNING) && DUKE)
weaponBits |= 512;
@ -2785,8 +2785,8 @@ void P_DisplayWeapon(void)
FREEZE, weaponShade, weaponBits, weaponPal);
break;
case GROW_WEAPON:
case SHRINKER_WEAPON:
case GROW_WEAPON__STATIC:
case SHRINKER_WEAPON__STATIC:
weaponX += 28;
weaponY += 18;
@ -3332,10 +3332,6 @@ access_incs:
return 0;
}
int16_t WeaponPickupSprites[MAX_WEAPONS] = { KNEE__STATIC, FIRSTGUNSPRITE__STATIC, SHOTGUNSPRITE__STATIC,
CHAINGUNSPRITE__STATIC, RPGSPRITE__STATIC, HEAVYHBOMB__STATIC, SHRINKERSPRITE__STATIC, DEVISTATORSPRITE__STATIC,
TRIPBOMBSPRITE__STATIC, FREEZESPRITE__STATIC, HEAVYHBOMB__STATIC, SHRINKERSPRITE__STATIC
};
// this is used for player deaths
void P_DropWeapon(int const playerNum)
{
@ -3349,10 +3345,10 @@ void P_DropWeapon(int const playerNum)
A_Spawn(pPlayer->i, WeaponPickupSprites[currentWeapon]);
#ifndef EDUKE32_STANDALONE
else if (!FURY)
switch (PWEAPON(playerNum, currentWeapon, WorksLike))
switch (DYNAMICWEAPONMAP(PWEAPON(playerNum, currentWeapon, WorksLike)))
{
case RPG_WEAPON:
case HANDBOMB_WEAPON: A_Spawn(pPlayer->i, EXPLOSION2); break;
case RPG_WEAPON__STATIC:
case HANDBOMB_WEAPON__STATIC: A_Spawn(pPlayer->i, EXPLOSION2); break;
}
#endif
}
@ -3817,11 +3813,7 @@ void P_FragPlayer(int playerNum)
}
}
#ifdef LUNATIC
# define PIPEBOMB_CONTROL(playerNum) (g_player[playerNum].ps->pipebombControl)
#else
# define PIPEBOMB_CONTROL(playerNum) (Gv_GetVarByLabel("PIPEBOMB_CONTROL", PIPEBOMB_REMOTE, -1, playerNum))
#endif
static void P_ProcessWeapon(int playerNum)
{
@ -3980,9 +3972,9 @@ static void P_ProcessWeapon(int playerNum)
// this event is deprecated
VM_OnEvent(EVENT_FIREWEAPON, pPlayer->i, playerNum);
switch (PWEAPON(playerNum, pPlayer->curr_weapon, WorksLike))
switch (DYNAMICWEAPONMAP(PWEAPON(playerNum, pPlayer->curr_weapon, WorksLike)))
{
case HANDBOMB_WEAPON:
case HANDBOMB_WEAPON__STATIC:
pPlayer->hbomb_hold_delay = 0;
if (pPlayer->ammo_amount[pPlayer->curr_weapon] > 0)
{
@ -3992,7 +3984,7 @@ static void P_ProcessWeapon(int playerNum)
}
break;
case HANDREMOTE_WEAPON:
case HANDREMOTE_WEAPON__STATIC:
pPlayer->hbomb_hold_delay = 0;
(*weaponFrame) = 1;
if (PWEAPON(playerNum, pPlayer->curr_weapon, InitialSound) > 0)
@ -4000,7 +3992,7 @@ static void P_ProcessWeapon(int playerNum)
break;
case TRIPBOMB_WEAPON:
case TRIPBOMB_WEAPON__STATIC:
if (pPlayer->ammo_amount[pPlayer->curr_weapon] > 0)
{
hitdata_t hitData;
@ -4045,13 +4037,13 @@ static void P_ProcessWeapon(int playerNum)
}
break;
case PISTOL_WEAPON:
case SHOTGUN_WEAPON:
case CHAINGUN_WEAPON:
case SHRINKER_WEAPON:
case GROW_WEAPON:
case FREEZE_WEAPON:
case RPG_WEAPON:
case PISTOL_WEAPON__STATIC:
case SHOTGUN_WEAPON__STATIC:
case CHAINGUN_WEAPON__STATIC:
case SHRINKER_WEAPON__STATIC:
case GROW_WEAPON__STATIC:
case FREEZE_WEAPON__STATIC:
case RPG_WEAPON__STATIC:
if (pPlayer->ammo_amount[pPlayer->curr_weapon] > 0)
{
(*weaponFrame) = 1;
@ -4060,7 +4052,7 @@ static void P_ProcessWeapon(int playerNum)
}
break;
case DEVISTATOR_WEAPON:
case DEVISTATOR_WEAPON__STATIC:
if (pPlayer->ammo_amount[pPlayer->curr_weapon] > 0)
{
(*weaponFrame) = 1;
@ -4070,7 +4062,7 @@ static void P_ProcessWeapon(int playerNum)
}
break;
case KNEE_WEAPON:
case KNEE_WEAPON__STATIC:
if (pPlayer->quick_kick == 0)
{
(*weaponFrame) = 1;

View file

@ -131,7 +131,7 @@ typedef struct {
uint8_t extbits;
} input_t;
#pragma pack(push,1)
//#pragma pack(push,1)
// XXX: r1625 changed a lot types here, among others
// * int32_t --> int16_t
// * int16_t --> int8_t
@ -152,13 +152,7 @@ typedef struct {
int32_t autostep, autostep_sbw;
uint32_t interface_toggle;
#ifdef LUNATIC
int32_t pipebombControl, pipebombLifetime, pipebombLifetimeVar;
int32_t tripbombControl, tripbombLifetime, tripbombLifetimeVar;
int32_t zrange;
int16_t angrange, autoaimang;
#endif
uint16_t max_actors_killed, actors_killed;
uint16_t gotweapon, zoom;
@ -210,16 +204,7 @@ typedef struct {
int8_t last_used_weapon;
#ifdef LUNATIC
int8_t palsfadespeed, palsfadenext, palsfadeprio, padding2_;
// The player index. Always valid since we have no loose DukePlayer_t's
// anywhere (like with spritetype_t): g_player[i].ps->wa.idx == i.
struct { int32_t idx; } wa;
#endif
int8_t crouch_toggle;
int8_t padding_[1];
} DukePlayer_t;
// KEEPINSYNC lunatic/_defs_game.lua
@ -239,7 +224,7 @@ typedef struct {
char user_name[32];
uint32_t revision;
} playerdata_t;
#pragma pack(pop)
//#pragma pack(pop)
// KEEPINSYNC lunatic/con_lang.lua
typedef struct
@ -326,7 +311,6 @@ typedef struct {
extern input_t inputfifo[MOVEFIFOSIZ][MAXPLAYERS];
extern playerspawn_t g_playerSpawnPoints[MAXPLAYERS];
extern playerdata_t *const g_player;
extern int16_t WeaponPickupSprites[MAX_WEAPONS];
extern hudweapon_t hudweap;
extern int32_t g_levelTextTime;
extern int32_t g_numObituaries;

View file

@ -2793,9 +2793,9 @@ CHECKINV1:
{
// this accounts for the expander when handling next/previous
switch (currentWeapon)
switch (DYNAMICWEAPONMAP(currentWeapon))
{
case DEVISTATOR_WEAPON:
case DEVISTATOR_WEAPON__STATIC:
if ((int32_t) weaponNum == -1)
{
if (PLUTOPAK)
@ -2807,11 +2807,11 @@ CHECKINV1:
currentWeapon++;
break;
case GROW_WEAPON:
case GROW_WEAPON__STATIC:
currentWeapon = ((int32_t) weaponNum == -1) ? SHRINKER_WEAPON : DEVISTATOR_WEAPON;
break;
case SHRINKER_WEAPON:
case SHRINKER_WEAPON__STATIC:
if ((int32_t)weaponNum == 1)
{
if (PLUTOPAK)
@ -2823,7 +2823,7 @@ CHECKINV1:
currentWeapon--;
break;
case HANDREMOTE_WEAPON:
case HANDREMOTE_WEAPON__STATIC:
i = currentWeapon = HANDBOMB_WEAPON;
fallthrough__;
default:
@ -2857,12 +2857,12 @@ CHECKINV1:
if (weaponNum >= 12) // alt weapon, last used weapon
{
uint32_t const weaponNumSwitch = weaponNum == 13 ? pPlayer->last_used_weapon : pPlayer->curr_weapon;
switch (weaponNumSwitch)
switch (DYNAMICWEAPONMAP(weaponNumSwitch))
{
case HANDREMOTE_WEAPON:
case HANDREMOTE_WEAPON__STATIC:
weaponNum = HANDBOMB_WEAPON;
break;
case GROW_WEAPON:
case GROW_WEAPON__STATIC:
weaponNum = SHRINKER_WEAPON;
break;
default:
@ -2918,28 +2918,28 @@ CHECKINV1:
pPlayer->weapon_pos = WEAPON_POS_LOWER;
}
else if ((uint32_t)weaponNum < MAX_WEAPONS && (pPlayer->gotweapon & (1<<weaponNum)) && (uint32_t)pPlayer->curr_weapon != weaponNum)
switch (weaponNum)
switch (DYNAMICWEAPONMAP(weaponNum))
{
case PISTOL_WEAPON:
case SHOTGUN_WEAPON:
case CHAINGUN_WEAPON:
case RPG_WEAPON:
case DEVISTATOR_WEAPON:
case FREEZE_WEAPON:
case GROW_WEAPON:
case SHRINKER_WEAPON:
case PISTOL_WEAPON__STATIC:
case SHOTGUN_WEAPON__STATIC:
case CHAINGUN_WEAPON__STATIC:
case RPG_WEAPON__STATIC:
case DEVISTATOR_WEAPON__STATIC:
case FREEZE_WEAPON__STATIC:
case GROW_WEAPON__STATIC:
case SHRINKER_WEAPON__STATIC:
if (pPlayer->ammo_amount[weaponNum] == 0 && pPlayer->show_empty_weapon == 0)
{
pPlayer->last_full_weapon = pPlayer->curr_weapon;
pPlayer->show_empty_weapon = 32;
}
fallthrough__;
case KNEE_WEAPON:
case HANDREMOTE_WEAPON:
case KNEE_WEAPON__STATIC:
case HANDREMOTE_WEAPON__STATIC:
P_AddWeapon(pPlayer, weaponNum, 1);
break;
case HANDBOMB_WEAPON:
case TRIPBOMB_WEAPON:
case HANDBOMB_WEAPON__STATIC:
case TRIPBOMB_WEAPON__STATIC:
if (pPlayer->ammo_amount[weaponNum] > 0 && (pPlayer->gotweapon & (1<<weaponNum)))
P_AddWeapon(pPlayer, weaponNum, 1);
break;

View file

@ -26,7 +26,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include "actors.h" // actor_t
#include "gamevars.h"
#include "macros.h"
#include "namesdyn.h" // for G_GetForcefieldPicnum()
#include "dukerr/namesdyn.h" // for G_GetForcefieldPicnum()
#include "player.h" // playerspawn_t
BEGIN_DUKE_NS

View file

@ -25,7 +25,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include "compat.h"
#include "build.h"
#include "namesdyn.h"
#include "dukerr/namesdyn.h"
#include "sounds.h"
#include "soundsdyn.h"
#include "global.h"

View file

@ -25,10 +25,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include "build.h"
#include "namesdyn.h"
#include "global.h"
#include "gamecontrol.h"
BEGIN_RR_NS
BEGIN_DUKERR_NS
#define DVPTR(x) &x
@ -43,6 +42,31 @@ struct dynitem
const int16_t staticval_rr;
};
int16_t g_blimpSpawnItems[15] =
{
RPGSPRITE__STATIC,
CHAINGUNSPRITE__STATIC,
DEVISTATORAMMO__STATIC,
RPGAMMO__STATIC,
RPGAMMO__STATIC,
JETPACK__STATIC,
SHIELD__STATIC,
FIRSTAID__STATIC,
STEROIDS__STATIC,
RPGAMMO__STATIC,
RPGAMMO__STATIC,
RPGSPRITE__STATIC,
RPGAMMO__STATIC,
FREEZESPRITE__STATIC,
FREEZEAMMO__STATIC
};
int16_t WeaponPickupSprites[MAX_WEAPONS] = { KNEE__STATIC, FIRSTGUNSPRITE__STATIC, SHOTGUNSPRITE__STATIC,
CHAINGUNSPRITE__STATIC, RPGSPRITE__STATIC, HEAVYHBOMB__STATIC, SHRINKERSPRITE__STATIC, DEVISTATORSPRITE__STATIC,
TRIPBOMBSPRITE__STATIC, FREEZESPRITE__STATIC, HEAVYHBOMB__STATIC, SHRINKERSPRITE__STATIC
};
static struct dynitem g_dynTileList[] =
{
{ "SECTOREFFECTOR", DVPTR(SECTOREFFECTOR), SECTOREFFECTOR__STATIC, SECTOREFFECTOR__STATICRR },
@ -645,6 +669,7 @@ static struct dynitem g_dynTileList[] =
{ "FOOTPRINT", DVPTR(FOOTPRINT), FOOTPRINT__STATIC, FOOTPRINT__STATICRR },
{ "POOP", DVPTR(POOP), POOP__STATIC, POOP__STATICRR },
{ "FRAMEEFFECT1", DVPTR(FRAMEEFFECT1), FRAMEEFFECT1__STATIC, FRAMEEFFECT1__STATICRR },
{ "FRAMEEFFECT1_13", DVPTR(FRAMEEFFECT1_13), FRAMEEFFECT1_13__STATIC, FRAMEEFFECT1_13__STATICRR },
{ "PANNEL3", DVPTR(PANNEL3), PANNEL3__STATIC, PANNEL3__STATICRR },
{ "SCREENBREAK14", DVPTR(SCREENBREAK14), SCREENBREAK14__STATIC, SCREENBREAK14__STATICRR },
{ "SCREENBREAK15", DVPTR(SCREENBREAK15), SCREENBREAK15__STATIC, SCREENBREAK15__STATICRR },
@ -2065,6 +2090,7 @@ int32_t FEM9 = FEM9__STATIC;
int32_t FOOTPRINT = FOOTPRINT__STATIC;
int32_t POOP = POOP__STATIC;
int32_t FRAMEEFFECT1 = FRAMEEFFECT1__STATIC;
int32_t FRAMEEFFECT1_13 = FRAMEEFFECT1_13__STATIC;
int32_t PANNEL3 = PANNEL3__STATIC;
int32_t SCREENBREAK14 = SCREENBREAK14__STATIC;
int32_t SCREENBREAK15 = SCREENBREAK15__STATIC;
@ -2970,18 +2996,17 @@ void G_InitDynamicTiles(void)
Bmemset(DynamicTileMap, 0, sizeof(DynamicTileMap));
if (RR)
if (g_gameType & GAMEFLAG_RR)
{
for (i = 0; g_dynTileList[i].staticval >= 0; i++) {
*(g_dynTileList[i].dynvalptr) = -g_dynTileList[i].staticval_rr;
if (RRRA && *(g_dynTileList[i].dynvalptr) == -UFO1__STATICRR) *(g_dynTileList[i].dynvalptr) = -UFO1__STATICRRRA;
if ((g_gameType & GAMEFLAG_RRRA) && *(g_dynTileList[i].dynvalptr) == -UFO1__STATICRR) *(g_dynTileList[i].dynvalptr) = -UFO1__STATICRRRA;
DynamicTileMap[*(g_dynTileList[i].dynvalptr)] = g_dynTileList[i].staticval_rr;
NameToTileIndex.Insert(g_dynTileList[i].str, *(g_dynTileList[i].dynvalptr));
}
for (i = 0; g_dynWeaponList[i].staticval >= 0; i++)
*(g_dynWeaponList[i].dynvalptr) = g_dynWeaponList[i].staticval_rr;
PHEIGHT = PHEIGHT_RR;
}
for (i=0; g_dynTileList[i].staticval >= 0; i++)
@ -3012,7 +3037,7 @@ void G_InitDynamicTiles(void)
g_blimpSpawnItems[13] = FREEZESPRITE;
g_blimpSpawnItems[14] = FREEZEAMMO;
if (RR)
if (g_gameType & GAMEFLAG_RR)
{
WeaponPickupSprites[0] = KNEE;
WeaponPickupSprites[1] = FIRSTGUNSPRITE;
@ -3042,10 +3067,5 @@ void G_InitDynamicTiles(void)
WeaponPickupSprites[10] = HEAVYHBOMB;
WeaponPickupSprites[11] = SHRINKERSPRITE;
}
// ouch... the big background image takes up a fuckload of memory and takes a second to load!
#ifdef EDUKE32_GLES
MENUSCREEN = LOADSCREEN = BETASCREEN;
#endif
}
END_RR_NS
END_DUKERR_NS

View file

@ -23,7 +23,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#ifndef namesdyn_h__
#define namesdyn_h__
BEGIN_RR_NS
BEGIN_DUKERR_NS
#define SECTOREFFECTOR__STATIC 1
@ -625,6 +625,7 @@ BEGIN_RR_NS
#define FEM9__STATIC 3450
#define FOOTPRINT__STATIC 3701
#define POOP__STATIC 4094
#define FRAMEEFFECT1_13__STATIC 3999
#define FRAMEEFFECT1__STATIC 4095
#define PANNEL3__STATIC 4099
#define SCREENBREAK14__STATIC 4120
@ -1311,6 +1312,7 @@ BEGIN_RR_NS
#define FOOTPRINT__STATICRR -1160
#define POOP__STATICRR -2998
#define FRAMEEFFECT1__STATICRR -2999
#define FRAMEEFFECT1_13__STATICRR -3000
#define PANNEL3__STATICRR -3005
#define SCREENBREAK14__STATICRR -3008
#define SCREENBREAK15__STATICRR -3009
@ -2729,6 +2731,7 @@ extern int32_t FEM9;
extern int32_t FOOTPRINT;
extern int32_t POOP;
extern int32_t FRAMEEFFECT1;
extern int32_t FRAMEEFFECT1_13;
extern int32_t PANNEL3;
extern int32_t SCREENBREAK14;
extern int32_t SCREENBREAK15;
@ -3593,6 +3596,9 @@ extern int32_t CHICKEN_WEAPON;
#define DYNAMICWEAPONMAP(Weaponnum) (DynamicWeaponMap[Weaponnum])
END_RR_NS
extern int16_t g_blimpSpawnItems[15];
extern int16_t WeaponPickupSprites[MAX_WEAPONS];
END_DUKERR_NS
#endif // namesdyn_h__

View file

@ -13,7 +13,6 @@ set( PCH_SOURCES
src/gameexec.cpp
src/gamevars.cpp
src/global.cpp
src/namesdyn.cpp
src/net.cpp
src/osdcmds.cpp
src/player.cpp

View file

@ -24,7 +24,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#define actors_h_
#include "player.h"
# include "namesdyn.h"
# include "dukerr/namesdyn.h"
#include "dukerr/actors.h"
BEGIN_RR_NS

View file

@ -37,7 +37,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include "menu/menu.h"
#include "gstrings.h"
#include "version.h"
#include "namesdyn.h"
#include "dukerr/namesdyn.h"
#include "../../glbackend/glbackend.h"

View file

@ -729,8 +729,6 @@ nextdemo_nomenu:
// if fast-forwarding, we must update totalclock
totalclock += TICSPERFRAME;
// OSD_Printf("t:%d, l+T:%d; cnt:%d, goal:%d%s", totalclock, (lockclock+TICSPERFRAME),
// g_demo_cnt, g_demo_goalCnt, g_demo_cnt>=g_demo_goalCnt?" ":"\n");
if (g_demo_cnt>=g_demo_goalCnt)
{
g_demo_goalCnt = 0;
@ -816,16 +814,6 @@ nextdemo_nomenu:
if (g_demo_showStats)
{
#if 0
if (g_demo_cnt<tmpdifftime)
gametext_center(100, "DIFF");
{
char buf[32];
Bsprintf(buf, "RC:%4d TC:%5d", ud.reccnt, g_demo_cnt);
gametext_center_number(100, buf);
}
#endif
j=g_demo_cnt/REALGAMETICSPERSEC;
Bsprintf(buf, "%02d:%02d", j/60, j%60);
gametext_widenumber(18, 16, buf);
@ -914,9 +902,6 @@ nextdemo_nomenu:
if (foundemo)
{
#if KRANDDEBUG
krd_print("krandplay.log");
#endif
g_demo_recFilePtr.Close();
}
@ -933,11 +918,6 @@ nextdemo_nomenu:
if (g_player[myconnectindex].ps->gm&MODE_MENU)
goto RECHECK;
#if KRANDDEBUG
if (foundemo)
krd_print("krandplay.log");
#endif
// finished playing a demo and not in menu:
// return so that e.g. the title can be shown
return 1;

View file

@ -120,7 +120,7 @@ END_RR_NS
#include "global.h"
#include "inv.h"
#include "macros.h"
#include "namesdyn.h"
#include "dukerr/namesdyn.h"
#include "net.h"
#include "player.h"
#include "quotes.h"

View file

@ -1,4 +1,4 @@
//-------------------------------------------------------------------------
//-------------------------------------------------------------------------
/*
Copyright (C) 2016 EDuke32 developers and contributors
@ -6957,6 +6957,8 @@ static void G_Startup(void)
G_FatalEngineError();
G_InitDynamicTiles();
if (RR) PHEIGHT = PHEIGHT_RR;
G_InitDynamicSounds();
// These depend on having the dynamic tile and/or sound mappings set up:

View file

@ -23,7 +23,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include "ns.h" // Must come before everything else!
#include "duke3d.h"
#include "namesdyn.h"
#include "dukerr/namesdyn.h"
#include "gamedef.h"
#include "gameexec.h"
#include "savegame.h"

View file

@ -25,7 +25,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include "duke3d.h"
#include "menus.h"
#include "savegame.h"
#include "namesdyn.h"
#include "dukerr/namesdyn.h"
#include "gamevars.h"
//#include "vfs.h"

View file

@ -99,24 +99,6 @@ int32_t g_spriteGravity = 176;
int32_t g_timerTicsPerSecond = TICRATE;
int32_t g_tripbombRadius = 3880;
int16_t g_blimpSpawnItems[15] =
{
RPGSPRITE__STATIC,
CHAINGUNSPRITE__STATIC,
DEVISTATORAMMO__STATIC,
RPGAMMO__STATIC,
RPGAMMO__STATIC,
JETPACK__STATIC,
SHIELD__STATIC,
FIRSTAID__STATIC,
STEROIDS__STATIC,
RPGAMMO__STATIC,
RPGAMMO__STATIC,
RPGSPRITE__STATIC,
RPGAMMO__STATIC,
FREEZESPRITE__STATIC,
FREEZEAMMO__STATIC
};
char CheatKeys[2] = { sc_D, sc_N };

View file

@ -275,7 +275,6 @@ extern int32_t g_timerTicsPerSecond;
extern int32_t g_tripbombRadius;
extern int32_t g_volumeCnt;
extern int16_t g_blimpSpawnItems[15];
extern int32_t g_gametypeFlags[MAXGAMETYPES];
extern const char *s_buildDate;

View file

@ -4580,10 +4580,7 @@ static int32_t P_DoCounters(int playerNum)
return 0;
}
int16_t WeaponPickupSprites[MAX_WEAPONS] = { KNEE__STATIC, FIRSTGUNSPRITE__STATIC, SHOTGUNSPRITE__STATIC,
CHAINGUNSPRITE__STATIC, RPGSPRITE__STATIC, HEAVYHBOMB__STATIC, SHRINKERSPRITE__STATIC, DEVISTATORSPRITE__STATIC,
TRIPBOMBSPRITE__STATIC, FREEZESPRITE__STATIC, HEAVYHBOMB__STATIC, SHRINKERSPRITE__STATIC
};
// this is used for player deaths
void P_DropWeapon(int const playerNum)
{

View file

@ -24,7 +24,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#define player_h_
#include "inv.h"
#include "namesdyn.h"
#include "dukerr/namesdyn.h"
#include "fix16.h"
#include "net.h"
@ -299,7 +299,6 @@ typedef struct {
extern input_t inputfifo[MOVEFIFOSIZ][MAXPLAYERS];
extern playerspawn_t g_playerSpawnPoints[MAXPLAYERS];
extern playerdata_t *const g_player;
extern int16_t WeaponPickupSprites[MAX_WEAPONS];
extern hudweapon_t hudweap;
extern int32_t g_levelTextTime;
extern int32_t g_numObituaries;

View file

@ -26,7 +26,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include "actors.h" // actor_t
#include "gamevars.h"
#include "macros.h"
#include "namesdyn.h" // for G_GetForcefieldPicnum()
#include "dukerr/namesdyn.h" // for G_GetForcefieldPicnum()
#include "player.h" // playerspawn_t
BEGIN_RR_NS

View file

@ -24,7 +24,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include "compat.h"
#include "build.h"
#include "namesdyn.h"
#include "dukerr/namesdyn.h"
#include "sounds.h"
#include "soundsdyn.h"
#include "global.h"

View file

@ -516,9 +516,9 @@ ImageScroller "CreditsMenu"
{
ifgame(Duke, Nam, WW2GI)
{
ImageItem "CREDITSTEXT1", 990
ImageItem "CREDITSTEXT2", 991
ImageItem "CREDITSTEXT3", 992
ImageItem "#2504", 990
ImageItem "#2505", 991
ImageItem "#2506", 992
animatedtransition
class "Duke.ImageScrollerMenu"
}