aboutsummaryrefslogtreecommitdiff
path: root/queen
diff options
context:
space:
mode:
authorJoost Peters2003-10-05 16:07:07 +0000
committerJoost Peters2003-10-05 16:07:07 +0000
commit36ed0b1d3c662743f638fc7c9275f6952542c23d (patch)
tree44bcf13ee9b060c3a5ef19a5dff3875cdee6c987 /queen
parent47e3b8f55d55530b6b6593c02d57a33d1767cd4c (diff)
downloadscummvm-rg350-36ed0b1d3c662743f638fc7c9275f6952542c23d.tar.gz
scummvm-rg350-36ed0b1d3c662743f638fc7c9275f6952542c23d.tar.bz2
scummvm-rg350-36ed0b1d3c662743f638fc7c9275f6952542c23d.zip
renamed classes (we have our own namespace now) + fixed segfault in logic
svn-id: r10618
Diffstat (limited to 'queen')
-rw-r--r--queen/cutaway.cpp128
-rw-r--r--queen/cutaway.h26
-rw-r--r--queen/graphics.cpp39
-rw-r--r--queen/graphics.h8
-rw-r--r--queen/logic.cpp62
-rw-r--r--queen/logic.h12
-rw-r--r--queen/module.mk2
-rw-r--r--queen/queen.cpp10
-rw-r--r--queen/queen.h6
-rw-r--r--queen/resource.cpp19
-rw-r--r--queen/resource.h6
-rw-r--r--queen/restables.cpp8
-rw-r--r--queen/version.cpp8
13 files changed, 167 insertions, 167 deletions
diff --git a/queen/cutaway.cpp b/queen/cutaway.cpp
index a79e0c74b2..319b2e4f76 100644
--- a/queen/cutaway.cpp
+++ b/queen/cutaway.cpp
@@ -54,37 +54,37 @@ namespace Queen {
*/
-void QueenCutaway::run(
+void Cutaway::run(
const char *filename,
char *nextFilename,
- QueenLogic *queenLogic,
- QueenResource *queenResource) {
- QueenCutaway *cutaway = new QueenCutaway(filename, queenLogic, queenResource);
+ Logic *logic,
+ Resource *resource) {
+ Cutaway *cutaway = new Cutaway(filename, logic, resource);
cutaway->run(nextFilename);
delete cutaway;
}
-QueenCutaway::QueenCutaway(
+Cutaway::Cutaway(
const char *filename,
- QueenLogic *queenLogic,
- QueenResource *queenResource)
-: _queenLogic(queenLogic), _quit(false), _lastSong(0), _songBeforeComic(0) {
+ Logic *logic,
+ Resource *resource)
+: _logic(logic), _quit(false), _lastSong(0), _songBeforeComic(0) {
// XXX should not create this object ourselves
- _queenGraphics = new QueenGraphics(queenResource);
+ _graphics = new Graphics(resource);
memset(&_bankNames, 0, sizeof(_bankNames));
- load(filename, queenResource);
+ load(filename, resource);
}
-QueenCutaway::~QueenCutaway() {
+Cutaway::~Cutaway() {
// XXX only delete this if we created it
- delete _queenGraphics;
+ delete _graphics;
delete[] _fileData;
}
-void QueenCutaway::load(const char *filename, QueenResource *queenResource) {
+void Cutaway::load(const char *filename, Resource *resource) {
byte *ptr;
- ptr = _fileData = queenResource->loadFile(filename, 20);
+ ptr = _fileData = resource->loadFile(filename, 20);
if (!_fileData) {
error("Failed to load resource data file '%s'", filename);
_quit = true;
@@ -145,7 +145,7 @@ void QueenCutaway::load(const char *filename, QueenResource *queenResource) {
if (_bankNames[0][0]) {
debug(0, "Loading bank '%s'", _bankNames[0]);
- _queenGraphics->bankLoad(_bankNames[0], CUTAWAY_BANK);
+ _graphics->bankLoad(_bankNames[0], CUTAWAY_BANK);
}
char entryString[MAX_STRING_SIZE];
@@ -173,7 +173,7 @@ void QueenCutaway::load(const char *filename, QueenResource *queenResource) {
}
-byte *QueenCutaway::getString(byte *ptr, char *str, int maxLength) {
+byte *Cutaway::getString(byte *ptr, char *str, int maxLength) {
int length = *ptr;
ptr++;
@@ -194,7 +194,7 @@ byte *QueenCutaway::getString(byte *ptr, char *str, int maxLength) {
return ptr;
}
-void QueenCutaway::loadStrings(byte *ptr) {
+void Cutaway::loadStrings(byte *ptr) {
int i,j;
int bankNameCount = READ_BE_UINT16(ptr);
@@ -225,7 +225,7 @@ void QueenCutaway::loadStrings(byte *ptr) {
debug(0, "TALKTO = %i", TALKTO);
}
-byte *QueenCutaway::getCutawayObject(byte *ptr, CutawayObject &object)
+byte *Cutaway::getCutawayObject(byte *ptr, CutawayObject &object)
{
byte *oldPtr = ptr;
@@ -259,7 +259,7 @@ byte *QueenCutaway::getCutawayObject(byte *ptr, CutawayObject &object)
return ptr;
}
-void QueenCutaway::dumpCutawayObject(int index, CutawayObject &object)
+void Cutaway::dumpCutawayObject(int index, CutawayObject &object)
{
debug(0, "----- CutawayObject[%i] -----", index);
@@ -293,7 +293,7 @@ void QueenCutaway::dumpCutawayObject(int index, CutawayObject &object)
}
-void QueenCutaway::actionSpecialMove(int index) {
+void Cutaway::actionSpecialMove(int index) {
// switch (index) {
// default:
@@ -302,13 +302,13 @@ void QueenCutaway::actionSpecialMove(int index) {
// }
}
-byte *QueenCutaway::turnOnPeople(byte *ptr, CutawayObject &object) {
+byte *Cutaway::turnOnPeople(byte *ptr, CutawayObject &object) {
// Lines 1248-1259 in cutaway.c
object.personCount = (int16)READ_BE_UINT16(ptr);
ptr += 2;
if (object.personCount > MAX_PERSON_COUNT)
- error("[QueenCutaway::turnOnPeople] object.personCount > MAX_PERSON_COUNT");
+ error("[Cutaway::turnOnPeople] object.personCount > MAX_PERSON_COUNT");
for (int i = 0; i < object.personCount; i++) {
object.person[i] = (int16)READ_BE_UINT16(ptr);
@@ -319,7 +319,7 @@ byte *QueenCutaway::turnOnPeople(byte *ptr, CutawayObject &object) {
return ptr;
}
-void QueenCutaway::limitBob(CutawayObject &object) {
+void Cutaway::limitBob(CutawayObject &object) {
if (object.limitBobX1) {
if (object.objectNumber < 0) {
@@ -328,7 +328,7 @@ void QueenCutaway::limitBob(CutawayObject &object) {
}
BobSlot *bob =
- _queenGraphics->bob( _queenLogic->findBob(object.objectNumber) );
+ _graphics->bob( _logic->findBob(object.objectNumber) );
if (!bob) {
warning("Failed to find bob");
@@ -342,27 +342,27 @@ void QueenCutaway::limitBob(CutawayObject &object) {
}
}
-void QueenCutaway::restorePersonData() {
+void Cutaway::restorePersonData() {
for (int i = 0; i < _personDataCount; i++) {
int index = _personData[i].index;
- ObjectData *objectData = _queenLogic->objectData(index);
+ ObjectData *objectData = _logic->objectData(index);
objectData->name = _personData[i].name;
objectData->image = _personData[i].image;
}
}
-void QueenCutaway::changeRooms(CutawayObject &object) {
+void Cutaway::changeRooms(CutawayObject &object) {
// Lines 1291-1385 in cutaway.c
restorePersonData();
_personDataCount = 0;
if (_finalRoom != object.room) {
- int firstObjectInRoom = _queenLogic->roomData(object.room) + 1;
- int lastObjectInRoom = _queenLogic->roomData(object.room) + 0; // XXX _queenLogic->objMax(object.room);
+ int firstObjectInRoom = _logic->roomData(object.room) + 1;
+ int lastObjectInRoom = _logic->roomData(object.room) + 0; // XXX _logic->objMax(object.room);
for (int i = firstObjectInRoom; i <= lastObjectInRoom; i++) {
- ObjectData *objectData = _queenLogic->objectData(i);
+ ObjectData *objectData = _logic->objectData(i);
if (objectData->image == -3 || objectData->image == -4) {
@@ -435,7 +435,7 @@ void QueenCutaway::changeRooms(CutawayObject &object) {
}
-QueenCutaway::ObjectType QueenCutaway::getObjectType(CutawayObject &object) {
+Cutaway::ObjectType Cutaway::getObjectType(CutawayObject &object) {
// Lines 1387-1449 in cutaway.c
ObjectType objectType = OBJECT_TYPE_ANIMATION;
@@ -443,7 +443,7 @@ QueenCutaway::ObjectType QueenCutaway::getObjectType(CutawayObject &object) {
if (object.objectNumber > 0) {
if (!object.animList) {
// No anim frames, so treat as a PERSON, ie. allow to speak/walk
- ObjectData *objectData = _queenLogic->objectData(object.objectNumber);
+ ObjectData *objectData = _logic->objectData(object.objectNumber);
if (objectData->image == -3 || objectData->image == -4)
objectType = OBJECT_TYPE_PERSON;
}
@@ -464,7 +464,7 @@ QueenCutaway::ObjectType QueenCutaway::getObjectType(CutawayObject &object) {
}
else {
// Same object, so just turn it on!
- ObjectData *objectData = _queenLogic->objectData(object.objectNumber);
+ ObjectData *objectData = _logic->objectData(object.objectNumber);
objectData->name = abs(objectData->name);
}
// XXX REDISP_OBJECT(OBJECT);
@@ -496,7 +496,7 @@ QueenCutaway::ObjectType QueenCutaway::getObjectType(CutawayObject &object) {
return objectType;
}
-byte *QueenCutaway::getCutawayAnim(byte *ptr, int header, CutawayAnim &anim) {
+byte *Cutaway::getCutawayAnim(byte *ptr, int header, CutawayAnim &anim) {
anim.currentFrame = 0;
anim.originalFrame = 0;
@@ -514,16 +514,16 @@ byte *QueenCutaway::getCutawayAnim(byte *ptr, int header, CutawayAnim &anim) {
#endif
}
else {
- warning("Stuff not yet implemented in QueenCutaway::handleAnimation()");
+ warning("Stuff not yet implemented in Cutaway::handleAnimation()");
- anim.object = _queenLogic->findBob(header);
+ anim.object = _logic->findBob(header);
// If fullscreen cutaway then clip to 199 down
// 21/9/94, Make sure that bobs are clipped on 150 screens
// XXX if(COMPANEL==2 && OBJ_CUT[6]<=0 && BDyres==200) bobs[Param].y2=199;
- anim.originalFrame = _queenLogic->findFrame(header);
+ anim.originalFrame = _logic->findFrame(header);
}
anim.unpackFrame = (int16)READ_BE_UINT16(ptr);
@@ -560,7 +560,7 @@ byte *QueenCutaway::getCutawayAnim(byte *ptr, int header, CutawayAnim &anim) {
return ptr;
}
-void QueenCutaway::dumpCutawayAnim(CutawayAnim &anim) {
+void Cutaway::dumpCutawayAnim(CutawayAnim &anim) {
debug(0, "----- CutawayAnim -----");
if (anim.object) debug(0, "object = %i", anim.object);
if (anim.unpackFrame) debug(0, "unpackFrame = %i", anim.unpackFrame);
@@ -576,7 +576,7 @@ void QueenCutaway::dumpCutawayAnim(CutawayAnim &anim) {
if (anim.song) debug(0, "song = %i", anim.song);
}
-byte *QueenCutaway::handleAnimation(byte *ptr, CutawayObject &object) {
+byte *Cutaway::handleAnimation(byte *ptr, CutawayObject &object) {
int frameCount = 0;
int header = 0;
@@ -621,7 +621,7 @@ byte *QueenCutaway::handleAnimation(byte *ptr, CutawayObject &object) {
return ptr;
}
-void QueenCutaway::handlePersonRecord(
+void Cutaway::handlePersonRecord(
int index,
CutawayObject &object,
const char *sentence) {
@@ -693,12 +693,12 @@ void QueenCutaway::handlePersonRecord(
return;
}
-void QueenCutaway::run(char *nextFilename) {
+void Cutaway::run(char *nextFilename) {
nextFilename[0] = '\0';
byte *ptr = _objectData;
- _initialRoom = _temporaryRoom = _queenLogic->currentRoom();
+ _initialRoom = _temporaryRoom = _logic->currentRoom();
// XXX if(COMPANEL==0 || COMPANEL==2) SCENE_START(0);
@@ -719,11 +719,11 @@ void QueenCutaway::run(char *nextFilename) {
if (CURRENT_ROOM == object.room) {
// Get current room
- object.room = _queenLogic->currentRoom();
+ object.room = _logic->currentRoom();
}
else {
// Change current room
- _queenLogic->currentRoom(object.room);
+ _logic->currentRoom(object.room);
}
ptr = turnOnPeople(ptr, object);
@@ -794,7 +794,7 @@ void QueenCutaway::run(char *nextFilename) {
updateGameState();
- _queenGraphics->bankErase(CUTAWAY_BANK);
+ _graphics->bankErase(CUTAWAY_BANK);
talk(nextFilename);
@@ -821,14 +821,14 @@ void QueenCutaway::run(char *nextFilename) {
/* XXX playsong(_lastSong) */ ;
}
-void QueenCutaway::objectCopy(int dummyObjectIndex, int realObjectIndex) {
+void Cutaway::objectCopy(int dummyObjectIndex, int realObjectIndex) {
// P3_COPY_FROM function in cutaway.c
/* Copy data from Dummy (D) object to object (K)
If COPY_FROM Object images are greater than COPY_TO Object
images then swap the objects around. */
- ObjectData *dummyObject = _queenLogic->objectData(dummyObjectIndex);
- ObjectData *realObject = _queenLogic->objectData(realObjectIndex);
+ ObjectData *dummyObject = _logic->objectData(dummyObjectIndex);
+ ObjectData *realObject = _logic->objectData(realObjectIndex);
int fromState = (dummyObject->name < 0) ? -1 : 0;
@@ -867,8 +867,8 @@ void QueenCutaway::objectCopy(int dummyObjectIndex, int realObjectIndex) {
// Make sure that WALK_OFF_DATA is copied too!
- for (int i = 1; i <= _queenLogic->walkOffCount(); i++) {
- uint16* walkOffData = _queenLogic->walkOffData(i);
+ for (int i = 1; i <= _logic->walkOffCount(); i++) {
+ uint16* walkOffData = _logic->walkOffData(i);
if (walkOffData[0] == dummyObjectIndex) {
walkOffData[0] = realObjectIndex;
break;
@@ -877,7 +877,7 @@ void QueenCutaway::objectCopy(int dummyObjectIndex, int realObjectIndex) {
}
-void QueenCutaway::goToFinalRoom() {
+void Cutaway::goToFinalRoom() {
// Lines 1901-2032 in cutaway.c
byte *ptr = _gameStatePtr;
@@ -900,8 +900,8 @@ void QueenCutaway::goToFinalRoom() {
// JX = joeX;
// JY = joeY;
- _queenLogic->currentRoom(joeRoom);
- _queenLogic->oldRoom(_initialRoom);
+ _logic->currentRoom(joeRoom);
+ _logic->oldRoom(_initialRoom);
// XXX DISP_ROOM(ROOM_NAMEstr[ROOM],3,0);
}
@@ -926,13 +926,13 @@ void QueenCutaway::goToFinalRoom() {
int16 room = (int16)READ_BE_UINT16(ptr); ptr += 2;
/*int16 frame = (int16)READ_BE_UINT16(ptr);*/ ptr += 2;
- // XXX int bob = _queenLogic->findBob(objectIndex);
+ // XXX int bob = _logic->findBob(objectIndex);
if (from > 0) {
// XXX
}
- ObjectData *objectData = _queenLogic->objectData(objectIndex);
+ ObjectData *objectData = _logic->objectData(objectIndex);
if (objectData->room == room) {
// XXX
@@ -958,7 +958,7 @@ void QueenCutaway::goToFinalRoom() {
}
}
-void QueenCutaway::updateGameState() {
+void Cutaway::updateGameState() {
// Lines 2047-2115 in cutaway.c
byte *ptr = _gameStatePtr;
@@ -975,11 +975,11 @@ void QueenCutaway::updateGameState() {
bool update = false;
if (stateIndex > 0) {
- if(_queenLogic->gameState(stateIndex) == stateValue)
+ if(_logic->gameState(stateIndex) == stateValue)
update = true;
}
else {
- _queenLogic->gameState(abs(stateIndex), stateValue);
+ _logic->gameState(abs(stateIndex), stateValue);
update = true;
}
@@ -988,7 +988,7 @@ void QueenCutaway::updateGameState() {
// Show or hide an object
if (objectIndex > 0) { // Show the object
- ObjectData *objectData = _queenLogic->objectData(objectIndex);
+ ObjectData *objectData = _logic->objectData(objectIndex);
objectData->name = abs(objectData->name);
if (fromObject > 0)
objectCopy(fromObject, objectIndex);
@@ -996,7 +996,7 @@ void QueenCutaway::updateGameState() {
}
else if (objectIndex < 0) { // Hide the object
objectIndex = -objectIndex;
- ObjectData *objectData = _queenLogic->objectData(objectIndex);
+ ObjectData *objectData = _logic->objectData(objectIndex);
objectData->name = -abs(objectData->name);
// XXX REDISP_OBJECT(objectIndex);
}
@@ -1006,11 +1006,11 @@ void QueenCutaway::updateGameState() {
// Turn area on or off
if (areaSubIndex > 0) {
- int16* area = _queenLogic->area(areaIndex, areaSubIndex);
+ int16* area = _logic->area(areaIndex, areaSubIndex);
area[0] = abs(area[0]);
}
else {
- int16* area = _queenLogic->area(areaIndex, abs(areaSubIndex));
+ int16* area = _logic->area(areaIndex, abs(areaSubIndex));
area[0] = -abs(area[0]);
}
}
@@ -1029,11 +1029,11 @@ static char *right(char *str, int count) {
return str + length - count;
}
-void QueenCutaway::talk(char *nextFilename) {
+void Cutaway::talk(char *nextFilename) {
// Lines 2119-2131 in cutaway.c
if (0 == scumm_stricmp(right(_talkFile, 4), ".dog")) {
- warning("QueenCutaway::talk() needed but not yet implemented");
+ warning("Cutaway::talk() needed but not yet implemented");
nextFilename[0] = '\0';
}
}
diff --git a/queen/cutaway.h b/queen/cutaway.h
index 38473e8589..94e3dd4c5e 100644
--- a/queen/cutaway.h
+++ b/queen/cutaway.h
@@ -26,18 +26,18 @@
namespace Queen {
-class QueenResource;
-class QueenLogic;
-class QueenGraphics;
+class Resource;
+class Logic;
+class Graphics;
-class QueenCutaway {
+class Cutaway {
public:
//! Public interface to run a cutaway from a file
static void run(
const char *filename,
char *nextFilename,
- QueenLogic *queenLogic,
- QueenResource *queenResource);
+ Logic *logic,
+ Resource *resource);
private:
//! Collection of constants used by QueenCutaway
enum {
@@ -120,8 +120,8 @@ class QueenCutaway {
int16 image;
};
- QueenLogic *_queenLogic;
- QueenGraphics *_queenGraphics;
+ Logic *_logic;
+ Graphics *_graphics;
//! Raw .cut file data (without 20 byte header)
byte *_fileData;
@@ -178,17 +178,17 @@ class QueenCutaway {
int16 _songBeforeComic;
- QueenCutaway(
+ Cutaway(
const char *filename,
- QueenLogic *queenLogic,
- QueenResource *queenResource);
- ~QueenCutaway();
+ Logic *logic,
+ Resource *resource);
+ ~Cutaway();
//! Run this cutaway object
void run(char *nextFilename);
//! Load cutaway data from file
- void load(const char *filename, QueenResource *queenResource);
+ void load(const char *filename, Resource *resource);
//! Used by load to read string data
void loadStrings(byte *ptr);
diff --git a/queen/graphics.cpp b/queen/graphics.cpp
index bd185cadc2..4ca20fb05d 100644
--- a/queen/graphics.cpp
+++ b/queen/graphics.cpp
@@ -23,7 +23,7 @@
namespace Queen {
-QueenGraphics::QueenGraphics(QueenResource *resource)
+Graphics::Graphics(Resource *resource)
:_resource(resource) {
memset(_frames, 0, sizeof(_frames));
@@ -34,7 +34,7 @@ QueenGraphics::QueenGraphics(QueenResource *resource)
}
-QueenGraphics::~QueenGraphics() {
+Graphics::~Graphics() {
uint32 i;
for(i = 0; i < ARRAYSIZE(_banks); ++i) {
delete _banks[i].data;
@@ -44,7 +44,7 @@ QueenGraphics::~QueenGraphics() {
}
-void QueenGraphics::bankLoad(const char *bankname, uint32 bankslot) {
+void Graphics::bankLoad(const char *bankname, uint32 bankslot) {
int16 i;
@@ -72,7 +72,7 @@ void QueenGraphics::bankLoad(const char *bankname, uint32 bankslot) {
}
-void QueenGraphics::bankUnpack(uint32 srcframe, uint32 dstframe, uint32 bankslot) {
+void Graphics::bankUnpack(uint32 srcframe, uint32 dstframe, uint32 bankslot) {
uint8 *p = _banks[bankslot].data + _banks[bankslot].indexes[srcframe];
@@ -92,7 +92,7 @@ void QueenGraphics::bankUnpack(uint32 srcframe, uint32 dstframe, uint32 bankslot
}
-void QueenGraphics::bankOverpack(uint32 srcframe, uint32 dstframe, uint32 bankslot) {
+void Graphics::bankOverpack(uint32 srcframe, uint32 dstframe, uint32 bankslot) {
uint8 *p = _banks[bankslot].data + _banks[bankslot].indexes[srcframe];
uint16 src_w = READ_LE_UINT16(p + 0);
@@ -111,7 +111,7 @@ void QueenGraphics::bankOverpack(uint32 srcframe, uint32 dstframe, uint32 banksl
}
-void QueenGraphics::bankErase(uint32 bankslot) {
+void Graphics::bankErase(uint32 bankslot) {
delete[] _banks[bankslot].data;
_banks[bankslot].data = 0;
@@ -120,7 +120,7 @@ void QueenGraphics::bankErase(uint32 bankslot) {
}
-void QueenGraphics::bobAnimString(uint32 bobnum, uint8* animBuf) {
+void Graphics::bobAnimString(uint32 bobnum, uint8* animBuf) {
BobSlot *pbs = &_bobs[bobnum];
pbs->active = true;
@@ -132,7 +132,7 @@ void QueenGraphics::bobAnimString(uint32 bobnum, uint8* animBuf) {
}
-void QueenGraphics::bobAnimNormal(uint32 bobnum, uint16 firstFrame, uint16 lastFrame, uint16 speed, bool rebound, bool xflip) {
+void Graphics::bobAnimNormal(uint32 bobnum, uint16 firstFrame, uint16 lastFrame, uint16 speed, bool rebound, bool xflip) {
BobSlot *pbs = &_bobs[bobnum];
pbs->active = true;
@@ -149,7 +149,7 @@ void QueenGraphics::bobAnimNormal(uint32 bobnum, uint16 firstFrame, uint16 lastF
}
-void QueenGraphics::bobMove(uint32 bobnum, uint16 endx, uint16 endy, int16 speed) {
+void Graphics::bobMove(uint32 bobnum, uint16 endx, uint16 endy, int16 speed) {
BobSlot *pbs = &_bobs[bobnum];
@@ -273,7 +273,7 @@ void BobSlot::animOneStep() {
}
-void QueenGraphics::bobDraw(uint32 bobnum, uint16 x, uint16 y, uint16 scale, bool xflip, const Box& box) {
+void Graphics::bobDraw(uint32 bobnum, uint16 x, uint16 y, uint16 scale, bool xflip, const Box& box) {
uint16 w, h;
uint8 *src;
@@ -333,7 +333,7 @@ void QueenGraphics::bobDraw(uint32 bobnum, uint16 x, uint16 y, uint16 scale, boo
}
-void QueenGraphics::bobDrawInventoryItem(uint32 bobnum, uint16 x, uint16 y) {
+void Graphics::bobDrawInventoryItem(uint32 bobnum, uint16 x, uint16 y) {
if (bobnum == 0) {
// clear panel area
// _display->clear(panel, x, y, 32, 32, INK_BG_PANEL);
@@ -345,7 +345,7 @@ void QueenGraphics::bobDrawInventoryItem(uint32 bobnum, uint16 x, uint16 y) {
}
-void QueenGraphics::bobPaste(uint32 bobnum, uint16 x, uint16 y) {
+void Graphics::bobPaste(uint32 bobnum, uint16 x, uint16 y) {
// BobFrame *pbf = &_frames[bobnum];
// _display->blit(backdrop, x, y, 640, pbf->data, pbf->width, pbf->height, pbf->width, false, true);
@@ -353,7 +353,7 @@ void QueenGraphics::bobPaste(uint32 bobnum, uint16 x, uint16 y) {
}
-void QueenGraphics::bobShrink(const BobFrame* pbf, uint16 percentage) {
+void Graphics::bobShrink(const BobFrame* pbf, uint16 percentage) {
// computing new size, rounding to upper value
uint16 new_w = (pbf->width * percentage + 50) / 100;
@@ -398,7 +398,7 @@ void QueenGraphics::bobShrink(const BobFrame* pbf, uint16 percentage) {
}
-void QueenGraphics::bobClear(uint32 bobnum) {
+void Graphics::bobClear(uint32 bobnum) {
BobSlot *pbs = &_bobs[bobnum];
@@ -414,7 +414,7 @@ void QueenGraphics::bobClear(uint32 bobnum) {
}
-void QueenGraphics::bobSortAll() {
+void Graphics::bobSortAll() {
int32 _sorted = 0;
@@ -455,7 +455,7 @@ void QueenGraphics::bobSortAll() {
}
-void QueenGraphics::bobDrawAll() {
+void Graphics::bobDrawAll() {
for (BobSlot *pbs = _sortedBobs[0]; pbs; ++pbs) {
if (pbs->active) {
@@ -486,14 +486,14 @@ void QueenGraphics::bobDrawAll() {
}
-void QueenGraphics::bobClearAll() {
+void Graphics::bobClearAll() {
for(int32 i = 0; i < ARRAYSIZE(_bobs); ++i) {
bobClear(i);
}
}
-BobSlot *QueenGraphics::bob(int index) {
+BobSlot *Graphics::bob(int index) {
if (index < MAX_BOBS_NUMBER)
return _bobs + index;
else {
@@ -502,7 +502,7 @@ BobSlot *QueenGraphics::bob(int index) {
}
}
-void QueenGraphics::frameErase(uint32 fslot) {
+void Graphics::frameErase(uint32 fslot) {
BobFrame *pbf = &_frames[fslot];
pbf->width = 0;
@@ -512,3 +512,4 @@ void QueenGraphics::frameErase(uint32 fslot) {
}
} // End of namespace Queen
+
diff --git a/queen/graphics.h b/queen/graphics.h
index 7cb84659e4..a76a9ed45d 100644
--- a/queen/graphics.h
+++ b/queen/graphics.h
@@ -83,11 +83,11 @@ struct BobSlot {
};
-class QueenGraphics {
+class Graphics {
public:
- QueenGraphics(QueenResource *resource);
- ~QueenGraphics();
+ Graphics(Resource *resource);
+ ~Graphics();
void bankLoad(const char *bankname, uint32 bankslot); // loadbank()
void bankUnpack(uint32 srcframe, uint32 dstframe, uint32 bankslot); // unpackbank()
@@ -123,7 +123,7 @@ private:
BobSlot *_sortedBobs[MAX_BOBS_NUMBER + 1]; //! bobs displayed
BobFrame _shrinkBuffer;
- QueenResource *_resource;
+ Resource *_resource;
};
diff --git a/queen/logic.cpp b/queen/logic.cpp
index e0c25af80d..c21a1f8fe1 100644
--- a/queen/logic.cpp
+++ b/queen/logic.cpp
@@ -23,20 +23,20 @@
namespace Queen {
-QueenLogic::QueenLogic(QueenResource *resource)
+Logic::Logic(Resource *resource)
: _maxAnimatedFrame(0), _maxStaticFrame(0), _resource(resource) {
_jas = _resource->loadFile("QUEEN.JAS", 20);
initialise();
}
-QueenLogic::~QueenLogic() {
+Logic::~Logic() {
delete[] _jas;
//free(_graphicData);
}
-void QueenLogic::initialise() {
- uint16 i;
+void Logic::initialise() {
+ int16 i, j, k;
uint8 *ptr = _jas;
//_display->loadFont();
@@ -113,7 +113,7 @@ void QueenLogic::initialise() {
for (i = 1; i < (_numItems + 1); i++) {
_itemData[i][0] = READ_BE_UINT16(ptr);
ptr += 2;
- for (uint16 j = 1; j < 5; j++) {
+ for (j = 1; j < 5; j++) {
_itemData[i][j] = READ_BE_UINT16(ptr);
ptr += 2;
}
@@ -139,18 +139,18 @@ void QueenLogic::initialise() {
ptr += 2;
}
- _objMax = new uint16[_numRooms + 1];
- _areaMax = new uint16[_numRooms + 1];
+ _objMax = new int16[_numRooms + 1];
+ _areaMax = new int16[_numRooms + 1];
_area = new int16[_numRooms + 1][11][8];
-/*
- for (uint16 i = 1; i < (_numRooms + 1); i++) {
- _objMax[i] = READ_BE_UINT16(ptr);
+
+ for (i = 1; i < (_numRooms + 1); i++) {
+ _objMax[i] = (int16)READ_BE_UINT16(ptr);
ptr += 2;
- _areaMax[i] = READ_BE_UINT16(ptr);
+ _areaMax[i] = (int16)READ_BE_UINT16(ptr);
ptr += 2;
- for (uint16 j = 1; j < (_areaMax[i] + 1); j++)
- for (uint16 k = 0; k < 8; k++) {
+ for (j = 1; j < (_areaMax[i] + 1); j++)
+ for (k = 0; k < 8; k++) {
_area[i][j][k] = READ_BE_UINT16(ptr);
ptr += 2;
}
@@ -158,59 +158,56 @@ void QueenLogic::initialise() {
}
_objectBox = new uint16[_numObjects + 1][4];
- for (uint16 i = 1; i < (_numObjects + 1); i++)
- for (uint16 j = 0; j < 4; j++) {
+ for (i = 1; i < (_numObjects + 1); i++)
+ for (j = 0; j < 4; j++) {
_objectBox[i][j] = READ_BE_UINT16(ptr);
ptr += 2;
}
-
-
-*/
_numWalkOffs = 0;
}
-uint16 QueenLogic::currentRoom() {
+uint16 Logic::currentRoom() {
return _currentRoom;
}
-void QueenLogic::currentRoom(uint16 room) {
+void Logic::currentRoom(uint16 room) {
_currentRoom = room;
}
-void QueenLogic::oldRoom(uint16 room) {
+void Logic::oldRoom(uint16 room) {
_oldRoom = room;
}
-ObjectData* QueenLogic::objectData(int index) {
+ObjectData* Logic::objectData(int index) {
return &_objectData[index];
}
-uint16 QueenLogic::roomData(int room) {
+uint16 Logic::roomData(int room) {
return _roomData[room];
}
-uint16 QueenLogic::objMax(int room) {
+uint16 Logic::objMax(int room) {
return _objMax[room];
}
-int16 *QueenLogic::area(int index, int subIndex) {
+int16 *Logic::area(int index, int subIndex) {
return _area[index][subIndex];
}
-uint16 QueenLogic::walkOffCount() {
+uint16 Logic::walkOffCount() {
return _numWalkOffs;
}
-uint16 *QueenLogic::walkOffData(int index) {
+uint16 *Logic::walkOffData(int index) {
return _walkOffData[index];
}
-GraphicData* QueenLogic::findGraphic(int index) {
+GraphicData *Logic::findGraphic(int index) {
return &_graphicData[index];
}
-uint16 QueenLogic::findBob(uint16 obj) {
+uint16 Logic::findBob(uint16 obj) {
uint16 i;
uint16 bobnum = 0;
@@ -306,7 +303,7 @@ uint16 QueenLogic::findBob(uint16 obj) {
}
-uint16 QueenLogic::findFrame(uint16 obj) {
+uint16 Logic::findFrame(uint16 obj) {
uint16 i;
uint16 framenum = 0;
@@ -382,14 +379,14 @@ uint16 QueenLogic::findFrame(uint16 obj) {
return framenum;
}
-int16 QueenLogic::gameState(int index) {
+int16 Logic::gameState(int index) {
if (index >= 0 && index < GAME_STATE_COUNT)
return _gameState[index];
else
error("[QueenLogic::gameState] invalid index: %i", index);
}
-void QueenLogic::gameState(int index, int16 newValue) {
+void Logic::gameState(int index, int16 newValue) {
if (index >= 0 && index < GAME_STATE_COUNT)
_gameState[index] = newValue;
else
@@ -398,3 +395,4 @@ void QueenLogic::gameState(int index, int16 newValue) {
} // End of namespace Queen
+
diff --git a/queen/logic.h b/queen/logic.h
index cda7413507..1aff8c58a5 100644
--- a/queen/logic.h
+++ b/queen/logic.h
@@ -32,11 +32,11 @@ enum {
FRAME_XTRA = 2
};
-class QueenLogic {
+class Logic {
public:
- QueenLogic(QueenResource *resource);
- ~QueenLogic();
+ Logic(Resource *resource);
+ ~Logic();
uint16 currentRoom();
void currentRoom(uint16 room);
@@ -73,8 +73,8 @@ protected:
uint16 *_roomData;
uint16 *_sfxName;
- uint16 *_objMax;
- uint16 *_areaMax;
+ int16 *_objMax;
+ int16 *_areaMax;
uint16 (*_objectBox)[4]; // FIXME: Box *_objectBox;
uint16 (*_itemData)[5]; // FIXME: ItemData *_itemData;
GraphicData *_graphicData;
@@ -91,7 +91,7 @@ protected:
uint16 _maxAnimatedFrame, _maxStaticFrame, _maxAnimatedFrameLen; // FMAXA, FMAX, FMAXALEN
- QueenResource *_resource;
+ Resource *_resource;
void initialise();
};
diff --git a/queen/module.mk b/queen/module.mk
index e2b250e22d..56ba7b5134 100644
--- a/queen/module.mk
+++ b/queen/module.mk
@@ -4,9 +4,9 @@ MODULE_OBJS = \
queen/cutaway.o \
queen/graphics.o \
queen/logic.o \
+ queen/queen.o \
queen/resource.o \
queen/restables.o \
- queen/queen.o \
queen/version.o \
# This module can be built as a plugin
diff --git a/queen/queen.cpp b/queen/queen.cpp
index 001021fa15..59dd9c8df4 100644
--- a/queen/queen.cpp
+++ b/queen/queen.cpp
@@ -72,8 +72,8 @@ QueenEngine::QueenEngine(GameDetector *detector, OSystem *syst)
}
QueenEngine::~QueenEngine() {
- delete _queenLogic;
- delete _queenResource;
+ delete _logic;
+ delete _resource;
//delete _queenDisplay;
}
@@ -94,9 +94,9 @@ void QueenEngine::go() {
}
void QueenEngine::initialise(void) {
- _queenResource = new QueenResource(_gameDataPath);
- _queenLogic = new QueenLogic(_queenResource);
- //_queenSound = new QueenSound(_mixer, _detector->_sfx_volume);
+ _resource = new Resource(_gameDataPath);
+ _logic = new Logic(_resource);
+ //_sound = new Sound(_mixer, _detector->_sfx_volume);
}
void QueenEngine::delay(uint amount) {
diff --git a/queen/queen.h b/queen/queen.h
index c7e9ab7ed5..9eff963f79 100644
--- a/queen/queen.h
+++ b/queen/queen.h
@@ -33,7 +33,7 @@
namespace Queen {
-class QueenLogic;
+class Logic;
class QueenEngine : public Engine {
void errorString(const char *buf_input, char *buf_output);
@@ -50,8 +50,8 @@ protected:
FILE *_dump_file;
- QueenResource *_queenResource;
- QueenLogic *_queenLogic;
+ Resource *_resource;
+ Logic *_logic;
GameDetector *_detector; // necessary for music
diff --git a/queen/resource.cpp b/queen/resource.cpp
index 93adca08c2..e17736f9a3 100644
--- a/queen/resource.cpp
+++ b/queen/resource.cpp
@@ -29,7 +29,7 @@ namespace Queen {
static const char *dataFilename = "queen.1";
-QueenResource::QueenResource(char *datafilePath) {
+Resource::Resource(char *datafilePath) {
_datafilePath = datafilePath;
_resourceFile = new File();
@@ -64,11 +64,11 @@ QueenResource::QueenResource(char *datafilePath) {
}
-QueenResource::~QueenResource() {
+Resource::~Resource() {
_resourceFile->close();
}
-int32 QueenResource::resourceIndex(const char *filename) {
+int32 Resource::resourceIndex(const char *filename) {
char entryName[14];
char *ptr = entryName;
@@ -109,15 +109,15 @@ int32 QueenResource::resourceIndex(const char *filename) {
return -1;
}
-uint32 QueenResource::fileSize(const char *filename) {
+uint32 Resource::fileSize(const char *filename) {
return _gameVersion->resourceTable[resourceIndex(filename)].size;
}
-uint32 QueenResource::fileOffset(const char *filename) {
+uint32 Resource::fileOffset(const char *filename) {
return _gameVersion->resourceTable[resourceIndex(filename)].offset;
}
-uint8 *QueenResource::loadFile(const char *filename, uint32 skipBytes) {
+uint8 *Resource::loadFile(const char *filename, uint32 skipBytes) {
uint32 size = fileSize(filename);
byte *mem = new byte[size];
// skip 'skipBytes' bytes (useful for headers)
@@ -126,11 +126,11 @@ uint8 *QueenResource::loadFile(const char *filename, uint32 skipBytes) {
return mem;
}
-bool QueenResource::exists(const char *filename) {
+bool Resource::exists(const char *filename) {
return resourceIndex(filename) >= 0;
}
-const char *QueenResource::JASVersion() {
+const char *Resource::JASVersion() {
static char versionStr[6];
if (_gameVersion->isDemo)
_resourceFile->seek(fileOffset("QUEEN.JAS") + DEMO_JAS_VERSION_OFFSET, SEEK_SET );
@@ -140,8 +140,9 @@ const char *QueenResource::JASVersion() {
return versionStr;
}
-bool QueenResource::isDemo() {
+bool Resource::isDemo() {
return _gameVersion->isDemo;
}
} // End of namespace Queen
+
diff --git a/queen/resource.h b/queen/resource.h
index c0bc655fb4..c0667b0ee0 100644
--- a/queen/resource.h
+++ b/queen/resource.h
@@ -42,11 +42,11 @@ struct GameVersion {
};
-class QueenResource {
+class Resource {
public:
- QueenResource(char *datafilePath);
- ~QueenResource(void);
+ Resource(char *datafilePath);
+ ~Resource(void);
uint8 *loadFile(const char *filename, uint32 skipBytes = 0);
bool exists(const char *filename);
bool isDemo();
diff --git a/queen/restables.cpp b/queen/restables.cpp
index db23226025..1f373307b7 100644
--- a/queen/restables.cpp
+++ b/queen/restables.cpp
@@ -24,7 +24,7 @@
namespace Queen {
//English Floppy Demo v1
-const ResourceEntry QueenResource::_resourceTablePE100v1[] = {
+const ResourceEntry Resource::_resourceTablePE100v1[] = {
{ "ANDERSON.ACT", 1, 0x00000000, 0x00007c0a },
{ "AQ8.RL", 1, 0x00007c0a, 0x000167f8 },
{ "AQBANK.MUS", 1, 0x0001e402, 0x0002db36 },
@@ -183,7 +183,7 @@ const ResourceEntry QueenResource::_resourceTablePE100v1[] = {
};
//English Floppy Demo v2
-const ResourceEntry QueenResource::_resourceTablePE100v2[] = {
+const ResourceEntry Resource::_resourceTablePE100v2[] = {
{ "ANDERSON.ACT", 1, 0x00000000, 0x00007c0a },
{ "AQ8.RL", 1, 0x00007c0a, 0x000167f8 },
{ "AQBANK.MUS", 1, 0x0001e402, 0x0002db36 },
@@ -342,7 +342,7 @@ const ResourceEntry QueenResource::_resourceTablePE100v2[] = {
};
//English Floppy Version
-const ResourceEntry QueenResource::_resourceTablePEM10[] = {
+const ResourceEntry Resource::_resourceTablePEM10[] = {
{ "1000SSSS.SB", 1, 0x00000000, 0x000027fe },
{ "1001SSSS.SB", 1, 0x000027fe, 0x00007af8 },
{ "1002SSSS.SB", 1, 0x0000a2f6, 0x000049e2 },
@@ -1422,7 +1422,7 @@ const ResourceEntry QueenResource::_resourceTablePEM10[] = {
};
//English CD Talkie
-const ResourceEntry QueenResource::_resourceTableCEM10[] = {
+const ResourceEntry Resource::_resourceTableCEM10[] = {
{ "020001P2.SB", 1, 0x00000000, 0x00008ed9 },
{ "020006J1.SB", 1, 0x00008ed9, 0x000078c2 },
{ "020006P1.SB", 1, 0x0001079b, 0x0000543a },
diff --git a/queen/version.cpp b/queen/version.cpp
index 3e68b4bcca..6911b97607 100644
--- a/queen/version.cpp
+++ b/queen/version.cpp
@@ -24,7 +24,7 @@
namespace Queen {
//English Floppy Demo v1
-const GameVersion QueenResource::_gameVersionPE100v1 = {
+const GameVersion Resource::_gameVersionPE100v1 = {
"PE100",
155,
true,
@@ -33,7 +33,7 @@ const GameVersion QueenResource::_gameVersionPE100v1 = {
};
//English Floppy Demo v2
-const GameVersion QueenResource::_gameVersionPE100v2 = {
+const GameVersion Resource::_gameVersionPE100v2 = {
"PE100",
155,
true,
@@ -42,7 +42,7 @@ const GameVersion QueenResource::_gameVersionPE100v2 = {
};
//English Floppy
-const GameVersion QueenResource::_gameVersionPEM10 = {
+const GameVersion Resource::_gameVersionPEM10 = {
"PEM10",
1076,
true,
@@ -51,7 +51,7 @@ const GameVersion QueenResource::_gameVersionPEM10 = {
};
//English CD Talkie
-const GameVersion QueenResource::_gameVersionCEM10 = {
+const GameVersion Resource::_gameVersionCEM10 = {
"CEM10",
7671,
false,