Work on rendering a character in the scene and moving them about with

mouse-click events.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@134 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Walter Korman
2001-07-31 01:38:28 +00:00
parent 11800e8a43
commit 82831f3baf
7 changed files with 208 additions and 25 deletions
@@ -1,5 +1,5 @@
//
// $Id: SceneViewPanel.java,v 1.3 2001/07/30 15:38:52 shaper Exp $
// $Id: SceneViewPanel.java,v 1.4 2001/07/31 01:38:28 shaper Exp $
package com.threerings.miso.viewer;
@@ -13,7 +13,7 @@ import com.threerings.miso.Log;
import com.threerings.miso.viewer.util.ViewerContext;
import com.threerings.miso.scene.*;
import com.threerings.miso.scene.xml.XMLFileSceneRepository;
import com.threerings.miso.sprite.SpriteManager;
import com.threerings.miso.sprite.*;
/**
* The SceneViewPanel class is responsible for managing a SceneView,
@@ -25,10 +25,13 @@ public class SceneViewPanel extends JPanel
/**
* Construct the panel and initialize it with a context.
*/
public SceneViewPanel (ViewerContext ctx, SpriteManager spritemgr)
public SceneViewPanel (ViewerContext ctx, SpriteManager spritemgr,
Sprite sprite)
{
_ctx = ctx;
_sprite = sprite;
// construct the view object
_view = new IsoSceneView(_ctx.getTileManager(), spritemgr);
@@ -77,7 +80,6 @@ public class SceneViewPanel extends JPanel
{
super.paint(g);
_view.paint(g);
Log.info("paint()");
}
/** MouseListener interface methods */
@@ -93,7 +95,10 @@ public class SceneViewPanel extends JPanel
public void mousePressed (MouseEvent e)
{
Log.info("mousePressed [x=" + e.getX() + ", y=" + e.getY() + "].");
int x = e.getX(), y = e.getY();
Log.info("mousePressed [x=" + x + ", y=" + y + "].");
_sprite.setDestination(x, y);
((EditableSceneView)_view).setHighlightedTile(x, y);
}
public void mouseReleased (MouseEvent e) { }
@@ -114,6 +119,8 @@ public class SceneViewPanel extends JPanel
/** The default scene to load and display. */
protected static final String DEF_SCENE = "rsrc/scenes/default.xml";
protected Sprite _sprite;
/** The context object. */
protected ViewerContext _ctx;
@@ -1,5 +1,5 @@
//
// $Id: ViewerFrame.java,v 1.3 2001/07/30 15:38:52 shaper Exp $
// $Id: ViewerFrame.java,v 1.4 2001/07/31 01:38:28 shaper Exp $
package com.threerings.miso.viewer;
@@ -40,13 +40,14 @@ class ViewerFrame extends JFrame implements WindowListener
SpriteManager spritemgr = new SpriteManager();
TileManager tilemgr = _ctx.getTileManager();
// set up the scene view panel with a default scene
SceneViewPanel svpanel = new SceneViewPanel(_ctx, spritemgr);
// add the test character sprite to the sprite manager
MobileSprite ms = new MobileSprite(300, 300, tilemgr, TSID_CHAR);
//ms.setAnimationDelay(10);
spritemgr.addSprite(ms);
// set up the scene view panel with a default scene
SceneViewPanel svpanel = new SceneViewPanel(_ctx, spritemgr, ms);
// create the animation manager for this panel
AnimationManager animmgr = new AnimationManager(spritemgr, svpanel);