mirror of
https://github.com/libretro/scummvm.git
synced 2024-12-14 21:59:17 +00:00
Moved showing of the collision page from Alt-key to F11-key because Alt conflicted with taking screenshots using Alt-s. Great. Hopefully F11 doesn't conflict with anything useful.
svn-id: r33877
This commit is contained in:
parent
3f316681a0
commit
e56359eac0
@ -92,7 +92,7 @@ static const byte cursorPalette[] = {
|
||||
*/
|
||||
FWRenderer::FWRenderer() : _background(NULL), _palette(NULL), _cmd(""),
|
||||
_cmdY(0), _messageBg(0), _backBuffer(new byte[_screenSize]),
|
||||
_activeLowPal(NULL), _changePal(0) {
|
||||
_activeLowPal(NULL), _changePal(0), _showCollisionPage(false) {
|
||||
|
||||
assert(_backBuffer);
|
||||
|
||||
@ -126,6 +126,7 @@ void FWRenderer::clear() {
|
||||
_cmdY = 0;
|
||||
_messageBg = 0;
|
||||
_changePal = 0;
|
||||
_showCollisionPage = false;
|
||||
}
|
||||
|
||||
/*! \brief Draw 1bpp sprite using selected color
|
||||
@ -512,16 +513,22 @@ void FWRenderer::drawFrame() {
|
||||
blit();
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Turn on or off the showing of the collision page.
|
||||
* If turned on the blitting routine shows the collision page instead of the back buffer.
|
||||
* \note Useful for debugging collision page related problems.
|
||||
*/
|
||||
void FWRenderer::showCollisionPage(bool state) {
|
||||
_showCollisionPage = state;
|
||||
}
|
||||
|
||||
/*! \brief Update screen
|
||||
*/
|
||||
void FWRenderer::blit() {
|
||||
if (g_system->getEventManager()->getModifierState() & Common::KBD_ALT) {
|
||||
// Show collision page if the Alt key is being pressed
|
||||
g_system->copyRectToScreen(collisionPage, 320, 0, 0, 320, 200);
|
||||
} else {
|
||||
// Normally show the back buffer
|
||||
g_system->copyRectToScreen(_backBuffer, 320, 0, 0, 320, 200);
|
||||
}
|
||||
// Show the back buffer or the collision page. Normally the back
|
||||
// buffer but showing the collision page is useful for debugging.
|
||||
byte *source = (_showCollisionPage ? collisionPage : _backBuffer);
|
||||
g_system->copyRectToScreen(source, 320, 0, 0, 320, 200);
|
||||
}
|
||||
|
||||
/*! \brief Set player command string
|
||||
|
@ -62,6 +62,7 @@ protected:
|
||||
byte *_backBuffer; ///< Screen backbuffer
|
||||
uint16 *_activeLowPal; ///< Active 16 color palette
|
||||
int _changePal; ///< Load active palette to video backend on next frame
|
||||
bool _showCollisionPage; ///< Should we show the collision page instead of the back buffer? Used for debugging.
|
||||
|
||||
void fillSprite(const objectStruct &obj, uint8 color = 0);
|
||||
void drawMaskedSprite(const objectStruct &obj, const byte *mask);
|
||||
@ -124,6 +125,7 @@ public:
|
||||
void drawInputBox(const char *info, const char *input, int cursor, int x, int y, int width);
|
||||
|
||||
virtual void fadeToBlack();
|
||||
void showCollisionPage(bool state);
|
||||
};
|
||||
|
||||
/*! \brief Operation Stealth renderer
|
||||
|
@ -125,6 +125,9 @@ static void processEvent(Common::Event &event) {
|
||||
g_cine->makeSystemMenu();
|
||||
}
|
||||
break;
|
||||
case Common::KEYCODE_F11:
|
||||
renderer->showCollisionPage(true);
|
||||
break;
|
||||
case Common::KEYCODE_MINUS:
|
||||
case Common::KEYCODE_KP_MINUS:
|
||||
g_cine->modifyGameSpeed(-1); // Slower
|
||||
@ -168,6 +171,9 @@ static void processEvent(Common::Event &event) {
|
||||
break;
|
||||
case Common::EVENT_KEYUP:
|
||||
switch (event.kbd.keycode) {
|
||||
case Common::KEYCODE_F11:
|
||||
renderer->showCollisionPage(false);
|
||||
break;
|
||||
case Common::KEYCODE_KP5: // Emulated left mouse button click
|
||||
case Common::KEYCODE_LEFT: // Left
|
||||
case Common::KEYCODE_KP4: // Left
|
||||
|
Loading…
Reference in New Issue
Block a user