mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-12-28 20:40:47 +00:00
- same procedure for Blood
This commit is contained in:
parent
debb4b17b6
commit
0ee042fb60
8 changed files with 46 additions and 87 deletions
|
@ -183,22 +183,15 @@ void ctrlGetInput(void)
|
|||
UsesToSend.byte = 0;
|
||||
WeaponToSend = 0;
|
||||
|
||||
if (buttonMap.ButtonDown(gamefunc_Map))
|
||||
{
|
||||
buttonMap.ClearButton(gamefunc_Map);
|
||||
viewToggle(gViewMode);
|
||||
}
|
||||
|
||||
if (buttonMap.ButtonDown(gamefunc_Map_Follow_Mode))
|
||||
{
|
||||
buttonMap.ClearButton(gamefunc_Map_Follow_Mode);
|
||||
gFollowMap = !gFollowMap;
|
||||
gViewMap.FollowMode(gFollowMap);
|
||||
automapFollow = !automapFollow;
|
||||
}
|
||||
|
||||
if (buttonMap.ButtonDown(gamefunc_Shrink_Screen))
|
||||
{
|
||||
if (gViewMode == 3)
|
||||
if (automapMode == am_off)
|
||||
{
|
||||
buttonMap.ClearButton(gamefunc_Shrink_Screen);
|
||||
if (!SHIFTS_IS_PRESSED)
|
||||
|
@ -210,7 +203,7 @@ void ctrlGetInput(void)
|
|||
hud_scale = hud_scale - 4;
|
||||
}
|
||||
}
|
||||
if (gViewMode == 4)
|
||||
if (automapMode != am_off)
|
||||
{
|
||||
gZoom = ClipLow(gZoom - (gZoom >> 4), 64);
|
||||
gViewMap.nZoom = gZoom;
|
||||
|
@ -219,7 +212,7 @@ void ctrlGetInput(void)
|
|||
|
||||
if (buttonMap.ButtonDown(gamefunc_Enlarge_Screen))
|
||||
{
|
||||
if (gViewMode == 3)
|
||||
if (automapMode == am_off)
|
||||
{
|
||||
buttonMap.ClearButton(gamefunc_Enlarge_Screen);
|
||||
if (!SHIFTS_IS_PRESSED)
|
||||
|
@ -231,8 +224,7 @@ void ctrlGetInput(void)
|
|||
hud_scale = hud_scale + 4;
|
||||
}
|
||||
}
|
||||
if (
|
||||
gViewMode == 4)
|
||||
if (automapMode != am_off)
|
||||
{
|
||||
gZoom = ClipHigh(gZoom + (gZoom >> 4), 4096);
|
||||
gViewMap.nZoom = gZoom;
|
||||
|
@ -368,7 +360,7 @@ void ctrlGetInput(void)
|
|||
|
||||
input.q16mlook = fix16_ssub(input.q16mlook, fix16_from_dbl(scaleAdjustmentToInterval(info.dpitch / mlookScale)));
|
||||
|
||||
if (!gViewMap.bFollowMode && gViewMode == 4)
|
||||
if (!automapFollow && automapMode != am_off)
|
||||
{
|
||||
gViewMap.turn += input.q16turn<<2;
|
||||
gViewMap.forward += input.forward;
|
||||
|
|
|
@ -44,9 +44,6 @@ static int _line;
|
|||
|
||||
int32_t gTurnSpeed = 92;
|
||||
int32_t gDetail = 4;
|
||||
int32_t gFollowMap = 1;
|
||||
int32_t gOverlayMap = 0;
|
||||
int32_t gRotateMap = 0;
|
||||
bool gNoClip;
|
||||
bool gInfiniteAmmo;
|
||||
int32_t gDeliriumBlur = 1;
|
||||
|
|
|
@ -41,9 +41,6 @@ extern bool bVanilla;
|
|||
|
||||
extern int32_t gTurnSpeed;
|
||||
extern int32_t gDetail;
|
||||
extern int32_t gFollowMap;
|
||||
extern int32_t gOverlayMap;
|
||||
extern int32_t gRotateMap;
|
||||
extern bool gNoClip;
|
||||
extern bool gInfiniteAmmo;
|
||||
extern int32_t gDeliriumBlur;
|
||||
|
|
|
@ -133,7 +133,7 @@ void sub_2541C(int x, int y, int z, short a)
|
|||
|
||||
for (int i = connecthead; i >= 0; i = connectpoint2[i])
|
||||
{
|
||||
if (gViewMap.bFollowMode || gView->nPlayer != i)
|
||||
if (automapFollow || gView->nPlayer != i)
|
||||
{
|
||||
PLAYER *pPlayer = &gPlayer[i];
|
||||
spritetype *pSprite = pPlayer->pSprite;
|
||||
|
@ -168,19 +168,12 @@ void sub_2541C(int x, int y, int z, short a)
|
|||
}
|
||||
}
|
||||
|
||||
CViewMap::CViewMap()
|
||||
void CViewMap::sub_25C38(int _x, int _y, int _angle, short zoom)
|
||||
{
|
||||
bActive = 0;
|
||||
}
|
||||
|
||||
void CViewMap::sub_25C38(int _x, int _y, int _angle, short zoom, char unk1)
|
||||
{
|
||||
bActive = 1;
|
||||
x = _x;
|
||||
y = _y;
|
||||
angle = _angle;
|
||||
nZoom = zoom;
|
||||
FollowMode(unk1);
|
||||
forward = 0;
|
||||
turn = 0;
|
||||
strafe = 0;
|
||||
|
@ -188,10 +181,7 @@ void CViewMap::sub_25C38(int _x, int _y, int _angle, short zoom, char unk1)
|
|||
|
||||
void CViewMap::sub_25C74(void)
|
||||
{
|
||||
char pBuffer[128];
|
||||
if (!bActive)
|
||||
return;
|
||||
char tm = 0;
|
||||
int tm = 0;
|
||||
if (windowxy1.x > 0)
|
||||
{
|
||||
setViewport(Hud_Stbar);
|
||||
|
@ -201,30 +191,6 @@ void CViewMap::sub_25C74(void)
|
|||
twod->AddColorOnlyQuad(windowxy1.x, windowxy1.y, (windowxy2.x + 1) - windowxy1.x, (windowxy2.y + 1) - windowxy1.y, 0xff000000);
|
||||
renderDrawMapView(x,y,nZoom>>2,angle);
|
||||
sub_2541C(x,y,nZoom>>2,angle);
|
||||
const char *pTitle = currentLevel->DisplayName();
|
||||
const char *pFilename = currentLevel->LabelName();
|
||||
if (pTitle)
|
||||
sprintf(pBuffer, "%s: %s", pFilename, pTitle);
|
||||
else
|
||||
sprintf(pBuffer, "%s", pFilename);
|
||||
#if 0
|
||||
int nViewY;
|
||||
if (g ViewSize > 3)
|
||||
nViewY = gViewY1S-16;
|
||||
else
|
||||
nViewY = gViewY0S+1;
|
||||
viewDrawText(3, pBuffer, gViewX1S /2, nViewY, -128, 0, 2, 0, 256);
|
||||
#else
|
||||
// This needs fixing across games, so for the time being just print the text into the upper left corner
|
||||
viewDrawText(3, pBuffer, 3, 3, -128, 0, 0, 0, 256);
|
||||
#endif
|
||||
|
||||
#if 0 // needs to be generalized
|
||||
if (gViewMap.bFollowMode)
|
||||
Printf(PRINT_NOTIFY, "MAP FOLLOW MODE\n");
|
||||
else
|
||||
Printf(PRINT_NOTIFY, "MAP SCROLL MODE\n");
|
||||
#endif
|
||||
if (tm)
|
||||
setViewport(hud_size);
|
||||
}
|
||||
|
@ -232,7 +198,7 @@ void CViewMap::sub_25C74(void)
|
|||
void CViewMap::sub_25DB0(spritetype *pSprite)
|
||||
{
|
||||
nZoom = gZoom;
|
||||
if (bFollowMode)
|
||||
if (automapFollow)
|
||||
{
|
||||
x = pSprite->x;
|
||||
y = pSprite->y;
|
||||
|
@ -260,10 +226,6 @@ void CViewMap::sub_25E84(int *_x, int *_y)
|
|||
*_y = y;
|
||||
}
|
||||
|
||||
void CViewMap::FollowMode(char mode)
|
||||
{
|
||||
bFollowMode = mode;
|
||||
}
|
||||
|
||||
CViewMap gViewMap;
|
||||
|
||||
|
|
|
@ -31,15 +31,12 @@ public:
|
|||
char bActive;
|
||||
int x, y, nZoom;
|
||||
short angle;
|
||||
char bFollowMode;
|
||||
int forward, strafe;
|
||||
fix16_t turn;
|
||||
CViewMap();
|
||||
void sub_25C38(int, int, int, short, char);
|
||||
void sub_25C38(int, int, int, short);
|
||||
void sub_25C74(void);
|
||||
void sub_25DB0(spritetype *pSprite);
|
||||
void sub_25E84(int *, int*);
|
||||
void FollowMode(char);
|
||||
};
|
||||
|
||||
extern CViewMap gViewMap;
|
||||
|
|
|
@ -187,7 +187,36 @@ private:
|
|||
|
||||
void PrintLevelStats(PLAYER* pPlayer, int bottomy)
|
||||
{
|
||||
if (gViewMode == 3 && hud_stats)
|
||||
if (automapMode == am_full)
|
||||
{
|
||||
FString pBuffer;
|
||||
const char *pTitle = currentLevel->DisplayName();
|
||||
const char *pFilename = currentLevel->LabelName();
|
||||
if (pTitle)
|
||||
pBuffer.Format("%s: %s", pFilename, pTitle);
|
||||
else
|
||||
pBuffer = pFilename;
|
||||
#if 0
|
||||
int nViewY;
|
||||
if (g ViewSize > 3)
|
||||
nViewY = gViewY1S-16;
|
||||
else
|
||||
nViewY = gViewY0S+1;
|
||||
viewDrawText(3, pBuffer, gViewX1S /2, nViewY, -128, 0, 2, 0, 256);
|
||||
#else
|
||||
// This needs fixing across games, so for the time being just print the text into the upper left corner
|
||||
viewDrawText(3, pBuffer, 3, 3, -128, 0, 0, 0, 256);
|
||||
#endif
|
||||
|
||||
#if 0 // needs to be generalized
|
||||
if (automapFollow)
|
||||
Printf(PRINT_NOTIFY, "MAP FOLLOW MODE\n");
|
||||
else
|
||||
Printf(PRINT_NOTIFY, "MAP SCROLL MODE\n");
|
||||
#endif
|
||||
|
||||
}
|
||||
if (automapMode == am_off && hud_stats)
|
||||
{
|
||||
FLevelStats stats{};
|
||||
|
||||
|
@ -815,7 +844,7 @@ void UpdateStatusBar(ClockTicks arg)
|
|||
{
|
||||
DBloodStatusBar sbar;
|
||||
|
||||
if (gViewMode == 3 && hud_size <= Hud_Stbar)
|
||||
if (automapMode == am_off && hud_size <= Hud_Stbar)
|
||||
{
|
||||
UpdateFrame();
|
||||
}
|
||||
|
|
|
@ -61,8 +61,6 @@ struct INTERPOLATE {
|
|||
INTERPOLATE_TYPE type;
|
||||
};
|
||||
|
||||
int gViewMode = 3;
|
||||
|
||||
double gInterpolate;
|
||||
int nInterpolations;
|
||||
char gInterpolateSprite[(kMaxSprites+7)>>3];
|
||||
|
@ -103,16 +101,6 @@ void FontSet(int id, int tile, int space)
|
|||
if (ptrs[id]) *ptrs[id] = gFont[id];
|
||||
}
|
||||
|
||||
void viewToggle(int viewMode)
|
||||
{
|
||||
if (viewMode == 3)
|
||||
gViewMode = 4;
|
||||
else
|
||||
{
|
||||
gViewMode = 3;
|
||||
}
|
||||
}
|
||||
|
||||
void viewBackupView(int nPlayer)
|
||||
{
|
||||
PLAYER *pPlayer = &gPlayer[nPlayer];
|
||||
|
@ -355,7 +343,7 @@ void viewInit(void)
|
|||
dword_172CE0[i][1] = mulscale16(wrand(), 2048);
|
||||
dword_172CE0[i][2] = mulscale16(wrand(), 2048);
|
||||
}
|
||||
gViewMap.sub_25C38(0, 0, gZoom, 0, gFollowMap);
|
||||
gViewMap.sub_25C38(0, 0, gZoom, 0);
|
||||
}
|
||||
|
||||
void viewDrawInterface(ClockTicks arg)
|
||||
|
@ -680,11 +668,11 @@ void viewDrawScreen(bool sceneonly)
|
|||
CalcInterpolations();
|
||||
}
|
||||
|
||||
if (gViewMode == 3 || gViewMode == 4 || gOverlayMap)
|
||||
if (automapMode != am_full)
|
||||
{
|
||||
DoSectorLighting();
|
||||
}
|
||||
if (gViewMode == 3 || gOverlayMap)
|
||||
if (automapMode == am_off)
|
||||
{
|
||||
int basepal = 0;
|
||||
if (powerupCheck(gView, kPwUpDeathMask) > 0) basepal = 4;
|
||||
|
@ -1046,7 +1034,7 @@ void viewDrawScreen(bool sceneonly)
|
|||
hudDraw(gView, nSectnum, defaultHoriz, v4c, v48, zDelta, basepal);
|
||||
}
|
||||
UpdateDacs(0, true); // keep the view palette active only for the actual 3D view and its overlays.
|
||||
if (gViewMode == 4)
|
||||
if (automapMode != am_off)
|
||||
{
|
||||
gViewMap.sub_25DB0(gView->pSprite);
|
||||
}
|
||||
|
|
|
@ -129,7 +129,6 @@ enum
|
|||
|
||||
extern int gZoom;
|
||||
extern FFont *gFont[kFontNum];
|
||||
extern int gViewMode;
|
||||
extern VIEWPOS gViewPos;
|
||||
extern int gViewIndex;
|
||||
extern int gScreenTilt;
|
||||
|
@ -140,12 +139,10 @@ extern char gInterpolateSprite[];
|
|||
extern char gInterpolateWall[];
|
||||
extern char gInterpolateSector[];
|
||||
extern LOCATION gPrevSpriteLoc[kMaxSprites];
|
||||
extern int gViewMode;
|
||||
extern int gLastPal;
|
||||
extern double gInterpolate;
|
||||
|
||||
void hudDraw(PLAYER* gView, int nSectnum, int defaultHoriz, double bobx, double boby, double zDelta, int basepal);
|
||||
void viewToggle(int viewMode);
|
||||
void viewInitializePrediction(void);
|
||||
void viewUpdatePrediction(GINPUT *pInput);
|
||||
void viewCorrectPrediction(void);
|
||||
|
|
Loading…
Reference in a new issue