- added back the player sprites in Duke/RR's player setup menu.

Fixes #46
This commit is contained in:
Christoph Oelckers 2020-08-23 20:44:17 +02:00
parent 8b8f048393
commit c777fea1af
3 changed files with 18 additions and 0 deletions

View file

@ -339,6 +339,22 @@ void GameInterface::DrawCenteredTextScreen(const DVector2 &origin, const char *t
::GameInterface::DrawCenteredTextScreen(origin, text, position, bg); ::GameInterface::DrawCenteredTextScreen(origin, text, position, bg);
} }
static int GetPlayerColor(int color)
{
return 0;
}
void GameInterface::DrawPlayerSprite(const DVector2& origin, bool onteam)
{
int color = TRANSLATION(Translation_Remap, playercolor2lookup(playercolor));
int tile = isRR() ? 3845 + 36 - ((((8 - (totalclock >> 4))) & 7) * 5) : 1441 - ((((4 - (totalclock >> 4))) & 3) * 5);
auto tex = tileGetTexture(tile);
if (!tex) return;
double x = origin.X + 260, y = origin.Y + tex->GetDisplayHeight() * (isRR()? 0.25 : 0.5);
double scale = isRR() ? 0.375 : 0.75;
DrawTexture(twod, tex, x, y, DTA_FullscreenScale, FSMode_ScaleToFit43, DTA_VirtualWidth, 320, DTA_VirtualHeight, 200, DTA_TranslationIndex, color, DTA_ScaleX, scale, DTA_ScaleY, scale, TAG_DONE);
}
void GameInterface::QuitToTitle() void GameInterface::QuitToTitle()
{ {

View file

@ -58,6 +58,7 @@ struct GameInterface : public ::GameInterface
bool CheatAllowed(bool printmsg) override; bool CheatAllowed(bool printmsg) override;
void ExitFromMenu() override; void ExitFromMenu() override;
ReservedSpace GetReservedScreenSpace(int viewsize) override; ReservedSpace GetReservedScreenSpace(int viewsize) override;
void DrawPlayerSprite(const DVector2& origin, bool onteam);
}; };
struct Dispatcher struct Dispatcher

View file

@ -226,6 +226,7 @@ int enterlevel(MapRecord* mi, int gm);
void donewgame(MapRecord* map, int sk); void donewgame(MapRecord* map, int sk);
void startnewgame(MapRecord* map, int skill); void startnewgame(MapRecord* map, int skill);
void setlocalplayerinput(player_struct *pp); void setlocalplayerinput(player_struct *pp);
int playercolor2lookup(int color);
void PlayerColorChanged(void); void PlayerColorChanged(void);
void nonsharedkeys(void); void nonsharedkeys(void);
void apply_seasick(player_struct* p, double scalefactor); void apply_seasick(player_struct* p, double scalefactor);