SHERLOCK: 3DO: basic UI support

This commit is contained in:
Martin Kiewitz 2015-06-12 18:38:26 +02:00
parent 4858adb72d
commit 645f51e079

View file

@ -86,8 +86,15 @@ const char *const MUSE[] = {
ScalpelUserInterface::ScalpelUserInterface(SherlockEngine *vm): UserInterface(vm) { ScalpelUserInterface::ScalpelUserInterface(SherlockEngine *vm): UserInterface(vm) {
if (_vm->_interactiveFl) { if (_vm->_interactiveFl) {
if (_vm->getPlatform() != Common::kPlatform3DO) {
// PC
_controls = new ImageFile("menu.all"); _controls = new ImageFile("menu.all");
_controlPanel = new ImageFile("controls.vgs"); _controlPanel = new ImageFile("controls.vgs");
} else {
// 3DO
_controls = new ImageFile3DO("menu.all", true);
_controlPanel = new ImageFile3DO("controls.vgs", true);
}
} else { } else {
_controls = nullptr; _controls = nullptr;
_controlPanel = nullptr; _controlPanel = nullptr;
@ -122,9 +129,6 @@ void ScalpelUserInterface::reset() {
void ScalpelUserInterface::drawInterface(int bufferNum) { void ScalpelUserInterface::drawInterface(int bufferNum) {
Screen &screen = *_vm->_screen; Screen &screen = *_vm->_screen;
if (_vm->getPlatform() == Common::kPlatform3DO)
return; // 3DO: don't do anything for now
if (bufferNum & 1) if (bufferNum & 1)
screen._backBuffer1.transBlitFrom((*_controlPanel)[0], Common::Point(0, CONTROLS_Y)); screen._backBuffer1.transBlitFrom((*_controlPanel)[0], Common::Point(0, CONTROLS_Y));
if (bufferNum & 2) if (bufferNum & 2)