Предыстория:
У меня есть два 2d массива. Каждый индекс в каждом массиве 2d представляет плитку, которая нарисована на квадратном холсте, подходящем для плиток 8 x 8.
Первый массив 2d представляет плитки земли, зацикливается и рисуется на холсте с использованием следующего кода:
//Draw the map from the land 2d array
map = new Canvas(mainFrame, 20, 260, 281, 281);
for(int i=0; i < world.length; i++){
for(int j=0; j < world[i].length; j++){
for(int x=0; x < 280; x=x+35){
for(int y=0; y < 280; y=y+35){
Point p = new Point(x,y);
map.add(new RectangleObject(p,35,35,Colour.green));
}
}
}
}
Это создает сетку из зеленых плиток 8 x 8 в поперечнике, как и предполагалось.
Второй массив 2d представляет положение на земле. В этом двумерном массиве все индексы равны нулю, кроме одного, состоящего из класса Person.
Проблема
Я не уверен, как я могу нарисовать позицию на сетке. Я думал об аналогичном цикле, поэтому он рисует поверх предыдущего массива 2d еще один набор из 64 плиток. Только на этот раз все они прозрачны, кроме одной плитки, которая не является нулевой. Другими словами, тайл, на котором находится Person.
Я хотел использовать поиск по всему циклу, используя сравнительный оператор if по строкам
if(!(world[] == null)){
map.add(new RectangleObject(p,35,35,Colour.red));}
Однако мои знания ограничены, и я не понимаю, как это реализовать.