Programming | Part#11

В прошлый раз мы добавили наследование. Теперь создадим коллекцию вражеских объектов. Поехали!


Создадим класс (наследуемый):

public class EnemyCircle extends SimpleCircle {
    public EnemyCircle(int x, int y, int rad)
    {
        super(x,y,rad);
    }
}

Добавим в GameManager коллекцию:

private ArrayList<EnemyCircle> circles;

И проинициализируем ее:

private void initEnemyCircles() {
    circles = new ArrayList<EnemyCircle>();
    for (int i = 0; i< MAX_CIRCLES; i++)
    {
        EnemyCircle circle;
        circle= EnemyCircle.getRandomCircle();
                circles.add(circle);
    }
}

Естественно EnemyCircle нужно менять для получения рандомных кругов:

public static EnemyCircle getRandomCircle() {
        Random random = new Random();
        int x = random.nextInt((GameManager.getWidht()));
        int y = random.nextInt(GameManager.getHeight());
        int rad = FROM_RADIUS+random.nextInt(TO_RADIUS-FROM_RADIUS);
        EnemyCircle enemyCircle = new EnemyCircle(x,y,rad);
        return enemyCircle;
}

Теперь нужно отобразить наши круги, чуток добавим кода в onDraw:

public void onDraw() {
    viewCanvas.drawCircle(mainCircle);
    for (EnemyCircle circle : circles) {
        viewCanvas.drawCircle(circle);
    }

}

circles
image-1708
И вот что получаем.

 

 

 

 

 

 

 

 

 

Поделиться:

You may also like...

Добавить комментарий

Войти с помощью: