aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/gob/pregob/onceupon/onceupon.cpp45
-rw-r--r--engines/gob/pregob/onceupon/onceupon.h14
2 files changed, 35 insertions, 24 deletions
diff --git a/engines/gob/pregob/onceupon/onceupon.cpp b/engines/gob/pregob/onceupon/onceupon.cpp
index abee238d34..7f59790d1d 100644
--- a/engines/gob/pregob/onceupon/onceupon.cpp
+++ b/engines/gob/pregob/onceupon/onceupon.cpp
@@ -143,17 +143,17 @@ const char *OnceUpon::kSound[kSoundMAX] = {
const OnceUpon::SectionFunc OnceUpon::kSectionFuncs[kSectionCount] = {
&OnceUpon::sectionStork,
&OnceUpon::sectionChapter1,
- &OnceUpon::section02,
+ &OnceUpon::sectionParents,
&OnceUpon::sectionChapter2,
- &OnceUpon::section04,
+ &OnceUpon::sectionForest0,
&OnceUpon::sectionChapter3,
- &OnceUpon::section06,
+ &OnceUpon::sectionEvilCastle,
&OnceUpon::sectionChapter4,
- &OnceUpon::section08,
+ &OnceUpon::sectionForest1,
&OnceUpon::sectionChapter5,
- &OnceUpon::section10,
+ &OnceUpon::sectionBossFight,
&OnceUpon::sectionChapter6,
- &OnceUpon::section12,
+ &OnceUpon::sectionForest2,
&OnceUpon::sectionChapter7,
&OnceUpon::sectionEnd
};
@@ -230,6 +230,13 @@ void OnceUpon::init() {
// Default name
_name = "Nemo";
+
+ // Default character properties
+ _house = 0;
+ _head = 0;
+ _colorHair = 0;
+ _colorJacket = 0;
+ _colorTrousers = 0;
}
void OnceUpon::deinit() {
@@ -1403,6 +1410,8 @@ bool OnceUpon::sectionStork() {
int house = checkButton(param.houses, param.houseCount, mouseX, mouseY);
if ((state == kStorkStateWaitUser) && (house >= 0)) {
+ _house = house;
+
stork->dropBundle(param.drops[house]);
state = kStorkStateWaitBundle;
@@ -1819,8 +1828,8 @@ bool OnceUpon::sectionChapter1() {
return true;
}
-bool OnceUpon::section02() {
- warning("OnceUpon::section02(): TODO");
+bool OnceUpon::sectionParents() {
+ warning("OnceUpon::sectionParents(): TODO");
return true;
}
@@ -1829,8 +1838,8 @@ bool OnceUpon::sectionChapter2() {
return true;
}
-bool OnceUpon::section04() {
- warning("OnceUpon::section04(): TODO");
+bool OnceUpon::sectionForest0() {
+ warning("OnceUpon::sectionForest0(): TODO");
return true;
}
@@ -1839,8 +1848,8 @@ bool OnceUpon::sectionChapter3() {
return true;
}
-bool OnceUpon::section06() {
- warning("OnceUpon::section06(): TODO");
+bool OnceUpon::sectionEvilCastle() {
+ warning("OnceUpon::sectionEvilCastle(): TODO");
return true;
}
@@ -1849,8 +1858,8 @@ bool OnceUpon::sectionChapter4() {
return true;
}
-bool OnceUpon::section08() {
- warning("OnceUpon::section08(): TODO");
+bool OnceUpon::sectionForest1() {
+ warning("OnceUpon::sectionForest1(): TODO");
return true;
}
@@ -1859,8 +1868,8 @@ bool OnceUpon::sectionChapter5() {
return true;
}
-bool OnceUpon::section10() {
- warning("OnceUpon::section10(): TODO");
+bool OnceUpon::sectionBossFight() {
+ warning("OnceUpon::sectionBossFight(): TODO");
return true;
}
@@ -1869,8 +1878,8 @@ bool OnceUpon::sectionChapter6() {
return true;
}
-bool OnceUpon::section12() {
- warning("OnceUpon::section12(): TODO");
+bool OnceUpon::sectionForest2() {
+ warning("OnceUpon::sectionForest2(): TODO");
return true;
}
diff --git a/engines/gob/pregob/onceupon/onceupon.h b/engines/gob/pregob/onceupon/onceupon.h
index d2e1feb604..2f25060a37 100644
--- a/engines/gob/pregob/onceupon/onceupon.h
+++ b/engines/gob/pregob/onceupon/onceupon.h
@@ -297,17 +297,17 @@ private:
bool sectionStork();
bool sectionChapter1();
- bool section02();
+ bool sectionParents();
bool sectionChapter2();
- bool section04();
+ bool sectionForest0();
bool sectionChapter3();
- bool section06();
+ bool sectionEvilCastle();
bool sectionChapter4();
- bool section08();
+ bool sectionForest1();
bool sectionChapter5();
- bool section10();
+ bool sectionBossFight();
bool sectionChapter6();
- bool section12();
+ bool sectionForest2();
bool sectionChapter7();
bool sectionEnd();
@@ -337,6 +337,8 @@ private:
Common::String _name; ///< The name of the child.
+ uint8 _house;
+
uint8 _head;
uint8 _colorHair;
uint8 _colorJacket;