Я делаю пошаговую стратегию на тайловой карте. Моя карта состоит из двух слоев - первый виден постоянно и используется как фон, второй используется для выделения тайлов. Выделенные плитки показывают возможное движение игрока. Пока прогресс выглядит так:
Чтобы сделать подсветку возможной, я использую цикл for:
for(int s = 0;s<7;){
for (int i = 0;i<7;i++) {
if ((inField(clickx + i,clicky + s)) && !(tileWithPlayer(clickx + i,clicky + s)))
{
highlight_layer.getCell(clickx + i, clicky+s).setTile(mark);
}
}
s++;
}
В этом я использую один тайл из второго слоя карты, чтобы сделать границу для определенного тайла. На данный момент эта плитка представляет собой только 2-пиксельную границу прозрачной плитки 32x32. Чтобы подсветка исчезла, я использую аналогичный цикл for, в котором плитке присваивается значение null. Выбор/отмена выбора тайлов прекрасно работает, но это, вероятно, не самый эффективный способ сделать это. Я хотел бы заменить синие рамки на цветные прозрачные коробки, что-то вроде Advance wars во время движения или как это видно ниже:
Я пытался сделать полупрозрачную плитку на втором слое в плитке, но безуспешно. Было бы неплохо, если бы была возможность применять только полупрозрачный цвет к определенным тайлам, не используя тайл второго слоя. Итак, мой вопрос: как я могу заменить эти уродливые границы на полностью цветные (полу) прозрачные плитки, чтобы добиться такого же результата, как на картинке выше?