Commit Graph

47 Commits

Author SHA1 Message Date
Michael Bayne 919112cf88 Switch to new samskivert logging API.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5134 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-27 19:25:38 +00:00
Michael Bayne 249c4bb42d Nixed some now redundant casts.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5021 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-23 20:00:09 +00:00
Michael Bayne 576dfa2c85 If a move fails and we're currently in a place, just stay where we are rather
than trying to go to our previous place. If we're no longer in a place (like we
switched servers to get where we're going), then we'll try to go back to our
previous place.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4875 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-11-15 01:59:22 +00:00
Michael Bayne d84b2ac8a0 Report a more useful error if we have a bogus controller. Tidied some other
bits up.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4861 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-11-02 23:02:36 +00:00
Michael Bayne 873eede988 Log a message when we drop a forced move request due to a pending move.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4831 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-09-24 20:47:17 +00:00
Michael Bayne 4260a71946 When we call leavePlace() make sure locationDidChange() is dispatched to
listeners letting them know that we're no longer in a location.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4805 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-08-03 22:40:00 +00:00
Michael Bayne c2fb8f99c7 Instead of magically creating the ManagerCaller and using the DObjectManager
provided to the object when it was created, have the LocationDirector
initialize the manager caller when it receives the PlaceObject and have it use
its client distributed object manager which tags events with the proper
clientOid. This still prevents us from running multiple clients in the same VM,
so this will probably all have to change again but this works for now.

Also some widening.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4712 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-05-15 00:27:07 +00:00
Michael Bayne 09f0bee0f3 Yet more header patrol.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4602 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-02-24 00:39:27 +00:00
Michael Bayne ebc99935d5 If we're going to do this, I guess we're going to do it properly. Nixed the
notion of a global group (though we implicitly define one in InvocationCodes)
added a mechanism for directors (which generally handle the client side of
invocation services) to register their interest in bootstrap service groups so
that the whole goddamned complex business can happen magically behind the
scenes.

If you instantiate a director, it will automatically register interest in the
service group it needs and everything will work. If you don't use the director
code, you don't get the services and you can safely exclude all of that code
from your client even though the services are still in use on the server (and
presumably used by some other types of clients).

This is going to break all the builds, which I'll soon fix. Then I'll go write
all this in ActionScript. Yay!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4552 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-02-11 01:17:30 +00:00
Ray Greenwell 15c0bbbe1c It would appear to me that the logic in this method was backwards.
There is no recent (~years) modification of this line, but at the same
time it appears that none of our products use the LocationProvider.moveBody()
method, so maybe this bug has just never been tickled.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4549 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-02-10 02:08:08 +00:00
Michael Bayne bdadd2377e Behold, TAPOAFTSM! The Awesome Power Of A Fully Type-Safe Mothership.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4246 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-07-05 00:56:16 +00:00
Michael Bayne fdf0fa27d3 Revamped PlaceConfig to instantiate the PlaceController directly instead of
looking it up by name which creates PITA when we want to obfuscate and strip
out unused code.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4026 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-04-18 01:32:41 +00:00
Michael Bayne a213847eea Added leavePlace() for games where you are sometimes not in any "place" at
all.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3638 542714f4-19e9-0310-aa3c-eee0fc999fb1
2005-06-30 00:02:13 +00:00
Michael Bayne 3ed8e3cd0e Added support for loading place-related classes with a custom class
loader.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3255 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-11-30 20:04:11 +00:00
Michael Bayne 1f8c4578b7 LGPLed the library. Hello world.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3098 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-08-27 02:12:55 +00:00
Michael Bayne ef748636e2 Various Eclipse suggested bits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2969 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-25 14:41:47 +00:00
Michael Bayne b032f51b84 Refuse moves to invalid zones, scenes or places.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2819 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-10-03 20:41:32 +00:00
Michael Bayne e6dc5c38d7 The basis for logging all recent chat on the server. Now I have to make
every type of chat object known to man capable of reporting who's
listening.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2653 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-06-14 00:47:16 +00:00
Michael Bayne 0c246fcef7 Have to call mayLeavePlace() in a couple of other places. Fixed
documentation for it in PlaceController.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2105 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-01-09 02:46:58 +00:00
Michael Bayne 318d16647f Added mayLeavePlace().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2103 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-01-09 00:26:56 +00:00
Michael Bayne e8ee391d24 Report moveTo() for now as it may inform the hunt for the puzzle in world
view bug.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1888 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-03 01:15:36 +00:00
Michael Bayne 6781e1da56 Oh the price we pay for wanting to be able to logoff and log back on
without exiting the client.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1843 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 21:24:58 +00:00
Michael Bayne e54a4d41f4 The great invocation services rethink of 2002! Rearchitected the remote
method invocation services and converted everything to the new style.
Could this be my biggest checkin ever?


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1642 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-08-14 19:08:01 +00:00
Ray Greenwell 36a8a9672f zone moves and portal traversals can now have an optional result listener
passed in.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1460 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-14 01:40:16 +00:00
Michael Bayne a7a427f972 Return true from moveTo() if we actually sent the request, false if the
request was rejected out of hand.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1458 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-14 01:24:49 +00:00
Michael Bayne 25b22b4f11 Need to mark our last move request time regardless of whether we have a
pending request outstanding.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1457 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-14 01:19:16 +00:00
Michael Bayne b9000bf08c Don't declare a pending moveTo request to be stale until at least a minute
has gone by. This prevents us from getting shafted by double clicks.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1456 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-06-14 00:57:49 +00:00
Michael Bayne 97197d49cc Added support for initiating a place/scene/zone transition from the
server; chat director no longer needs to wait until we're logged on to
register itself with the invocation director.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1393 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-26 02:24:46 +00:00
Walter Korman b4982af8bc Clear out our location and inform observers that Elvis has left the
building when the client logs off.  Use an ObserverList.  Expanded
imports.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1384 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-22 21:46:53 +00:00
Michael Bayne 1d956214dd Added SessionObserver which is a pared down version of ClientObserver that
only reports logon and logoff.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1117 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-11 19:51:25 +00:00
Michael Bayne 635e9cf930 addObserver -> addClientObserver.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@982 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-09 20:47:11 +00:00
Michael Bayne 769b2e8895 Blag! Both the ZoneDirector and the SpotSceneDirector needed to extend the
SceneDirector which, without multiple inheritance, would make it
impossible to use both in a single client. Of course, we need to use both
in Yohoho!

So I refactored the whole enchilada to delegate rather than extend, which
blows because various methods must now be made public and a particular
failure case for the moveTo request now requires that a special failure
handler interface be made available so that LocationDirector "extensions"
can inject themselves into the failure handling process.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@789 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-16 05:18:20 +00:00
Michael Bayne 1731756712 Improved error checking and reporting.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@769 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-13 06:34:40 +00:00
Michael Bayne 882dc381b0 Added moveBack() which requests to move to the location we occupied
immediately previous to our current location.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@551 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-24 03:10:30 +00:00
Michael Bayne aa5d97023f Report failed moveTo requests in case no one else does.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@485 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-18 01:40:04 +00:00
Michael Bayne 804505890f We love to revamp! Created a set of listener interfaces which are used
with distributed objects rather than having a single handleEvent() by
which all subscribers are forced to hear about all events. Now one
subscribes separately and then adds onesself as any of a few types of
listener once they have access to the subscribed object reference.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@439 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-12 00:03:03 +00:00
Michael Bayne 8a4c46badc The first great Three Rings renaming. Cocktail changed to Narya, Cher
changed to Presents and Party changed to Crowd. Whee!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@431 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-11 04:07:54 +00:00
Michael Bayne 63191ec610 I love to make vast, sweeping changes. Now the place services incorporate
a place config object which is used to determine the classes of the place
manager and the (newly added) place controller.

Moved PlaceView and PlaceViewUtil into cocktail.party.client from
cocktail.party.util because the controller and the UI (in very abstract
form) are now part of the place services.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@399 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-05 23:57:26 +00:00
Michael Bayne 027bb29769 Created fooCodes interfaces to go along with invocation service
packages. These contain all the message codes as well as error response
codes that are used by a particular invocation service.

Also changed client.LocationManager to client.LocationDirector and
chat.ChatManager to chat.ChatDirector to go along with the new philosophy
of naming the client-side managing entity for an invocation service a
director.

Also elimitated cocktail.util.Codes since it's no longer used as a central
repository for codes (instead they are in InvocationCodes and its
derivatives).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@368 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-01 22:14:55 +00:00
Michael Bayne 24a3d7cf0a Added getPlaceObject(); changed _place to _plobj; added a method that
makes it possible for derived classes to do the right thing if changing
location fails halfway through (meaning we can't subscribe to our place
object).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@240 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-14 06:49:28 +00:00
Michael Bayne fc1432ddfe Modified location manager to make it more amenable to being extended and
frobbed.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@235 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-14 03:23:06 +00:00
Michael Bayne 65cee92ba6 Account for invocation id in invocation response methods.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@182 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-04 03:06:39 +00:00
Michael Bayne e08138875f More location observer stuff.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@144 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-08-02 04:59:54 +00:00
Michael Bayne 3e5060c7c5 More location management progress.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@116 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-23 22:59:43 +00:00
Michael Bayne a643dfd7e3 Further implementation of body/place/chat stuff. Mostly location related.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@109 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-23 21:14:27 +00:00
Michael Bayne 1f610d73e9 Log class jockeying; implemented a test client at the party layer that
does proper context object creation; small progress on locmgr stuff.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@95 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-20 23:23:50 +00:00
Michael Bayne f5cb6ca04c Skeletons for the party services.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@92 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-07-20 20:07:38 +00:00