Завтра экзамен. Помогите дополнить код игры.
Здравствуйте. Как видно из темы срок критичен)))
Собственно выкладываю код. Хотелось бы при столкновении моего кубика и падающих получать надпись "Game over" и начальное меню типа "начать игру". Надеюсь на вашу помощь:write:
package ru.testtask;
import java.util.Random;
import javax.microedition.lcdui.*;
/**
*
* @author u57_15
*/
public class Game extends Canvas implements Runnable {
int ws,hs,w,h;
int col=8, str=9;
int[][] matr;
final int EMPTY=0;
final int BRICK=1;
final int HUMAN=2;
int hposition=1; //номер столбца, в котором находится человечек
int limit=1;
int speed=300;
public Game() {
this.setFullScreenMode(true);
ws=getWidth();
hs=getHeight();
h=hs/str; //высота кубика
w=ws/col; //ширина кубика
matr=new int[str][col];
new Thread(this).start();
}
protected void paint(Graphics g) {
for (int i=0; i<str; i++) {
for (int j=0; j<col; j++) {
switch (matr[i][j]) {
case EMPTY:
g.setColor(0xffffff);
break;
case BRICK:
g.setColor(0xff0000);
break;
case HUMAN:
g.setColor(0x0000ff);
break;
}
g.fillRect(j*w, i*h, w, h);
}
}
}
private void makeNewRow() {
for (int i=0; i<col; i++) {
for (int j=str-2; j>=0; j--) {
matr[j+1][i]=matr[j][i];
}
}
Random r=new Random();
for (int i=0; i<col; i++) {
matr[0][i]=EMPTY;
}
for (int i=0; i<limit; i++) {
matr[0][Math.abs(r.nextInt()%col)]=BRICK;
}
matr[str-1][hposition]=HUMAN;
}
public void run() {
try {
while(true) {
makeNewRow();
repaint();
Thread.sleep(speed);
}
} catch (Exception exc) {
System.out.print(exc.toString());
}
}
public void keyPressed(int k) {
int gk=getGameAction(k);
switch (gk) {
case LEFT:
hposition=hposition==0?hposition:hposition-1;
break;
case RIGHT:
hposition=hposition==col-1?hposition:hposition+1;
break;
}
}
}
|
ошиблись форумом.
это форум по JavaScript, а не по Java. это два абсолютно разных, никак не связанных между собой языка. Но, даже если бы ваш вопрос был по JavaScript, то при вашей формулировке вопроса, вам бы тут помогли только в разделе Работа. Удачи вам |
Извиняюсь. Просто сложилось, что с java у меня мало общего, вот и попутал. :blink:
Не могли бы Вы мне подсказать, где я могу запостить свой вопрос? |
гугл может подсказать
логично предположить, что на форуме, где сидят специалисты по Java на всякий случай, будьте готовы заплатить. в противном случае рискуете остаться без решения проблемы к моменту экзамена ведь не думаете же вы, что толпы профессионалов кинутся делать вашу работу, только потому что вы не потратили на нее достаточно времени, и теперь вам нужно очень срочно? |
|
игра, ? интересно, а я недавно змейку на java написал :) , простенькую
Что-то а игру вашу запустить не смог, это весь проект? |
Shaci,
Спасибо за ссылки! |
Цитата:
Цитата:
вот Midlet
package ru.testtask;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
/**
* @author u57_15
*/
public class Midlet extends MIDlet {
public void startApp() {
Display.getDisplay(this).setCurrent(new Game());
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
}
|
это для Java ME видимо,
http://forum.vingrad.ru/forum/s/bb5d...java-j2me.html сюды вопросы кидать надо наверно |
| Часовой пояс GMT +3, время: 11:18. |