d026daa466
Not to choke if we can't resolve a resource bundle.
Michael Bayne
2002-04-30 17:45:27 +00:00
4ec673e6c2
Localized chat! Server entities may now fake speak and tell messages that are translated by the client upon receipt. We love to translate.
Michael Bayne
2002-04-30 17:27:30 +00:00
530a348890
Added tileImageDown().
Michael Bayne
2002-04-30 02:14:13 +00:00
0fe4f660a5
Let any object receive success/failure responses for a traversePortal request.
Ray Greenwell
2002-04-29 21:03:00 +00:00
6ecc381180
Added tileImageAcross().
Michael Bayne
2002-04-29 01:12:54 +00:00
dc5d23e3e4
Don't foolishly blow away a perfectly good set of object tile ids and actions unless we're actually loaded into the editor and turned into a real editable scene.
Michael Bayne
2002-04-28 03:14:15 +00:00
d107dd790f
If we have no clip, we need to repaint our whole bounds.
Michael Bayne
2002-04-28 02:50:32 +00:00
b602cb4fce
Modified frame manager to do the right thing in terms of repainting everything if we lose our volatile offscreen buffer image.
Michael Bayne
2002-04-28 02:49:32 +00:00
f79d048084
Create the lists and tables at construct time in case we never load up a scene and are asked to look at that stuff.
Michael Bayne
2002-04-28 01:37:02 +00:00
7af3e3afdc
Was preferring lowest not highest.
Michael Bayne
2002-04-28 01:30:10 +00:00
872e10f11d
Catch IllegalArgumentException if it's thrown while we're loading our images. The PNG loader seems to be kind enough to throw fucking runtime exceptions when it encounters file format problems instead of throwing IOException or some other declared exception.
Michael Bayne
2002-04-28 01:19:11 +00:00
fad747e69e
Updates to reflect changes to DisplayMisoScene.
Michael Bayne
2002-04-27 23:07:58 +00:00
4d62053e4d
Check for tile intersection using the polygon's bounds rather than doing the expensive polygon/rectangle intersection test (since we're doing 400 of these every frame).
Michael Bayne
2002-04-27 23:07:41 +00:00
b68d34e4e8
Use the width and height that we so handily obtained earlier.
Michael Bayne
2002-04-27 22:40:09 +00:00
46b6defc06
Removed some debug logging; tried the buffer strategy approach which won't work because we're not painting everything on every frame, but left the commented out alternative rendering code in there in case we want to fiddle with it at a later date (or provide support for buffer strategies for applications that do want to paint everything).
Michael Bayne
2002-04-27 22:39:45 +00:00
116ce388ca
Need to translate to the coordinates of the opaque parent we're repainting, not necessarily the original component we're repainting.
Michael Bayne
2002-04-27 19:12:00 +00:00
b9af18d10e
We need to paint the first opaque parent of a dirty component rather than the dirty component directly.
Michael Bayne
2002-04-27 18:59:55 +00:00
6a7fd11321
Try filling the offscreen buffer with a solid color after we create it to avoid painting garbage to the screen.
Michael Bayne
2002-04-27 18:59:27 +00:00
938445071e
Removed the last vestiges of the object "layer". Scenes now simply have a list of objects, they can overlap (I think that objects added to a scene later will be rendered before objects added earlier which ends up feeling natural in the editor); no longer are objects ignored when their footprint lies outside the scene bounds.
Michael Bayne
2002-04-27 18:41:14 +00:00
f3131f994a
Fixed up the test tiles (got rid of the last of Dave's old tiles) and created a couple of test scenes using said test tiles so that we can run the viewer.
Michael Bayne
2002-04-27 05:16:01 +00:00
206fe37de9
Shrink the frame size to test rendering with a viewport smaller than the view.
Michael Bayne
2002-04-27 05:15:17 +00:00
ba6e88b2a0
Identify water tileset correctly; actually center test sprite in screen; switch scrolling directions more rapidly.
Michael Bayne
2002-04-27 04:57:37 +00:00
3fa39d06ff
Fixed up borked translated dirty region handling.
Michael Bayne
2002-04-27 04:57:05 +00:00
a2c59dd2a5
Added a menu bar to test overlapping widgets.
Michael Bayne
2002-04-27 02:34:29 +00:00
3713cf1034
More repaint manager fixes. We're now behaving even more closely like Swing would behave.
Michael Bayne
2002-04-27 02:33:14 +00:00
52790799d2
Name changes; comment fix.
Michael Bayne
2002-04-26 02:34:11 +00:00
e3fafb5b8c
Exposed the mechanism for locking down client objects during a client session so that fake sessions can effect their own locking.
Michael Bayne
2002-04-26 02:32:27 +00:00
57a937839d
Allow any object to be used as the response target for a moveTo request.
Ray Greenwell
2002-04-26 00:07:05 +00:00
23d170c83e
Added support for pausing a media panel which pauses all sprites and animations currently operating therein. (It doesn't pause scrolling which I suppose I'll have to fix at some point if we ever need it.)
Michael Bayne
2002-04-25 16:23:31 +00:00
1ba123de96
Need to restrict the clipping rectangle not replace it.
Michael Bayne
2002-04-23 03:11:17 +00:00
6549a27189
Need to avoid counting a components offset twice.
Michael Bayne
2002-04-23 03:10:59 +00:00
47c94068ec
Need to restrict the clipping rectangle, not replace it.
Michael Bayne
2002-04-23 03:10:39 +00:00
1ce70d6c5a
Changes to jive with new rendering deal.
Michael Bayne
2002-04-23 01:19:04 +00:00
0bde11ee81
Major low-level rendering rethink.
Michael Bayne
2002-04-23 01:18:17 +00:00
cc6a9d00ef
Major low-level rendering rethink. There will be much follow-on cleanup.
Michael Bayne
2002-04-23 01:16:28 +00:00
849eaec47b
gameDidEnd will now be called even if the game is cancelled. Made AI ticking only happen while the game is IN_PLAY. Added forgotten comment.
Ray Greenwell
2002-04-19 21:40:38 +00:00
575c276c9a
hold gamemanagers in a set instead of a list since their order doesn't matter and we want to prevent them from being added twice.
Ray Greenwell
2002-04-19 21:33:21 +00:00
4b0b462c3a
Tick for each AI, pass the tick to the delegates.
Ray Greenwell
2002-04-19 21:16:42 +00:00
48ad174dd7
initial revision.
Ray Greenwell
2002-04-19 18:33:32 +00:00
e73350838f
- Moved AI handling framework here from PuzzleManager. - Set game state to CANCELLED if it wasn't yet GAME_OVER when shutting down the game.
Ray Greenwell
2002-04-19 18:33:10 +00:00
6a908b86c6
Added a utility class that encapsulates our display mode jockeying.
Michael Bayne
2002-04-19 00:38:44 +00:00
b4d50d0843
Fixed bug where last render time was being used where last scroll time was needed.
Michael Bayne
2002-04-18 22:38:24 +00:00
2b6a4a1a5a
Destroy the client object if we decide to unmap it because we're the only ones that know that such an action is safe and we don't want stray client objects lying around cluttering things up.
Michael Bayne
2002-04-18 22:37:08 +00:00
d635c003e2
Added getClient().
Michael Bayne
2002-04-18 20:46:43 +00:00
988223cc3e
Consider the game to be over when its state isn't IN_PLAY, so that AWAITING_PLAYERS, CANCELLED, etc. are properly addressed by those that check in on these sorts of things.
Walter Korman
2002-04-18 16:57:29 +00:00
c47ba0dc66
Sanity-check the destination scene id for moveTo() requests.
Walter Korman
2002-04-18 14:08:47 +00:00
4fc5f574d8
Added facility for enumerating the body objects for all active users on the server.
Walter Korman
2002-04-18 00:44:50 +00:00
76843dab59
Report the contents of the set when we try to update an element that's not in it.
Michael Bayne
2002-04-18 00:31:26 +00:00
ef62581f7a
Need a field marshaller for Integer fields.
Michael Bayne
2002-04-17 22:45:32 +00:00
3e4540958a
Made occupant info into a simple streamable object because it was screaming out for it.
Michael Bayne
2002-04-17 22:19:40 +00:00
47a5ad9fb7
We no longer need to set up our occupantInfo set with the type of object it holds and we can now create custom occupant info classes depending on the body that is entering the place.
Michael Bayne
2002-04-17 22:02:08 +00:00
51c7f6b527
Removed a bunch of code to generate failure responses as it's now handled automagically!
Michael Bayne
2002-04-17 18:26:30 +00:00
496732db3a
Automatically generate a failure response if an invocation provider method throws ServiceFailedException. The response for a service request named <foo> would be <foo>Failed. The response has a single argument which is the reason string provided by the ServiceFailedException. We were doing this by hand all over the place, and now it will be handled automatically. Yay!
Michael Bayne
2002-04-17 18:20:04 +00:00
a11bff9cf8
Allow objects such as a NPPirate to receive the results of a changeLoc
Ray Greenwell
2002-04-17 17:07:13 +00:00
4054c0beea
Added "savedoc" target which builds the javadocs and stuffs them into docs/api so that they're not blown away next time someone does an ant clean.
Michael Bayne
2002-04-17 16:08:37 +00:00
4c59b73cdf
Added didInit() so that derived classes can do post-initialization stuff without having to override init() and pointlessly import and pass through the CharacterDescriptor and CharacterManager.
Michael Bayne
2002-04-17 15:53:49 +00:00
42dc17a474
Started refactoring code to allow derived classes to expand the bounds of the sprite to contain more than just the image. I didn't go all the way though because I started looking at the stuff to handle render origin and render offset and couldn't bring myself to add another offset into the mix so it'll have to wait until I can give it some more serious thought and perhaps simplify what we've got.
Michael Bayne
2002-04-17 15:52:49 +00:00
4047bbbf18
Whoops. Missing an import.
Michael Bayne
2002-04-17 00:20:56 +00:00
e4185bd7a1
Added getModel().
Michael Bayne
2002-04-17 00:16:34 +00:00
6df0ef6172
We need to do some fiddling when the invocation director is used on the server by entities that are vaguely impersonating a client. Specifically they need to fill in the event's source oid because their events are not going through the client networking layer which takes care of filling that in for real clients.
Michael Bayne
2002-04-16 21:37:23 +00:00
c0a265d284
Removed debug logging.
Michael Bayne
2002-04-16 20:38:24 +00:00
1e5c1bcfe7
Only update the sprite's orientation if we have a valid one.
Michael Bayne
2002-04-16 18:24:43 +00:00
fb74c17fd7
Modified moveTo() so that other entities than the ZoneDirector can call it and receive the callback (like the NPPirate).
Michael Bayne
2002-04-16 17:36:17 +00:00
8d41371457
Added getProjectedIsoDirection() for obtaining the isometric direction between two screen coordinates. The screen coordinates are "projected" into isometric space and the vector between them is calculated (except we don't actually do the projection because we can tell just by looking at the points what the projected orientation will be).
Michael Bayne
2002-04-16 17:20:09 +00:00
935276fb5d
Made addNode() public so that external entites can create line segment paths one node at a time and add their desired orientation to the nodes.
Michael Bayne
2002-04-16 17:00:33 +00:00
f458a84d9e
Translation needs to go the other way.
Michael Bayne
2002-04-16 02:29:05 +00:00
18475fd820
Added removeSprite() to go with addSprite().
Michael Bayne
2002-04-15 23:10:40 +00:00
a814589499
Get the sprites involved in scrolling; they now either scroll with the view or remain fixed relative to the scrolling view (the default and also the old behavior).
Michael Bayne
2002-04-15 23:10:24 +00:00
834d9099d6
Added viewWillScroll() for letting a path know that the view in which its sprite was following a path is going to scroll; fixed bug in getDirection(); added setDuration() which computes the path velocity based on the time that the sprite should spend following the path.
Michael Bayne
2002-04-15 23:09:10 +00:00
1678b84227
Sanity check our orientation in setOrientation() and complain sensically if it's bogus (rather than NPEing).
Michael Bayne
2002-04-15 23:07:14 +00:00
ccdacd96d5
Add additional method for getting a character using a special character sprite derived class.
Michael Bayne
2002-04-15 23:06:49 +00:00
f687571d0f
How did this get away with having the old path for the .dat file?
Ray Greenwell
2002-04-15 21:30:56 +00:00
06f8a68b56
Moved RandomUtil from media.util to util.
Michael Bayne
2002-04-15 18:18:20 +00:00
85cdabbbee
Added some imports that were needed for javadoc comment resolution that became necesssary when *Codes were moved out of .client and into .data.
Michael Bayne
2002-04-15 18:06:20 +00:00
9235848ce6
Javadoc fix.
Michael Bayne
2002-04-15 18:05:30 +00:00
6f2dd62941
New scrolling interface; fixed up tile ids (whee!).
Michael Bayne
2002-04-15 17:47:05 +00:00
a88799d4a1
Scroll fiddling! We no longer set a desired x and y velocity directly, instead we say that we want to scroll by a certain amount in a certain amount of time. This allows the animated panel (who knows about this stuff) to figure out when to stop scrolling without overshooting by a pixel or two.
Michael Bayne
2002-04-15 17:46:41 +00:00
11251fef90
Formatting.
Michael Bayne
2002-04-15 17:45:24 +00:00
c078f34cef
Code and documentation reparations, per Mr. Greenwell.
Michael Bayne
2002-04-15 17:13:38 +00:00
db5f42d9b1
assert() -> assertTrue() to reflect new Java reserved word.
Walter Korman
2002-04-15 16:34:36 +00:00
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.
Walter Korman
2002-04-15 16:28:05 +00:00
f6fedf5bdf
Renamed OccupantManager to OccupantDirector.
Walter Korman
2002-04-15 14:38:46 +00:00
a6646a939a
Fixed javadoc typo.
Walter Korman
2002-04-15 14:35:31 +00:00
0e23a600b2
Clear out the game over flag when the game starts (or resets).
Michael Bayne
2002-04-14 02:33:16 +00:00
66f3eac2db
Modified the ant wrapper scripts to handle being passed -D arguments more cleanly.
Michael Bayne
2002-04-14 01:32:21 +00:00
fd87ec437a
Moved game reset processing into main game framework. Also modified game start processing on the server so that we don't want for the IN_PLAY attribute change to be processed before calling gameDidStart() because we don't want to do that when resetting the game (because someone could come along and end the game in between gameWillStart() and gameDidStart() which would be annoying and bad), so we need to be consistent and run straight through both when starting the game for the first time and when resetting it.
Michael Bayne
2002-04-14 00:26:05 +00:00
5ec2bdcfe0
Use JPasswordField.getPassword() as per deprecation warning.
Walter Korman
2002-04-12 16:26:12 +00:00
5379787dc5
Made postEvent() public so that external entities can add events (like message events) to a transaction already started on a particular object.
Michael Bayne
2002-04-12 00:00:05 +00:00
3f1a21f76c
To facilitate DSet extensions, we treat any distributed object type that ends in Set as a DSet. This is not optimal, but writing a full blown parser so that we can analyze the inheritance hierarchy of the files we're processing to determine for sure that something extends DSet would be at least an order of magnitude greater pain in the ass than just doing simple textual processing. We'll leave that up to future people.
Michael Bayne
2002-04-11 19:11:07 +00:00
462724f82d
Log a stack trace per Walter's suggestion.
Michael Bayne
2002-04-11 01:41:04 +00:00
9c59b1c1ad
Added simple tool for dumping the serialized component map.
Michael Bayne
2002-04-11 01:34:09 +00:00
37a86781f4
Only save the component map if we changed it.
Michael Bayne
2002-04-11 01:33:51 +00:00
625fc79502
Restructured invocation director so that it can be used in the absence of a Client instance.
Michael Bayne
2002-04-10 06:08:59 +00:00
95017c3ebf
Changed default base tile to default base tileset. Clearing a base tile sets it to a random tile from the default tileset. setBaseTiles() now takes a tileset and fills the rectangular area with random tiles from that set.
Ray Greenwell
2002-04-09 18:06:37 +00:00
02dd621601
If fringing a rectangular area, you must pass in your own Random object. If fringing an entire scene, you must pass in a randomization seed.
Ray Greenwell
2002-04-09 18:05:07 +00:00
5cedd42923
optimized getMultiTilePolygon to do less swapping
Ray Greenwell
2002-04-09 17:02:50 +00:00
595aa68539
we love to comment.
Ray Greenwell
2002-04-09 04:37:38 +00:00
b1d7c171f0
added getMultiTilePolygon, which returns a Polygon describing a rectangle bounding the two specified tiles.
Ray Greenwell
2002-04-09 04:36:06 +00:00
dc82aa0a98
We needn't add the first vertex of a polygon again at the end. Quoth the java.awt.Polygon documentation: The first and final pairs of (x, y) points are joined by a line segment that closes the polygon.
Ray Greenwell
2002-04-09 03:12:43 +00:00
8adde69e3b
make sure we fringe when a base tile is deleted.
Ray Greenwell
2002-04-09 01:58:37 +00:00