Beruflich Dokumente
Kultur Dokumente
Import java.applet.Applet;
Import java.awt.Graphics;
if(!gameStarted) {
gfx.setColor(Color.white);
gfx.drawString(“Tennis”, 340, 100);
gfx.drawString(“Press Enter to Begin..”, 310, 130);
}
g.drawImage (img, 0, 0, this);
}
try {
Thread.sleep(10);
}catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
else if(e.getKeyCode() == KeyEven.VK_S) {
p1.setDownAccel(false);
}
}
public void keyTyped(KeyEvent arg0) {
}
*Create an Interface Paddle
package PongV2;
import java.awt.Graphics;
}
*Create New Class name HumanPaddle
package PongV2;
import java.awt.Color;
import java.awt.Graphics;
if(player ==1)
x = 20;
else
x = 660;
}
public void draw(Graphics g) {
g.setColor(Color.white);
g.fillRect (x, (int)y, 20, 80);
}
y += yVel;
if (y < 0)
y = 0;
if (y > 420)
y = 420;
}
public void setUpAccel (boolean input) {
upAccel = input;
}
}
*Create a new Class name Ball
package PongV2;
import java.awt.Color;
import java.awt.Graphics;
public Ball() {
x = 350;
y = 250;
xVel = getRandomSpeed() * getRandomDirection();
yVel = getRandomSpeed() * getRandomDirection();
}
}
}
package PongV2;
import java.awt.Color;
import java.awt.Graphics;
if(player ==1)
x = 20;
else
x = 660;
}
public void draw(Graphics g) {
g.setColor(Color.white);
g.fillRect (x, (int)y, 20, 80);
}
if (y < 0)
y = 0;
if (y > 420)
y = 420;
}
}
NEW FORMAT!!!
New class “Game”
Import java.awt.Canvas;
Import java.awt.JFrame;
Import java.awt.Dimension;
JFrame frame;
public final int WIDTH = 400;
public final int HEIGHT = WIDTH / 16 * 9;
public final Dimension gameSize = new Dimension(WIDTH, HEIGHT);
public final String TITLE = “Pong InDev”;
boolean gameStarted;
while (gameRunning) {
tick();
render();
try{
Thread.sleep(7);
}catch(Exception e) {
e.printStackTrace();
}
public Game() {
frame = new JFrame();
setMinimumSize(gameSize);
setPreferredSize(gameSize);
setMaximum(gameSize);
frame.add(this, BorderLayout.CENTER);
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
frame.setResizable(false);
frame.setTitle(TITLE);
frame.setLocationRelativeTo(null);
IH = new InputHandler();
g.setColor(Color.WHITE);
player.render(g);
ai.render(g);
ball.render(g);
g.dispose();
bs.show();
}
}
CREATE NEW CLASS “PlayerPaddle”
Import java.awt.Color;
Import java.awt.Graphics;
int x;
int y;
int width = 15;
int height = 40;
int speed = 1;
Rectangle boundingBox;
}
if (goingDown && y < game.getHeight() - height) {
y += speed;
System.out.println
}
CREATE NEW CLASS “InputHandler”
if(keyCode == KeyEvent.VK_W){
Game.player.goingUp = true;
}
if(keyCode == KeyEvent.VK_S){
Game.player.goingDown = true;
}
if(keyCode == KeyEvent.VK_UP) {
Game.ai.goingUp = true;
if(keyCode == KeyEvent.VK_DOWN) {
Game.ai.goingDown = true;
if(keyCode == KeyEvent.VK_ESCAPE) {
System.exit(0);
}
if(keyCode == KeyEvent.VK_W){
ß Game.player.goingUp = false;
}
if(keyCode == KeyEvent.VK_S){
Game.player.goingDown = false;
}
if(keyCode == KeyEvent.VK_UP) {
Game.ai.goingUp = false;
if(keyCode == KeyEvent.VK_DOWN) {
Game.ai.goingDown = false;
}
}
CREATE A NEW CLASS “AIPaddle”
int x;
int y;
int width = 15;
int height = 40;
int speed = 1;
Rectangle boundingBox;
if(!istwoPlayer){
if(game.ball.y < y + height && y >= 0){
y -= speed;
}else if(game.ball.y > y && y + height <=
game.getHeight(0)){
y += speed;
}
}else{
if(goingUp){
y -= speed;
}else if(goingDown) {
y += speed;
}
}
CREATE A NEW CLASS “Ball”
Import java.awt.Graphics;
int x, y;
int size = 16;
int speed = 2;
Rectangle boundingBox;
vx = speed;
vy = speed;
if(x <= 0) {
game.p2Score++;
vx = speed;
}else of (x + size >= game.getWidth()) {
game.p1Score++;
vx = -speed;
}
if(y <= 0) {
vy = speed;
} else of (y + size >= game.getHeight()) {
vy = -speed;
}
x += vx;
y += vy;
paddleCollide(game);
}
private void paddleCollide(Game game) {
if(boundingBox.intersects(game.player.boundingBox)) {
vx = speed;
}else if (boundingBox.intersects(game.ai.boundBox)) {
vx = -speed;
}
}
}
CREATE NEW CLASS “Launcher”
Import javax.swing.JButton;
Import javax.swing.JCheckBox;
Import javax.swing.JFrame;
public MainMenu() {
addButtons();
addActions();
getContentPane().setLayout(null);
getContentPane().add(Play);
getContentPane().add(Quit);
getContentPane().add(twoPlayer);
pack();
setVisible(true);
setLocationRelativeTo(null);
setSize(screenWidth, screenHeight);
setTitle(“Pong Menu”);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
if(twoPlayer.isSelected()) {
game.ai.isTwoPlayer = true;
}else {
game.ai.isTwoPlayer = false;
}
game start();
}
});
Quit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
}
}