| Автор | Расчёт дальности хода |
| Возник вопрос: по какой формуле рассчитывается дойдёт ли существо до клетки или нет? |
| У существа есть параметр "Скорость", он и определяет количество клеток. |
| смотришь скорость существа - на столько клеток вперед оно может продвинуться. |
| прямая клетка 1 скорость, диагональ 1.5 скорости, округление вверх |
Это понятно)
Интересует сама формула расчёта расстояния между клетками.
Там что то из серии корень ((х1-х2)^2+(у1-у2)^2)
а вот как математически узнать дойдёт или нет... |
для ShadowAlFa:
Ну по прямых понятно, диагональные сдвиги по Пифагору) |
для Кассиэль:
А можно чуть подробнее |
для Кассиэль:
а2+б2=с2? |
для ShadowAlFa:
Если первая клетка имеет координаты Х1:Y1, а вторая Х2:Y2, то расстояние между клетками = квадратному корню из [(Х1-Х2)^2 + (Y1-Y2)^2] |
| волновой алгоритм |
| [Сообщение удалено смотрителем Самый Синий // ] |
для Кассиэль:
Я считаю на примере: 1(12;9) 2(8;7) расстояние выдаёт 4.4, но существо со скоростью 4 дойдёт. ЧЯДТ?)
для player33:
Занимательная математика от скуки) |
12
не дойдет, округление вверх |
прямая клетка 1 скорость, диагональ 1.5 скорости
Мне казалось, что у нас так, а не по Пифагору.
По нему вроде только цепуха считается...
Хотя, возможно, я не прав.
Я считаю на примере: 1(12;9) 2(8;7) расстояние выдаёт 4.4, но существо со скоростью 4 дойдёт.
Пруф? |
для Самый Синий:
т.е. операция "потолок" выполняется в любом случае?
//операции пол-потолок |
Поле в тнв можно открыть, оттуда удобнее всего смотреть будет.
Там выходит от клетки 8;7 две клетки влево и 1 вниз наискосок. И как раз хватает до клетки 12;9 |
| [Сообщение удалено смотрителем Самый Синий // ] |
!8,7!9,710,711,712,7
8,89,810,811,812,8
8,99,910,911,9!12,9!
как то так) |
для ShadowAlFa:
Да быть того не может. У тебя 4 расстояние по первой координате, а ты делаешь три "шажка" в своём же описании. |
две клетки влево и 1 вниз наискосок
и откуда у тебя 4,4 взялось, если тут ~3.41 |