diff options
author | Paul Gilbert | 2016-03-02 23:40:06 -0500 |
---|---|---|
committer | Paul Gilbert | 2016-03-02 23:40:06 -0500 |
commit | e688850e932f0c8be6d10a73fe416c90799733b0 (patch) | |
tree | 48f01b46022f32b5b83089a830df8d5fa11a6192 | |
parent | 3ae4e63c80cda635f941370e72536988bde67698 (diff) | |
download | scummvm-rg350-e688850e932f0c8be6d10a73fe416c90799733b0.tar.gz scummvm-rg350-e688850e932f0c8be6d10a73fe416c90799733b0.tar.bz2 scummvm-rg350-e688850e932f0c8be6d10a73fe416c90799733b0.zip |
TITANIC: Implemented more saveable classes
49 files changed, 1684 insertions, 26 deletions
diff --git a/engines/titanic/core/saveable_object.cpp b/engines/titanic/core/saveable_object.cpp index 7a41230214..8966ea6e67 100644 --- a/engines/titanic/core/saveable_object.cpp +++ b/engines/titanic/core/saveable_object.cpp @@ -61,6 +61,7 @@ #include "titanic/core/saveable_object.h" #include "titanic/core/background.h" #include "titanic/core/click_responder.h" +#include "titanic/core/dont_save_file_item.h" #include "titanic/core/drop_target.h" #include "titanic/core/file_item.h" #include "titanic/core/link_item.h" @@ -69,6 +70,7 @@ #include "titanic/core/movie_clip.h" #include "titanic/core/multi_drop_target.h" #include "titanic/core/node_item.h" +#include "titanic/core/pet_control.h" #include "titanic/core/project_item.h" #include "titanic/core/saveable_object.h" #include "titanic/core/static_image.h" @@ -135,8 +137,6 @@ #include "titanic/game/games_console.h" #include "titanic/game/get_lift_eye2.h" #include "titanic/game/glass_smasher.h" -#include "titanic/game/gondolier_base.h" -#include "titanic/game/gondolier_mixer.h" #include "titanic/game/hammer_clip.h" #include "titanic/game/hammer_dispensor.h" #include "titanic/game/hammer_dispensor_button.h" @@ -163,9 +163,8 @@ #include "titanic/game/null_port_hole.h" #include "titanic/game/nut_replacer.h" #include "titanic/game/pet_disabler.h" -#include "titanic/game/pet_graphic.h" -#include "titanic/game/pet_graphic2.h" #include "titanic/game/phonograph.h" +#include "titanic/game/phonograph_lid.h" #include "titanic/game/play_music_button.h" #include "titanic/game/play_on_act.h" #include "titanic/game/port_hole.h" @@ -201,6 +200,11 @@ #include "titanic/game/wheel_hotspot.h" #include "titanic/game/wheel_spin.h" #include "titanic/game/wheel_spin_horn.h" +#include "titanic/game/gondolier/gondolier_base.h" +#include "titanic/game/gondolier/gondolier_chest.h" +#include "titanic/game/gondolier/gondolier_face.h" +#include "titanic/game/gondolier/gondolier_mixer.h" +#include "titanic/game/gondolier/gondolier_slider.h" #include "titanic/game/maitred/maitred_arm_holder.h" #include "titanic/game/maitred/maitred_body.h" #include "titanic/game/maitred/maitred_legs.h" @@ -277,9 +281,13 @@ #include "titanic/gfx/helmet_on_off.h" #include "titanic/gfx/home_photo.h" #include "titanic/gfx/icon_nav_action.h" +#include "titanic/gfx/icon_nav_butt.h" #include "titanic/gfx/icon_nav_down.h" +#include "titanic/gfx/icon_nav_image.h" #include "titanic/gfx/icon_nav_left.h" +#include "titanic/gfx/icon_nav_receive.h" #include "titanic/gfx/icon_nav_right.h" +#include "titanic/gfx/icon_nav_send.h" #include "titanic/gfx/icon_nav_up.h" #include "titanic/gfx/keybrd_butt.h" #include "titanic/gfx/move_object_button.h" @@ -290,10 +298,18 @@ #include "titanic/gfx/music_switch_inversion.h" #include "titanic/gfx/music_switch_reverse.h" #include "titanic/gfx/music_voice_mute.h" +#include "titanic/gfx/pet_drag_chev.h" +#include "titanic/gfx/pet_graphic.h" +#include "titanic/gfx/pet_graphic2.h" +#include "titanic/gfx/pet_leaf.h" #include "titanic/gfx/pet_mode_off.h" #include "titanic/gfx/pet_mode_on.h" #include "titanic/gfx/pet_mode_panel.h" +#include "titanic/gfx/pet_pannel1.h" +#include "titanic/gfx/pet_pannel2.h" +#include "titanic/gfx/pet_pannel3.h" #include "titanic/gfx/send_to_succ.h" +#include "titanic/gfx/sgt_selector.h" #include "titanic/gfx/slider_button.h" #include "titanic/gfx/small_chev_left_off.h" #include "titanic/gfx/small_chev_left_on.h" @@ -302,6 +318,9 @@ #include "titanic/gfx/status_change_button.h" #include "titanic/gfx/st_button.h" #include "titanic/gfx/toggle_button.h" +#include "titanic/gfx/text_down.h" +#include "titanic/gfx/text_skrew.h" +#include "titanic/gfx/text_up.h" #include "titanic/gfx/toggle_switch.h" #include "titanic/gfx/volume_control.h" @@ -334,6 +353,7 @@ #include "titanic/moves/pan_from_pel.h" #include "titanic/moves/restaurant_pan_handler.h" #include "titanic/moves/restricted_move.h" +#include "titanic/moves/scraliontis_table.h" #include "titanic/moves/trip_down_canal.h" #include "titanic/npcs/barbot.h" @@ -383,6 +403,7 @@ DEFFN(CAuditoryCentre); DEFFN(CBowlEar); DEFFN(CBrain); DEFFN(CBridgePiece); +DEFFN(CCarry); DEFFN(CCarryParrot); DEFFN(CCentralCore); DEFFN(CChicken); @@ -419,6 +440,7 @@ DEFFN(CVisionCentre); DEFFN(CBackground); DEFFN(CClickResponder); +DEFFN(CDontSaveFileItem); DEFFN(CDropTarget); DEFFN(CFileItem); DEFFN(CFileListItem); @@ -428,6 +450,7 @@ DEFFN(CMovieClip); DEFFN(CMovieClipList); DEFFN(CMultiDropTarget); DEFFN(CNodeItem); +DEFFN(CPetControl); DEFFN(CProjectItem); DEFFN(CStaticImage); DEFFN(CTurnOnObject); @@ -492,8 +515,6 @@ DEFFN(CFloorIndicator); DEFFN(CGamesConsole); DEFFN(CGetLiftEye2); DEFFN(CGlassSmasher); -DEFFN(CGondolierBase); -DEFFN(CGondolierMixer); DEFFN(CHammerClip); DEFFN(CHammerDispensor); DEFFN(CHammerDispensorButton); @@ -520,9 +541,8 @@ DEFFN(CNoseHolder); DEFFN(CNullPortHole); DEFFN(CNutReplacer); DEFFN(CPetDisabler); -DEFFN(CPetGraphic); -DEFFN(CPetGraphic2); DEFFN(CPhonograph); +DEFFN(CPhonographLid); DEFFN(CPlayMusicButton); DEFFN(CPlayOnAct); DEFFN(CPortHole); @@ -558,6 +578,11 @@ DEFFN(CWheelButton); DEFFN(CWheelHotSpot); DEFFN(CWheelSpin); DEFFN(CWheelSpinHorn); +DEFFN(CGondolierBase); +DEFFN(CGondolierChest); +DEFFN(CGondolierFace); +DEFFN(CGondolierMixer); +DEFFN(CGondolierSlider); DEFFN(CMaitreDArmHolder); DEFFN(CMaitreDBody); DEFFN(CMaitreDLegs); @@ -577,6 +602,10 @@ DEFFN(CPET); DEFFN(CPETClass1); DEFFN(CPETClass2); DEFFN(CPETClass3); +DEFFN(CPetDragChev); +DEFFN(CPetGraphic); +DEFFN(CPetGraphic2); +DEFFN(PETLeaf); DEFFN(CPETLift); DEFFN(CPETMonitor); DEFFN(CPETPellerator); @@ -636,9 +665,13 @@ DEFFN(CGetFromSucc); DEFFN(CHelmetOnOff); DEFFN(CHomePhoto); DEFFN(CIconNavAction); +DEFFN(CIconNavButt); DEFFN(CIconNavDown); +DEFFN(CIconNavImage); DEFFN(CIconNavLeft); +DEFFN(CIconNavReceive); DEFFN(CIconNavRight); +DEFFN(CIconNavSend); DEFFN(CIconNavUp); DEFFN(CKeybrdButt); DEFFN(CMoveObjectButton); @@ -653,7 +686,11 @@ DEFFN(CMusicVoiceMute); DEFFN(CPetModeOff); DEFFN(CPetModeOn); DEFFN(CPetModePanel); +DEFFN(CPetPannel1); +DEFFN(CPetPannel2); +DEFFN(CPetPannel3); DEFFN(CSendToSucc); +DEFFN(CSGTSelector); DEFFN(CSliderButton); DEFFN(CSmallChevLeftOff); DEFFN(CSmallChevLeftOn); @@ -661,6 +698,9 @@ DEFFN(CSmallChevRightOff); DEFFN(CSmallChevRightOn); DEFFN(CStatusChangeButton); DEFFN(CSTButton); +DEFFN(CTextDown); +DEFFN(CTextSkrew); +DEFFN(CTextUp); DEFFN(CToggleButton); DEFFN(CToggleSwitch); DEFFN(CVolumeControl); @@ -862,6 +902,7 @@ DEFFN(CMovePlayerToFrom); DEFFN(CMultiMove); DEFFN(CPanFromPel); DEFFN(CRestaurantPanHandler); +DEFFN(CScraliontisTable); DEFFN(CRestrictedMove); DEFFN(CTripDownCanal); @@ -905,6 +946,7 @@ void CSaveableObject::initClassList() { ADDFN(CBowlEar); ADDFN(CBrain); ADDFN(CBridgePiece); + ADDFN(CCarry); ADDFN(CCarryParrot); ADDFN(CCentralCore); ADDFN(CChicken); @@ -941,6 +983,7 @@ void CSaveableObject::initClassList() { ADDFN(CBackground); ADDFN(CClickResponder); + ADDFN(CDontSaveFileItem); ADDFN(CDropTarget); ADDFN(CFileItem); ADDFN(CFileListItem); @@ -950,6 +993,7 @@ void CSaveableObject::initClassList() { ADDFN(CMovieClipList); ADDFN(CMultiDropTarget); ADDFN(CNodeItem); + ADDFN(CPetControl); ADDFN(CProjectItem); ADDFN(CStaticImage); ADDFN(CTurnOnObject); @@ -1015,8 +1059,6 @@ void CSaveableObject::initClassList() { ADDFN(CGamesConsole); ADDFN(CGetLiftEye2); ADDFN(CGlassSmasher); - ADDFN(CGondolierBase); - ADDFN(CGondolierMixer); ADDFN(CHammerClip); ADDFN(CHammerDispensor); ADDFN(CHammerDispensorButton); @@ -1043,9 +1085,8 @@ void CSaveableObject::initClassList() { ADDFN(CNullPortHole); ADDFN(CNutReplacer); ADDFN(CPetDisabler); - ADDFN(CPetGraphic); - ADDFN(CPetGraphic2); ADDFN(CPhonograph); + ADDFN(CPhonographLid); ADDFN(CPlayMusicButton); ADDFN(CPlayOnAct); ADDFN(CPortHole); @@ -1081,6 +1122,11 @@ void CSaveableObject::initClassList() { ADDFN(CWheelHotSpot); ADDFN(CWheelSpin); ADDFN(CWheelSpinHorn); + ADDFN(CGondolierBase); + ADDFN(CGondolierChest); + ADDFN(CGondolierFace); + ADDFN(CGondolierMixer); + ADDFN(CGondolierSlider); ADDFN(CMaitreDArmHolder); ADDFN(CMaitreDBody); ADDFN(CMaitreDLegs); @@ -1100,6 +1146,10 @@ void CSaveableObject::initClassList() { ADDFN(CPETClass1); ADDFN(CPETClass2); ADDFN(CPETClass3); + ADDFN(CPetDragChev); + ADDFN(CPetGraphic); + ADDFN(CPetGraphic2); + ADDFN(PETLeaf); ADDFN(CPETLift); ADDFN(CPETMonitor); ADDFN(CPETPellerator); @@ -1159,9 +1209,13 @@ void CSaveableObject::initClassList() { ADDFN(CHelmetOnOff); ADDFN(CHomePhoto); ADDFN(CIconNavAction); + ADDFN(CIconNavButt); ADDFN(CIconNavDown); + ADDFN(CIconNavImage); ADDFN(CIconNavLeft); + ADDFN(CIconNavReceive); ADDFN(CIconNavRight); + ADDFN(CIconNavSend); ADDFN(CIconNavUp); ADDFN(CKeybrdButt); ADDFN(CMoveObjectButton); @@ -1176,7 +1230,11 @@ void CSaveableObject::initClassList() { ADDFN(CPetModeOff); ADDFN(CPetModeOn); ADDFN(CPetModePanel); + ADDFN(CPetPannel1); + ADDFN(CPetPannel2); + ADDFN(CPetPannel3); ADDFN(CSendToSucc); + ADDFN(CSGTSelector); ADDFN(CSliderButton); ADDFN(CSmallChevLeftOff); ADDFN(CSmallChevLeftOn); @@ -1184,6 +1242,9 @@ void CSaveableObject::initClassList() { ADDFN(CSmallChevRightOn); ADDFN(CStatusChangeButton); ADDFN(CSTButton); + ADDFN(CTextDown); + ADDFN(CTextSkrew); + ADDFN(CTextUp); ADDFN(CToggleButton); ADDFN(CToggleSwitch); ADDFN(CVolumeControl); @@ -1381,6 +1442,7 @@ void CSaveableObject::initClassList() { ADDFN(CMultiMove); ADDFN(CPanFromPel); ADDFN(CRestaurantPanHandler); + ADDFN(CScraliontisTable); ADDFN(CRestrictedMove); ADDFN(CTripDownCanal); diff --git a/engines/titanic/game/gondolier_base.cpp b/engines/titanic/game/gondolier/gondolier_base.cpp index 59c9b5cd0c..bf54ed4d8d 100644 --- a/engines/titanic/game/gondolier_base.cpp +++ b/engines/titanic/game/gondolier/gondolier_base.cpp @@ -20,7 +20,7 @@ * */ -#include "titanic/game/gondolier_base.h" +#include "titanic/game/gondolier/gondolier_base.h" namespace Titanic { diff --git a/engines/titanic/game/gondolier_base.h b/engines/titanic/game/gondolier/gondolier_base.h index 3f0cede70d..3f0cede70d 100644 --- a/engines/titanic/game/gondolier_base.h +++ b/engines/titanic/game/gondolier/gondolier_base.h diff --git a/engines/titanic/game/gondolier/gondolier_chest.cpp b/engines/titanic/game/gondolier/gondolier_chest.cpp new file mode 100644 index 0000000000..441a8bac31 --- /dev/null +++ b/engines/titanic/game/gondolier/gondolier_chest.cpp @@ -0,0 +1,37 @@ +/* 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/game/gondolier/gondolier_chest.h" + +namespace Titanic { + +void CGondolierChest::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CGondolierBase::save(file, indent); +} + +void CGondolierChest::load(SimpleFile *file) { + file->readNumber(); + CGondolierBase::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/game/gondolier/gondolier_chest.h b/engines/titanic/game/gondolier/gondolier_chest.h new file mode 100644 index 0000000000..277faf994f --- /dev/null +++ b/engines/titanic/game/gondolier/gondolier_chest.h @@ -0,0 +1,50 @@ +/* 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_GONDOLIER_CHEST_H +#define TITANIC_GONDOLIER_CHEST_H + +#include "titanic/game/gondolier/gondolier_base.h" + +namespace Titanic { + +class CGondolierChest : public CGondolierBase { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CGondolierChest"; } + + /** + * 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_GONDOLIER_CHEST_H */ diff --git a/engines/titanic/game/gondolier/gondolier_face.cpp b/engines/titanic/game/gondolier/gondolier_face.cpp new file mode 100644 index 0000000000..6db23d8a1a --- /dev/null +++ b/engines/titanic/game/gondolier/gondolier_face.cpp @@ -0,0 +1,39 @@ +/* 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/game/gondolier/gondolier_face.h" + +namespace Titanic { + +void CGondolierFace::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + file->writeNumberLine(_fieldBC, indent); + CGondolierBase::save(file, indent); +} + +void CGondolierFace::load(SimpleFile *file) { + file->readNumber(); + _fieldBC = file->readNumber(); + CGondolierBase::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/game/gondolier/gondolier_face.h b/engines/titanic/game/gondolier/gondolier_face.h new file mode 100644 index 0000000000..5007431337 --- /dev/null +++ b/engines/titanic/game/gondolier/gondolier_face.h @@ -0,0 +1,54 @@ +/* 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_GONDOLIER_FACE_H +#define TITANIC_GONDOLIER_FACE_H + +#include "titanic/game/gondolier/gondolier_base.h" + +namespace Titanic { + +class CGondolierFace : public CGondolierBase { +private: + int _fieldBC; +public: + CGondolierFace() : CGondolierBase(), _fieldBC(0) {} + + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CGondolierMixer"; } + + /** + * 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_GONDOLIER_FACE_H */ diff --git a/engines/titanic/game/gondolier_mixer.cpp b/engines/titanic/game/gondolier/gondolier_mixer.cpp index 33cc883bb0..e81ad34c87 100644 --- a/engines/titanic/game/gondolier_mixer.cpp +++ b/engines/titanic/game/gondolier/gondolier_mixer.cpp @@ -20,7 +20,7 @@ * */ -#include "titanic/game/gondolier_mixer.h" +#include "titanic/game/gondolier/gondolier_mixer.h" namespace Titanic { diff --git a/engines/titanic/game/gondolier_mixer.h b/engines/titanic/game/gondolier/gondolier_mixer.h index dfc46210c3..5b92bc2fb8 100644 --- a/engines/titanic/game/gondolier_mixer.h +++ b/engines/titanic/game/gondolier/gondolier_mixer.h @@ -23,7 +23,7 @@ #ifndef TITANIC_GONDOLIER_MIXER_H #define TITANIC_GONDOLIER_MIXER_H -#include "titanic/game/gondolier_base.h" +#include "titanic/game/gondolier/gondolier_base.h" namespace Titanic { diff --git a/engines/titanic/game/gondolier/gondolier_slider.cpp b/engines/titanic/game/gondolier/gondolier_slider.cpp new file mode 100644 index 0000000000..dff464ce64 --- /dev/null +++ b/engines/titanic/game/gondolier/gondolier_slider.cpp @@ -0,0 +1,82 @@ +/* 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/game/gondolier/gondolier_slider.h" + +namespace Titanic { + +CGondolierSlider::CGondolierSlider() : CGondolierBase(), + _fieldBC(0), _fieldC0(0), _fieldC4(0), _fieldC8(0), + _fieldCC(0), _fieldD0(0), _fieldD4(0), _fieldD8(0), + _fieldDC(0), _fieldE0(0), _fieldE4(0), _fieldE8(0), + _fieldEC(0), _string1("NULL"), _fieldFC(0), _field118(0) { +} + +void CGondolierSlider::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + file->writeNumberLine(_fieldBC, indent); + file->writeNumberLine(_fieldC0, indent); + file->writeNumberLine(_fieldC4, indent); + file->writeNumberLine(_fieldC8, indent); + file->writeNumberLine(_fieldCC, indent); + file->writeNumberLine(_fieldD0, indent); + file->writeNumberLine(_fieldD4, indent); + file->writeNumberLine(_fieldD8, indent); + file->writeNumberLine(_fieldDC, indent); + file->writeNumberLine(_fieldE0, indent); + file->writeNumberLine(_fieldE4, indent); + file->writeNumberLine(_fieldE8, indent); + file->writeNumberLine(_fieldCC, indent); + file->writeQuotedLine(_string1, indent); + file->writeNumberLine(_fieldFC, indent); + file->writeQuotedLine(_string2, indent); + file->writeQuotedLine(_string3, indent); + file->writeNumberLine(_field118, indent); + + CGondolierBase::save(file, indent); +} + +void CGondolierSlider::load(SimpleFile *file) { + file->readNumber(); + _fieldBC = file->readNumber(); + _fieldC0 = file->readNumber(); + _fieldC4 = file->readNumber(); + _fieldC8 = file->readNumber(); + _fieldCC = file->readNumber(); + _fieldD0 = file->readNumber(); + _fieldD4 = file->readNumber(); + _fieldD8 = file->readNumber(); + _fieldDC = file->readNumber(); + _fieldE0 = file->readNumber(); + _fieldE4 = file->readNumber(); + _fieldE8 = file->readNumber(); + _fieldEC = file->readNumber(); + _string1 = file->readString(); + _fieldFC = file->readNumber(); + _string2 = file->readString(); + _string3 = file->readString(); + _field118 = file->readNumber(); + + CGondolierBase::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/game/gondolier/gondolier_slider.h b/engines/titanic/game/gondolier/gondolier_slider.h new file mode 100644 index 0000000000..9522483dc0 --- /dev/null +++ b/engines/titanic/game/gondolier/gondolier_slider.h @@ -0,0 +1,71 @@ +/* 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_GONDOLIER_SLIDER_H +#define TITANIC_GONDOLIER_SLIDER_H + +#include "titanic/game/gondolier/gondolier_base.h" + +namespace Titanic { + +class CGondolierSlider : public CGondolierBase { +private: + int _fieldBC; + int _fieldC0; + int _fieldC4; + int _fieldC8; + int _fieldCC; + int _fieldD0; + int _fieldD4; + int _fieldD8; + int _fieldDC; + int _fieldE0; + int _fieldE4; + int _fieldE8; + int _fieldEC; + CString _string1; + int _fieldFC; + CString _string2; + CString _string3; + int _field118; +public: + CGondolierSlider(); + + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CGondolierSlider"; } + + /** + * 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_GONDOLIER_SLIDER_H */ diff --git a/engines/titanic/game/music_system_lock.cpp b/engines/titanic/game/music_system_lock.cpp index a5419d983f..6bd83f6811 100644 --- a/engines/titanic/game/music_system_lock.cpp +++ b/engines/titanic/game/music_system_lock.cpp @@ -33,7 +33,7 @@ void CMusicSystemLock::save(SimpleFile *file, int indent) const { void CMusicSystemLock::load(SimpleFile *file) { file->readNumber(); _value = file->readNumber(); - CGameObject::load(file); + CDropTarget::load(file); } } // End of namespace Titanic diff --git a/engines/titanic/game/phonograph_lid.cpp b/engines/titanic/game/phonograph_lid.cpp index c7c1bd3328..a228af8c70 100644 --- a/engines/titanic/game/phonograph_lid.cpp +++ b/engines/titanic/game/phonograph_lid.cpp @@ -26,11 +26,13 @@ namespace Titanic { void CPhonographLid::save(SimpleFile *file, int indent) const { file->writeNumberLine(1, indent); + file->writeNumberLine(_value, indent); CGameObject::save(file, indent); } void CPhonographLid::load(SimpleFile *file) { file->readNumber(); + _value = file->readNumber(); CGameObject::load(file); } diff --git a/engines/titanic/game/phonograph_lid.h b/engines/titanic/game/phonograph_lid.h index 040fec447a..2252551ad7 100644 --- a/engines/titanic/game/phonograph_lid.h +++ b/engines/titanic/game/phonograph_lid.h @@ -28,7 +28,11 @@ namespace Titanic { class CPhonographLid : public CGameObject { +private: + int _value; public: + CPhonographLid() : CGameObject(), _value(0) {} + /** * Return the class name */ diff --git a/engines/titanic/gfx/icon_nav_butt.cpp b/engines/titanic/gfx/icon_nav_butt.cpp new file mode 100644 index 0000000000..85eb1304c2 --- /dev/null +++ b/engines/titanic/gfx/icon_nav_butt.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/icon_nav_butt.h" + +namespace Titanic { + +void CIconNavButt::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CPetGraphic::save(file, indent); +} + +void CIconNavButt::load(SimpleFile *file) { + file->readNumber(); + CPetGraphic::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/icon_nav_butt.h b/engines/titanic/gfx/icon_nav_butt.h new file mode 100644 index 0000000000..018904eb73 --- /dev/null +++ b/engines/titanic/gfx/icon_nav_butt.h @@ -0,0 +1,50 @@ +/* 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_ICON_NAV_BUTT_H +#define TITANIC_ICON_NAV_BUTT_H + +#include "titanic/gfx/pet_graphic.h" + +namespace Titanic { + +class CIconNavButt : public CPetGraphic { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CIconNavButt"; } + + /** + * 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_ICON_NAV_BUTT_H */ diff --git a/engines/titanic/gfx/icon_nav_image.cpp b/engines/titanic/gfx/icon_nav_image.cpp new file mode 100644 index 0000000000..1e8a1ca2c3 --- /dev/null +++ b/engines/titanic/gfx/icon_nav_image.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/icon_nav_image.h" + +namespace Titanic { + +void CIconNavImage::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CPetGraphic::save(file, indent); +} + +void CIconNavImage::load(SimpleFile *file) { + file->readNumber(); + CPetGraphic::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/icon_nav_image.h b/engines/titanic/gfx/icon_nav_image.h new file mode 100644 index 0000000000..403936d06e --- /dev/null +++ b/engines/titanic/gfx/icon_nav_image.h @@ -0,0 +1,50 @@ +/* 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_ICON_NAV_IMAGE_H +#define TITANIC_ICON_NAV_IMAGE_H + +#include "titanic/gfx/pet_graphic.h" + +namespace Titanic { + +class CIconNavImage : public CPetGraphic { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CIconNavImage"; } + + /** + * 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_ICON_NAV_IMAGE_H */ diff --git a/engines/titanic/gfx/icon_nav_receive.cpp b/engines/titanic/gfx/icon_nav_receive.cpp new file mode 100644 index 0000000000..ad7e0e7160 --- /dev/null +++ b/engines/titanic/gfx/icon_nav_receive.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/icon_nav_receive.h" + +namespace Titanic { + +void CIconNavReceive::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CPetGraphic::save(file, indent); +} + +void CIconNavReceive::load(SimpleFile *file) { + file->readNumber(); + CPetGraphic::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/icon_nav_receive.h b/engines/titanic/gfx/icon_nav_receive.h new file mode 100644 index 0000000000..b158fdaf87 --- /dev/null +++ b/engines/titanic/gfx/icon_nav_receive.h @@ -0,0 +1,50 @@ +/* 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_ICON_NAV_RECEIVE_H +#define TITANIC_ICON_NAV_RECEIVE_H + +#include "titanic/gfx/pet_graphic.h" + +namespace Titanic { + +class CIconNavReceive : public CPetGraphic { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CIconNavReceive"; } + + /** + * 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_ICON_NAV_RECEIVE_H */ diff --git a/engines/titanic/gfx/icon_nav_send.cpp b/engines/titanic/gfx/icon_nav_send.cpp new file mode 100644 index 0000000000..856560c175 --- /dev/null +++ b/engines/titanic/gfx/icon_nav_send.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/icon_nav_send.h" + +namespace Titanic { + +void CIconNavSend::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CPetGraphic::save(file, indent); +} + +void CIconNavSend::load(SimpleFile *file) { + file->readNumber(); + CPetGraphic::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/icon_nav_send.h b/engines/titanic/gfx/icon_nav_send.h new file mode 100644 index 0000000000..59cb670687 --- /dev/null +++ b/engines/titanic/gfx/icon_nav_send.h @@ -0,0 +1,50 @@ +/* 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_ICON_NAV_SEND_H +#define TITANIC_ICON_NAV_SEND_H + +#include "titanic/gfx/pet_graphic.h" + +namespace Titanic { + +class CIconNavSend : public CPetGraphic { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CIconNavSend"; } + + /** + * 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_ICON_NAV_SEND_H */ diff --git a/engines/titanic/gfx/pet_drag_chev.cpp b/engines/titanic/gfx/pet_drag_chev.cpp new file mode 100644 index 0000000000..24b4666b3a --- /dev/null +++ b/engines/titanic/gfx/pet_drag_chev.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/pet_drag_chev.h" + +namespace Titanic { + +void CPetDragChev::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CPetGraphic2::save(file, indent); +} + +void CPetDragChev::load(SimpleFile *file) { + file->readNumber(); + CPetGraphic2::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/pet_drag_chev.h b/engines/titanic/gfx/pet_drag_chev.h new file mode 100644 index 0000000000..72f83dddf8 --- /dev/null +++ b/engines/titanic/gfx/pet_drag_chev.h @@ -0,0 +1,50 @@ +/* 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_PET_DRAG_CHEV_H +#define TITANIC_PET_DRAG_CHEV_H + +#include "titanic/gfx/pet_graphic2.h" + +namespace Titanic { + +class CPetDragChev : public CPetGraphic2 { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CPetDragChev"; } + + /** + * 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_PET_DRAG_CHEV_H */ diff --git a/engines/titanic/game/pet_graphic.cpp b/engines/titanic/gfx/pet_graphic.cpp index 38226c9678..b625c1dfdb 100644 --- a/engines/titanic/game/pet_graphic.cpp +++ b/engines/titanic/gfx/pet_graphic.cpp @@ -20,7 +20,7 @@ * */ -#include "titanic/game/pet_graphic.h" +#include "titanic/gfx/pet_graphic.h" namespace Titanic { diff --git a/engines/titanic/game/pet_graphic.h b/engines/titanic/gfx/pet_graphic.h index 28b5d9aeca..28b5d9aeca 100644 --- a/engines/titanic/game/pet_graphic.h +++ b/engines/titanic/gfx/pet_graphic.h diff --git a/engines/titanic/game/pet_graphic2.cpp b/engines/titanic/gfx/pet_graphic2.cpp index a8d244e102..5588c72fba 100644 --- a/engines/titanic/game/pet_graphic2.cpp +++ b/engines/titanic/gfx/pet_graphic2.cpp @@ -20,7 +20,7 @@ * */ -#include "titanic/game/pet_graphic2.h" +#include "titanic/gfx/pet_graphic2.h" namespace Titanic { diff --git a/engines/titanic/game/pet_graphic2.h b/engines/titanic/gfx/pet_graphic2.h index aabf058cf6..aabf058cf6 100644 --- a/engines/titanic/game/pet_graphic2.h +++ b/engines/titanic/gfx/pet_graphic2.h diff --git a/engines/titanic/gfx/pet_leaf.cpp b/engines/titanic/gfx/pet_leaf.cpp new file mode 100644 index 0000000000..adb6ccd144 --- /dev/null +++ b/engines/titanic/gfx/pet_leaf.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/pet_leaf.h" + +namespace Titanic { + +void PETLeaf::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CGameObject::save(file, indent); +} + +void PETLeaf::load(SimpleFile *file) { + file->readNumber(); + CGameObject::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/pet_leaf.h b/engines/titanic/gfx/pet_leaf.h new file mode 100644 index 0000000000..95fe1e6062 --- /dev/null +++ b/engines/titanic/gfx/pet_leaf.h @@ -0,0 +1,50 @@ +/* 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_PET_LEAF_H +#define TITANIC_PET_LEAF_H + +#include "titanic/core/game_object.h" + +namespace Titanic { + +class PETLeaf : public CGameObject { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "PETLeaf"; } + + /** + * 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_PET_LEAF_H */ diff --git a/engines/titanic/gfx/pet_pannel1.cpp b/engines/titanic/gfx/pet_pannel1.cpp new file mode 100644 index 0000000000..baa7558ea0 --- /dev/null +++ b/engines/titanic/gfx/pet_pannel1.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/pet_pannel1.h" + +namespace Titanic { + +void CPetPannel1::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CPetGraphic::save(file, indent); +} + +void CPetPannel1::load(SimpleFile *file) { + file->readNumber(); + CPetGraphic::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/pet_pannel1.h b/engines/titanic/gfx/pet_pannel1.h new file mode 100644 index 0000000000..3d9b4068db --- /dev/null +++ b/engines/titanic/gfx/pet_pannel1.h @@ -0,0 +1,50 @@ +/* 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_PET_PANNEL1_H +#define TITANIC_PET_PANNEL1_H + +#include "titanic/gfx/pet_graphic.h" + +namespace Titanic { + +class CPetPannel1 : public CPetGraphic { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CPetPannel1"; } + + /** + * 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_PET_PANNEL1_H */ diff --git a/engines/titanic/gfx/pet_pannel2.cpp b/engines/titanic/gfx/pet_pannel2.cpp new file mode 100644 index 0000000000..7376fcc4c5 --- /dev/null +++ b/engines/titanic/gfx/pet_pannel2.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/pet_pannel2.h" + +namespace Titanic { + +void CPetPannel2::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CPetGraphic::save(file, indent); +} + +void CPetPannel2::load(SimpleFile *file) { + file->readNumber(); + CPetGraphic::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/pet_pannel2.h b/engines/titanic/gfx/pet_pannel2.h new file mode 100644 index 0000000000..6fdad872ba --- /dev/null +++ b/engines/titanic/gfx/pet_pannel2.h @@ -0,0 +1,50 @@ +/* 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_PET_PANNEL2_H +#define TITANIC_PET_PANNEL2_H + +#include "titanic/gfx/pet_graphic.h" + +namespace Titanic { + +class CPetPannel2 : public CPetGraphic { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CPetPannel2"; } + + /** + * 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_PET_PANNEL2_H */ diff --git a/engines/titanic/gfx/pet_pannel3.cpp b/engines/titanic/gfx/pet_pannel3.cpp new file mode 100644 index 0000000000..f4bd1fb0cc --- /dev/null +++ b/engines/titanic/gfx/pet_pannel3.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/pet_pannel3.h" + +namespace Titanic { + +void CPetPannel3::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CPetGraphic::save(file, indent); +} + +void CPetPannel3::load(SimpleFile *file) { + file->readNumber(); + CPetGraphic::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/pet_pannel3.h b/engines/titanic/gfx/pet_pannel3.h new file mode 100644 index 0000000000..521d5179c2 --- /dev/null +++ b/engines/titanic/gfx/pet_pannel3.h @@ -0,0 +1,50 @@ +/* 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_PET_PANNEL3_H +#define TITANIC_PET_PANNEL3_H + +#include "titanic/gfx/pet_graphic.h" + +namespace Titanic { + +class CPetPannel3 : public CPetGraphic { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CPetPannel3"; } + + /** + * 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_PET_PANNEL3_H */ diff --git a/engines/titanic/gfx/sgt_selector.cpp b/engines/titanic/gfx/sgt_selector.cpp new file mode 100644 index 0000000000..7ad126b60a --- /dev/null +++ b/engines/titanic/gfx/sgt_selector.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/sgt_selector.h" + +namespace Titanic { + +void CSGTSelector::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CPetGraphic::save(file, indent); +} + +void CSGTSelector::load(SimpleFile *file) { + file->readNumber(); + CPetGraphic::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/sgt_selector.h b/engines/titanic/gfx/sgt_selector.h new file mode 100644 index 0000000000..92832889d4 --- /dev/null +++ b/engines/titanic/gfx/sgt_selector.h @@ -0,0 +1,50 @@ +/* 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_SGT_SELECTOR_H +#define TITANIC_SGT_SELECTOR_H + +#include "titanic/gfx/pet_graphic.h" + +namespace Titanic { + +class CSGTSelector : public CPetGraphic { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CSGTSelector"; } + + /** + * 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_SGT_SELECTOR_H */ diff --git a/engines/titanic/gfx/text_down.cpp b/engines/titanic/gfx/text_down.cpp new file mode 100644 index 0000000000..d4bdfdb72f --- /dev/null +++ b/engines/titanic/gfx/text_down.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/text_down.h" + +namespace Titanic { + +void CTextDown::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CPetGraphic::save(file, indent); +} + +void CTextDown::load(SimpleFile *file) { + file->readNumber(); + CPetGraphic::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/text_down.h b/engines/titanic/gfx/text_down.h new file mode 100644 index 0000000000..8fc16d8aee --- /dev/null +++ b/engines/titanic/gfx/text_down.h @@ -0,0 +1,50 @@ +/* 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_TEXT_DOWN_H +#define TITANIC_TEXT_DOWN_H + +#include "titanic/gfx/pet_graphic.h" + +namespace Titanic { + +class CTextDown : public CPetGraphic { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CTextDown"; } + + /** + * 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_TEXT_DOWN_H */ diff --git a/engines/titanic/gfx/text_skrew.cpp b/engines/titanic/gfx/text_skrew.cpp new file mode 100644 index 0000000000..8d1f026913 --- /dev/null +++ b/engines/titanic/gfx/text_skrew.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/text_skrew.h" + +namespace Titanic { + +void CTextSkrew::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CPetGraphic::save(file, indent); +} + +void CTextSkrew::load(SimpleFile *file) { + file->readNumber(); + CPetGraphic::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/text_skrew.h b/engines/titanic/gfx/text_skrew.h new file mode 100644 index 0000000000..88a6a9ab81 --- /dev/null +++ b/engines/titanic/gfx/text_skrew.h @@ -0,0 +1,50 @@ +/* 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_TEXT_SKREW_H +#define TITANIC_TEXT_SKREW_H + +#include "titanic/gfx/pet_graphic.h" + +namespace Titanic { + +class CTextSkrew : public CPetGraphic { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CTextSkrew"; } + + /** + * 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_TEXT_SKREW_H */ diff --git a/engines/titanic/gfx/text_up.cpp b/engines/titanic/gfx/text_up.cpp new file mode 100644 index 0000000000..ce3ff100dc --- /dev/null +++ b/engines/titanic/gfx/text_up.cpp @@ -0,0 +1,37 @@ +/* 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/gfx/text_up.h" + +namespace Titanic { + +void CTextUp::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + CPetGraphic::save(file, indent); +} + +void CTextUp::load(SimpleFile *file) { + file->readNumber(); + CPetGraphic::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/gfx/text_up.h b/engines/titanic/gfx/text_up.h new file mode 100644 index 0000000000..cce4c6c6b4 --- /dev/null +++ b/engines/titanic/gfx/text_up.h @@ -0,0 +1,50 @@ +/* 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_TEXT_UP_H +#define TITANIC_TEXT_UP_H + +#include "titanic/gfx/pet_graphic.h" + +namespace Titanic { + +class CTextUp : public CPetGraphic { +public: + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CTextUp"; } + + /** + * 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_TEXT_UP_H */ diff --git a/engines/titanic/module.mk b/engines/titanic/module.mk index 191b61bcd7..de45be024c 100644 --- a/engines/titanic/module.mk +++ b/engines/titanic/module.mk @@ -141,8 +141,6 @@ MODULE_OBJS := \ game/games_console.o \ game/get_lift_eye2.o \ game/glass_smasher.o \ - game/gondolier_base.o \ - game/gondolier_mixer.o \ game/hammer_clip.o \ game/head_slot.o \ game/head_smash_event.o \ @@ -172,8 +170,6 @@ MODULE_OBJS := \ game/nut_replacer.o \ game/pet_controler.o \ game/pet_disabler.o \ - game/pet_graphic2.o \ - game/pet_graphic.o \ game/phonograph.o \ game/phonograph_lid.o \ game/play_music_button.o \ @@ -214,6 +210,11 @@ MODULE_OBJS := \ game/wheel_hotspot.o \ game/wheel_spin.o \ game/wheel_spin_horn.o \ + game/gondolier/gondolier_base.o \ + game/gondolier/gondolier_chest.o \ + game/gondolier/gondolier_face.o \ + game/gondolier/gondolier_mixer.o \ + game/gondolier/gondolier_slider.o \ game/maitred/maitred_arm_holder.o \ game/maitred/maitred_body.o \ game/maitred/maitred_legs.o \ @@ -290,17 +291,29 @@ MODULE_OBJS := \ gfx/helmet_on_off.o \ gfx/home_photo.o \ gfx/icon_nav_action.o \ + gfx/icon_nav_butt.o \ gfx/icon_nav_down.o \ + gfx/icon_nav_image.o \ gfx/icon_nav_left.o \ + gfx/icon_nav_receive.o \ gfx/icon_nav_right.o \ + gfx/icon_nav_send.o \ gfx/icon_nav_up.o \ gfx/keybrd_butt.o \ gfx/move_object_button.o \ gfx/music_control.o \ + gfx/pet_drag_chev.o \ + gfx/pet_graphic2.o \ + gfx/pet_graphic.o \ + gfx/pet_leaf.o \ gfx/pet_mode_off.o \ gfx/pet_mode_on.o \ gfx/pet_mode_panel.o \ + gfx/pet_pannel1.o \ + gfx/pet_pannel2.o \ + gfx/pet_pannel3.o \ gfx/send_to_succ.o \ + gfx/sgt_selector.o \ gfx/slider_button.o \ gfx/small_chev_left_off.o \ gfx/small_chev_left_on.o \ @@ -308,6 +321,9 @@ MODULE_OBJS := \ gfx/small_chev_right_on.o \ gfx/status_change_button.o \ gfx/st_button.o \ + gfx/text_down.o \ + gfx/text_skrew.o \ + gfx/text_up.o \ gfx/toggle_button.o \ gfx/toggle_switch.o \ gfx/volume_control.o \ @@ -337,6 +353,7 @@ MODULE_OBJS := \ moves/pan_from_pel.o \ moves/restaurant_pan_handler.o \ moves/restricted_move.o \ + moves/scraliontis_table.o \ moves/trip_down_canal.o \ npcs/barbot.o \ npcs/bellbot.o \ diff --git a/engines/titanic/moves/restaurant_pan_handler.cpp b/engines/titanic/moves/restaurant_pan_handler.cpp index b2487a4cb1..8efc5cbe65 100644 --- a/engines/titanic/moves/restaurant_pan_handler.cpp +++ b/engines/titanic/moves/restaurant_pan_handler.cpp @@ -24,11 +24,11 @@ namespace Titanic { -CRestaurantPanHandler::CRestaurantPanHandler() : CMovePlayerTo() { -} +int CRestaurantPanHandler::_v1; void CRestaurantPanHandler::save(SimpleFile *file, int indent) const { file->writeNumberLine(1, indent); + file->writeNumberLine(_v1, indent); file->writeQuotedLine(_string1, indent); file->writeQuotedLine(_string2, indent); @@ -37,6 +37,7 @@ void CRestaurantPanHandler::save(SimpleFile *file, int indent) const { void CRestaurantPanHandler::load(SimpleFile *file) { file->readNumber(); + _v1 = file->readNumber(); _string1 = file->readString(); _string2 = file->readString(); diff --git a/engines/titanic/moves/restaurant_pan_handler.h b/engines/titanic/moves/restaurant_pan_handler.h index f2f2c0cc9b..d2db5843a8 100644 --- a/engines/titanic/moves/restaurant_pan_handler.h +++ b/engines/titanic/moves/restaurant_pan_handler.h @@ -29,11 +29,11 @@ namespace Titanic { class CRestaurantPanHandler : public CMovePlayerTo { protected: + static int _v1; + CString _string1; CString _string2; public: - CRestaurantPanHandler(); - /** * Return the class name */ diff --git a/engines/titanic/moves/scraliontis_table.cpp b/engines/titanic/moves/scraliontis_table.cpp new file mode 100644 index 0000000000..d67b2f3622 --- /dev/null +++ b/engines/titanic/moves/scraliontis_table.cpp @@ -0,0 +1,51 @@ +/* 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/moves/scraliontis_table.h" + +namespace Titanic { + +CScraliontisTable::CScraliontisTable() : CRestaurantPanHandler(), + _fieldE0(0), _fieldE4(0), _fieldE8(0), _fieldEC(0) { +} + +void CScraliontisTable::save(SimpleFile *file, int indent) const { + file->writeNumberLine(1, indent); + file->writeNumberLine(_fieldE0, indent); + file->writeNumberLine(_fieldE4, indent); + file->writeNumberLine(_fieldE8, indent); + file->writeNumberLine(_fieldEC, indent); + + CRestaurantPanHandler::save(file, indent); +} + +void CScraliontisTable::load(SimpleFile *file) { + file->readNumber(); + _fieldE0 = file->readNumber(); + _fieldE4 = file->readNumber(); + _fieldE8 = file->readNumber(); + _fieldEC = file->readNumber(); + + CRestaurantPanHandler::load(file); +} + +} // End of namespace Titanic diff --git a/engines/titanic/moves/scraliontis_table.h b/engines/titanic/moves/scraliontis_table.h new file mode 100644 index 0000000000..d7c2ad69ab --- /dev/null +++ b/engines/titanic/moves/scraliontis_table.h @@ -0,0 +1,57 @@ +/* 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_SCRALIONTIS_TABLE_H +#define TITANIC_SCRALIONTIS_TABLE_H + +#include "titanic/moves/restaurant_pan_handler.h" + +namespace Titanic { + +class CScraliontisTable : public CRestaurantPanHandler { +private: + int _fieldE0; + int _fieldE4; + int _fieldE8; + int _fieldEC; +public: + CScraliontisTable(); + + /** + * Return the class name + */ + virtual const char *getClassName() const { return "CScraliontisTable"; } + + /** + * 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_SCRALIONTIS_TABLE_H */ |