Среда, 27 Ноября 2024, 02:00

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Стрельба в платформере.
infermikДата: Суббота, 27 Октября 2012, 17:30 | Сообщение # 1
заслуженный участник
Сейчас нет на сайте
Дорогие форумчане happy
Не силен в GM, объясните пожалуйста, как сделать стрельбу в направлении куда смотрит персонаж.
Уже из названия темы думаю ясно, что мне не нужна схема стрельбы как TDS (Там стрельба идет по курсору мыши + за ним еще и оружие поворачивается), а просто стрельба вправо и влево.

Заранее примного благодарен happy


Выпрямляю путем кнута и пряника
LunarPixelДата: Суббота, 27 Октября 2012, 17:33 | Сообщение # 2
старожил
Сейчас нет на сайте
Смотря как у тебя поворот осуществлен.
Грубо говоря, заводишь переменную napravlenie.

При повороте направо napravlenie=1
При повороте налево napravlenie=2

При стрельбе:
Quote
if napravlenie=1
стреляем в право
else
стреляем в лево


infermikДата: Суббота, 27 Октября 2012, 17:41 | Сообщение # 3
заслуженный участник
Сейчас нет на сайте
LunarPixel, нечто вроде этого?

Code
if napravlenie=1
  instance_create(x+1,y,pula)
Else
  instance_create(x-1,y,pula)


Выпрямляю путем кнута и пряника
FadeBakerДата: Суббота, 27 Октября 2012, 17:42 | Сообщение # 4
JavaSE Game Developer
Сейчас нет на сайте
В Create:
Code
dir = 1;

В Step:
Code
if (keyboard_check(vk_left)) dir = -1;
if (keyboard_check(vk_right)) dir = 1;

Стрельба:
Code
bullet = instance_create(x, y, objBullet);
bullet.speed = dir * скоростьПолетаПули;


Уроки по GM
Minecraft 2D на GM
— Мои проекты —
Blood Harvest [2D] — Original
Blood Harvest [2D]: Remastered Edition
Adventure Craft [2D] — Sandbox
Space Shock [2D] — Scroll Shooter
Intel® Core™ i5-3570K 3.40 GHz, 8 GB RAM, GeForce GTX 750 Ti, Monitor: LG 23EA63V-P.


Сообщение отредактировал Fade - Суббота, 27 Октября 2012, 17:43
LunarPixelДата: Суббота, 27 Октября 2012, 17:43 | Сообщение # 5
старожил
Сейчас нет на сайте
infermik, да smile
Аналогично можно направление движения самой пули при создании менять. Чтобы она летела влево или вправо.


infermikДата: Суббота, 27 Октября 2012, 18:00 | Сообщение # 6
заслуженный участник
Сейчас нет на сайте
Fade, странно но пули летят только влево((

Выпрямляю путем кнута и пряника
LunarPixelДата: Суббота, 27 Октября 2012, 18:02 | Сообщение # 7
старожил
Сейчас нет на сайте
infermik, попробуй bullet.hspeed

infermikДата: Суббота, 27 Октября 2012, 18:07 | Сообщение # 8
заслуженный участник
Сейчас нет на сайте
LunarPixel, Нет, все равно
Кстати в пуле надо что прописывать или её так и оставить пустым объектом?


Выпрямляю путем кнута и пряника
hero564Дата: Суббота, 27 Октября 2012, 18:22 | Сообщение # 9
Made in Ukraine
Сейчас нет на сайте
infermik, в пулю (create)
Code
direction=назвaние_стреляющего_обьекта.direction
infermikДата: Суббота, 27 Октября 2012, 18:37 | Сообщение # 10
заслуженный участник
Сейчас нет на сайте
Всем спасибо.

Выпрямляю путем кнута и пряника
Hamster099Дата: Среда, 31 Октября 2012, 11:39 | Сообщение # 11
был не раз
Сейчас нет на сайте
Если ещё актуально, направления можно обозначать не 1 и 2, а 1 и -1. Тогда стрельбу можно сделать вообще без условий, просто умножая нужные переменные на направление. Например отражение: image_xscale*napravlenie, дирекшн пули ( dir=90*abs(napravlenie-1) ), точку создания пули ( instance_create(x+napravlenie*15,y-20,obj_bullet) ), и всё такое прочее

Сообщение отредактировал Hamster099 - Среда, 31 Октября 2012, 11:50
  • Страница 1 из 1
  • 1
Поиск:

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