Hur man ska spela Pong spel i java (2 / 3 steg)
Steg 2: Packa upp filen
Extrahera filen eller öppna netto bönor och klistra in denna kod
paketet stickerball_game; < br >
import java.applet.Applet;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import javax.swing.ImageIcon;
import javax.swing.JApplet;
import java.applet.*;
import java.awt.*;
offentliga klassen Main utökar Applet genomför Runnable, MouseMotionListener, MouseListener {
/ ** Skapar en ny instans av Main * /
privata sista int upp = 38.
privata sista int ner = 40;
privat spelare myPlayer;
privat dator myComp;
privat bollen myBall;
privat bild dbImage;
privat bild GameName;
privat AudioClip kicknoise;
privat grafik dbg;
privat tråd th;
privata boolean GAME_STARTED;
privata boolean GAME_OPTION;
privata boolean GAME_OVER;
privata int CScore = 0;
privata int PScore = 0;
privata int TopScore = 5;
public void init() {
GAME_OPTION = sant;
GAME_STARTED = false;
GAME_OVER = false;
CScore = 0;
PScore = 0;
TopScore = 5;
myPlayer = ny Player(20,125,10,50,Color.GREEN.darker());
myComp = ny Computer(370,124,10,50,Color.RED);
myBall = nya Ball(8,200,150,2,-2,Color.blue,this);
addMouseMotionListener(this);
addMouseListener(this);
kicknoise = getAudioClip(getCodeBase(), "hit.au");
GameName =
((Applet) this).getImage(((Applet) this).getCodeBase(), "images/gamename.gif");
}
public void start() {
}
public void stop() {
th.interrupt();
}
public void paint (grafik g) {
IF(GAME_OPTION) {
Bild codemiles =
((Applet) this).getImage(((Applet) this).getCodeBase(), "images/codemiles.gif");
g.setColor(Color.GRAY);
g.fillRect(0,0,400,400);
g.setColor(Color.white);
g.drawString ("Tryck på musklick för att starta bollen klistermärke", 100, 100);
g.drawImage(codemiles,150,150,this);
g.drawString ("Besök oss", 35,250);
g.drawImage (GameName, 100, 275, detta);
} annat if(GAME_STARTED) {
g.fillRect(0,0,400,300);
myPlayer.DrawStrick(g);
myComp.DrawStrick(g);
myBall.DrawBall(g);
g.setColor(Color.YELLOW);
g.drawLine(25,32,375,32);
g.drawLine(25,292,375,292);
g.setColor(Color.GRAY);
g.fillRect(400,300,400,100);
g.setColor(Color.BLACK);
g.drawString ("spelare poäng:" + Integer.toString(PScore),50,350);
g.drawString ("datorn poäng:" + Integer.toString(CScore),250,350);
}
}
/**
* args kommandoradsargumenten
*/
public void uppdatera (grafik g) {
om (dbImage == null) {
dbImage = createImage (this.getSize () .width, this.getSize().height);
dbg = dbImage.getGraphics();
}
dbg.setColor(getBackground());
dbg.fillRect (0, 0, this.getSize () .width, this.getSize().height);
dbg.setColor(getForeground());
Paint(dbg);
g.drawImage (dbImage, 0, 0, denna);
}
public void run() {
Thread.currentThread().setPriority(Thread.MIN_PRIORITY);
medan (sant) {
Repaint();
myBall.move();
myComp.ComputerMove(myBall);
int whosgoal = myBall.wheresBall();
om (whosgoal! = 0) {
IF(whosgoal==1)
CScore ++;
annat
PScore ++;
IF(PScore==5) {
GAME_STARTED = false;
GAME_OVER = GAME_OPTION = sant;
th.interrupt();
Repaint();
} annat if(CScore==5) {
GAME_STARTED = false;
GAME_OVER = GAME_OPTION = sant;
th.interrupt();
Repaint();
}
myBall.x= 200.
myBall.vx = 3;
myBall.vy = -3;
}
om (myBall.vx < 0) {
myBall.PCollision(myPlayer,kicknoise);
} else om (myBall.vx > 0) {
myBall.CCollision(myComp,kicknoise);
}
försök {
Thread.Sleep(15);
} fånga (InterruptedException ex) {
bryta;
}
Thread.currentThread().setPriority(Thread.MAX_PRIORITY);
}
}
public void mouseDragged (MouseEvent e) {
}
public void mouseMoved (MouseEvent e) {
int y=e.getY();
om (y < 250 & & y > 25)
myPlayer.MoveByMouse(y);
}
public void mouseClicked (MouseEvent e) {
IF (!. GAME_STARTED) {
GAME_STARTED = sant;
GAME_OPTION = false;
CScore = 0;
PScore = 0;
TopScore = 5;
myBall.vx = 3;
myBall.vy = -3;
th = nya Thread(this);
th.start();
}
}
public void mousePressed (MouseEvent e) {
}
public void mouseReleased (MouseEvent e) {
}
public void mouseEntered (MouseEvent e) {
}
public void mouseExited (MouseEvent e) {
}
}
-Se mer på: http://www.codemiles.com/finished-projects/ping-pong-java-code-sticker-ball-game-t625.html#sthash.wJTSbHNY.dpuf