jam/RunAway

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 
08 /**
09  * All about my game here.
10  @author Jam Jenkins
11  */
12 public class RunAway extends GameLoop
13 {
14   /**an oval*/
15   private Sprite oval;
16   private Sprite runner;
17   private ProjectileTracker backgroundMover;
18   private RunAwayTracker runAway;
19   private CompositeTracker composite;
20 
21   /**sets up the game*/
22   public void startGame()
23   {
24     setSize(600400);
25     makeSprites();
26     addSprites();
27   }
28 
29   /**makes the sprites*/
30   private void makeSprites()
31   {
32     backgroundMover=new ProjectileTracker(00.3);
33 
34     oval=new OvalSprite(11);
35     oval.setScale(0.15);
36     oval.setLocation(0.50.5);
37 
38     runner=new OvalSprite(11);
39     runner.setScale(0.1);
40     runner.setLocation(0.50.95);
41     composite=new CompositeTracker();
42 
43     runAway=new RunAwayTracker(00.2);
44     runAway.setVillain(runner);
45     runAway.setGoodGuy(oval);
46 
47     composite.addTracker(runAway);
48     composite.addTracker(backgroundMover);
49     composite.addTracker(new AimlessTracker(00.05));
50     runner.setTracker(composite);
51   }
52 
53   /**adds the sprites to the  screen*/
54   private void addSprites()
55   {
56     canvas.addSprite(oval, runner);
57   }
58 
59   /**handle input and game  events*/
60   public void advanceFrame(double timePassed)
61   {
62     Point2D.Double mouseLocation=getPlayer().getMouse().getLocation();
63     double angle=Math.atan2(mouseLocation.y-0.5, mouseLocation.x-0.5);
64     backgroundMover.setVelocityDirection(angle);
65     if(oval.getLocation().distance(runner.getLocation())<0.2)
66     {
67       composite.removeTracker(runAway);
68     }
69     else
70     {
71       composite.addTracker(runAway);
72     }
73   }
74 }


Download/View jam/RunAway.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