aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic
diff options
context:
space:
mode:
Diffstat (limited to 'engines/titanic')
-rw-r--r--engines/titanic/core/saveable_object.cpp332
-rw-r--r--engines/titanic/messages/doorbot_needed_in_elevator_msg.cpp46
-rw-r--r--engines/titanic/messages/doorbot_needed_in_elevator_msg.h55
-rw-r--r--engines/titanic/messages/drop_object_msg.cpp46
-rw-r--r--engines/titanic/messages/drop_zone_got_object_msg.cpp46
-rw-r--r--engines/titanic/messages/edit_control_msg.h (renamed from engines/titanic/messages/drop_object_msg.h)35
-rw-r--r--engines/titanic/messages/is_hooked_on_msg.h (renamed from engines/titanic/messages/drop_zone_got_object_msg.h)35
-rw-r--r--engines/titanic/messages/lights_msg.h (renamed from engines/titanic/messages/doorbot_needed_in_home_msg.h)33
-rw-r--r--engines/titanic/messages/message.h217
-rw-r--r--engines/titanic/messages/sub_accept_ccarry_msg.h (renamed from engines/titanic/messages/doorbot_needed_in_home_msg.cpp)35
-rw-r--r--engines/titanic/messages/transport_msg.h45
-rw-r--r--engines/titanic/module.mk4
12 files changed, 652 insertions, 277 deletions
diff --git a/engines/titanic/core/saveable_object.cpp b/engines/titanic/core/saveable_object.cpp
index f76163318c..fdb8df6955 100644
--- a/engines/titanic/core/saveable_object.cpp
+++ b/engines/titanic/core/saveable_object.cpp
@@ -114,8 +114,12 @@
#include "titanic/gfx/st_button.h"
#include "titanic/gfx/toggle_switch.h"
-#include "titanic/messages/auto_sound_event.h"
-#include "titanic/messages/door_auto_sound_event.h"
+#include "titanic/messages/message.h"
+#include "titanic/messages/edit_control_msg.h"
+#include "titanic/messages/is_hooked_on_msg.h"
+#include "titanic/messages/lights_msg.h"
+#include "titanic/messages/sub_accept_ccarry_msg.h"
+#include "titanic/messages/transport_msg.h"
#include "titanic/moves/enter_bomb_room.h"
#include "titanic/moves/exit_arboretum.h"
@@ -240,8 +244,170 @@ DEFFN(CSmallChevRightOn);
DEFFN(CStatusChangeButton);
DEFFN(CSTButton);
+DEFFN(CActMsg);
+DEFFN(CActivationmsg);
+DEFFN(CAddHeadPieceMsg);
+DEFFN(CAnimateMaitreDMsg);
+DEFFN(CArboretumGateMsg);
+DEFFN(CArmPickedUpFromTableMsg);
DEFFN(CAutoSoundEvent);
+DEFFN(CBodyInBilgeRoomMsg);
+DEFFN(CBowlStateChange);
+DEFFN(CCarryObjectArrivedMsg);
+DEFFN(CChangeSeasonMsg);
+DEFFN(CCheckAllPossibleCodes);
+DEFFN(CCheckChevCode);
+DEFFN(CChildDragEndMsg);
+DEFFN(CChildDragMoveMsg);
+DEFFN(CChildDragStartMsg);
+DEFFN(CClearChevPanelBits);
+DEFFN(CCorrectMusicPlayedMsg);
+DEFFN(CCreateMusicPlayerMsg);
+DEFFN(CCylinderHolderReadyMsg);
+DEFFN(CDeactivationMsg);
+DEFFN(CDeliverCCarryMsg);
+DEFFN(CDisableMaitreDProdReceptor);
+DEFFN(CDismissBotMsg);
+DEFFN(CDoffNavHelmet);
+DEFFN(CDonNavHelmet);
DEFFN(CDoorAutoSoundEvent);
+DEFFN(CDoorbotNeededInElevatorMsg);
+DEFFN(CDoorbotNeededInHomeMsg);
+DEFFN(CDropobjectMsg);
+DEFFN(CDropZoneGotObjectMsg);
+DEFFN(CDropZoneLostObjectMsg);
+DEFFN(CEditControlMsg);
+DEFFN(CEjectCylinderMsg);
+DEFFN(CErasePhonographCylinderMsg);
+DEFFN(CFreshenCookieMsg);
+DEFFN(CGetChevClassBits);
+DEFFN(CGetChevClassNum);
+DEFFN(CGetChevCodeFromRoomNameMsg);
+DEFFN(CGetChevFloorBits);
+DEFFN(CGetChevFloorNum);
+DEFFN(CGetChevLiftBits);
+DEFFN(CGetChevLiftNum);
+DEFFN(CGetChevRoomBits);
+DEFFN(CGetChevRoomNum);
+DEFFN(CHoseConnectedMsg);
+DEFFN(CInitializeAnimMsg);
+DEFFN(CIsEarBowlPuzzleDone);
+DEFFN(CIsHookedOnMsg);
+DEFFN(CIsParrotPresentMsg);
+DEFFN(CKeyCharMsg);
+DEFFN(CLemonFallsFromTreeMsg);
+DEFFN(CLightsMsg);
+DEFFN(CLockPhonographMsg);
+DEFFN(CMaitreDDefeatedMsg);
+DEFFN(CMaitreDHappyMsg);
+DEFFN(CMissiveOMatActionMsg);
+DEFFN(CMoveToStartPosMsg);
+DEFFN(CMovieEndMsg);
+DEFFN(CMovieFrameMsg);
+DEFFN(CMusicHasStartedMsg);
+DEFFN(CMusicHasStoppedMsg);
+DEFFN(CMusicSettingChangedMsg);
+DEFFN(CNPCPlayAnimationMsg);
+DEFFN(CNPCPlayIdleAnimationMsg);
+DEFFN(CNPCPlayTalkingAnimationMsg);
+DEFFN(CNPCQueueIdleAnimMsg);
+DEFFN(CNutPuzzleMsg);
+DEFFN(COnSummonBotMsg);
+DEFFN(COpeningCreditsMsg);
+DEFFN(CPETDeliverMsg);
+DEFFN(CPETGainedObjectMsg);
+DEFFN(CPETHelmetOnOffMsg);
+DEFFN(CPETKeyboardOnOffMsg);
+DEFFN(CPETLostObjectMsg);
+DEFFN(CPETObjectSelectedMsg);
+DEFFN(CPETObjectStateMsg);
+DEFFN(CPETPhotoOnOffMsg);
+DEFFN(CPETPlaySoundMsg);
+DEFFN(CPETReceiveMsg);
+DEFFN(CPETSetStarDestinationMsg);
+DEFFN(CPETStarFieldLockMsg);
+DEFFN(CPETStereoFieldOnOffMsg);
+DEFFN(CPETTargetMsg);
+DEFFN(CPanningAwayFromParrotMsg);
+DEFFN(CParrotSpeakMsg);
+DEFFN(CParrotTriesChickenMsg);
+DEFFN(CPassOnDragStartMsg);
+DEFFN(CPhonographPlayMsg);
+DEFFN(CPhonographReadyToPlayMsg);
+DEFFN(CPhonographRecordMsg);
+DEFFN(CPhonographStopMsg);
+DEFFN(CPlayRangeMsg);
+DEFFN(CPlayerTriesRestaurantTableMsg);
+DEFFN(CPreSaveMsg);
+DEFFN(CProdMaitreDMsg);
+DEFFN(CPumpingMsg);
+DEFFN(CPutBotBackInHisBoxMsg);
+DEFFN(CPutParrotBackMsg);
+DEFFN(CPuzzleSolvedMsg);
+DEFFN(CQueryCylinderHolderMsg);
+DEFFN(CQueryCylinderMsg);
+DEFFN(CQueryCylinderNameMsg);
+DEFFN(CQueryCylinderTypeMsg);
+DEFFN(CQueryMusicControlSettingMsg);
+DEFFN(CQueryPhonographState);
+DEFFN(CRecordOntoCylinderMsg);
+DEFFN(CRemoveFromGameMsg);
+DEFFN(CReplaceBowlAndNutsMsg);
+DEFFN(CRestaurantMusicChanged);
+DEFFN(CSendCCarryMsg);
+DEFFN(CSenseWorkingMsg);
+DEFFN(CServiceElevatorFloorChangeMsg);
+DEFFN(CServiceElevatorFloorRequestMsg);
+DEFFN(CServiceElevatorMsg);
+DEFFN(CSetChevButtonImageMsg);
+DEFFN(CSetChevClassBits);
+DEFFN(CSetChevFloorBits);
+DEFFN(CSetChevLiftBits);
+DEFFN(CSetChevPanelBitMsg);
+DEFFN(CSetChevPanelButtonsMsg);
+DEFFN(CSetChevRoomBits);
+DEFFN(CSetMusicControlsMsg);
+DEFFN(CSetVarMsg);
+DEFFN(CSetVolumeMsg);
+DEFFN(CShipSettingMsg);
+DEFFN(CShowTextMsg);
+DEFFN(CSignalObject);
+DEFFN(CSpeechFallsFromTreeMsg);
+DEFFN(CStartMusicMsg);
+DEFFN(CStatusChangeMsg);
+DEFFN(CStopMusicMsg);
+DEFFN(CSubAcceptCCarryMsg);
+DEFFN(CSubDeliverCCarryMsg);
+DEFFN(CSubSendCCarryMsg);
+DEFFN(CSUBTransition);
+DEFFN(CSubTurnOffMsg);
+DEFFN(CSubTurnOnMsg);
+DEFFN(CSummonBotMsg);
+DEFFN(CSummonBotQuerryMsg);
+DEFFN(CTakeHeadPieceMsg);
+DEFFN(CTextInputMsg);
+DEFFN(CTimeDilationMsg);
+DEFFN(CTimeMsg);
+DEFFN(CTitleSequenceEndedMsg);
+DEFFN(CTransitMsg);
+DEFFN(CTransportMsg);
+DEFFN(CTriggerAutoMusicPlayerMsg);
+DEFFN(CTriggerNPCEvent);
+DEFFN(CTrueTalkGetAnimSetMsg);
+DEFFN(CTrueTalkGetAssetDetailsMsg);
+DEFFN(CTrueTalkGetStateValueMsg);
+DEFFN(CTrueTalkNotifySpeechEndedMsg);
+DEFFN(CTrueTalkNotifySpeechStartedMsg);
+DEFFN(CTrueTalkQueueUpAnimSetMsg);
+DEFFN(CTrueTalkSelfQueueAnimSetMsg);
+DEFFN(CTrueTalkTriggerActionMsg);
+DEFFN(CTurnOff);
+DEFFN(CTurnOn);
+DEFFN(CUse);
+DEFFN(CUseWithCharMsg);
+DEFFN(CUseWithOtherMsg);
+DEFFN(CVirtualKeyCharMsg);
+DEFFN(CVisibleMsg);
DEFFN(CEnterBombRoom);
DEFFN(CExitArboretum);
@@ -360,8 +526,170 @@ void CSaveableObject::initClassList() {
ADDFN(CStatusChangeButton);
ADDFN(CSTButton);
+ ADDFN(CActMsg);
+ ADDFN(CActivationmsg);
+ ADDFN(CAddHeadPieceMsg);
+ ADDFN(CAnimateMaitreDMsg);
+ ADDFN(CArboretumGateMsg);
+ ADDFN(CArmPickedUpFromTableMsg);
ADDFN(CAutoSoundEvent);
+ ADDFN(CBodyInBilgeRoomMsg);
+ ADDFN(CBowlStateChange);
+ ADDFN(CCarryObjectArrivedMsg);
+ ADDFN(CChangeSeasonMsg);
+ ADDFN(CCheckAllPossibleCodes);
+ ADDFN(CCheckChevCode);
+ ADDFN(CChildDragEndMsg);
+ ADDFN(CChildDragMoveMsg);
+ ADDFN(CChildDragStartMsg);
+ ADDFN(CClearChevPanelBits);
+ ADDFN(CCorrectMusicPlayedMsg);
+ ADDFN(CCreateMusicPlayerMsg);
+ ADDFN(CCylinderHolderReadyMsg);
+ ADDFN(CDeactivationMsg);
+ ADDFN(CDeliverCCarryMsg);
+ ADDFN(CDisableMaitreDProdReceptor);
+ ADDFN(CDismissBotMsg);
+ ADDFN(CDoffNavHelmet);
+ ADDFN(CDonNavHelmet);
ADDFN(CDoorAutoSoundEvent);
+ ADDFN(CDoorbotNeededInElevatorMsg);
+ ADDFN(CDoorbotNeededInHomeMsg);
+ ADDFN(CDropobjectMsg);
+ ADDFN(CDropZoneGotObjectMsg);
+ ADDFN(CDropZoneLostObjectMsg);
+ ADDFN(CEditControlMsg);
+ ADDFN(CEjectCylinderMsg);
+ ADDFN(CErasePhonographCylinderMsg);
+ ADDFN(CFreshenCookieMsg);
+ ADDFN(CGetChevClassBits);
+ ADDFN(CGetChevClassNum);
+ ADDFN(CGetChevCodeFromRoomNameMsg);
+ ADDFN(CGetChevFloorBits);
+ ADDFN(CGetChevFloorNum);
+ ADDFN(CGetChevLiftBits);
+ ADDFN(CGetChevLiftNum);
+ ADDFN(CGetChevRoomBits);
+ ADDFN(CGetChevRoomNum);
+ ADDFN(CHoseConnectedMsg);
+ ADDFN(CInitializeAnimMsg);
+ ADDFN(CIsEarBowlPuzzleDone);
+ ADDFN(CIsHookedOnMsg);
+ ADDFN(CIsParrotPresentMsg);
+ ADDFN(CKeyCharMsg);
+ ADDFN(CLemonFallsFromTreeMsg);
+ ADDFN(CLightsMsg);
+ ADDFN(CLockPhonographMsg);
+ ADDFN(CMaitreDDefeatedMsg);
+ ADDFN(CMaitreDHappyMsg);
+ ADDFN(CMissiveOMatActionMsg);
+ ADDFN(CMoveToStartPosMsg);
+ ADDFN(CMovieEndMsg);
+ ADDFN(CMovieFrameMsg);
+ ADDFN(CMusicHasStartedMsg);
+ ADDFN(CMusicHasStoppedMsg);
+ ADDFN(CMusicSettingChangedMsg);
+ ADDFN(CNPCPlayAnimationMsg);
+ ADDFN(CNPCPlayIdleAnimationMsg);
+ ADDFN(CNPCPlayTalkingAnimationMsg);
+ ADDFN(CNPCQueueIdleAnimMsg);
+ ADDFN(CNutPuzzleMsg);
+ ADDFN(COnSummonBotMsg);
+ ADDFN(COpeningCreditsMsg);
+ ADDFN(CPETDeliverMsg);
+ ADDFN(CPETGainedObjectMsg);
+ ADDFN(CPETHelmetOnOffMsg);
+ ADDFN(CPETKeyboardOnOffMsg);
+ ADDFN(CPETLostObjectMsg);
+ ADDFN(CPETObjectSelectedMsg);
+ ADDFN(CPETObjectStateMsg);
+ ADDFN(CPETPhotoOnOffMsg);
+ ADDFN(CPETPlaySoundMsg);
+ ADDFN(CPETReceiveMsg);
+ ADDFN(CPETSetStarDestinationMsg);
+ ADDFN(CPETStarFieldLockMsg);
+ ADDFN(CPETStereoFieldOnOffMsg);
+ ADDFN(CPETTargetMsg);
+ ADDFN(CPanningAwayFromParrotMsg);
+ ADDFN(CParrotSpeakMsg);
+ ADDFN(CParrotTriesChickenMsg);
+ ADDFN(CPassOnDragStartMsg);
+ ADDFN(CPhonographPlayMsg);
+ ADDFN(CPhonographReadyToPlayMsg);
+ ADDFN(CPhonographRecordMsg);
+ ADDFN(CPhonographStopMsg);
+ ADDFN(CPlayRangeMsg);
+ ADDFN(CPlayerTriesRestaurantTableMsg);
+ ADDFN(CPreSaveMsg);
+ ADDFN(CProdMaitreDMsg);
+ ADDFN(CPumpingMsg);
+ ADDFN(CPutBotBackInHisBoxMsg);
+ ADDFN(CPutParrotBackMsg);
+ ADDFN(CPuzzleSolvedMsg);
+ ADDFN(CQueryCylinderHolderMsg);
+ ADDFN(CQueryCylinderMsg);
+ ADDFN(CQueryCylinderNameMsg);
+ ADDFN(CQueryCylinderTypeMsg);
+ ADDFN(CQueryMusicControlSettingMsg);
+ ADDFN(CQueryPhonographState);
+ ADDFN(CRecordOntoCylinderMsg);
+ ADDFN(CRemoveFromGameMsg);
+ ADDFN(CReplaceBowlAndNutsMsg);
+ ADDFN(CRestaurantMusicChanged);
+ ADDFN(CSendCCarryMsg);
+ ADDFN(CSenseWorkingMsg);
+ ADDFN(CServiceElevatorFloorChangeMsg);
+ ADDFN(CServiceElevatorFloorRequestMsg);
+ ADDFN(CServiceElevatorMsg);
+ ADDFN(CSetChevButtonImageMsg);
+ ADDFN(CSetChevClassBits);
+ ADDFN(CSetChevFloorBits);
+ ADDFN(CSetChevLiftBits);
+ ADDFN(CSetChevPanelBitMsg);
+ ADDFN(CSetChevPanelButtonsMsg);
+ ADDFN(CSetChevRoomBits);
+ ADDFN(CSetMusicControlsMsg);
+ ADDFN(CSetVarMsg);
+ ADDFN(CSetVolumeMsg);
+ ADDFN(CShipSettingMsg);
+ ADDFN(CShowTextMsg);
+ ADDFN(CSignalObject);
+ ADDFN(CSpeechFallsFromTreeMsg);
+ ADDFN(CStartMusicMsg);
+ ADDFN(CStatusChangeMsg);
+ ADDFN(CStopMusicMsg);
+ ADDFN(CSubAcceptCCarryMsg);
+ ADDFN(CSubDeliverCCarryMsg);
+ ADDFN(CSubSendCCarryMsg);
+ ADDFN(CSUBTransition);
+ ADDFN(CSubTurnOffMsg);
+ ADDFN(CSubTurnOnMsg);
+ ADDFN(CSummonBotMsg);
+ ADDFN(CSummonBotQuerryMsg);
+ ADDFN(CTakeHeadPieceMsg);
+ ADDFN(CTextInputMsg);
+ ADDFN(CTimeDilationMsg);
+ ADDFN(CTimeMsg);
+ ADDFN(CTitleSequenceEndedMsg);
+ ADDFN(CTransitMsg);
+ ADDFN(CTransportMsg);
+ ADDFN(CTriggerAutoMusicPlayerMsg);
+ ADDFN(CTriggerNPCEvent);
+ ADDFN(CTrueTalkGetAnimSetMsg);
+ ADDFN(CTrueTalkGetAssetDetailsMsg);
+ ADDFN(CTrueTalkGetStateValueMsg);
+ ADDFN(CTrueTalkNotifySpeechEndedMsg);
+ ADDFN(CTrueTalkNotifySpeechStartedMsg);
+ ADDFN(CTrueTalkQueueUpAnimSetMsg);
+ ADDFN(CTrueTalkSelfQueueAnimSetMsg);
+ ADDFN(CTrueTalkTriggerActionMsg);
+ ADDFN(CTurnOff);
+ ADDFN(CTurnOn);
+ ADDFN(CUse);
+ ADDFN(CUseWithCharMsg);
+ ADDFN(CUseWithOtherMsg);
+ ADDFN(CVirtualKeyCharMsg);
+ ADDFN(CVisibleMsg);
ADDFN(CEnterBombRoom);
ADDFN(CExitArboretum);
diff --git a/engines/titanic/messages/doorbot_needed_in_elevator_msg.cpp b/engines/titanic/messages/doorbot_needed_in_elevator_msg.cpp
deleted file mode 100644
index a9c8fc3dcd..0000000000
--- a/engines/titanic/messages/doorbot_needed_in_elevator_msg.cpp
+++ /dev/null
@@ -1,46 +0,0 @@
-/* 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.
- *
- */
-
-#include "titanic/messages/auto_sound_event.h"
-
-namespace Titanic {
-
-CAutoSoundEvent::CAutoSoundEvent() : CGameObject(), _fieldBC(-1), _fieldC0(0xFFFFFF) {
-}
-
-void CAutoSoundEvent::save(SimpleFile *file, int indent) const {
- file->writeNumberLine(1, indent);
- file->writeNumberLine(_fieldBC, indent);
- file->writeNumberLine(_fieldC0, indent);
-
- CGameObject::save(file, indent);
-}
-
-void CAutoSoundEvent::load(SimpleFile *file) {
- file->readNumber();
- _fieldBC = file->readNumber();
- _fieldC0 = file->readNumber();
-
- CGameObject::load(file);
-}
-
-} // End of namespace Titanic
diff --git a/engines/titanic/messages/doorbot_needed_in_elevator_msg.h b/engines/titanic/messages/doorbot_needed_in_elevator_msg.h
deleted file mode 100644
index 50b2c3f793..0000000000
--- a/engines/titanic/messages/doorbot_needed_in_elevator_msg.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* 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.
- *
- */
-
-#ifndef TITANIC_DOORBOT_NEEDED_IN_ELEVATOR_MSG_H
-#define TITANIC_DOORBOT_NEEDED_IN_ELEVATOR_MSG_H
-
-#include "titanic/core/game_object.h"
-
-namespace Titanic {
-
-class CAutoSoundEvent : public CMessage {
-protected:
- int _fieldBC;
- int _fieldC0;
-public:
- CAutoSoundEvent();
-
- /**
- * Return the class name
- */
- virtual const char *getClassName() const { return "CAutoSoundEvent"; }
-
- /**
- * Save the data for the class to file
- */
- virtual void save(SimpleFile *file, int indent) const;
-
- /**
- * Load the data for the class from file
- */
- virtual void load(SimpleFile *file);
-};
-
-} // End of namespace Titanic
-
-#endif /* TITANIC_DOORBOT_NEEDED_IN_ELEVATOR_MSG_H */
diff --git a/engines/titanic/messages/drop_object_msg.cpp b/engines/titanic/messages/drop_object_msg.cpp
deleted file mode 100644
index a9c8fc3dcd..0000000000
--- a/engines/titanic/messages/drop_object_msg.cpp
+++ /dev/null
@@ -1,46 +0,0 @@
-/* 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.
- *
- */
-
-#include "titanic/messages/auto_sound_event.h"
-
-namespace Titanic {
-
-CAutoSoundEvent::CAutoSoundEvent() : CGameObject(), _fieldBC(-1), _fieldC0(0xFFFFFF) {
-}
-
-void CAutoSoundEvent::save(SimpleFile *file, int indent) const {
- file->writeNumberLine(1, indent);
- file->writeNumberLine(_fieldBC, indent);
- file->writeNumberLine(_fieldC0, indent);
-
- CGameObject::save(file, indent);
-}
-
-void CAutoSoundEvent::load(SimpleFile *file) {
- file->readNumber();
- _fieldBC = file->readNumber();
- _fieldC0 = file->readNumber();
-
- CGameObject::load(file);
-}
-
-} // End of namespace Titanic
diff --git a/engines/titanic/messages/drop_zone_got_object_msg.cpp b/engines/titanic/messages/drop_zone_got_object_msg.cpp
deleted file mode 100644
index a9c8fc3dcd..0000000000
--- a/engines/titanic/messages/drop_zone_got_object_msg.cpp
+++ /dev/null
@@ -1,46 +0,0 @@
-/* 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.
- *
- */
-
-#include "titanic/messages/auto_sound_event.h"
-
-namespace Titanic {
-
-CAutoSoundEvent::CAutoSoundEvent() : CGameObject(), _fieldBC(-1), _fieldC0(0xFFFFFF) {
-}
-
-void CAutoSoundEvent::save(SimpleFile *file, int indent) const {
- file->writeNumberLine(1, indent);
- file->writeNumberLine(_fieldBC, indent);
- file->writeNumberLine(_fieldC0, indent);
-
- CGameObject::save(file, indent);
-}
-
-void CAutoSoundEvent::load(SimpleFile *file) {
- file->readNumber();
- _fieldBC = file->readNumber();
- _fieldC0 = file->readNumber();
-
- CGameObject::load(file);
-}
-
-} // End of namespace Titanic
diff --git a/engines/titanic/messages/drop_object_msg.h b/engines/titanic/messages/edit_control_msg.h
index f3a805c1e1..b44035a02a 100644
--- a/engines/titanic/messages/drop_object_msg.h
+++ b/engines/titanic/messages/edit_control_msg.h
@@ -20,36 +20,31 @@
*
*/
-#ifndef TITANIC_AUTO_SOUND_EVENT_H
-#define TITANIC_AUTO_SOUND_EVENT_H
+#ifndef TITANIC_EDIT_CONTROL_MSG_H
+#define TITANIC_EDIT_CONTROL_MSG_H
-#include "titanic/core/game_object.h"
+#include "titanic/messages/message.h"
namespace Titanic {
-class CAutoSoundEvent : public CGameObject {
-protected:
- int _fieldBC;
- int _fieldC0;
+class CEditControlMsg : public CMessage {
+private:
+ int _field4;
+ int _field8;
+ CString _string1;
+ int _field18;
+ int _field1C;
+ int _field20;
public:
- CAutoSoundEvent();
+ CEditControlMsg() : _field4(0), _field8(0), _field18(0),
+ _field1C(0), _field20(0) {}
/**
* Return the class name
*/
- virtual const char *getClassName() const { return "CAutoSoundEvent"; }
-
- /**
- * Save the data for the class to file
- */
- virtual void save(SimpleFile *file, int indent) const;
-
- /**
- * Load the data for the class from file
- */
- virtual void load(SimpleFile *file);
+ virtual const char *getClassName() const { return "CEditControlMsg"; }
};
} // End of namespace Titanic
-#endif /* TITANIC_AUTO_SOUND_EVENT_H */
+#endif /* TITANIC_EDIT_CONTROL_MSG_H */
diff --git a/engines/titanic/messages/drop_zone_got_object_msg.h b/engines/titanic/messages/is_hooked_on_msg.h
index f3a805c1e1..f8a5062fbb 100644
--- a/engines/titanic/messages/drop_zone_got_object_msg.h
+++ b/engines/titanic/messages/is_hooked_on_msg.h
@@ -20,36 +20,31 @@
*
*/
-#ifndef TITANIC_AUTO_SOUND_EVENT_H
-#define TITANIC_AUTO_SOUND_EVENT_H
+#ifndef TITANIC_IS_HOOKED_ON_MSG_H
+#define TITANIC_IS_HOOKED_ON_MSG_H
-#include "titanic/core/game_object.h"
+#include "titanic/messages/message.h"
namespace Titanic {
-class CAutoSoundEvent : public CGameObject {
-protected:
- int _fieldBC;
- int _fieldC0;
+class CIsHookedOnMsg : public CMessage {
+private:
+ int _field4;
+ int _field8;
+ CString _string1;
+ int _field18;
+ int _field1C;
+ int _field20;
public:
- CAutoSoundEvent();
+ CIsHookedOnMsg() : CMessage(), _field4(0), _field8(0),
+ _field18(0), _field1C(0), _field20(0) {}
/**
* Return the class name
*/
- virtual const char *getClassName() const { return "CAutoSoundEvent"; }
-
- /**
- * Save the data for the class to file
- */
- virtual void save(SimpleFile *file, int indent) const;
-
- /**
- * Load the data for the class from file
- */
- virtual void load(SimpleFile *file);
+ virtual const char *getClassName() const { return "CIsHookedOnMsg"; }
};
} // End of namespace Titanic
-#endif /* TITANIC_AUTO_SOUND_EVENT_H */
+#endif /* TITANIC_IS_HOOKED_ON_MSG_H */
diff --git a/engines/titanic/messages/doorbot_needed_in_home_msg.h b/engines/titanic/messages/lights_msg.h
index f3a805c1e1..1cd82ca8f2 100644
--- a/engines/titanic/messages/doorbot_needed_in_home_msg.h
+++ b/engines/titanic/messages/lights_msg.h
@@ -20,36 +20,29 @@
*
*/
-#ifndef TITANIC_AUTO_SOUND_EVENT_H
-#define TITANIC_AUTO_SOUND_EVENT_H
+#ifndef TITANIC_LIGHTS_MSG_H
+#define TITANIC_LIGHTS_MSG_H
-#include "titanic/core/game_object.h"
+#include "titanic/messages/message.h"
namespace Titanic {
-class CAutoSoundEvent : public CGameObject {
-protected:
- int _fieldBC;
- int _fieldC0;
+class CLightsMsg : public CMessage {
public:
- CAutoSoundEvent();
+ int _field4;
+ int _field8;
+ int _fieldC;
+ int _field10;
+public:
+ CLightsMsg() : CMessage(), _field4(0), _field8(0),
+ _fieldC(0), _field10(0) {}
/**
* Return the class name
*/
- virtual const char *getClassName() const { return "CAutoSoundEvent"; }
-
- /**
- * Save the data for the class to file
- */
- virtual void save(SimpleFile *file, int indent) const;
-
- /**
- * Load the data for the class from file
- */
- virtual void load(SimpleFile *file);
+ virtual const char *getClassName() const { return "CLightsMsg"; }
};
} // End of namespace Titanic
-#endif /* TITANIC_AUTO_SOUND_EVENT_H */
+#endif /* TITANIC_LIGHTS_MSG_H */
diff --git a/engines/titanic/messages/message.h b/engines/titanic/messages/message.h
index 59cc94ec08..9f10a7ed4a 100644
--- a/engines/titanic/messages/message.h
+++ b/engines/titanic/messages/message.h
@@ -47,6 +47,223 @@ public:
virtual void load(SimpleFile *file);
};
+#define RAW_MESSAGE(NAME) class NAME: public CMessage { \
+ virtual const char *getClassName() const { return #NAME; } \
+ }
+#define STR_MESSAGE(NAME, FIELD) class NAME: public CMessage { \
+ public: CString FIELD; \
+ virtual const char *getClassName() const { return #NAME; } \
+ }
+#define STR2_MESSAGE(NAME, FIELD1, FIELD2) class NAME: public CMessage { \
+ public: CString FIELD1, FIELD2; \
+ virtual const char *getClassName() const { return #NAME; } \
+ }
+#define STR_MESSAGE_VAL(NAME, FIELD, VAL) class NAME: public CMessage { \
+ public: CString FIELD; \
+ NAME(): FIELD(VAL) {} \
+ virtual const char *getClassName() const { return #NAME; } \
+ }
+#define NUM_MESSAGE(NAME, FIELD) class NAME: public CMessage { \
+ public: int FIELD; \
+ NAME(): FIELD(0) {} \
+ virtual const char *getClassName() const { return #NAME; } \
+ }
+#define NUM_MESSAGE_VAL(NAME, FIELD, VAL) class NAME: public CMessage { \
+ public: int FIELD; \
+ NAME(): CMessage(), FIELD(VAL) {} \
+ virtual const char *getClassName() const { return #NAME; } \
+ }
+#define NUM2_MESSAGE(NAME, FIELD1, FIELD2) class NAME: public CMessage { \
+ public: int FIELD1, FIELD2; \
+ NAME(): CMessage(), FIELD1(0), FIELD2(0) {} \
+ virtual const char *getClassName() const { return #NAME; } \
+ }
+#define NUM3_MESSAGE(NAME, FIELD1, FIELD2, FIELD3) class NAME: public CMessage { \
+ public: int FIELD1, FIELD2, FIELD3; \
+ NAME(): CMessage(), FIELD1(0), FIELD2(0), FIELD3(0) {} \
+ virtual const char *getClassName() const { return #NAME; } \
+ }
+#define NUM4_MESSAGE(NAME, FIELD1, FIELD2, FIELD3, FIELD4) \
+ class NAME: public CMessage { \
+ public: int FIELD1, FIELD2, FIELD3, FIELD4; \
+ NAME(): CMessage(), FIELD1(0), FIELD2(0), FIELD3(0), FIELD4(0) {} \
+ virtual const char *getClassName() const { return #NAME; } \
+ }
+#define NUM2_MESSAGE_VAL(NAME, FIELD1, FIELD2, VAL1, VAL2) \
+ class NAME: public CMessage { \
+ public: int FIELD1, FIELD2; \
+ NAME(): CMessage(), FIELD1(VAL1), FIELD2(VAL2) {} \
+ virtual const char *getClassName() const { return #NAME; } \
+ }
+#define SNUM_MESSAGE(NAME, SFIELD, NFIELD) class NAME: public CMessage { \
+ public: CString SFIELD; CString NFIELD; \
+ virtual const char *getClassName() const { return #NAME; } \
+ }
+#define SNUM_MESSAGE_VAL(NAME, SFIELD, NFIELD, SVAL, NVAL) \
+ class NAME: public CMessage { \
+ public: CString SFIELD; CString NFIELD; \
+ NAME(): CMessage(), SFIELD(SVAL), NFIELD(NVAL) {} \
+ virtual const char *getClassName() const { return #NAME; } \
+ }
+
+STR_MESSAGE(CActMsg, _value);
+STR_MESSAGE(CActivationmsg, _value);
+STR_MESSAGE_VAL(CAddHeadPieceMsg, _value, "NULL");
+NUM_MESSAGE(CAnimateMaitreDMsg, _value);
+NUM_MESSAGE(CArboretumGateMsg, _value);
+RAW_MESSAGE(CArmPickedUpFromTableMsg);
+RAW_MESSAGE(CBodyInBilgeRoomMsg);
+NUM_MESSAGE(CBowlStateChange, _value);
+SNUM_MESSAGE(CCarryObjectArrivedMsg, _strValue, _numValue);
+STR_MESSAGE_VAL(CChangeSeasonMsg, _season, "Summer");
+RAW_MESSAGE(CCheckAllPossibleCodes);
+NUM2_MESSAGE(CCheckChevCode, _value1, _value2);
+NUM_MESSAGE(CChildDragEndMsg, _value);
+NUM2_MESSAGE(CChildDragMoveMsg, _value1, _value2);
+NUM2_MESSAGE(CChildDragStartMsg, _value1, _value2);
+RAW_MESSAGE(CClearChevPanelBits);
+RAW_MESSAGE(CCorrectMusicPlayedMsg);
+RAW_MESSAGE(CCreateMusicPlayerMsg);
+RAW_MESSAGE(CCylinderHolderReadyMsg);
+RAW_MESSAGE(CDeactivationMsg);
+STR_MESSAGE(CDeliverCCarryMsg, _value);
+RAW_MESSAGE(CDisableMaitreDProdReceptor);
+RAW_MESSAGE(CDismissBotMsg);
+RAW_MESSAGE(CDoffNavHelmet);
+RAW_MESSAGE(CDonNavHelmet);
+NUM_MESSAGE(CDoorbotNeededInElevatorMsg, _value);
+RAW_MESSAGE(CDoorbotNeededInHomeMsg);
+NUM_MESSAGE(CDropobjectMsg, _value);
+NUM_MESSAGE(CDropZoneGotObjectMsg, _value);
+NUM_MESSAGE(CDropZoneLostObjectMsg, _value);
+NUM_MESSAGE(CEjectCylinderMsg, _value);
+RAW_MESSAGE(CErasePhonographCylinderMsg);
+NUM2_MESSAGE(CFreshenCookieMsg, _value1, _value2);
+NUM_MESSAGE(CGetChevClassBits, _value);
+NUM_MESSAGE(CGetChevClassNum, _value);
+SNUM_MESSAGE(CGetChevCodeFromRoomNameMsg, _strValue, _numValue);
+NUM_MESSAGE(CGetChevFloorBits, _value);
+NUM_MESSAGE(CGetChevFloorNum, _value);
+NUM_MESSAGE(CGetChevLiftBits, _value);
+NUM_MESSAGE(CGetChevLiftNum, _value);
+NUM_MESSAGE(CGetChevRoomBits, _value);
+NUM_MESSAGE(CGetChevRoomNum, _value);
+NUM2_MESSAGE_VAL(CHoseConnectedMsg, _value1, _value2, 1, 0);
+RAW_MESSAGE(CInitializeAnimMsg);
+NUM_MESSAGE(CIsEarBowlPuzzleDone, _value);
+NUM_MESSAGE(CIsParrotPresentMsg, _value);
+NUM_MESSAGE_VAL(CKeyCharMsg, _value, 32);
+NUM2_MESSAGE(CLemonFallsFromTreeMsg, _value1, _value2);
+NUM_MESSAGE(CLockPhonographMsg, _value);
+RAW_MESSAGE(CMaitreDDefeatedMsg);
+RAW_MESSAGE(CMaitreDHappyMsg);
+NUM_MESSAGE(CMissiveOMatActionMsg, _value);
+RAW_MESSAGE(CMoveToStartPosMsg);
+NUM2_MESSAGE(CMovieEndMsg, _value1, _value2);
+NUM2_MESSAGE(CMovieFrameMsg, _value1, _value2);
+RAW_MESSAGE(CMusicHasStartedMsg);
+RAW_MESSAGE(CMusicHasStoppedMsg);
+RAW_MESSAGE(CMusicSettingChangedMsg);
+NUM2_MESSAGE(CNPCPlayAnimationMsg, _value1, _value2);
+NUM_MESSAGE(CNPCPlayIdleAnimationMsg, _value);
+NUM3_MESSAGE(CNPCPlayTalkingAnimationMsg, _value1, _value2, _value3);
+RAW_MESSAGE(CNPCQueueIdleAnimMsg);
+STR_MESSAGE(CNutPuzzleMsg, _value);
+NUM_MESSAGE(COnSummonBotMsg, _value);
+RAW_MESSAGE(COpeningCreditsMsg);
+RAW_MESSAGE(CPETDeliverMsg);
+RAW_MESSAGE(CPETGainedObjectMsg);
+RAW_MESSAGE(CPETHelmetOnOffMsg);
+RAW_MESSAGE(CPETKeyboardOnOffMsg);
+RAW_MESSAGE(CPETLostObjectMsg);
+RAW_MESSAGE(CPETObjectSelectedMsg);
+NUM_MESSAGE(CPETObjectStateMsg, _value);
+RAW_MESSAGE(CPETPhotoOnOffMsg);
+NUM_MESSAGE(CPETPlaySoundMsg, _value);
+RAW_MESSAGE(CPETReceiveMsg);
+RAW_MESSAGE(CPETSetStarDestinationMsg);
+NUM_MESSAGE(CPETStarFieldLockMsg, _value);
+RAW_MESSAGE(CPETStereoFieldOnOffMsg);
+SNUM_MESSAGE_VAL(CPETTargetMsg, _strValue, _numValue, nullptr, -1);
+NUM_MESSAGE(CPanningAwayFromParrotMsg, _value);
+STR2_MESSAGE(CParrotSpeakMsg, _value1, _value2);
+NUM2_MESSAGE(CParrotTriesChickenMsg, _value1, _value2);
+NUM4_MESSAGE(CPassOnDragStartMsg, _value1, _value2, _value3, _value4);
+NUM_MESSAGE(CPhonographPlayMsg, _value);
+RAW_MESSAGE(CPhonographReadyToPlayMsg);
+NUM_MESSAGE(CPhonographRecordMsg, _value);
+NUM3_MESSAGE(CPhonographStopMsg, _value1, _value2, _value3);
+NUM2_MESSAGE(CPlayRangeMsg, _value1, _value2);
+NUM2_MESSAGE(CPlayerTriesRestaurantTableMsg, _value1, _value2);
+NUM_MESSAGE(CPreSaveMsg, _value);
+NUM_MESSAGE(CProdMaitreDMsg, _value);
+NUM2_MESSAGE(CPumpingMsg, _value1, _value2);
+NUM_MESSAGE(CPutBotBackInHisBoxMsg, _value);
+NUM_MESSAGE(CPutParrotBackMsg, _value);
+RAW_MESSAGE(CPuzzleSolvedMsg);
+NUM3_MESSAGE(CQueryCylinderHolderMsg, _value1, _value2, _value3);
+NUM3_MESSAGE(CQueryCylinderMsg, _value1, _value2, _value3);
+NUM3_MESSAGE(CQueryCylinderNameMsg, _value1, _value2, _value3);
+NUM3_MESSAGE(CQueryCylinderTypeMsg, _value1, _value2, _value3);
+NUM_MESSAGE(CQueryMusicControlSettingMsg, _value);
+NUM_MESSAGE(CQueryPhonographState, _value);
+RAW_MESSAGE(CRecordOntoCylinderMsg);
+RAW_MESSAGE(CRemoveFromGameMsg);
+RAW_MESSAGE(CReplaceBowlAndNutsMsg);
+STR_MESSAGE(CRestaurantMusicChanged, _value);
+SNUM_MESSAGE(CSendCCarryMsg, _strValue, _numValue);
+STR_MESSAGE_VAL(CSenseWorkingMsg, _value, "Not Working");
+NUM2_MESSAGE(CServiceElevatorFloorChangeMsg, _value1, _value2);
+RAW_MESSAGE(CServiceElevatorFloorRequestMsg);
+NUM_MESSAGE_VAL(CServiceElevatorMsg, _value, 4);
+NUM2_MESSAGE(CSetChevButtonImageMsg, _value1, _value2);
+NUM_MESSAGE(CSetChevClassBits, _value);
+NUM_MESSAGE(CSetChevFloorBits, _value);
+NUM_MESSAGE(CSetChevLiftBits, _value);
+NUM2_MESSAGE(CSetChevPanelBitMsg, _value1, _value2);
+NUM_MESSAGE(CSetChevPanelButtonsMsg, _value);
+NUM_MESSAGE(CSetChevRoomBits, _value);
+RAW_MESSAGE(CSetMusicControlsMsg);
+SNUM_MESSAGE(CSetVarMsg, _varName, _value);
+NUM2_MESSAGE_VAL(CSetVolumeMsg, _value1, _value2, 70, 0);
+SNUM_MESSAGE(CShipSettingMsg, _strValue, _numValue);
+STR_MESSAGE_VAL(CShowTextMsg, _value, "NO TEXT INCLUDED!!!");
+SNUM_MESSAGE(CSignalObject, _strValue, _numValue);
+NUM2_MESSAGE(CSpeechFallsFromTreeMsg, _value1, _value2);
+NUM_MESSAGE(CStartMusicMsg, _value);
+NUM3_MESSAGE(CStatusChangeMsg, _value1, _value2, _value3);
+NUM_MESSAGE(CStopMusicMsg, _value);
+RAW_MESSAGE(CSubDeliverCCarryMsg);
+RAW_MESSAGE(CSubSendCCarryMsg);
+RAW_MESSAGE(CSUBTransition);
+RAW_MESSAGE(CSubTurnOffMsg);
+RAW_MESSAGE(CSubTurnOnMsg);
+SNUM_MESSAGE(CSummonBotMsg, _strValue, _numValue);
+STR_MESSAGE(CSummonBotQuerryMsg, _value);
+STR_MESSAGE(CTakeHeadPieceMsg, _value);
+STR2_MESSAGE(CTextInputMsg, _value1, _value2);
+NUM_MESSAGE(CTimeDilationMsg, _value);
+NUM_MESSAGE(CTimeMsg, _value);
+RAW_MESSAGE(CTitleSequenceEndedMsg);
+RAW_MESSAGE(CTransitMsg);
+NUM_MESSAGE(CTriggerAutoMusicPlayerMsg, _value);
+NUM_MESSAGE(CTriggerNPCEvent, _value);
+NUM4_MESSAGE(CTrueTalkGetAnimSetMsg, _value1, _value2, _value3, _value4);
+SNUM_MESSAGE(CTrueTalkGetAssetDetailsMsg, _strValue, _numValue);
+NUM2_MESSAGE_VAL(CTrueTalkGetStateValueMsg, _value1, _value2, 0, -1000);
+NUM2_MESSAGE(CTrueTalkNotifySpeechEndedMsg, _value1, _value2);
+NUM3_MESSAGE(CTrueTalkNotifySpeechStartedMsg, _value1, _value2, _value);
+NUM_MESSAGE(CTrueTalkQueueUpAnimSetMsg, _value);
+RAW_MESSAGE(CTrueTalkSelfQueueAnimSetMsg);
+NUM3_MESSAGE(CTrueTalkTriggerActionMsg, _value1, _value2, _value3);
+RAW_MESSAGE(CTurnOff);
+RAW_MESSAGE(CTurnOn);
+NUM_MESSAGE(CUse, _value);
+NUM_MESSAGE(CUseWithCharMsg, _value);
+NUM_MESSAGE(CUseWithOtherMsg, _value);
+NUM_MESSAGE(CVirtualKeyCharMsg, _value);
+NUM2_MESSAGE_VAL(CVisibleMsg, _value1, _value2, 1, 0);
+
} // End of namespace Titanic
#endif /* TITANIC_MESSAGE_H */
diff --git a/engines/titanic/messages/doorbot_needed_in_home_msg.cpp b/engines/titanic/messages/sub_accept_ccarry_msg.h
index a9c8fc3dcd..b7c48ae81e 100644
--- a/engines/titanic/messages/doorbot_needed_in_home_msg.cpp
+++ b/engines/titanic/messages/sub_accept_ccarry_msg.h
@@ -20,27 +20,26 @@
*
*/
-#include "titanic/messages/auto_sound_event.h"
+#ifndef TITANIC_SUB_ACCEPT_CCARRY_MSG_H
+#define TITANIC_SUB_ACCEPT_CCARRY_MSG_H
-namespace Titanic {
-
-CAutoSoundEvent::CAutoSoundEvent() : CGameObject(), _fieldBC(-1), _fieldC0(0xFFFFFF) {
-}
-
-void CAutoSoundEvent::save(SimpleFile *file, int indent) const {
- file->writeNumberLine(1, indent);
- file->writeNumberLine(_fieldBC, indent);
- file->writeNumberLine(_fieldC0, indent);
+#include "titanic/messages/message.h"
- CGameObject::save(file, indent);
-}
+namespace Titanic {
-void CAutoSoundEvent::load(SimpleFile *file) {
- file->readNumber();
- _fieldBC = file->readNumber();
- _fieldC0 = file->readNumber();
+class CSubAcceptCCarryMsg : public CMessage {
+public:
+ CString _string1;
+ int _value1, _value2, _value3;
+public:
+ CSubAcceptCCarryMsg() : _value1(0), _value2(0), _value3(0) {}
- CGameObject::load(file);
-}
+ /**
+ * Return the class name
+ */
+ virtual const char *getClassName() const { return "CSubAcceptCCarryMsg"; }
+};
} // End of namespace Titanic
+
+#endif /* TITANIC_SUB_ACCEPT_CCARRY_MSG_H */
diff --git a/engines/titanic/messages/transport_msg.h b/engines/titanic/messages/transport_msg.h
new file mode 100644
index 0000000000..513a2504bc
--- /dev/null
+++ b/engines/titanic/messages/transport_msg.h
@@ -0,0 +1,45 @@
+/* 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.
+ *
+ */
+
+#ifndef TITANIC_TRANSPORT_MSG_H
+#define TITANIC_TRANSPORT_MSG_H
+
+#include "titanic/messages/message.h"
+
+namespace Titanic {
+
+class CTransportMsg : public CMessage {
+public:
+ CString _string;
+ int _value1, _value2;
+public:
+ CTransportMsg() : _value1(0), _value2(0) {}
+
+ /**
+ * Return the class name
+ */
+ virtual const char *getClassName() const { return "CTransportMsg"; }
+};
+
+} // End of namespace Titanic
+
+#endif /* TITANIC_TRANSPORT_MSG_H */
diff --git a/engines/titanic/module.mk b/engines/titanic/module.mk
index 1c7e5a5c1e..c20afb299b 100644
--- a/engines/titanic/module.mk
+++ b/engines/titanic/module.mk
@@ -111,10 +111,6 @@ MODULE_OBJS := \
gfx/toggle_switch.o \
messages/auto_sound_event.o \
messages/door_auto_sound_event.o \
- messages/doorbot_needed_in_elevator_msg.o \
- messages/doorbot_needed_in_home_msg.o \
- messages/drop_object_msg.o \
- messages/drop_zone_got_object_msg.o \
messages/message.o \
moves/enter_bomb_room.o \
moves/exit_arboretum.o \