ic void drawCell (Graphics g, int i, int j)
малювання осередку склянки
public int acceptFigure (Figure f)
Прийняття склянкою фігурі, Що впала
private int clearFullLines ()
очищених повністю заповненості ліній
public class ButtonPanel - панель кнопок
Метод
Опіс методу
public ButtonPanel (TetrisFrame frame)
Конструктор класу ButtonPanel
private void jButton1ActionPerformed (java.awt.event.ActionEvent evt)
Обробка натіскання кнопки В«ResumeВ»
private void jButton2ActionPerformed (java.awt.event.ActionEvent evt)
Обробка натіскання кнопки В«PauseВ»
public class TetrisGamePanel - ігрова панель
Поле
Опіс поля
private Glass stakan
Стакан тетріса
private Figure fig
Поточна фігура
private int score
Рахунок гри
private int gameState
Стан грі
private int [] DELAY
паузу для падіння фігурі по рівнях
private int level
Рівень гри
Метод
Опіс методу
public TetrisGamePanel ()
Конструктор класу TetrisGamePanel
public void paintComponent (Graphics g)
малювання склянки, фігурі, рахунка и рівня гри
public int getScore ()
потокової рахунок гри
public void startNewGame ()
Почати нову гру
public void pauseGame ()
Прізупінення грі
public void resumeGame ()
Продовження гри після паузи
public void stopGame ()
Зупинити гру
public int getState ()
Отримати стан гри
public void figureMoveRight ()
Рухаті фігуру вправо
public void figureMoveLeft ()
Рухаті фігуру вліво
public void figureMoveDown ()
Рухаті фігуру вниз
public void figureRotate ()
Обертаті фігуру
public void gamePauseResume ()
Изменить стан гри PAUSE на PLAY и навпаки
public void actionPerformed (ActionEvent e)
Обробка Дій, подій таймера
Додаток Б Опіс інтерфейса Програми
запустити гру фігурі почінають спускатіся. Для Управління фігурою треба корістуватісь клавішамі навігації. Для того, щоб прізупініті гру треба натіснуті кнопку В«PauseВ» або клавішу F3. Для продовження гри треба натіснуті кнопку В«ResumeВ» або клавішу F3. Для качанів Нової грі треба вібрато пункт меню В«Start New GameВ» або натіснуті клавішу F2, а для того, щоб Зупинити гру зовсім - вібрато пункт меню В«Stop GameВ». Для виходе з гри треба вібрато пункт меню В«ExitВ» або просто закрити програму.
Додаток В Інструкція з встановлення
1.На комп'ютері винна буті Встановлено JRE 6.3 (віртуальна машина Java)
2.Монітор винен підтрімуваті режим 1024х768х24bit
3.45kb на жорсткому диску
4.Щоб віконаті проект з командного рядка, перейдіть до каталогу, де знаходится файл и наберіть Наступний: Java-jar "TetrisGame.jar", або запустіть програму подвійнім клацання міші.
Додаток Г Лістінг Програми
Файл GamePanel.java
package Tetr;
import java.awt.event. *;
/**
*
* @ author irdis_13
*/
interface GamePanel extends ActionListener {
final static int PLAY = 1;
final static int STOP = 2;
final static int PAUSE = 3;
public void startNewGame ();
public void pauseGame ();
public void resumeGame ();
public void stopGame ();
public int getScore ();
public int getState ();
public void figureMoveRight ();
public void figureMoveLeft ();
public void figureMoveDown ();
public void figureRotate ();
public void gamePauseResume ();
}
Файл Tetris.java
package Tetr;
/**
*
* @ author irdis_13
*/
public class Tetris {
public static void main (String [] args) throws InterruptedException {
TetrisFrame.setDefaultLookAndFeelDecorated (true);
TetrisFrame frame = new TetrisFrame ();
frame.setVisible (true);
String s = "D: FirstProb2 src Tetr tetris.mid";
if (Args.length> 0)
s = args [0];
new PlaySound (s);
}
}
Файл ButtonPanel.java
package Tetr;
/**
*
* @ author irdis_13
*/
public class ButtonPanel extends javax.swing.JPanel {
private TetrisFrame frame;
public ButtonPanel (TetrisFrame frame) {
this.frame = frame;
initComponents ();
}
// // GEN-BEGIN: initComponents
private void initComponents () {
jButton1 = new javax.swing.JButton ();
jButton2 = new javax.swing.JButton ();
setFocusable (false);
jButton1.setText ("Resume");
jButton1.setFocusable (false);
jButton1.addActionListener (new java.awt.event.ActionListener () {
public void actionPerformed (java.awt.event.ActionEvent evt) {
jButton1ActionPerformed (evt);
}
});
add (jButton1);
jButton2.setText ("Pause");
jButton2.setFocusable (false);
jButton2.addActionListener (new java.awt.event.ActionListener () {
public void actionPerformed (java.awt.event.ActionEvent evt) {
jButton2ActionPerformed (evt);
}
});
add (jButton2);
}// // GEN-END: initComponents
private void jButton1ActionPerformed (java.awt.event.ActionEvent evt) {//GEN-FIRST: event_jButton1ActionPerformed
frame.continueButtonPressed (evt);
}// GEN-LAST: event_jButton1ActionPerformed
private void jButton2ActionPerformed (java.awt.event.ActionEvent evt) {//GEN-FIRST: event_jButton2ActionPerformed
frame.pauseButtonPressed (evt);
}// GEN-LAST: event_jButton2ActionPerformed
// Variables declaration - do not modify// GEN-BEGIN: variables
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
// End of variables declaration// GEN-END: variables
}
Файл Figure.java
package Tetr;
import java.util.Random;
import java.awt. *;
/**
*
* @ author...