programmeringsspråket Java har blivit ett populärt val för utvecklingen på grund av dess objektorienterad struktur och dess virtuella maskin baserat gränssnitt som tillåter program skrivna i Java för att köra utan modifiering på en mängd olika operativsystem och datorer , från mobiltelefoner till arbetsstationer . Det är också en ganska kapabel plattform för spelutveckling , och om du just börjat lära spelutveckling , är det bäst att börja enkelt och skapa en Pong - klon . Saker du behöver Review, Java
Visa fler instruktioner
1
skapa en klass och namnge det JPong . Om du använder en IDE som NetBeans , kan du göra detta från menyn Arkiv. Men även en enkel texteditor göra jobbet : bara skapa en fil med namnet
Klistra in följande skelettet i filen " JPong.java . " :
Import java.awt.Canvas ; import javax.swing.JFrame , import java.awt.event.KeyListener , import java.awt.event.KeyEvent , import java.awt.Color , import java.awt.Graphics ;
public class Pong implementerar keyListener {
offentlig Pong ( ) { }
public void keyPressed ( KeyEvent e ) { }
//Dessa två krävs av kompilatorn , men kommer inte att användas i din game.public void keyReleased ( KeyEvent e ) { } public void keyTyped ( KeyEvent e ) { }
public void draw ( ) { }
public boolean detectCollision ( ) { }
public void play ( ) { }
public static void main ( String args [ ] ) { }
}
resten av stegen kommer successivt att fylla i skelettet för att skapa ett komplett spel .
2
definiera data klassen behöver . Sätt detta på toppen av din klass :
private final int WIDTH = 640 ; private final int HEIGHT = 480 ; private final int DELTA = 8 ; private final int PADDLE_WIDTH = 32 ; private final int PADDLE_HEIGHT = 128 ; private final int PUCK_RADIUS = 32 ;
Graphics g ,
private int x1 = 20 , //plats för spelare A : s paddleprivate int y1 = 240 ; private int x2 = 600 , //plats spelare B : s paddleprivate int y2 = 240 ;
privat dubbel x = 60,0 , //plats ballprivate double y = 140,0 ; privata dubbelrum vx = 2,0 , //hastighet ballprivate dubbel vy = 1,0 ;
Billiga 3
Skapa konstruktören
offentlig Pong ( ) { JFrame f = new JFrame ( ) ; . f.setDefaultCloseOperation ( JFrame.EXIT_ON_CLOSE ) , f.setTitle ( " Pong 1,0 " ) ; f.setResizable ( falskt) , Canvas c = new Canvas ( ) ; c.setSize ( 640 , 480 ) ; f.add ( c ) , f.pack ( ) ; f.setVisible ( true ) , g = c.getGraphics ( ) ; f.addKeyListener ( this); draw ( ) ;}
4
Skapa keyPressed metoden . Detta kommer att kallas när användaren trycker på en tangent på tangentbordet , och det kommer att orsaka paddlar för att flytta när vissa tangenter trycks :
public void keyPressed ( KeyEvent e ) {if ( e.getKeyCode ( ) = = KeyEvent.VK_UP ) y2 = y2 - DELTA , else if ( e.getKeyCode ( ) == KeyEvent.VK_DOWN ) y2 = y2 + DELTA , else if ( e.getKeyChar ( ) == ' I ' ) y1 = y1 - DELTA ; else if ( e.getKeyChar ( ) == ' k ' ) y1 = y1 + DELTA , . }
5
Skapa dragningen metod som kommer att dra skärmen varje spel ram
public void draw ( ) { g.setColor ( Color.black ) , g.fillRect ( 0 , 0 , bredd, höjd ) , g.setColor ( Color.red ) , g.fillRect ( x1 , y1 , PADDLE_WIDTH , PADDLE_HEIGHT ) ; g.setColor ( Color.green ) , g.fillRect ( x2 , y2 , PADDLE_WIDTH , PADDLE_HEIGHT ) ; g.setColor ( Color.yellow ) , g.fillOval ( ( int ) x , ( int ) y , PUCK_RADIUS , PUCK_RADIUS ) ;
}
6
Skapa metoden kollisioner som kommer att avgöra om pucken har drabbat en av paddlarna :
public boolean detectCollision ( ) { //Test för kollision med första paddleif ( y + vy > y1 && y + vy < y1 + PADDLE_HEIGHT && x + vx < x1 + PADDLE_WIDTH && x + vx > x1 ) { return true ;}
//Test för kollision med andra paddleelse om ( y + vy > y2 && y + vy < y2 + PADDLE_HEIGHT && x + vx + PUCK_RADIUS > x2 && x + vx + PUCK_RADIUS < x2 + PADDLE_WIDTH ) { return true ; } else return false ; }
7
Skapa spelet slingan . Denna funktion samordnar de andra genom att köra kontinuerligt så länge spelet är öppet :
public void play ( ) { while ( true ) {if ( x + vx < 0