Четверг, 28 Марта 2024, 12:31

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker » Как убивать врагов? Какие команды нужны для убивания хп
Как убивать врагов? Какие команды нужны для убивания хп
ShiepДата: Вторник, 23 Октября 2018, 21:50 | Сообщение # 1
был не раз
Сейчас нет на сайте
Как прописать убивание хп врага, пропадание врага после смерти и чтобы нажимать ЛКМ везде можно чтобы бить.

BiGZeBr
AlexanderBekkerДата: Вторник, 23 Октября 2018, 22:20 | Сообщение # 2
BekkerDev Studio
Сейчас нет на сайте
Вам сперва стоило бы освоить азы программирования, прежде чем браться за разработку игр. В ней существуют гораздо более тяжёлые задачи, чем элементарная работа с переменными и простейшая логика.

В Create инициализируете переменную hp. У врага в событии столкновения с пулей уменьшаете её на количество урона: hp -= 25. В Step проверяете переменную hp, и если она меньше единицы — уничтожаете объект функцией instance_destroy().


Разработчик, композитор и издатель инди-игр в Steam.
Редактор карт: BekkerDev Level Editor 4
Страница разработчика в Steam
Паблик ВК: BekkerDev Studio
ss87ssДата: Вторник, 23 Октября 2018, 23:13 | Сообщение # 3
частый гость
Сейчас нет на сайте
Цитата Shiep ()
и чтобы нажимать ЛКМ везде можно чтобы бить.

прочитал раз 10 видимо речь идет о глобальной кнопке мышки и отправлении пули к mouse_x mouse_y

Shiep, открывай яндекс и пиши -простой пример стрельбы-, качаешь штук 5, затем смотришь какой понятнее
через форум долго учиться будешь)
RekerДата: Среда, 24 Октября 2018, 01:24 | Сообщение # 4
почетный гость
Сейчас нет на сайте
Если есть навыки в инглише, есть много хороших каналов, которые всё объясняют. Русскоговорящих норм ютуберов не встречал
ShiepДата: Среда, 24 Октября 2018, 21:16 | Сообщение # 5
был не раз
Сейчас нет на сайте
AlexanderBekker, атака ближнего боя

BiGZeBr
ss87ssДата: Четверг, 25 Октября 2018, 17:07 | Сообщение # 6
частый гость
Сейчас нет на сайте
Цитата Shiep ()
атака ближнего боя

а ну это вообще просто

назови свой юнит ob_Unit
Create

Step

Global left button


назови юнит врага ob_Vrag
Create

Step


Сообщение отредактировал ss87ss - Четверг, 25 Октября 2018, 17:18
ShiepДата: Четверг, 25 Октября 2018, 19:24 | Сообщение # 7
был не раз
Сейчас нет на сайте
ss87ss, как сделать полоску жизни у Главного героя?

BiGZeBr
ss87ssДата: Четверг, 25 Октября 2018, 21:13 | Сообщение # 8
частый гость
Сейчас нет на сайте
тогда поменяй Create на это вариант
Create


Draw
ShiepДата: Суббота, 27 Октября 2018, 15:43 | Сообщение # 9
был не раз
Сейчас нет на сайте
ss87ss, Модель героя превращается в полоску!

BiGZeBr
UNIT02_GAMESДата: Суббота, 27 Октября 2018, 16:55 | Сообщение # 10
частый гость
Сейчас нет на сайте
Shiep, при использовании события Draw отрисовка спрайта прекращается, поэтому его нужно "прорисовать" в ручную с помощью команды draw_sprite или draw_sprite_ext. А вообще советую изучать другие исходники, которые можно найти на сайте конкурента... чем писать сюда из-за всякой ерунды, так будет проще для тебя..

///

Сообщение отредактировал UNIT02_GAMES - Суббота, 27 Октября 2018, 16:56
Raven84Дата: Понедельник, 05 Ноября 2018, 07:47 | Сообщение # 11
старожил
Сейчас нет на сайте
UNIT02_GAMES,
Цитата
поэтому его нужно "прорисовать" в ручную с помощью команды draw_sprite или draw_sprite_ext

На самом деле достаточно прописать просто draw_self() B)


Super Knight Story (в разработке)
Idolzzz - игра доступна в Steam и Play Market
Oliver's Adventures in the Fairyland
ShiepДата: Понедельник, 05 Ноября 2018, 22:05 | Сообщение # 12
был не раз
Сейчас нет на сайте
Raven84, поподробней можна?

BiGZeBr
Raven84Дата: Вторник, 06 Ноября 2018, 06:09 | Сообщение # 13
старожил
Сейчас нет на сайте
Shiep,
Цитата
поподробней можна?

А куда еще подробнее? ))
Я это скорее не вам отвечал, а UNIT02_GAMES.
Он верно сказал, что при использовании события Draw отрисовка спрайта прекращается, поэтому его нужно "прорисовать" в ручную с помощью команды draw_sprite или draw_sprite_ext. Я просто его поправил, что можно проще отрисовывать с помощью функции draw_self().
Этот ответ скорее касается его замечания, а не вашего изначального вопроса.

Добавлено (06 Ноября 2018, 06:12)
---------------------------------------------
Shiep,

Цитата
Модель героя превращается в полоску!

Вот кстати. Вас это тоже касается. Вы в событии Draw рисуете эту полоску жизней. А как правильно заметил товарищ UNIT02_GAMES если у вас есть событии Draw, то тот спрайт, который установлен в вашем объекте будет игнорироваться. По этому в коде Draw просто допишите draw_self(). И у вас должны будут отобразиться и полоска жизней и сам герой.
В сам код, предложенный ss87ss я не вникал, так что за его работоспособность отвечать не могу. Но почему у вас вместо героя рисуется только полоска жизней я вам объяснил. )


Super Knight Story (в разработке)
Idolzzz - игра доступна в Steam и Play Market
Oliver's Adventures in the Fairyland
ShiepДата: Понедельник, 19 Ноября 2018, 20:09 | Сообщение # 14
был не раз
Сейчас нет на сайте
ss87ss, можно ли как-то обьединить хп Обьекта1 и Обьекта2? Если у одного, например, 50 хп, то и у другого тоже будет 50.

BiGZeBr
zhuravelsvДата: Понедельник, 19 Ноября 2018, 20:54 | Сообщение # 15
почетный гость
Сейчас нет на сайте
Цитата Shiep ()
можно ли как-то обьединить хп Обьекта1 и Обьекта2? Если у одного, например, 50 хп, то и у другого тоже будет 50.

нет конечно, офигеть что придумал, это же программирование а не магия :D


Сообщение отредактировал zhuravelsv - Понедельник, 19 Ноября 2018, 20:54
ss87ssДата: Понедельник, 19 Ноября 2018, 23:02 | Сообщение # 16
частый гость
Сейчас нет на сайте
Shiep, тут все можно, и на одну проблему можно найти десяток решений
только надо более точно понимать как вы хотите реализовать механику этого действия,
Обьекта1.hp = Обьекта2.hp этот код сделает здоровье объекта 1 равным здоровью объекта 2
главное надо понять условие при котором будет происходить это действие

если я правильно понял вопрос, ты хочешь сделать отряд и соединить их хп в одну полосу, тогда
в Create
hp_otriad = 0;
в Step первого добавляем
hp_otriad = Обьекта1.hp+Обьекта2.hp
и рисуем общую полоску жизни также у первого игрока
draw_rectangle(x-x_lr,y-y_vv-y_vn,x-x_lr+(Обьекта1.hp+Обьекта2.hp)/(Обьекта1.max_hp+Обьекта2.max_hp)*(x_lr*2),y-y_vv+y_vn,0);

если не то, более конкретно уточни вопрос.
и все таки, если действительно хочешь научиться делать любые игры, качай пачками примеры и изучай что там есть, форум слишком медленно)
ShiepДата: Понедельник, 19 Ноября 2018, 23:31 | Сообщение # 17
был не раз
Сейчас нет на сайте
ss87ss, У меня не отряд, а 1 герой (Обьект1), который при нажатии на кнопку превращается в другого героя (Герой с оружием). Вот я и спрашиваю "Как сделать общее для них хп."А то переключился на 1 героя снова у него 100 хп, хоть у другого было только 25, а возвращаешся назад и у 2 героя 100.

BiGZeBr
ss87ssДата: Вторник, 20 Ноября 2018, 00:42 | Сообщение # 18
частый гость
Сейчас нет на сайте
Shiep, создай отдельный объект, который будет содержать хп героя ob_hp и скинь всю работу по хп на него
например при уроне ob_hp.hp+=-1;
UNIT02_GAMESДата: Вторник, 20 Ноября 2018, 11:04 | Сообщение # 19
частый гость
Сейчас нет на сайте
Shiep, можешь скинуть скриншот из игры, что бы просто увидеть как она выглядит. Тогда можно будет предложить варианты решения..

///
AnyanДата: Вторник, 20 Ноября 2018, 16:58 | Сообщение # 20
участник
Сейчас нет на сайте
ни тебе спасибо, ни понял-не понял, просто качает инфу из пиплов как пылесос и все :)

зы молодцы что пытаются учить кого то, кто даже вопрос не умеет нормально сформулировать :)
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker » Как убивать врагов? Какие команды нужны для убивания хп
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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