Commit Graph

61 Commits

Author SHA1 Message Date
Michael Bayne 97a8417d4e Listen for object death on table participants when we're not in a place and
can't rely on hearing that they left the place to clean up after them.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@274 c613c5cb-e716-0410-b11b-feb51c14d237
2007-04-10 17:05:48 +00:00
Michael Bayne 8193a87ff2 Freak not out if we're shutdown before all of our games are ended.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@265 c613c5cb-e716-0410-b11b-feb51c14d237
2007-03-23 21:52:56 +00:00
Michael Bayne f62498de20 Idempotency is always handy.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@264 c613c5cb-e716-0410-b11b-feb51c14d237
2007-03-23 20:45:58 +00:00
Nathan Curtis e1ca18f8ed add getter for our currently seated table
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@260 c613c5cb-e716-0410-b11b-feb51c14d237
2007-03-22 18:45:56 +00:00
Michael Bayne ab29481f26 We need to be shutdown now so that we can clean up our invocation service.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@259 c613c5cb-e716-0410-b11b-feb51c14d237
2007-03-22 00:46:37 +00:00
Michael Bayne 459d8b75a0 TableManagerProvider is no more.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@258 c613c5cb-e716-0410-b11b-feb51c14d237
2007-03-22 00:39:58 +00:00
Michael Bayne fde9727f07 Nix place-specific willEnter and didLeave pattern since we're no longer bound
to places.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@257 c613c5cb-e716-0410-b11b-feb51c14d237
2007-03-21 21:51:11 +00:00
Michael Bayne b71007a909 Yay for rabbit holes. Revamped the table services to decouple them from places.
While I was in there, I extracted the communication between the client and the
TableManager into a new-style "embedded in the TableLobbyObject" service
instead of wonkily routing everything through the global ParlorService and the
ParlorProvider (which got merged into the ParlorManager as a part of this
rabbit holery). The GG build will break... I will fix it.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@255 c613c5cb-e716-0410-b11b-feb51c14d237
2007-03-21 21:38:31 +00:00
Ray Greenwell 59c6bf814b Fixed some logic I broke a few weeks back.
There's no more isPartyGame(), and needsNoShowTimer() simply checks to see
if the game is seated, but needsNoShowTimer() can be overridden and so
I shouldn't have treated it as equivalent to !isPartyGame().


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@248 c613c5cb-e716-0410-b11b-feb51c14d237
2007-03-15 21:22:46 +00:00
Michael Bayne 0af2789c7b Extract the GameConfig creation into an overridable method so that TableManager
users can do the right thing with regard to adding extra configuration stuff
(rather than trusting the client to have done it).


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@227 c613c5cb-e716-0410-b11b-feb51c14d237
2007-03-06 02:20:12 +00:00
Michael Bayne 33f55d5a8d Header patrol. Please be sure to use the header in lib/SOURCE_HEADER when
creating new source files.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@209 c613c5cb-e716-0410-b11b-feb51c14d237
2007-02-24 00:37:33 +00:00
Mark Johnson e21ad04665 A simple extensible tournament management framework
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@194 c613c5cb-e716-0410-b11b-feb51c14d237
2007-02-17 00:30:20 +00:00
Ray Greenwell 1de048c799 Made getGameType() public.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@183 c613c5cb-e716-0410-b11b-feb51c14d237
2007-02-13 01:22:03 +00:00
Ray Greenwell de354c0e7b Did away with PartyGameConfig, added getGameType() to GameConfig.
Changed the names of the 3 standard game types, but I could be convinced
of better names:

SEATED_GAME: normal match-made game, a game with a set list of players that
             does not change.
SEATED_CONTINUOUS: the game starts immediately, but people join the room
             and then choose a place to sit to become a player.
PARTY: no seats, anyone that enters is a player.

Also, changed SEATED_CONTINUOUS to create an occupants array and auto-sit
the creator, since I'm pretty sure we'll want to show seating in the lobby
for those types of games (but it actually does neither right now, code
needs to be written either way, depending on UI decisions.)


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@182 c613c5cb-e716-0410-b11b-feb51c14d237
2007-02-13 00:50:29 +00:00
Michael Bayne 75b34c6bf6 New service group world order. My enthusiasm for widening is being stretched.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@177 c613c5cb-e716-0410-b11b-feb51c14d237
2007-02-11 01:37:46 +00:00
Ray Greenwell f9dcdd0627 Have the TableDirector place a party game creator in the game, rather
than forcing them from the server.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@175 c613c5cb-e716-0410-b11b-feb51c14d237
2007-02-10 20:53:05 +00:00
Ray Greenwell 3bd6b15304 Added a convenient method to get the PartyGameType.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@173 c613c5cb-e716-0410-b11b-feb51c14d237
2007-02-10 03:33:31 +00:00
Ray Greenwell 71b9ba2827 There was some code in here to not change the turn when only one player is
left. Go ahead and don't start the turn when there are no players,
and don't change it when there are 1 or LESS.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@171 c613c5cb-e716-0410-b11b-feb51c14d237
2007-02-10 03:31:47 +00:00
Ray Greenwell d902b2ed81 Fix NPE when purging a party game.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@170 c613c5cb-e716-0410-b11b-feb51c14d237
2007-02-10 03:26:46 +00:00
Ray Greenwell 26c6274289 Remove debugging.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@169 c613c5cb-e716-0410-b11b-feb51c14d237
2007-02-10 01:52:20 +00:00
Ray Greenwell 729335a4a5 The table system now supports the party game types better.
The creator of a party game isn't joining, but I think that's a problem
with the msoy client...


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@168 c613c5cb-e716-0410-b11b-feb51c14d237
2007-02-10 01:36:06 +00:00
Michael Bayne f139e30daa Annouce a player's game over *in* playerGameDidEnd() rather than after because
a natural thing to do in playerGameDidEnd() is replacePlayer() the departed
player with an AI but if we wait until after playerGameDidEnd() to announce it,
we end up announcing the departure of the newly configured AI.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@161 c613c5cb-e716-0410-b11b-feb51c14d237
2007-01-29 18:07:33 +00:00
Michael Bayne a7f1058eaa In these glorious modern times, we can tell the compiler about deprecation in
addition to the documentation system.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@157 c613c5cb-e716-0410-b11b-feb51c14d237
2007-01-25 19:37:21 +00:00
Ray Greenwell bb1b7ea333 Make a note as to why we're keeping this so that I don't see it and think
"Hey! That can be removed!"


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@156 c613c5cb-e716-0410-b11b-feb51c14d237
2007-01-24 23:12:22 +00:00
Dave Hoover 609452c291 Don't recurse infinitely calling createLabel with the same args over
and over. Casting host to a Component seems to make java find the
appropriate other function to call.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@155 c613c5cb-e716-0410-b11b-feb51c14d237
2007-01-24 22:55:11 +00:00
Michael Bayne 3307994221 Our host need not be a MediaPanel, but we'll preserve the MediaPanel signature
because no doubt much code exists in the wild that is compiled against that
signature.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@154 c613c5cb-e716-0410-b11b-feb51c14d237
2007-01-24 19:32:48 +00:00
Dave Hoover 1245defe65 Actually substitute keywords (these files are chock full of stale $Id$ tags)
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@150 c613c5cb-e716-0410-b11b-feb51c14d237
2007-01-24 00:22:09 +00:00
Dave Hoover 86a879a725 Type safety
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@136 c613c5cb-e716-0410-b11b-feb51c14d237
2006-12-27 07:55:38 +00:00
Michael Bayne e60e58c8b8 Use where, improved warning when we receive a playerReady() from a non-player.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@132 c613c5cb-e716-0410-b11b-feb51c14d237
2006-11-28 18:27:58 +00:00
Ray Greenwell 52febf265b Allow the TableManager to be configured to create subclasses of Table.
Commented out unneeded flash client code in Table.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@131 c613c5cb-e716-0410-b11b-feb51c14d237
2006-11-17 23:24:14 +00:00
Michael Bayne 0fb8e4e693 Steer newbies away from stupid decisions.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@127 c613c5cb-e716-0410-b11b-feb51c14d237
2006-11-15 22:41:27 +00:00
Michael Bayne d231214e59 Make the logging optional.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@119 c613c5cb-e716-0410-b11b-feb51c14d237
2006-11-03 00:15:46 +00:00
Andrzej Kapolka f81adbda02 Do we really need a stack trace here? I don't think so.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@110 c613c5cb-e716-0410-b11b-feb51c14d237
2006-10-13 01:56:55 +00:00
Andrzej Kapolka 45350177e1 Moved the Percentiler test over as well, added preambles.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@109 c613c5cb-e716-0410-b11b-feb51c14d237
2006-10-12 22:52:17 +00:00
Andrzej Kapolka c978fe70e8 Moved Percentiler to Vilya so that we can use it in Bang.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@108 c613c5cb-e716-0410-b11b-feb51c14d237
2006-10-12 22:42:45 +00:00
Ray Greenwell 2717fd3b24 Allow tables to be started (by the creator) when there are at
least the minimum players present.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@106 c613c5cb-e716-0410-b11b-feb51c14d237
2006-10-06 02:13:20 +00:00
Michael Bayne 77e22d65fc Some ActionScript conversion updates.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@102 c613c5cb-e716-0410-b11b-feb51c14d237
2006-10-06 00:35:00 +00:00
Michael Bayne 8b8a8120c2 Added some ActionScript annotations.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@92 c613c5cb-e716-0410-b11b-feb51c14d237
2006-10-05 00:16:25 +00:00
Michael Bayne 51281a9d49 Let's just call clearOccupant() clearOccupantByOid() to avoid differences
between the Java and ActionScript version since ActionScript doesn't support
method overloading. We only have to observe this limitation in Streamable
classes.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@88 c613c5cb-e716-0410-b11b-feb51c14d237
2006-10-04 21:10:00 +00:00
Michael Bayne d896041553 Regenerated with updated templates.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@87 c613c5cb-e716-0410-b11b-feb51c14d237
2006-10-04 20:48:15 +00:00
Ray Greenwell f48a48436d Regeneration of generated files.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@84 c613c5cb-e716-0410-b11b-feb51c14d237
2006-10-02 07:46:47 +00:00
Ray Greenwell 2f8a14bdb8 Use a library method to check equality with possible nulls.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@78 c613c5cb-e716-0410-b11b-feb51c14d237
2006-09-26 02:38:19 +00:00
Michael Bayne b0d148f107 Allow "draw" text to be provided as well. Also nixed the green because it was
really ugly...


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@75 c613c5cb-e716-0410-b11b-feb51c14d237
2006-09-25 04:06:35 +00:00
Ray Greenwell 8647002b71 Use an observer list.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@73 c613c5cb-e716-0410-b11b-feb51c14d237
2006-09-18 21:43:18 +00:00
Ray Greenwell 4b9ec23221 - Use samskivert Predicate.
- Type safety.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@65 c613c5cb-e716-0410-b11b-feb51c14d237
2006-08-28 18:53:03 +00:00
Michael Bayne aad235c7f2 Nixed GameService as it can be more simply implemented with the new dynamically
dispatched message event system. Rearranged the methods in GameManager into
some semblance of order.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@60 c613c5cb-e716-0410-b11b-feb51c14d237
2006-08-24 17:37:25 +00:00
Michael Bayne e03ffd02bc To preserve backwards compatibility, GameManager cannot define
createPlaceObject() because it needs to fall back to PlaceManager's
createPlaceObject() which calls getPlaceObjectClass() which all GG games
currently use.

It doesn't really make sense for GameManager to implement that method anyway
because no one will ever just use a GameObject, they'll need some sort of
derivation if they want to have any game state at all.

Really that method should be abstract in PlaceManager and GameManager but I'm
not sure we could change that now without breaking things (certainly we
couldn't preserve backwards compability which renders the idea moot anyway).


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@59 c613c5cb-e716-0410-b11b-feb51c14d237
2006-08-24 01:05:18 +00:00
Michael Bayne 37dd31ad75 More spots, missed.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@57 c613c5cb-e716-0410-b11b-feb51c14d237
2006-08-24 00:28:04 +00:00
Michael Bayne eed4d67b9e Restructured things to work with the new mechanism for creating distributed
objects.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@53 c613c5cb-e716-0410-b11b-feb51c14d237
2006-08-23 23:48:07 +00:00
Ray Greenwell f171848695 Use GameObject.isInPlay() to determine in-play status.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@41 c613c5cb-e716-0410-b11b-feb51c14d237
2006-08-16 00:09:05 +00:00