[Scummvm-cvs-logs] SF.net SVN: scummvm:[46898] scummvm/trunk/engines/teenagent
megath at users.sourceforge.net
megath at users.sourceforge.net
Sat Jan 2 21:44:48 CET 2010
Revision: 46898
http://scummvm.svn.sourceforge.net/scummvm/?rev=46898&view=rev
Author: megath
Date: 2010-01-02 20:44:47 +0000 (Sat, 02 Jan 2010)
Log Message:
-----------
added fadeout tables
Modified Paths:
--------------
scummvm/trunk/engines/teenagent/objects.cpp
scummvm/trunk/engines/teenagent/objects.h
scummvm/trunk/engines/teenagent/scene.cpp
scummvm/trunk/engines/teenagent/scene.h
Modified: scummvm/trunk/engines/teenagent/objects.cpp
===================================================================
--- scummvm/trunk/engines/teenagent/objects.cpp 2010-01-02 20:20:36 UTC (rev 46897)
+++ scummvm/trunk/engines/teenagent/objects.cpp 2010-01-02 20:44:47 UTC (rev 46898)
@@ -172,5 +172,10 @@
rect.save();
}
+void FadeType::load(byte *src) {
+ rect.load(src);
+ src += 8;
+ value = *src;
+}
} // End of namespace TeenAgent
Modified: scummvm/trunk/engines/teenagent/objects.h
===================================================================
--- scummvm/trunk/engines/teenagent/objects.h 2010-01-02 20:20:36 UTC (rev 46897)
+++ scummvm/trunk/engines/teenagent/objects.h 2010-01-02 20:44:47 UTC (rev 46898)
@@ -215,6 +215,13 @@
byte * _base;
};
+struct FadeType {
+ Rect rect;
+ byte value;
+
+ void load(byte *src);
+};
+
//\todo move it to util.h?
template<typename T> inline T SIGN (T x) { return (x > 0)? 1: ((x < 0)? -1: 0); }
Modified: scummvm/trunk/engines/teenagent/scene.cpp
===================================================================
--- scummvm/trunk/engines/teenagent/scene.cpp 2010-01-02 20:20:36 UTC (rev 46897)
+++ scummvm/trunk/engines/teenagent/scene.cpp 2010-01-02 20:44:47 UTC (rev 46898)
@@ -221,6 +221,7 @@
//loading objects & walkboxes
objects.resize(42);
walkboxes.resize(42);
+ fades.resize(42);
for (byte i = 0; i < 42; ++i) {
Common::Array<Object> &scene_objects = objects[i];
@@ -248,6 +249,16 @@
//walkbox[i]->dump();
scene_walkboxes.push_back(w);
}
+
+ byte *fade_table = res->dseg.ptr(res->dseg.get_word(0x663e + i * 2));
+ Common::Array<FadeType> &scene_fades = fades[i];
+ while(READ_LE_UINT16(fade_table) != 0xffff) {
+ FadeType fade;
+ fade.load(fade_table);
+ fade_table += 9;
+ scene_fades.push_back(fade);
+ }
+ debug(0, "scene[%u] has %u fadeboxes", i + 1, scene_fades.size());
}
}
Modified: scummvm/trunk/engines/teenagent/scene.h
===================================================================
--- scummvm/trunk/engines/teenagent/scene.h 2010-01-02 20:20:36 UTC (rev 46897)
+++ scummvm/trunk/engines/teenagent/scene.h 2010-01-02 20:44:47 UTC (rev 46898)
@@ -201,6 +201,7 @@
Common::Array<Common::Array<Object> > objects;
Common::Array<Common::Array<Walkbox> > walkboxes;
+ Common::Array<Common::Array<FadeType> > fades;
Common::String message;
Common::Point message_pos;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list