Resolved merge conflict and renamed gamerankings to minirankings

This commit is contained in:
Latapostrophe 2018-10-31 15:18:05 +01:00
commit 7a04fd1097
4 changed files with 87 additions and 111 deletions

View file

@ -109,8 +109,6 @@ static patch_t *crosshair[HU_CROSSHAIRS]; // 3 precached crosshair graphics
// protos.
// -------
static void HU_DrawRankings(void);
//static void HU_DrawCoopOverlay(void);
//static void HU_DrawNetplayCoopOverlay(void);
//======================================================================
// KEYBOARD LAYOUTS FOR ENTERING TEXT
@ -2112,12 +2110,7 @@ void HU_Drawer(void)
#ifdef HAVE_BLUA
if (LUA_HudEnabled(hud_rankings))
#endif
HU_DrawRankings();
//if (gametype == GT_COOP)
//HU_DrawNetplayCoopOverlay();
}
//else
//HU_DrawCoopOverlay();
HU_DrawRankings();
#ifdef HAVE_BLUA
LUAh_ScoresHUD();
#endif
@ -2793,65 +2786,6 @@ static void HU_DrawRankings(void)
HU_DrawSpectatorTicker();
}
/*static void HU_DrawCoopOverlay(void)
{
if (token
#ifdef HAVE_BLUA
&& LUA_HudEnabled(hud_tokens)
#endif
)
{
V_DrawString(168, 176, 0, va("- %d", token));
V_DrawSmallScaledPatch(148, 172, 0, tokenicon);
}
#ifdef HAVE_BLUA
if (LUA_HudEnabled(hud_tabemblems))
#endif
if (!modifiedgame || savemoddata)
{
V_DrawString(160, 144, 0, va("- %d/%d", M_CountEmblems(), numemblems+numextraemblems));
V_DrawScaledPatch(128, 144 - SHORT(emblemicon->height)/4, 0, emblemicon);
}
#ifdef HAVE_BLUA
if (!LUA_HudEnabled(hud_coopemeralds))
return;
#endif
if (emeralds & EMERALD1)
V_DrawScaledPatch((BASEVIDWIDTH/2)-8 , (BASEVIDHEIGHT/3)-32, 0, emeraldpics[0]);
if (emeralds & EMERALD2)
V_DrawScaledPatch((BASEVIDWIDTH/2)-8+24, (BASEVIDHEIGHT/3)-16, 0, emeraldpics[1]);
if (emeralds & EMERALD3)
V_DrawScaledPatch((BASEVIDWIDTH/2)-8+24, (BASEVIDHEIGHT/3)+16, 0, emeraldpics[2]);
if (emeralds & EMERALD4)
V_DrawScaledPatch((BASEVIDWIDTH/2)-8 , (BASEVIDHEIGHT/3)+32, 0, emeraldpics[3]);
if (emeralds & EMERALD5)
V_DrawScaledPatch((BASEVIDWIDTH/2)-8-24, (BASEVIDHEIGHT/3)+16, 0, emeraldpics[4]);
if (emeralds & EMERALD6)
V_DrawScaledPatch((BASEVIDWIDTH/2)-8-24, (BASEVIDHEIGHT/3)-16, 0, emeraldpics[5]);
if (emeralds & EMERALD7)
V_DrawScaledPatch((BASEVIDWIDTH/2)-8 , (BASEVIDHEIGHT/3) , 0, emeraldpics[6]);
}
static void HU_DrawNetplayCoopOverlay(void)
{
int i;
#ifdef HAVE_BLUA
if (!LUA_HudEnabled(hud_coopemeralds))
return;
#endif
for (i = 0; i < 7; ++i)
{
if (emeralds & (1 << i))
V_DrawScaledPatch(20 + (i * 20), 6, 0, emeraldpics[i]);
}
}*/
// Interface to CECHO settings for the outside world, avoiding the
// expense (and security problems) of going via the console buffer.
void HU_ClearCEcho(void)

View file

@ -20,6 +20,7 @@
#include "m_cond.h"
#include "k_kart.h"
#include "f_finale.h"
#include "lua_hud.h" // For Lua hud checks
// SOME IMPORTANT VARIABLES DEFINED IN DOOMDEF.H:
// gamespeed is cc (0 for easy, 1 for normal, 2 for hard)
@ -7545,7 +7546,12 @@ void K_drawKartHUD(void)
K_drawKartFirstPerson();
if (splitscreen == 2) // Player 4 in 3P is the minimap :p
{
#ifdef HAVE_BLUA
if (LUA_HudEnabled(hud_minimap))
#endif
K_drawKartMinimap();
}
// Draw full screen stuff that turns off the rest of the HUD
if (mapreset && stplyr == &players[displayplayer])
@ -7570,25 +7576,45 @@ void K_drawKartHUD(void)
K_drawKartPlayerCheck();
if (splitscreen == 0 && cv_kartminimap.value)
K_drawKartMinimap(); // 3P splitscreen is handled above
{
#ifdef HAVE_BLUA
if (LUA_HudEnabled(hud_minimap))
#endif
K_drawKartMinimap(); // 3P splitscreen is handled above
}
// Draw the item window
K_drawKartItem();
#ifdef HAVE_BLUA
if (LUA_HudEnabled(hud_item))
#endif
K_drawKartItem();
// Draw WANTED status
if (G_BattleGametype())
K_drawKartWanted();
{
#ifdef HAVE_BLUA
if (LUA_HudEnabled(hud_wanted))
#endif
K_drawKartWanted();
}
// If not splitscreen, draw...
if (!splitscreen)
{
// Draw the timestamp
K_drawKartTimestamp(stplyr->realtime, TIME_X, TIME_Y, gamemap, true);
#ifdef HAVE_BLUA
if (LUA_HudEnabled(hud_time))
#endif
K_drawKartTimestamp(stplyr->realtime, TIME_X, TIME_Y, gamemap, true);
if (!modeattacking)
{
// The top-four faces on the left
isfreeplay = K_drawKartPositionFaces();
#ifdef HAVE_BLUA
if (LUA_HudEnabled(hud_minirankings))
#endif
isfreeplay = K_drawKartPositionFaces();
}
}
@ -7597,12 +7623,18 @@ void K_drawKartHUD(void)
if (G_RaceGametype()) // Race-only elements
{
// Draw the lap counter
K_drawKartLaps();
#ifdef HAVE_BLUA
if (LUA_HudEnabled(hud_gametypeinfo))
#endif
K_drawKartLaps();
if (!splitscreen)
{
// Draw the speedometer
// TODO: Make a better speedometer.
#ifdef HAVE_BLUA
if (LUA_HudEnabled(hud_speedometer))
#endif
K_drawKartSpeedometer();
}
@ -7611,7 +7643,10 @@ void K_drawKartHUD(void)
else if (!modeattacking)
{
// Draw the numerical position
K_DrawKartPositionNum(stplyr->kartstuff[k_position]);
#ifdef HAVE_BLUA
if (LUA_HudEnabled(hud_position))
#endif
K_DrawKartPositionNum(stplyr->kartstuff[k_position]);
}
else //if (!(demoplayback && hu_showscores))
{
@ -7622,7 +7657,10 @@ void K_drawKartHUD(void)
else if (G_BattleGametype()) // Battle-only
{
// Draw the hits left!
K_drawKartBumpersOrKarma();
#ifdef HAVE_BLUA
if (LUA_HudEnabled(hud_gametypeinfo))
#endif
K_drawKartBumpersOrKarma();
}
}

View file

@ -13,26 +13,17 @@
enum hud {
hud_stagetitle = 0,
hud_textspectator,
// Singleplayer / Co-op
hud_score,
hud_time,
hud_rings,
hud_lives,
// Match / CTF / Tag / Ringslinger
hud_weaponrings,
hud_powerstones,
// NiGHTS mode
hud_nightslink,
hud_nightsdrill,
hud_nightsrings,
hud_nightsscore,
hud_nightstime,
hud_nightsrecords,
// TAB scores overlays
hud_rankings,
hud_coopemeralds,
hud_tokens,
hud_tabemblems,
hud_gametypeinfo,
hud_minimap,
hud_item,
hud_position,
hud_minirankings, // Rankings to the left
hud_wanted,
hud_speedometer,
hud_rankings, // Tab rankings
hud_MAX
};

View file

@ -39,25 +39,15 @@ static const char *const hud_disable_options[] = {
"stagetitle",
"textspectator",
"score",
"time",
"rings",
"lives",
"weaponrings",
"powerstones",
"nightslink",
"nightsdrill",
"nightsrings",
"nightsscore",
"nightstime",
"nightsrecords",
"gametypeinfo", // Bumpers / Karma / Laps depending on gametype
"minimap",
"item",
"position",
"minirankings", // Gametype rankings to the left
"wanted",
"speedometer",
"rankings",
"coopemeralds",
"tokens",
"tabemblems",
NULL};
enum hudinfo {
@ -584,6 +574,15 @@ static int libd_renderer(lua_State *L)
return 1;
}
// Lat': Get cv_translucenthud's value for HUD rendering as a normal V_xxTRANS int instead of V_HUDTRANS. This is useful if we want to work from that transparency value
// Could as well be thrown in global vars for ease of access but I guess it makes sense for it to be a HUD fn
static int libd_getlocaltransflag(lua_State *L)
{
HUDONLY
lua_pushinteger(L, (10-cv_translucenthud.value)*V_10TRANS); // A bit weird that it's called "translucenthud" yet 10 is fully opaque :V
return 1;
}
static luaL_Reg lib_draw[] = {
{"patchExists", libd_patchExists},
{"cachePatch", libd_cachePatch},
@ -601,6 +600,7 @@ static luaL_Reg lib_draw[] = {
{"dupx", libd_dupx},
{"dupy", libd_dupy},
{"renderer", libd_renderer},
{"localTransFlag", libd_getlocaltransflag},
{NULL, NULL}
};
@ -624,6 +624,18 @@ static int lib_huddisable(lua_State *L)
return 0;
}
// 30/10/18: Lat': Why the FUCK is this NOT in vanilla
static int lib_hudenabled(lua_State *L)
{
enum hud option = luaL_checkoption(L, 1, NULL, hud_disable_options);
if (hud_enabled[option/8] & (1<<(option%8)))
lua_pushboolean(L, true);
else
lua_pushboolean(L, false);
return 1;
}
// add a HUD element for rendering
static int lib_hudadd(lua_State *L)
{
@ -648,6 +660,7 @@ static int lib_hudadd(lua_State *L)
static luaL_Reg lib_hud[] = {
{"enable", lib_hudenable},
{"disable", lib_huddisable},
{"enabled", lib_hudenabled},
{"add", lib_hudadd},
{NULL, NULL}
};