TWINE: added new debug command to set a track for an actor

this is a shortcut to fix https://bugs.scummvm.org/ticket/13177
This commit is contained in:
Martin Gerhardy 2022-05-29 12:23:21 +02:00
parent 73b899586b
commit c817aecaf1
2 changed files with 14 additions and 0 deletions

View File

@ -61,6 +61,7 @@ TwinEConsole::TwinEConsole(TwinEEngine *engine) : _engine(engine), GUI::Debugger
registerCmd("toggle_freecamera", WRAP_METHOD(TwinEConsole, doToggleFreeCamera));
registerCmd("toggle_scenechanges", WRAP_METHOD(TwinEConsole, doToggleSceneChanges));
registerCmd("toggle_scenerendering", WRAP_METHOD(TwinEConsole, doToggleSceneRendering));
registerCmd("set_track_obj", WRAP_METHOD(TwinEConsole, doSetTrackObject));
registerCmd("scene_actor", WRAP_METHOD(TwinEConsole, doSkipSceneActorsBut));
registerCmd("hero_pos", WRAP_METHOD(TwinEConsole, doSetHeroPosition));
registerCmd("set_life", WRAP_METHOD(TwinEConsole, doSetLife));
@ -161,6 +162,18 @@ bool TwinEConsole::doToggleSceneChanges(int argc, const char **argv) {
return true;
}
bool TwinEConsole::doSetTrackObject(int argc, const char **argv) {
if (argc <= 2) {
debugPrintf("Expected to get a the scene actor number and the track\n");
return true;
}
const int32 otherActorIdx = atoi(argv[1]);
const int32 offset = atoi(argv[2]);
_engine->_scene->getActor(otherActorIdx)->_positionInMoveScript = offset;
return true;
}
bool TwinEConsole::doToggleSceneRendering(int argc, const char **argv) {
TOGGLE_DEBUG(_engine->_debugGrid->_disableGridRendering, "scene rendering\n")
return true;

View File

@ -61,6 +61,7 @@ private:
bool doToggleFreeCamera(int argc, const char **argv);
bool doToggleSceneChanges(int argc, const char **argv);
bool doToggleSceneRendering(int argc, const char **argv);
bool doSetTrackObject(int argc, const char **argv);
bool doSkipSceneActorsBut(int argc, const char **argv);
bool doSetGameFlag(int argc, const char **argv);
bool doSetInventoryFlag(int argc, const char **argv);