Revamped the way BodyObject.location is tracked. Now we use an object which can

be extended to contain the sceneId by Whirled (Vilya's Whirled, though also
Whirled Whirled by extension) so that we don't end up with problems where
BodyObject.location changes but BodyObject.sceneId remains stale. This won't
impact Yohoho because the Yohoho client is always in a scene, it uses a
separate mechanism to track games, whereas Whirled's natural usage is to move
between scenes and non-scenes.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4779 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Michael Bayne
2007-07-21 00:46:25 +00:00
parent 9ef330b291
commit 962326fcaf
16 changed files with 332 additions and 205 deletions
@@ -21,6 +21,8 @@
package com.threerings.crowd.chat.data {
import com.threerings.io.ObjectInputStream;
import com.threerings.io.ObjectOutputStream;
import com.threerings.util.Name;
/**
@@ -34,7 +36,7 @@ public class TellFeedbackMessage extends UserMessage
public function TellFeedbackMessage (target :Name, message :String, failed :Boolean = false)
{
super(target, null, message);
_failed = failed;
_failure = failed;
}
/**
@@ -42,14 +44,28 @@ public class TellFeedbackMessage extends UserMessage
*/
public function isFailure () :Boolean
{
return _failed;
return _failure;
}
override public function getFormat () :String
{
return _failed ? null : "m.told_format";
return _failure ? null : "m.told_format";
}
protected var _failed :Boolean;
// from interface Streamable
override public function readObject (ins :ObjectInputStream) :void
{
super.readObject(ins);
_failure = ins.readBoolean();
}
// from interface Streamable
override public function writeObject (out :ObjectOutputStream) :void
{
super.writeObject(out);
out.writeBoolean(_failure);
}
protected var _failure :Boolean;
}
}