Массивы js и структуры данных, как правильно работать?
Добрый день!
Не знаю делаю я правильно или у меня недостаточно знаний, и можно делать как то по умному :)
Пишу на js игру по типу "зомби против растений", у меня есть массив с объектами существ [{...},{...},..];
{
name:monster,
x:x,
y:y,
track:3,
enemy:false,
.....
}
у - это расположение существа по у,
x - расположение существа по x,
track - на какой дорожке идет существо (всего 5 дорожек),
enemy - является ли врагом это существо или нет (если враг то идет в противоположную сторону, на не врагов).
Ну и другие параметры.
Чтобы правильно отобразить героев на холсте нужно рисовать их от наименьшего y к наибольшему, значит нам надо пройтись по массиву найти y наименьший и нарисовать, а потом снова пройтись и найти y наименьший не включая предыдущий и так пока все не закончатся.
И у меня есть вариант №2:
Создать отдельный массив отсортированный по y .
Так же мне надо проверять столкнулось ли существо со своим врагом, столкнуться может существо только на одной дорожке (всего дорожек 5) и только с врагом. Значит мне надо прийтись по массиву и для каждого существа снова прийтись по массиву и найти существо с той же дорожкой и которое является врагом. И так же вариант №2, можно создать по два массива для каждой дорожке с обычными и врагами, так надо будет меньше сравнивать.
Мне кажется что оба варианта странные. Есть ли адекватные способы решения таких задач ?