Четверг, 03 Октября 2024, 16:22

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Ребята, нужна помощь по гейм мейкеру!(Решено)
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_
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг