Commit Graph

62 Commits

Author SHA1 Message Date
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 4abcc6a87c Need that in the delegate as well.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2104 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-01-09 00:27:26 +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 c53a6f59b1 Add support for clearing a place view when it goes away so that we can
better manage multiple outstanding place views.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1929 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-08 09:31:59 +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
Walter Korman f25c028cca Initial work on a body service to allow setting a user's idled state.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1877 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-11-01 00:39:18 +00:00
Walter Korman 556347c778 Clear things out when the client logs off.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1852 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 23:30:56 +00:00
Walter Korman 2625d76084 Oh god, how did I accidentally leave this in here? Removed verbose
logging.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1844 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 21:58:18 +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 14a313486b Documentation repairs.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1842 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 18:49:51 +00:00
Walter Korman 657a8a6f03 Initial version.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1839 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 02:03:40 +00:00
Walter Korman 28a3cde90b Use an ObserverList.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1838 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 02:03:13 +00:00
Michael Bayne 561f25bb18 Provide the previous occupant info record when reporting an update so that
observers can determine which fields have changed.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1835 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-10-27 01:25:08 +00:00
Michael Bayne 99edb5cd5e Regenerated services and receivers to fix bugs and use updated templates.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1659 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-08-20 19:38:16 +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
Michael Bayne 43d6c3de3d Created convenience class for clients that wish to create a JPanel to act
as their PlaceView.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1562 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-07-09 21:05:33 +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 ed25692d93 Deal gracefully with moving to a non-existent location.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1385 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-22 21:47:14 +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 b15d38b54d Relegated a shitload of logging to DEBUG status.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1361 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-15 23:54:35 +00:00
Michael Bayne 14e2166194 Added an applyToDelegates() that restricts its application to delegates
that derive from a particular class.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1359 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-05-13 23:03:24 +00:00
Walter Korman a97e9db978 Moved remaining client.*Codes classes into their respective data packages
as they are intended to represent codes shared between the client and the
server.  Made correspondingly necessary changes throughout.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1240 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-15 16:28:05 +00:00
Walter Korman f6fedf5bdf Renamed OccupantManager to OccupantDirector.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1239 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-04-15 14:38:46 +00:00
Michael Bayne ad611952fa Wasn't keeping reference to PlaceObject even though we had a member for
it; modified handleAction() to call super if we or our delegates didn't
handle the action (which invokes the reflecty business).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1143 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-21 00:55:10 +00:00
Michael Bayne 7ccb9594b9 Changed DSet.Element to DSet.Entry in preparation for the addition of
array element update support. (Arrays have elements, sets have entries.)


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1133 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-03-18 23:21:26 +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 131ab59ad9 Whoops, need a length one not zero array.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@997 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-14 00:00:45 +00:00
Michael Bayne a85a6f1394 Delegation! Since it's clear that extracting services into delegation
classes is only going to become more common, I've gone and created a
comprehensive facility for creating and using delegates in the place
controller and manager as well as the game controller and manager. With
the pattern nicely set, it is also easy to extend to controller/managers
further up the hierarchy that might need to delegate special methods of
their own. Whee!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@994 542714f4-19e9-0310-aa3c-eee0fc999fb1
2002-02-13 03:21:28 +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 be4b5c3801 Added ability to look up occupants by username.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@844 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-20 02:48:21 +00:00
Michael Bayne e90189fd2c Added convenience function for looking up an occupant's info by body oid.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@839 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-19 23:11:59 +00:00
Michael Bayne 4769609931 Revamped code to watch OCCUPANT_INFO rather than OCCUPANTS which was
necessary to make occupantUpdated() work.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@801 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-12-16 08:09:10 +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 48df2b374f Added didInit() so that derived classes can do initialization without
having to import the arguments to the normal init().


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@454 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-12 19:31:15 +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 c9dfd6ef45 Added code to handle displaying the user interface for a place once we
have actually entered the place. It's not tied to a particular UI toolkit
and this requires coordination between the client implementation and the
place implementation, but that seems better than the alternative of tying
the Parlor code to Swing or similar.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@408 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-09 17:20:03 +00:00
Michael Bayne def7b5802d Documentation edits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@402 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-06 00:24:46 +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 681d851b08 Documentation fixes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@395 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-04 22:47:49 +00:00
Michael Bayne 64e66dc98a Created a mechanism for dispatching notifications to user interface
elements when the client enters and leaves a place.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@394 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-04 20:02:49 +00:00
Michael Bayne 1f663669c9 We've always been at war with Eurasia. Changed InvocationManager to
InvocationDirector (please god let the renaming be done). Removed IntMap
and modified code to use samskivert's HashIntMap.

Also modified PlaceManager and PlaceRegistry such that there is no
Properties object supplied for configuration (let the derived classes sort
out how they want to configure their managers) and so that the
PlaceManager tells the PlaceRegistry what sort of PlaceObject derived
class it wants to manage rather than having that come from the
configuration.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@374 542714f4-19e9-0310-aa3c-eee0fc999fb1
2001-10-02 02:07:50 +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