mirror of
https://github.com/libretro/scummvm.git
synced 2024-12-28 20:55:19 +00:00
065f2bb9eb
svn-id: r12181
131 lines
3.9 KiB
C++
131 lines
3.9 KiB
C++
/* Copyright (C) 1994-2004 Revolution Software Ltd
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU General Public License
|
|
* as published by the Free Software Foundation; either version 2
|
|
* of the License, or (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
*
|
|
* $Header$
|
|
*/
|
|
|
|
#ifndef C_ONSOLE_H
|
|
#define C_ONSOLE_H
|
|
|
|
#include "common/debugger.h"
|
|
#include "sword2/debug.h"
|
|
#include "sword2/object.h"
|
|
|
|
namespace Sword2 {
|
|
|
|
class Debugger : public Common::Debugger<Debugger> {
|
|
private:
|
|
void varGet(int var);
|
|
void varSet(int var, int val);
|
|
|
|
bool _displayDebugText;
|
|
bool _displayWalkGrid;
|
|
bool _displayMouseMarker;
|
|
bool _displayTime;
|
|
bool _displayPlayerMarker;
|
|
bool _displayTextNumbers;
|
|
|
|
bool _rectFlicker;
|
|
|
|
int32 _startTime;
|
|
|
|
int32 _showVar[MAX_SHOWVARS];
|
|
|
|
uint8 _debugTextBlocks[MAX_DEBUG_TEXT_BLOCKS];
|
|
|
|
void clearDebugTextBlocks(void);
|
|
void makeDebugTextBlock(char *text, int16 x, int16 y);
|
|
|
|
void printCurrentInfo(void);
|
|
|
|
void plotCrossHair(int16 x, int16 y, uint8 pen);
|
|
void drawRect(int16 x, int16 y, int16 x2, int16 y2, uint8 pen);
|
|
|
|
public:
|
|
Debugger(Sword2Engine *vm);
|
|
|
|
int16 _rectX1, _rectY1;
|
|
int16 _rectX2, _rectY2;
|
|
|
|
uint8 _draggingRectangle;
|
|
bool _definingRectangles;
|
|
|
|
bool _testingSnR;
|
|
|
|
int32 _textNumber;
|
|
|
|
ObjectGraphic _playerGraphic;
|
|
uint32 _playerGraphicNoFrames;
|
|
|
|
void buildDebugText(void);
|
|
void drawDebugGraphics(void);
|
|
|
|
protected:
|
|
Sword2Engine *_vm;
|
|
|
|
virtual void preEnter();
|
|
virtual void postEnter();
|
|
|
|
// Commands
|
|
bool Cmd_Exit(int argc, const char **argv);
|
|
bool Cmd_Help(int argc, const char **argv);
|
|
bool Cmd_Mem(int argc, const char **argv);
|
|
bool Cmd_Tony(int argc, const char **argv);
|
|
bool Cmd_Res(int argc, const char **argv);
|
|
bool Cmd_Starts(int argc, const char **argv);
|
|
bool Cmd_Start(int argc, const char **argv);
|
|
bool Cmd_Info(int argc, const char **argv);
|
|
bool Cmd_WalkGrid(int argc, const char **argv);
|
|
bool Cmd_Mouse(int argc, const char **argv);
|
|
bool Cmd_Player(int argc, const char **argv);
|
|
bool Cmd_ResLook(int argc, const char **argv);
|
|
bool Cmd_CurrentInfo(int argc, const char **argv);
|
|
bool Cmd_RunList(int argc, const char **argv);
|
|
bool Cmd_Kill(int argc, const char **argv);
|
|
bool Cmd_Nuke(int argc, const char **argv);
|
|
bool Cmd_Var(int argc, const char **argv);
|
|
bool Cmd_Rect(int argc, const char **argv);
|
|
bool Cmd_Clear(int argc, const char **argv);
|
|
bool Cmd_DebugOn(int argc, const char **argv);
|
|
bool Cmd_DebugOff(int argc, const char **argv);
|
|
bool Cmd_SaveRest(int argc, const char **argv);
|
|
bool Cmd_ListSaveGames(int argc, const char **argv);
|
|
bool Cmd_SaveGame(int argc, const char **argv);
|
|
bool Cmd_RestoreGame(int argc, const char **argv);
|
|
bool Cmd_BltFxOn(int argc, const char **argv);
|
|
bool Cmd_BltFxOff(int argc, const char **argv);
|
|
bool Cmd_TimeOn(int argc, const char **argv);
|
|
bool Cmd_TimeOff(int argc, const char **argv);
|
|
bool Cmd_Text(int argc, const char **argv);
|
|
bool Cmd_ShowVar(int argc, const char **argv);
|
|
bool Cmd_HideVar(int argc, const char **argv);
|
|
bool Cmd_Version(int argc, const char **argv);
|
|
bool Cmd_SoftHard(int argc, const char **argv);
|
|
bool Cmd_AnimTest(int argc, const char **argv);
|
|
bool Cmd_TextTest(int argc, const char **argv);
|
|
bool Cmd_LineTest(int argc, const char **argv);
|
|
bool Cmd_Grab(int argc, const char **argv);
|
|
bool Cmd_Events(int argc, const char **argv);
|
|
bool Cmd_Sfx(int argc, const char **argv);
|
|
bool Cmd_English(int argc, const char **argv);
|
|
bool Cmd_Finnish(int argc, const char **argv);
|
|
bool Cmd_Polish(int argc, const char **argv);
|
|
};
|
|
|
|
} // End of namespace Sword2
|
|
|
|
#endif
|