Дистанция
|
|
Ramilyanamana | Дата: Четверг, 31 Января 2013, 10:43 | Сообщение # 1 |
Биззи Джей Ужасный
Сейчас нет на сайте
| Помогите. Надо чтоб когда игрок подходит к врагу на определенную дистанцию, тот начинает идти к ГГ и стрелять в него. А до этого враг должен ходить куда захочет.
|
|
| |
IvanKorobko | Дата: Четверг, 31 Января 2013, 11:12 | Сообщение # 2 |
IK Studio
Сейчас нет на сайте
| Что-то тип того: Враг гуляет куда хочкт, игрок подходит на определенную дистанцию, враг начинает гоняться и стреляться.
Далее изучив суть - поймешь сам, как сделать, чтоб он останавливался на определенной дистанции от игрока(а не упирался в него) + можно, если игрок убежал от него на определенную дистанцию - чтоб враг продолжил свободно гулять и забыл об игроке... Расписывать лень - уже кидал исходники на форум - поищи, если интересно.
|
|
| |
Ramilyanamana | Дата: Четверг, 31 Января 2013, 11:14 | Сообщение # 3 |
Биззи Джей Ужасный
Сейчас нет на сайте
| mef1sto, Дай название исходника хоть.
|
|
| |
IvanKorobko | Дата: Четверг, 31 Января 2013, 11:18 | Сообщение # 4 |
IK Studio
Сейчас нет на сайте
| Я не помню как назвал его - патрульный чтоли)
Тема - тут поищи - вроде там для патрульного ИИ писал я
Патрульный AI - вроде еще живая ссылка.
Если перемешать его с тем что я показал в начале + добавить остановку врага перед игроком на определенной дистанции - практически законченный AI моба для топ-даун шутера...
Сообщение отредактировал mef1sto - Четверг, 31 Января 2013, 11:22 |
|
| |
Ramilyanamana | Дата: Четверг, 31 Января 2013, 11:24 | Сообщение # 5 |
Биззи Джей Ужасный
Сейчас нет на сайте
| mef1sto, а там есть чтоб враг если подходит к стене то он разворачивается в любую сторону(или к ГГ если тот рядом с ним) а если между ГГ и врагом стена то враг не стреляет?
|
|
| |
IvanKorobko | Дата: Четверг, 31 Января 2013, 11:40 | Сообщение # 6 |
IK Studio
Сейчас нет на сайте
| Используй поведение LOS (как поле зрения для врага)... можно прописать дистанции до стен + поведениями отрегулировать движение - это творчесский процесс - главное получать от него удовольствие а искать готовые исходники, где есть всё как тебе надо - не есть создавать игру...
ПС: мне в свое время на похожий вопрос дали исчерпывающий ответ: sqrt( (x1-x2)^2 + (y1-y2)^2 ), а дальше делай с этим чито хочешь)) ну ниче - так даже интересней)
Сообщение отредактировал mef1sto - Четверг, 31 Января 2013, 11:45 |
|
| |
Ramilyanamana | Дата: Пятница, 01 Февраля 2013, 06:45 | Сообщение # 7 |
Биззи Джей Ужасный
Сейчас нет на сайте
| Я сделал только вот так: А у меня враг стал настолько умный, что стал обходить стены. Вот только все равно продолжает стрелять, ни как не могу сделать чтоб, если между ними стена, то он не стреляет. И кстати баг обнаружил один, как только запускаю игру враги сразу же стреляют и пули первый раз проходят сквозь стену и задевают ГГ. Добавлено (01.02.2013, 06:45) ---------------------------------------------
Цитата (mef1sto) sqrt( (x1-x2)^2 + (y1-y2)^2 ) Кстати, а что мне с этим делать?
|
|
| |
Vicka | Дата: Пятница, 01 Февраля 2013, 06:48 | Сообщение # 8 |
Another ART
Сейчас нет на сайте
| Ramilyanamana, добавь в поведение лос обьекты которые стены:-)
|
|
| |
Ramilyanamana | Дата: Пятница, 01 Февраля 2013, 10:23 | Сообщение # 9 |
Биззи Джей Ужасный
Сейчас нет на сайте
| Цитата (Neia) добавь в поведение лос обьекты которые стены:-) А подробней?
|
|
| |
DimOk | Дата: Пятница, 01 Февраля 2013, 10:55 | Сообщение # 10 |
ONG studio
Сейчас нет на сайте
| Ramilyanamana, ты что нибудь слышал про длину вектора так вот это она(если я не ошибаюсь) Добавлено (01.02.2013, 10:55) --------------------------------------------- Это sqrt это квадратный корень из... x1 - конец вектора вычесть x2 - начало вектора(все это Х-ы) все в квадрате прибавить y1-y2(то же что с х-ми только по y) то же в квадрате. как то так
Активно пользуюсь Godot Engine
|
|
| |
IvanKorobko | Дата: Пятница, 01 Февраля 2013, 10:57 | Сообщение # 11 |
IK Studio
Сейчас нет на сайте
| Цитата (DimOk) Это sqrt это квадратный корень из... x1 - конец вектора вычесть x2 - начало вектора(все это Х-ы) все в квадрате прибавить y1-y2(то же что с х-ми только по y) то же в квадрате. как то так
sqrt( (x1-x2)^2 + (y1-y2)^2 ) - теорема Пифагора в конструкте записывается, как Distance(1.X,1.Y,2.X,2.Y)
|
|
| |
DimOk | Дата: Пятница, 01 Февраля 2013, 11:59 | Сообщение # 12 |
ONG studio
Сейчас нет на сайте
| Да че ты говоришь? теорема пифагора c^2=a^2+b^2 где C гипотенуза A и B катеты прямоугольного треугольника. А то что написано выше - растояние от точки до точки т.е. длина вектора
Активно пользуюсь Godot Engine
Сообщение отредактировал DimOk - Пятница, 01 Февраля 2013, 12:54 |
|
| |
IvanKorobko | Дата: Пятница, 01 Февраля 2013, 13:22 | Сообщение # 13 |
IK Studio
Сейчас нет на сайте
| Цитата (DimOk) Да че ты говоришь? теорема пифагора c^2=a^2+b^2 где C гипотенуза A и B катеты прямоугольного треугольника. А то что написано выше - растояние от точки до точки т.е. длина вектора
Учитесь дальше, уважаемый школьник и не придерайтесь к написанному: Цитата (mef1sto) sqrt( (x1-x2)^2 + (y1-y2)^2 ) - теорема Пифагора Могу для Вас переформулировать иначе, если написанное мной было воспринято в штыки вашими необъятными познаниями: Цитата Пользуясь теоремой пифагора, выводим формулу для определения расстояния м/у двумя точками в системе координат XY: Distance=sqrt( (x1-x2)^2 + (y1-y2)^2 )
Сообщение отредактировал mef1sto - Пятница, 01 Февраля 2013, 13:24 |
|
| |
ShadowZi | Дата: Пятница, 01 Февраля 2013, 13:46 | Сообщение # 14 |
постоянный участник
Сейчас нет на сайте
| Здесь поддержу мефисто, это уравнение теоремы пифагора, просто с двумя преобразованиями. 1. Мы тут ищем гипотинузу, поэтому берём квадратный корень (так как нам не нужна гипотинуза в квадрате) 2. Мы помещаем за счёт вычитаний под квадратами фактически получаем прямоугольный треугольник, катеты которого лежат по осям, а прямой угол находится в начале координат.
|
|
| |
DimOk | Дата: Пятница, 01 Февраля 2013, 13:50 | Сообщение # 15 |
ONG studio
Сейчас нет на сайте
| Вот посмотрите ru.m.wikipedia.org/wiki/%D2%E5%EE%F0%E5%EC%E0_%CF%E8%F4%E0%E3%EE%F0%E0Добавлено (01.02.2013, 13:50) --------------------------------------------- Вот посмотрите ru.m.wikipedia.org/wiki/%D2%E5%EE%F0%E5%EC%E0_%CF%E8%F4%E0%E3%EE%F0%E0
Активно пользуюсь Godot Engine
|
|
| |
Ramilyanamana | Дата: Пятница, 01 Февраля 2013, 13:51 | Сообщение # 16 |
Биззи Джей Ужасный
Сейчас нет на сайте
| Спасибо.
|
|
| |
ShadowZi | Дата: Пятница, 01 Февраля 2013, 14:17 | Сообщение # 17 |
постоянный участник
Сейчас нет на сайте
| Цитата (DimOk) ru.m.wikipedia.org/wiki/%D2%E5%EE%F0%E5%EC%E0_%CF%E8%F4%E0%E3%EE%F0%E0 В математике не силён будешь ты, если на википедию только полагаешься. Прелесть гемор матиматики, что одну и туже формулировку и закон и теорему, можно получить совершенно разными способами. Будет тебе особенно весело в инсте когда одну и ту же теорему на двух разных предметах будешь видеть в совершенно разных формулах, а на экзамене придётся доказывать как получить одну формулу из другой.
Не навижу за это математику....
Добавлено (01.02.2013, 14:17) --------------------------------------------- Ps в конце обрезалось при сканировании, в общем итоговую формулу напишите сами. То есть эта таже теорема пифагора, но не для абстрактного треугольника висящего в вакууме, а для абстрактного треугольника находящегося в системе координат.
PPs, заметье что a и b в формуле находятся под квадратами и поэтому нам без разницы из какой координаты вычитать какую
Сообщение отредактировал ShadowZi - Пятница, 01 Февраля 2013, 14:18 |
|
| |
IvanKorobko | Дата: Пятница, 01 Февраля 2013, 14:30 | Сообщение # 18 |
IK Studio
Сейчас нет на сайте
| Цитата (DimOk) ru.m.wikipedia.org/wiki/%D2%E5%EE%F0%E5%EC%E0_%CF%E8%F4%E0%E3%EE%F0%E0
Ну ты сначала хоть сам осиль почитать, прежде чем ссылками кидаться)
Цитата Теорема Пифагора в векторном пространстве: .....что длина вектора равна корню квадратному суммы квадратов его компонентов.
Нет будущего у молодого поколения интернет зохавал моск
|
|
| |
DimOk | Дата: Пятница, 01 Февраля 2013, 14:57 | Сообщение # 19 |
ONG studio
Сейчас нет на сайте
| я понял то что можно формулу представить по разному ps мы ни разу не сталкивались с одной формулой в разных представлениях в 9 классе(может быть это только пока).
Цитата Нет будущего у молодого поколения интернет зохавал моск "Хорошо смеётся тот кто смеётся последним"
Активно пользуюсь Godot Engine
|
|
| |
IvanKorobko | Дата: Пятница, 01 Февраля 2013, 15:36 | Сообщение # 20 |
IK Studio
Сейчас нет на сайте
| Цитата (DimOk) мы ни разу не сталкивались с одной формулой в разных представлениях в 9 классе
И потому не стоит делать громких выводов с подоплекой на неправоту кого-либо. Это актуально не только по части математики, но и в любом вопросе в принципе.
Цитата (DimOk) "Хорошо смеётся тот кто смеётся последним"
А вот этого не совсем понял, но афоризмы тоже знаю :
|
|
| |