From 7e7b07132e1963e138bc0e630ab66d8162ee669b Mon Sep 17 00:00:00 2001 From: Nicola Mettifogo Date: Sun, 29 Jul 2007 14:24:31 +0000 Subject: Moved specialized initialization code into subclasses. svn-id: r28289 --- engines/parallaction/parallaction_br.cpp | 58 ++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 engines/parallaction/parallaction_br.cpp (limited to 'engines/parallaction/parallaction_br.cpp') diff --git a/engines/parallaction/parallaction_br.cpp b/engines/parallaction/parallaction_br.cpp new file mode 100644 index 0000000000..1609921d85 --- /dev/null +++ b/engines/parallaction/parallaction_br.cpp @@ -0,0 +1,58 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * $URL$ + * $Id$ + * + */ + +#include "common/stdafx.h" +#include "parallaction/parallaction.h" +#include "parallaction/sound.h" + +namespace Parallaction { + +int Parallaction_br::init() { + + // Detect game + if (!detectGame()) { + GUIErrorMessage("No valid games were found in the specified directory."); + return -1; + } + + _screenWidth = 640; + _screenHeight = 400; + + if (getGameType() == GType_BRA) { + if (getPlatform() == Common::kPlatformPC) { + _disk = new DosDisk_br(this); + } else + error("unsupported platform for Big Red Adventure"); + } else + error("unknown game type"); + + _soundMan = new DummySoundMan(this); + + Parallaction::init(); + + return 0; +} + +} // namespace Parallaction -- cgit v1.2.3 From b01232f08ad34ac16e36a83e32ca741fc8fc2169 Mon Sep 17 00:00:00 2001 From: Nicola Mettifogo Date: Sun, 29 Jul 2007 16:29:41 +0000 Subject: - Added parser strings for Big Red Adventure - Pushed parser strings initialization down to engine subclasses svn-id: r28295 --- engines/parallaction/parallaction_br.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'engines/parallaction/parallaction_br.cpp') diff --git a/engines/parallaction/parallaction_br.cpp b/engines/parallaction/parallaction_br.cpp index 1609921d85..44009bdf5c 100644 --- a/engines/parallaction/parallaction_br.cpp +++ b/engines/parallaction/parallaction_br.cpp @@ -50,6 +50,8 @@ int Parallaction_br::init() { _soundMan = new DummySoundMan(this); + initResources(); + Parallaction::init(); return 0; -- cgit v1.2.3 From 160a4ceaad1cf55e2aca3494616835e74e4c8a42 Mon Sep 17 00:00:00 2001 From: Nicola Mettifogo Date: Sun, 29 Jul 2007 18:49:24 +0000 Subject: Added callables stubs for Big Red Adventure. svn-id: r28312 --- engines/parallaction/parallaction_br.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'engines/parallaction/parallaction_br.cpp') diff --git a/engines/parallaction/parallaction_br.cpp b/engines/parallaction/parallaction_br.cpp index 44009bdf5c..7dcc94d7c6 100644 --- a/engines/parallaction/parallaction_br.cpp +++ b/engines/parallaction/parallaction_br.cpp @@ -57,4 +57,10 @@ int Parallaction_br::init() { return 0; } +void Parallaction_br::callFunction(uint index, void* parm) { + assert(index < 6); // magic value 6 is maximum # of callables for Big Red Adventure + + (this->*_callables[index])(parm); +} + } // namespace Parallaction -- cgit v1.2.3