Commit Graph

24 Commits

Author SHA1 Message Date
Michael Bayne 4628b8fdff Move UserIdentifier up to GameManager where it can be used by other services.
Revamped the way the GameCookieManager does its business.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@346 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-05 19:50:33 +00:00
Michael Bayne 338e9e789b gameDidEnd():
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
2007-06-25 20:38:45 +00:00
Michael Bayne 7538ddcc7f Hold on to your seats kids, it's another installment of "A Boy and His
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
2007-05-01 22:26:25 +00:00
Dave Hoover 7c28390287 Allow GameManagers to trivially override the message displayed when someone's
game ends.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@282 c613c5cb-e716-0410-b11b-feb51c14d237
2007-04-19 03:19:59 +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 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
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
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
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
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
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 e10a3ae94d Let's rename that, because it will only return the index if the
player is actually in the game.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@39 c613c5cb-e716-0410-b11b-feb51c14d237
2006-08-11 23:30:45 +00:00
Ray Greenwell fc57d9bb8f Added a method to get player index by Oid.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@38 c613c5cb-e716-0410-b11b-feb51c14d237
2006-08-11 21:25:33 +00:00
Ray Greenwell b82ab59b1d - Changed Table to just have an int as its key and use autoboxing to make
that a Comparable. It's a slight performance hit, as when a DSet is
  binary searched, it will be boxing up an int for every entry examined.
  Oh well.
- Use some generics.
- Some other cleanups I spotted while writing actionscript versions.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@29 c613c5cb-e716-0410-b11b-feb51c14d237
2006-07-28 02:03:53 +00:00
Ray Greenwell 6404d3e0ab Preserve the stack trace when CloneNotSupportedException impossibly happens.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@21 c613c5cb-e716-0410-b11b-feb51c14d237
2006-07-13 18:10:55 +00:00
Ray Greenwell c3bb221239 Added some code to save a stacktrace from the first call to startGame()
if we do the postponey business and find things still booched after that.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@9 c613c5cb-e716-0410-b11b-feb51c14d237
2006-07-06 21:04:17 +00:00
Mike Thomas 327518de12 Prevent the continual attempts to postpone the start of a game that have caused our shutdowns to fail a few times now.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@8 c613c5cb-e716-0410-b11b-feb51c14d237
2006-07-06 17:40:09 +00:00
Michael Bayne a4df87e52f Behold Vilya, Ring of Air and repository for our game and virtual worldly
extensions to the distributed environment provided by Narya.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@1 c613c5cb-e716-0410-b11b-feb51c14d237
2006-06-23 17:58:11 +00:00