hey all . well me and a freind are working on this but we cant get it to work

we need the blue triangle to move left and right on the horizantal axis under 
the command of the left and right arrow keys

if someone could fix it that would be great.

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.*;
import java.net.*;
import java.util.*;
import java.applet.Applet;
import java.applet.AudioClip;
import javax.swing.*;

class GalaxyWars2
{
        static int height;
        static int width;
        
        Polygon shape;
        boolean active;
        double  angle;
        double  deltaAngle; 
        double  currentX, currentY;
        double  deltaX, deltaY;
        Polygon sprite;  
        
        public GalaxyWars2() 
        {
        this.shape = new Polygon();
    this.active = false;
    this.angle = 0.0;
    this.deltaAngle = 0.0;
    this.currentX = 0.0;
    this.currentY = 0.0;
    this.deltaX = 0.0;
    this.deltaY = 0.0;
    this.sprite = new Polygon();
        }
        
         public void advance() {

    this.angle += this.deltaAngle;
    if  (this.angle < 0)
      this.angle += 2 * Math.PI;
    if (this.angle > 2 * Math.PI)
      this.angle -= 2 * Math.PI;
    this.currentX += this.deltaX;
    if (this.currentX < -width / 2)
      this.currentX += width;
    if (this.currentX > width / 2)
      this.currentX -= width;
    this.currentY -= this.deltaY;
    if (this.currentY < -height / 2)
      this.currentY += height;
    if (this.currentY > height / 2)
      this.currentY -= height;
  }

  public void render() {

    int i;

    this.sprite = new Polygon();
    for (i = 0; i < this.shape.npoints; i++)
      this.sprite.addPoint((int) Math.round(this.shape.xpoints[i] * 
Math.cos(this.angle) + this.shape.ypoints[i] * Math.sin(this.angle)) + (int) 
Math.round(this.currentX) + width / 2,
                 (int) Math.round(this.shape.ypoints[i] * Math.cos(this.angle) 
- this.shape.xpoints[i] * Math.sin(this.angle)) + (int) 
Math.round(this.currentY) + height / 2);
  }
         

}

public class GWars2 extends Applet implements Runnable, ActionListener 
{
  
        int Score;
        int shipsLeft=5;
        int shipCounter;
        
        GalaxyWars2   ship;
        GalaxyWars2   enemy;
        
        boolean playing;
        
        boolean left  = false;
    boolean right = false;
    boolean up = false;
        
         Dimension offDimension;
         Image offImage;
         Graphics offGraphics;
         Thread thethread;
         
         Font font = new Font("Earwig Factory", Font.BOLD, 25);
         FontMetrics fm;
         int fontWidth;
         int fontHeight;
        
  public String getAppletInfo() {

    return("Galaxy Wars 2, Copyright 2007 by Aaron , Tyler and Justin");
  }
    public void init()
    {
    Graphics g;
    Dimension d;
    int i;
       
    g = getGraphics();
    d = size();
    GalaxyWars2.width = d.width;
    GalaxyWars2.height = d.height;
        
        //Makes our ships
        ship=new GalaxyWars2();
        ship.shape.addPoint(0, 20);
        ship.shape.addPoint(20,10);
        ship.shape.addPoint(0,0 );
        ship.shape.addPoint(0,20 );
        
        enemy=new GalaxyWars2();
        enemy.shape.addPoint(250, 250);
        enemy.shape.addPoint(233,342 );
        enemy.shape.addPoint(234,84 );
        enemy.shape.addPoint(340,230 );
        enemy.shape.addPoint(250,250 );
        

    initGame();
    endGame();
    }
    
  public void initGame() 
  {
    Score = 0;
    initShip();
    playing = true;
  }
  //ends game
   public void endGame() 
  {
    playing = false;
    stopShip();
  }
  //stops our ship
  public void stopShip()
  {
        ship.active = false;
  }
  
     public void initShip() 
     {
    ship.active = true;
    ship.angle = 0.0;
    ship.deltaAngle = 0.0;
    ship.currentX = 0.0;
    ship.currentY = 0.0;
    ship.deltaX = 0.0;
    ship.deltaY = 0.0;
    ship.render();
  }
//updates ships cordinates
  public void updateShip() {

    double dx, dy;

    if (!playing)
      return;

    if (left) {
      ship.deltaX +=20;


      ship.render();
      
    }
    if (right) {
      ship.angle -= Math.PI / 16.0;
      if (ship.angle < 0)
        ship.angle += 2 * Math.PI;

        dx = -Math.sin(ship.angle);
    dy =  Math.cos(ship.angle);
        
    if (ship.active) {
      ship.advance();
      ship.render();
    }

    else
      if (--shipCounter <= 0 || Score < 0)
        if (shipsLeft > 0) {
          initShip();
        }
   
        else
          endGame();
  }
 }    
     public void run() {
        int DELAY = 5;
  

    int i, j;
    long startTime;

    

    Thread.currentThread().setPriority(Thread.MIN_PRIORITY);
    startTime = System.currentTimeMillis();


    while (Thread.currentThread() == thethread) {
        

      if (1 <0) {

        
        updateShip();
        
                int Score =1;
       
        if (Score <= 0)
        {
                endGame();
        }
        
      

      }

     
                updateShip();
      repaint();
      try {
        startTime += DELAY;
        Thread.sleep(Math.max(0, startTime - System.currentTimeMillis()));
      }
      catch (InterruptedException e) {
        break;
      }
    }
    
  }
 
  public void start()
  {
    if (thethread == null)
    {
      thethread = new Thread(this);
      thethread.start();
    }
  }

  public void stop()
  {
    if (thethread != null)
    {
      thethread.stop();
      thethread = null;
    }
  }
  public void actionPerformed(ActionEvent e) {
        int ShipCC=0;
        if ("Ship".equals(e.getActionCommand())) 
        {  
           System.out.println("Confirm");
        } }
  public boolean keyUp(Event e, int key) 
  {


    if (key==1005)      {
                        up=true;
                }

                if (key==1007)  {
                        left=true;
                        System.out.println("Left key up");
                }
                if (key==1006)  {
                        right=false;
                }
    
    return true;
  }
  
   public boolean keyDown(Event e, int key) {

    // Check if any cursor keys have been pressed and set flags.
                if (key==1005)  {
                        up=false;
                }       
                if (key==1007)  {
                        left=false;
                        System.out.println("Left key pressed");
                }
                if (key==1006)  {
                        right=true;
                }

    return true;
  }
          public void paint(Graphics g) {

    update(g);
  }

 
    public void update(Graphics g) 
    {
    Dimension d = size();
    int i;

    if (offGraphics == null || d.width != offDimension.width || d.height != 
offDimension.height) {
      offDimension = d;
      offImage = createImage(d.width, d.height);
      offGraphics = offImage.getGraphics();
    }
    offGraphics.setColor(Color.black);
    offGraphics.fillRect(0, 0, d.width, d.height);
    
        

        if (shipsLeft >= 5)
        {
                offGraphics.setColor(Color.blue);
                offGraphics.fillPolygon(ship.sprite);   
        }
        if(shipsLeft == 4)
        {
                offGraphics.setColor(Color.yellow);
                offGraphics.fillPolygon(ship.sprite);
        }
        if(shipsLeft == 3)
        {
                offGraphics.setColor(Color.orange);
                offGraphics.fillPolygon(ship.sprite);
        }
        if(shipsLeft == 2)
                {
                        offGraphics.setColor(Color.red);
                offGraphics.fillPolygon(ship.sprite);
                }
                if(shipsLeft == 1)
                {
                        offGraphics.setColor(Color.white);
                offGraphics.fillPolygon(ship.sprite);
                }
      
      offGraphics.setColor(new Color(0, 0, 0));
      offGraphics.drawPolygon(ship.sprite);
      offGraphics.drawLine(ship.sprite.xpoints[ship.sprite.npoints - 1], 
ship.sprite.ypoints[ship.sprite.npoints - 1],
                           ship.sprite.xpoints[0], ship.sprite.ypoints[0]);
    
    g.drawImage(offImage, 0, 0, this);
  }
}
[Message sent by forum member 'sharkbait11' (sharkbait11)]

http://forums.java.net/jive/thread.jspa?messageID=274391

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA2D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to