Clear out _playerOids when a game ends so that all players must re-call
playerReady() to restart the game.
playersAllhere();
Start the game if all players call playerReady() when the game is not in play
(previously this only happened if the game was in the pre-game state).
I know of one place this will affect Yohoho which I will fix, but if there's
anywhere else where we are restarting an ended game, fixes will be needed.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@329 c613c5cb-e716-0410-b11b-feb51c14d237
based on render order as we use render order. Also some widening.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@301 c613c5cb-e716-0410-b11b-feb51c14d237
Blowtorch". Refactored GameConfig and the EZ game framework, cleaning up some
old cruft from GameConfig (which will break other projects and which I'll fix
ASAP) and moved the XML based configuration system from ToyBox into EZGame.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@286 c613c5cb-e716-0410-b11b-feb51c14d237
and automatically removed them from any pending tables.
- Always use the user listener now, even if we're not in a place.
So also ensure that notePlayerRemoved() is called as a result of bodyLeft()
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@281 c613c5cb-e716-0410-b11b-feb51c14d237
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
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
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
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
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
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
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
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
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
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
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