18.12.2013 / 21:01 |  | 
moDorks    Пользователь  
   Сейчас: Offline 
 Имя: moDorks Регистрация: 04.05.2013
   | вот посмотрите  package monstrik;  
   
/*  
 * To change this template, choose Tools | Templates  
 * and open the template in the editor.  
 */  
//Пример класса, в котором при нажатии на клавиши перемещается спрайт  
//игра где собераеш еду уклоняясь от врагов!!!!!!!!!!!!!!!!!!!!!  
import javax.microedition.lcdui.*;  
import javax.microedition.lcdui.game.*;  
import java.util.Random;  
   
public class MyGameCanvas extends GameCanvas implements Runnable{  
private Thread thread;  
private Sprite igrok;;  
private Sprite[] vragi;  
private Sprite eda;  
private Image vrag;  
private int igrokx,igroky;  
private int[] vragx;  
private int[] vragy;  
private int edax,eday;  
private int skore;  
private int live;  
private Random rand;  
   
public MyGameCanvas(){  
super(true); //обязательный конструктор,который должен вызываться в игровом канвасе  
try{  
vrag = Image.createImage("/vrag.png");  
vragi[0] = new Sprite(vrag);  
vragi[1] = new Sprite(vrag);  
vragi[2] = new Sprite(vrag);  
eda = new Sprite(Image.createImage("/eda.png"));  
igrok=new Sprite(Image.createImage("/igrok.png"));  
igrokx=100;  
igroky=100;  
vragx[0]-=1;  
vragx[1]+=1;  
vragx[2]+=1;  
vragy[0]-=1;  
vragy[1]+=1;  
vragy[2]-=1;  
edax=rand.nextInt(getHeight());  
eday=rand.nextInt(getWidth());  
live = 3;  
}catch(Exception e){}  
thread=new Thread(this); //создаем тред  
thread.start();  
//запускаем тред  
}  
   
public void run(){  
//вечный цикл  
while(true){  
 checkKey();//проверка нажатий клавиш в реальном времени  
draw(getGraphics());  
//прорисовка обьектов  
try{  
thread.sleep(100); //пауза  
}catch(Exception e){}  
}  
}  
   
public void checkKey(){  
igrok.setPosition(igrokx, igroky);      
int key=getKeyStates(); //получаем состояние клавиш в данный момент времени  
if (key==LEFT_PRESSED) igrokx-=3;  
if (key==RIGHT_PRESSED) igrokx+=3;  
if (key==UP_PRESSED) igroky-=3;  
if (key==DOWN_PRESSED) igroky+=3;  
   
}  
   
public void draw(Graphics g){  
g.setColor(255, 255, 0);  
g.fillRect(0, 0, getWidth(), getHeight());  
//вывод спрайта  
igrok.paint(g);  
//перерисовка  
flushGraphics();  
}  
   
   
}  
  мне кажетса со спрайтами что то  | 
  18.12.2013 / 22:34 |  | 
Freddy    Пользователь  
   Сейчас: Offline 
 Имя: Игорь Откуда: Воронеж Регистрация: 30.01.2010
   | moDorks, ты не инициализировал массивы vrag = Image.createImage("/vrag.png");  
//init array  
vragi = new Sprite[/*размер массива*/]  
//теперь можно заполнять массив  
vragi[0] = new Sprite(vrag);  
 С остальными массивами так же.  | 
  19.12.2013 / 06:00 |  | 
samodelkin    Пользователь  
   Сейчас: Offline 
 Имя: Сергей Откуда: Липецк Регистрация: 05.11.2013
   | moDorks,  1)Ты не создал массив спрайтов. 2)В методе draw у тебя прорисовывается только один спрайт игрока. 3)Обьект класса Sprite уже содержит переменные x и у, а также содержит методы перемещения на определенное количество пикселей, так что убери все ненужные переменные и код уменьшится минимум в два раза.
   Изменено samodelkin (19.12 / 06:00) (всего 1 раз) | 
  19.12.2013 / 17:15 |  | 
moDorks    Пользователь  
   Сейчас: Offline 
 Имя: moDorks Регистрация: 04.05.2013
   | samodelkin, я ведь до конца его не дописал я просто проверить хотел
   | 
  19.12.2013 / 18:33 |  | 
samodelkin    Пользователь  
   Сейчас: Offline 
 Имя: Сергей Откуда: Липецк Регистрация: 05.11.2013
   | Ааа, ясно.
   | 
  19.12.2013 / 19:32 |  | 
Guim    Пользователь  
   Сейчас: Offline 
 Имя: Guim Регистрация: 09.03.2012
   | Podskajite samii lightweight IDE dlya windows,  skachal kakoito tIDE (2.8mb) no ona dlya j2se kak ya ponyal, a mne nujno dlya j2me.
   Изменено Guim (19.12 / 19:33) (всего 1 раз) | 
  19.12.2013 / 19:46 |  | 
Its_Your_Soul    Пользователь  
   Сейчас: Offline 
 Имя: Саша Откуда: Винница Регистрация: 29.08.2012
   |  | 
  19.12.2013 / 20:21 |  | 
Naik    Пользователь  
   Сейчас: Offline 
 Имя: %name% Регистрация: 14.03.2010
   | Guim, j2me wtk
   | 
  19.12.2013 / 22:04 |  | 
Its_Your_Soul    Пользователь  
   Сейчас: Offline 
 Имя: Саша Откуда: Винница Регистрация: 29.08.2012
   | Кто знает в чем проблема .. Собираю прогу в j2me sdk mobile , ошибок походу нет т.к компилирует норм , но когда доходит до преверификаций пишет опять таки failed to write to file    |