Jam/TrackerExample2

From ggc

Jump to: navigation, search

01 package Jam;
02 
03 import wiki.Wiki;
04 import fang.*;
05 import java.awt.*;
06 import java.awt.geom.*;
07 import Beta.OutlineTracker;
08 
09 /**
10  * All about my game here.
11  @author Jam Jenkins
12  */
13 public class TrackerExample2 extends GameLoop
14 {
15 
16   /**where the user clicks*/
17   private Point2D.Double whereClick;
18 
19   private Sprite moving;
20 
21   private OutlineTracker tracker;
22 
23   /**makes a dot appear on the screen where the
24   user last clicked*/
25   private void makeDotAppear()
26   {
27     Sprite sprite=new OvalSprite(11);
28     sprite.setScale(0.1);
29     sprite.setLocation(whereClick);
30     canvas.addSprite(sprite);
31   }
32 
33   /**calls makeDotAppear when the alarm goes off*/
34   class DotAppear implements Alarm
35   {
36     /**simply calls makeDotAppear*/
37     public void alarm()
38     {
39       makeDotAppear();
40     }
41   }
42 
43   public void startGame()
44   {
45     moving=new PolygonSprite(7);
46     moving.setScale(0.2);
47     moving.setLocation(0.50.5);
48     canvas.addSprite(moving);
49 
50     Sprite square=new PolygonSprite(3);
51     square.setLocation(0.50.5);
52 
53     Sprite smallCircle=new PolygonSprite(3);
54     smallCircle.setScale(0.1);
55     OutlineTracker small=new OutlineTracker(smallCircle, 0.6);
56     small.setLooping(true);
57 
58     Point2D.Double direction=new Point2D.Double(00);
59     ProjectileTracker pTracker=new ProjectileTracker(direction);
60     pTracker.setAngularVelocity(1);
61     tracker=new OutlineTracker(square, 0.2);
62     tracker.setLooping(true);
63     CompositeTracker composite=new CompositeTracker();
64     composite.addTracker(tracker);
65     composite.addTracker(small);
66     composite.addTracker(pTracker);
67     moving.setLocation(tracker.getCurrentPoint());
68     moving.setTracker(composite);
69 
70     setHelpText(
71         "Watch the moving shapes<br><br>"+
72         "More instructions here");
73   }
74 
75   public void advanceFrame(double timePassed)
76   {
77     Point2D.Double click=getPlayer().getMouse().getClickLocation();
78     if(click!=null)
79     {
80       scheduleRelative(new DotAppear()1);
81       whereClick=click;
82     }
83   }
84 
85 }


Download/View Jam/TrackerExample2.java





Views
Personal tools
Add to 
del.icio.usAdd to 
diggAdd to 
FacebookAdd to 
favoritesAdd to 
GoogleAdd to 
MySpaceAdd to 
PrintAdd to 
SlashdotAdd to 
StumbleUponAdd to 
Twitter