См. сабж: вот есть уровень, на нем (к примеру) 40 монстров, тех, которых видно - 3, остальные "в отключке" пока не попадут в зону видимости... С одним из них игрок взаимодействует...
Есть ли что-нибудь лучше чем:
... For I:=0 To Monster_Count-1 Do
If Monsters[I]^.Active Then Begin
If GetMonster[Player.X,Player.Y]<>Nil Then
Monsters[I]^.DoCollide;
End;
Как вариант, по идее можно сделать массив указателей на текущих активных монстров (штук 5-6), но при передвижении экрана его без конца нужно обновлять... Не очень-то красиво ?...
Сообщение отредактировано: AlienEmperor -
Кто как просчтитывает столкновения ?, Как выбрать нужный спрайт ? |