Commit Graph

193 Commits

Author SHA1 Message Date
Par Winzell 2d5a5ca033 Depot implementation of the stat system persistence - hopefully schema compatible with the old version. This one is a little more complicated and Whirled doesn't have any stats yet so I was a little at a loss at how to test all of it. Perhaps somebody at Bang could make sure nothing crashes and burns horribly when e.g. a new string code is assigned?
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@383 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-26 20:28:50 +00:00
Par Winzell 7dea421cca Depot implementation of the Game Cookie persistence - hopefully schema compatible with the old version.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@381 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-26 20:20:07 +00:00
Michael Bayne 2885a2b41c Use a PersistenceContext to initialize the RatingRepository.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@380 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-26 00:22:38 +00:00
Michael Bayne 505d75ca6c Note our persistent record classes.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@379 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-25 23:48:10 +00:00
Michael Bayne c826583754 More Depot NWO.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@377 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-25 21:07:35 +00:00
Mike Thomas e6b104f688 Don't trigger that the players have all arrived if it happens after the game has already started. This could previously occur if all the participants of the game leave and come back (without the game shutting down, possibly due to watchers).
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@376 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-25 16:33:11 +00:00
Mike Thomas 8ad7f5eaef Actually, this looks like the "right" way to do this - use the PlaceOid as our comparator.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@375 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-24 17:41:20 +00:00
Mike Thomas 85d3e3c7a7 location is an object, compare appropriately.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@374 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-24 17:31:19 +00:00
Michael Bayne 923eaf3f7d Added getSceneId(Place).
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@373 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-21 01:14:06 +00:00
Michael Bayne e03ddd71e8 Updates to reflect new BodyObject.location change. We now have a ScenePlace and
ScenedBodyObject goes away.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@372 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-21 00:47:00 +00:00
Dave Hoover c8b2f7212b Make it easier for drop puzzles to implement their own fancy drop logic
if they've got that burning need to do something out of the ordinary.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@371 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-19 22:38:32 +00:00
Dave Hoover 9d4a41f54f Widen up some drop puzzle code, and break the board filling action out into
its own function so puzzles wanting fancier fill logic can override it as
needed.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@370 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-19 19:07:50 +00:00
Dave Hoover 8c88195b8b Now that games clear out their player oids when they finish, card games
need to keep around a copy to confirm that somebody is allowed to request
a rematch, and then pull everyone into it.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@368 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-18 16:39:50 +00:00
Dave Hoover 6958d99563 Widen.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@367 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-18 00:01:41 +00:00
Michael Bayne 08f7029220 We don't need the sceneId or version in the base class.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@364 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-17 01:24:56 +00:00
Michael Bayne cb05d5f56b Factored scene movement out into separate helper classes so that code can be a
bit more cleanly shared and the process of resolving zones and scenes and the
various fiddling done during a scene move can be more easily grokked.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@363 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-17 00:25:18 +00:00
Dave Hoover 755b835c93 Christmas comes but once a year, but svn keyword substitution day comes
whenever the urge strikes!


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@362 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-14 00:27:03 +00:00
Michael Bayne 959cf8c212 Leave all this scene registry creation to the implementing server.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@361 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-14 00:01:21 +00:00
Michael Bayne 5015ec26c2 Move SceneProvider stuff into the SceneRegistry as all the cool kids use the
new pattern of having a Provider interface which is implemented by a Manager or
other server-side entity.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@358 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-13 23:48:42 +00:00
Michael Bayne 5fbf4e17da More documentation cleanups, widening.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@357 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-13 22:27:08 +00:00
Michael Bayne a33bf1762f Widening.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@356 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-13 22:23:39 +00:00
Michael Bayne a49e2c26f3 Adapt or perish!
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@355 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-13 22:10:26 +00:00
Michael Bayne d5023554e8 Allow a SceneService.moveTo() to respond by requesting that the client move to
a new server and reissue its request, which it, in theory, now does.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@354 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-13 21:59:46 +00:00
Par Winzell 872d13660c If there's nothing to query, don't query.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@352 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-10 16:42:13 +00:00
Par Winzell 48bde23d17 Don't rate guests, and don't include guests in the rating adjustments for persistent players. Generally more robust code.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@349 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-06 01:07:03 +00:00
Par Winzell 3484e8cd1f Let the rating repository accept integers rather than Names, and tweak the delegate accordingly. Hrm, does this handle guests correctly, actually?
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@348 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-05 23:18:44 +00:00
Michael Bayne a78c1a35d9 Exception not needed.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@347 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-05 19:54:12 +00:00
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
Par Winzell a3d1d0b7cb First draft of rating support in Vilya. The algorithm implementation was stolen from Bang and mutated. This implementation assumes that the subclasser can always map Name to an integer user identifier. If this is not the case we'll need to do something tricky with subclassed generic RatingRecords or whatever.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@342 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-05 15:06:49 +00:00
Michael Bayne 1a21229cd4 Remove the cookie when the player leaves the room, not necessarily when their
game ends. We may need their when the game is not in play. playerGameDidEnd()
was removing based on player index rather than playerOId which was is correct.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@341 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-03 02:10:20 +00:00
Michael Bayne b7e78fa8ac Allow the GameCookieManager to be initialized for local operation using Java's
preferences system to store cookies so that cookies will work in the standalone
test environment.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@340 c613c5cb-e716-0410-b11b-feb51c14d237
2007-07-02 20:39:41 +00:00
Michael Bayne 33fbff4aba getPresentPlayer() fails after the game is ended because _playerOids is cleared
out. Use the caller's name instead.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@337 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-28 06:37:17 +00:00
Dave Hoover b7f32ddd96 computeEnteringLocation's signature changed back in r322. Fixed this up to
match, and threw in a bunch of @Overrides so that we won't get bitten by
that again in this particular file.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@336 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-27 22:26:06 +00:00
Dave Hoover ae4596def5 Bag out if we get a progress event from a non-player as we'll just blow
up on an ArrayIndexOutOfBoundsException a second later anyways.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@333 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-27 21:18:19 +00:00
Dave Hoover f85958032f Move the check for events for a non-puzzler after the checks
for invalid rounds and straggling events; if we've ended the
game and are getting straggling events, _playerOids has already
been cleared out, so it'll always look like a non-player.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@332 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-27 00:27:00 +00:00
Dave Hoover 6b1066169f Tabs -> spaces
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@331 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-26 00:07:57 +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 b452746dc2 Must've been my cracksmoking. (int)-1 == (short)-1.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@325 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-22 23:48:18 +00:00
Michael Bayne e1ca37cb16 (int)-1 != (short)-1. Yay for automatic integer type widening.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@324 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-22 23:03:13 +00:00
Michael Bayne af9a9b4895 Use the right portal id.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@323 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-22 22:08:41 +00:00
Michael Bayne fbfed05247 One more bit.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@322 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-22 22:01:50 +00:00
Michael Bayne fe2fc21830 Widened, modified traversePortal() so that the entire portal being traversed is
kept around and passed to mapEnteringBody() so that in Whirled instead of
having a portal map to a destination portal we can simply have the source
portal contain the location in the destination scene at which the arriver is to
be mapped.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@321 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-22 21:59:04 +00:00
Michael Bayne 114fc2f0e7 Widening.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@320 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-22 01:00:23 +00:00
Mike Thomas a22a6e5551 Ensure we've registered our receiver before we call our superclass's function, since this queues up a playerReady and it's important that our addToReceivers event is queued up before that so the game doesn't start before we're ready to go.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@319 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-21 00:10:25 +00:00
Michael Bayne 5116ab7089 Widened, nixed unneeded "throws SQLException".
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@316 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-15 02:01:08 +00:00
Ray Greenwell e7c10e2a98 It sucks that we have so many old things that use -1 to mean "no value".
I'm going to assume that this one is ok to change to 0, because that's
what a body's sceneId is going to be before they're ever placed in a scene.
(Which is why 0 is a much better default value.)


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@312 c613c5cb-e716-0410-b11b-feb51c14d237
2007-06-12 23:42:47 +00:00
Michael Bayne 93a049a986 Let's have our dictionaries gzipped.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@304 c613c5cb-e716-0410-b11b-feb51c14d237
2007-05-28 01:53:55 +00:00
Michael Bayne 211e161604 Load our word lists from the classpath.
git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@303 c613c5cb-e716-0410-b11b-feb51c14d237
2007-05-24 00:26:29 +00:00
Michael Bayne bf47702336 Some DictionaryManager cleanups. It was doing everything on the invoker thread
when it should have been communicating results back on the dobj thread. I don't
particularly like the singleton usage here as one has to just "know" that a
server that uses EZGame services must call DictionaryManager.init() whereas all
of our other server services are initialized in a FooServer class that
corresponds with the group of services in question. Really we should use the
same FooContext system that we use on the client to allow services to be
properly mixed and matched.


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@302 c613c5cb-e716-0410-b11b-feb51c14d237
2007-05-24 00:13:51 +00:00
Michael Bayne c4fbf34f44 We need to sort card sprites using a comparator if we want to sort them not
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
2007-05-15 18:03:54 +00:00