Иллюстрированный самоучитель по программированию мобильных телефонов

Столкновение объектов

Листинг 8.4. Класс MainGame.

import javax.microedition.Icdui.*;
import javax.microedition.midlet.*;
public class MainGame extends MIDlet implements
CommandListener
{
// команда выхода
private Command
exitMidlet = new Command("Выход",Command.EXIT, 0);
// объект класса MyGameCanvas
private MyGameCanvas mr;
public void startApp()
{
// обрабатываем исключительную ситуацию.
try{
// инициализируем объект класса MyGameCanvas
mr = new MyGameCanvas();
// запускаем поток
mr.start{};
// добавляем команду выхода
mr.addCommand(exitMidlet);
mr.setCommandListener(this);
// отражаем текущий дисплей
Display.getDisplay(this).setCurrent(mr);
}
catch (Java .io .lOException zxz) {};
}
public void pauseApp() {}
public void destroyApp(boolean unconditional)
{
// останавливаем поток
if(mr!= null) mr.stopf);
}
public void commandAction(Command c, Displayable d)
{
if (c = = exitMidlet)
{
destroyApp (false);
notifyDestroyed(); }
}
 }
}
/**
файл MyGameCanvas.Java
класс MyGameCanvas
*/
import java.io.*;
import javax.microedition.Icdui.*;
import javax.microedition.Icdui.game.*;
public class MyGameCanvas
extends GameCanvas implements
Runnable
{
// создаем объект класса MySprite
private MySprite bol;
// создаем объект класса LayerManager
private LayerManager lm;
// создаем бомбы
private MySprite bombal, bomba2, bombaB, bomba4;
// логическая переменная
boolean z;
public MyGameCanvas() throws lOException
{
// обращаемся к конструктору суперкласса Canvas
super(true);
// загружаем изображение мяча
linage bollmage = Image.createlmage ("/bol.png")
// инйциалтзируем объект bol
bol = new MySprite(bollmage, 23, 23);
// выбираем позицию в центре экрана
bol.setPosition(getWidth() /2, getHeight. () /2);
// загрузка изображения бомбы
Image bombalmage = Image.createlmage("/bomba.png");
// инициализируем первую бомбу
bombal = new MySprite(bombalmage, 23, 23);
// выбираем позицию для первой бомбы
bombal.setPosition(10, 10);
// инициализируем вторую бомбу
bomba2 = new MySprite(bombalmage, 23, 23);
// выбираем позицию для второй бомбы
bomba2 .setPosition(getwidth()-30, 10);
// инициализируем третью-бомбу
bоmbа3 = new MySprite(bombalmage, 23, 23);
// выбираем позицию для третьей бомбы
bоmbа3.setPosition(10, getHeight()-40);
// инициализируем четвертую бомбу
bomba4 = new MySprite(bombalmage, 23, 23);
// выбираем позицию для четвертой бомбы
bomba4.setPosition(getWidth()-30, getHeight 0-40);
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.