aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/waypoints.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/bladerunner/waypoints.cpp')
-rw-r--r--engines/bladerunner/waypoints.cpp20
1 files changed, 15 insertions, 5 deletions
diff --git a/engines/bladerunner/waypoints.cpp b/engines/bladerunner/waypoints.cpp
index 0783af8e07..bf2f09b8a6 100644
--- a/engines/bladerunner/waypoints.cpp
+++ b/engines/bladerunner/waypoints.cpp
@@ -91,13 +91,23 @@ float Waypoints::getZ(int waypointId) const {
return _waypoints[waypointId].position.z;
}
-void Waypoints::save(SaveFile &f) {
- f.write(_count);
+void Waypoints::save(SaveFileWriteStream &f) {
+ f.writeInt(_count);
for (int i = 0; i < _count; ++i) {
Waypoint &w = _waypoints[i];
- f.write(w.setId);
- f.write(w.position);
- f.write(w.present);
+ f.writeInt(w.setId);
+ f.writeVector3(w.position);
+ f.writeInt(w.present);
+ }
+}
+
+void Waypoints::load(SaveFileReadStream &f) {
+ _count = f.readInt();
+ for (int i = 0; i < _count; ++i) {
+ Waypoint &w = _waypoints[i];
+ w.setId = f.readInt();
+ w.position = f.readVector3();
+ w.present = f.readInt();
}
}