[Scummvm-cvs-logs] SF.net SVN: scummvm:[48131] scummvm/trunk/engines/teenagent

megath at users.sourceforge.net megath at users.sourceforge.net
Fri Feb 26 08:36:53 CET 2010


Revision: 48131
          http://scummvm.svn.sourceforge.net/scummvm/?rev=48131&view=rev
Author:   megath
Date:     2010-02-26 07:36:52 +0000 (Fri, 26 Feb 2010)

Log Message:
-----------
added async getFlag(addr)

Modified Paths:
--------------
    scummvm/trunk/engines/teenagent/scene.cpp
    scummvm/trunk/engines/teenagent/scene.h
    scummvm/trunk/engines/teenagent/teenagent.cpp
    scummvm/trunk/engines/teenagent/teenagent.h

Modified: scummvm/trunk/engines/teenagent/scene.cpp
===================================================================
--- scummvm/trunk/engines/teenagent/scene.cpp	2010-02-25 21:03:48 UTC (rev 48130)
+++ scummvm/trunk/engines/teenagent/scene.cpp	2010-02-26 07:36:52 UTC (rev 48131)
@@ -452,6 +452,16 @@
 	return custom_animation + slot;
 }
 
+byte Scene::peekFlagEvent(uint16 addr) const {
+	for(EventList::const_iterator i = events.reverse_begin(); i != events.end(); --i) {
+		const SceneEvent &e = *i;
+		if (e.type == SceneEvent::kSetFlag && e.callback == addr)
+			return e.color;
+	}
+	return Resources::instance()->dseg.get_byte(addr);
+}
+
+
 void Scene::push(const SceneEvent &event) {
 	//debug(0, "push");
 	//event.dump();

Modified: scummvm/trunk/engines/teenagent/scene.h
===================================================================
--- scummvm/trunk/engines/teenagent/scene.h	2010-02-25 21:03:48 UTC (rev 48130)
+++ scummvm/trunk/engines/teenagent/scene.h	2010-02-26 07:36:52 UTC (rev 48131)
@@ -140,6 +140,7 @@
 	void displayMessage(const Common::String &str, byte color = 0xd1, const Common::Point &pos = Common::Point());
 	void setOrientation(uint8 o) { orientation = o; }
 	void push(const SceneEvent &event);
+	byte peekFlagEvent(uint16 addr) const;
 	SceneEvent::Type last_event_type() const { return !events.empty()? events.back().type: SceneEvent::kNone; }
 
 	bool processEvent(const Common::Event &event);

Modified: scummvm/trunk/engines/teenagent/teenagent.cpp
===================================================================
--- scummvm/trunk/engines/teenagent/teenagent.cpp	2010-02-25 21:03:48 UTC (rev 48130)
+++ scummvm/trunk/engines/teenagent/teenagent.cpp	2010-02-26 07:36:52 UTC (rev 48131)
@@ -804,6 +804,9 @@
 	scene->push(event);
 }
 
+byte TeenAgentEngine::getFlag(uint16 addr) {
+	return scene->peekFlagEvent(addr);
+}
 
 void TeenAgentEngine::reloadLan() {
 	SceneEvent event(SceneEvent::kSetLan);

Modified: scummvm/trunk/engines/teenagent/teenagent.h
===================================================================
--- scummvm/trunk/engines/teenagent/teenagent.h	2010-02-25 21:03:48 UTC (rev 48130)
+++ scummvm/trunk/engines/teenagent/teenagent.h	2010-02-26 07:36:52 UTC (rev 48131)
@@ -96,6 +96,7 @@
 	void setOns(byte id, byte value, byte scene_id = 0);
 	void setLan(byte id, byte value, byte scene_id = 0);
 	void setFlag(uint16 addr, byte value);
+	byte getFlag(uint16 addr);
 	void reloadLan();
 	void rejectMessage();
 


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