Ребята, нужна помощь по гейм мейкеру!(Решено)
|
|
BObchik | Дата: Пятница, 23 Марта 2018, 18:31 | Сообщение # 1 |
был не раз
Сейчас нет на сайте
| Ребята, я давно наблюдал за сайтами по гейм майкеру и всегда искал нужную информацию и старался не задавать лишних вопросов.В итоге у меня появились такие вопросы которых на просторах интернета нет.
1 ИИ бота врага. Опишу ситуацию вот так, враг находится в комнате, и вдруг он видит игрока. Игрок во время у бегает. А враг выходит в коридор и просто стоит не в доумении. И вот еще. Враг так же в комнате, игрок на другой стороне комнаты устраивает стрельбу. Враг слышит и бежит на звук. Как это реализовать простым образом? 2 В моем проекте кучу спрайтов , иза этого программа надолго зависает и с трудом запускает проект. Возможно ли как то ускорить работу гейм майкера? 3 Как сделать так чтоб мелкие объекты отлетали создавая эффект разрешимости ?
Вы окажите большую услугу. Хотел передать благодарность модераторам за помощь. За ранние спасибо!
_A_
Сообщение отредактировал BObchik - Суббота, 24 Марта 2018, 12:06 |
|
| |
vampir0305 | Дата: Пятница, 23 Марта 2018, 18:47 | Сообщение # 2 |
Unity C# Programmer
Сейчас нет на сайте
| 1) Проверять расстояние между врагом и игроком. Если оно меньше определённого то следовать за игроком, иначе стоять на месте. Чтобы враг слышал игрока при стрельбе, нужно в то время, когда игрок стреляет проверять расстояние между врагом и игроком, если оно меньше определённого, то запоминать координаты игрока в момент выстрела и идти в направлении этих координат. Когда враг пришёл к этим координатам и не заметил игрока, то стоять на месте, или иди обратно откуда пришёл. 2) Фиг знает, может компьютер слабый. 3) При разрушении объекта менять спрайт на спрайт с разлетающимися осколками.
Красочная сюжетно-ориентированная игра-головоломка
|
|
| |
BObchik | Дата: Пятница, 23 Марта 2018, 19:07 | Сообщение # 3 |
был не раз
Сейчас нет на сайте
| vampir0305, Не могли бы вы показать код который запоминает последние координаты игрока?
_A_
|
|
| |
vampir0305 | Дата: Пятница, 23 Марта 2018, 20:19 | Сообщение # 4 |
Unity C# Programmer
Сейчас нет на сайте
| в Create игрока
Код isSaved = false xx = 0 yy = 0
Там где происходит выстрел у игрока
Код if (distance_to_object(obj_enemy) < 50) { if (!isSaved) { isSaved = true
xx = x yy = y } }
У врага в Step
Код if (obj_player.isSaved) { move_towards_point(obj_player.xx, obj_player.yy, 5) }
Примерно так. Дальше сам думай.
Красочная сюжетно-ориентированная игра-головоломка
|
|
| |
BObchik | Дата: Пятница, 23 Марта 2018, 21:44 | Сообщение # 5 |
был не раз
Сейчас нет на сайте
| vampir0305, СПАСИБО БОЛЬШОЕ !!! Ты даже не представляешь как ты мне помог!!! Добавлено (23 Марта 2018, 21:44) --------------------------------------------- vampir0305, У меня опять проблема. Враг прибежал на местно где был игрок но когда я снова начиню шуметь он почему то продолжает сторожить тоже самое место. Пробовал как то варбами исправить но все без толку. Что в этом случай делать ?
_A_
|
|
| |
Sirius105 | Дата: Пятница, 23 Марта 2018, 22:43 | Сообщение # 6 |
участник
Сейчас нет на сайте
| Цитата BObchik ( ) У меня опять проблема. Враг прибежал на местно где был игрок но когда я снова начиню шуметь он почему то продолжает сторожить тоже самое место. Это потому что у тебя в "Степе" написаны координаты хх и yy последней точки игрока, надо обнулить их по достижению точки лии прописать те что были до обнаружения игрока (патруль, пост или что у тебя там было)
Сообщение отредактировал Sirius105 - Пятница, 23 Марта 2018, 22:45 |
|
| |
BObchik | Дата: Суббота, 24 Марта 2018, 09:27 | Сообщение # 7 |
был не раз
Сейчас нет на сайте
| Sirius105, Я только одного не понимаю. Как сделать столкновение с координатами, если это числа а не объект ?Извиняюсь если задою тупой вопрос.
_A_
|
|
| |
vampir0305 | Дата: Суббота, 24 Марта 2018, 10:02 | Сообщение # 8 |
Unity C# Programmer
Сейчас нет на сайте
| У врага в Step
Код if (obj_player.isSaved) { if (distance_to_point(xx, yy) > 5) { move_towards_point(obj_player.xx, obj_player.yy, 5) } else { isSaved = false } }
Красочная сюжетно-ориентированная игра-головоломка
|
|
| |
BObchik | Дата: Суббота, 24 Марта 2018, 10:32 | Сообщение # 9 |
был не раз
Сейчас нет на сайте
| vampir0305, Теперь у меня еще 2 проблемы, если я пишу код без изменений то выдает ошибку. Я решил хоть чем то то исправить добавил obj_player рядом с if (distance_to_point(xx, yy) > 5) и теперь враг идет к точки и танцует на ней и больше не реагирует Добавлено (24 Марта 2018, 10:32) --------------------------------------------- vampir0305, у меня наверное вечно будут возникать проблемы. Дело срочное. Если тебе не трудно сделай мини пример, чтоб враг приходил на местно шума и повторно реагировал.
_A_
|
|
| |
vampir0305 | Дата: Суббота, 24 Марта 2018, 10:50 | Сообщение # 10 |
Unity C# Programmer
Сейчас нет на сайте
| У врага в Step
Код if (obj_player.isSaved) { if (distance_to_point(obj_player.xx, obj_player.yy) > 5) //забыл здесь дописать { move_towards_point(obj_player.xx, obj_player.yy, 5) } else { obj_player.isSaved = false //и здесь } }
Попробуй так.
Красочная сюжетно-ориентированная игра-головоломка
Сообщение отредактировал vampir0305 - Суббота, 24 Марта 2018, 10:50 |
|
| |
BObchik | Дата: Суббота, 24 Марта 2018, 12:05 | Сообщение # 11 |
был не раз
Сейчас нет на сайте
| vampir0305, Наконец то ,осталось затормозить врага. А то он сам по себе в ни куда идет, ну это уже я сам. А так большое спасибо!+ по репе уже поставил.
_A_
|
|
| |