Game Maker - создание игр | HellRoom Games
Апрель 30, 2025, 12:32:21 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
Новости:
 
   Начало   Game Maker Помощь Правила форума Поиск Календарь Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как сделать движение персонажа по диагонали?  (Прочитано 3601 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Xarmas_XG
Новичок
*

Репутация: 0
Offline Offline

API: GameMaker Studio Pro
Сообщений: 4


« : Январь 25, 2019, 21:44:19 »

Вечер добрый! У меня вопрос. Как сделать движение персонажа по диагонали? Мда.... У меня получается, что он идёт по "прямоугольнику". Мне надо, что бы персонаж мог ходить по диагонали. Желательно, чтобы это действие было не кодом. Заранее спасибо!
Записан
Fur
Абы-какой
GM Pro user
*

Репутация: 463
Offline Offline

Пол: Мужской
Награды:
3000 сообщений!За постоянность! [500 дней на форуме]Третье место на HellRoom Jam #9 [Flucoldache]За лояльность! [+300 репутации]Настоящий игродел!Боже мой, посмотрите на эту медальку! Первое место на HellRoom Jam #6
API: Game Maker 8.0 Lite
Деятельность: Бурная.
Сообщений: 3673


Лисяток тебе.


« Ответ #1 : Январь 25, 2019, 22:00:29 »

Ты ожидаешь, что мы знаем, что конкретно у тебя там за движение и как оно реализовано?

Цитировать
Желательно, чтобы это действие было не кодом.
Выходить из зоны комфорта бывает полезно.
Записан

В одной отдельно взятой фразе не должно быть больше миллиона муравьёв, пусть даже она — научного труда о муравьях.

Hyperflex
Aristokrat952
Твоя мама - лама
GM Pro user
*

Репутация: 385
Offline Offline

Пол: Женский
Награды:
1 место в Дичайшем джеме #8500 сообщений!За постоянность! [500 дней на форуме]За лояльность! [+150 репутации]1 место в конкурсе Адекватные игры #3 [Антиутопия]3 место в конкурсе ...
API: Game Maker 8.0 Pro
Деятельность: Чет там делает
Сообщений: 1311


Дмитрий - зануда.


« Ответ #2 : Январь 25, 2019, 22:06:43 »

Выходить из зоны комфорта бывает полезно.

переспи с мужчиной
Записан

Статус: сплю и анимешусь с Яшей
DerkMorris
Пользователь
***

Репутация: 0
Offline Offline

Пол: Мужской
API: GameMaker Studio 2
Сообщений: 68


Красный свет Анталиана зовёт нас в важный пут


WWW
« Ответ #3 : Январь 26, 2019, 04:07:03 »

Вечер добрый! У меня вопрос. Как сделать движение персонажа по диагонали? Мда.... У меня получается, что он идёт по "прямоугольнику". Мне надо, что бы персонаж мог ходить по диагонали. Желательно, чтобы это действие было не кодом. Заранее спасибо!

Господин Fur прав насчет того, что пора бы начать уже осваивать не только DnD (Кнопочки) в Game Maker, но и GML :)

Используя кнопку Set Variable (которая находится во вкладке Control) изменяй переменные hspeed и vspeed.
Если ты нажимаешь кнопку "Двигаться вправо", то следует изменять переменную hspeed (Горизонтальная скорость). Так как движение идёт вправо, то следует писать значение переменной положительное число. Число которое нужно указывать будет являться скоростью с которой будет двигаться персонаж вправо. И не забудь сделать событие, когда ты отпускаешь кнопку "Двигаться вправо", чтобы там переменная hspeed принимала значение 0.

При движении Влево, нужно будет делать тоже самое, но переменная hspeed должна быть отрицательной.

При движении Вниз и Вверх, уже будет использоваться другая переменная - "vspeed" (Вертикальная скорость).
Если ты нажимаешь кнопку "Двигаться вниз", то переменную vspeed следует изменять на положительное число, а если вверх, то на отрицательное.

Желательно чтобы скорость перемещения во все стороны было одинаковым (знак + - не учитываю). Нам же не нужно, чтобы персонаж двигался вправо быстрее чем влево?.

Выглядеть должно примерно так:
Когда ты держишь кнопку "Движения вправо"

Когда ты отпускаешь кнопку "Движения вправо"

Когда ты держишь кнопку "Движения влево"

Когда ты отпускаешь кнопку "Движения влево"

Когда ты держишь кнопку "Движения вниз"

Когда ты отпускаешь кнопку "Движения вниз"

Когда ты держишь кнопку "Движения вверх"

Когда ты отпускаешь кнопку "Движения вверх"




Вообще, это гораздо удобнее делается кодом, нежели кнопочками. Надеюсь я ответил на твой вопрос)



Записан
Vixer
^^,
GM Pro user
*

Репутация: 226
Offline Offline

Пол: Мужской
Награды:
3 место в Дичайшем джеме #8За постоянность! [500 дней на форуме]2 место на HellRoom Jam #5, Контраст2 место в конкурсе 1 место в конкурсе
API: GameMaker Studio 2
Деятельность: Недопрограммист, нуб-аниматор и фиговый художник
Сообщений: 555


Уф!


WWW
« Ответ #4 : Январь 26, 2019, 10:09:12 »

Только персонаж в данном случае будет двигаться на ~40% быстрее по диагонали 
Записан

Вииииииииииииии!
ВладГейм
Посетитель
**

Репутация: 3
Offline Offline

API: GameMaker Studio Pro
Сообщений: 41


« Ответ #5 : Январь 26, 2019, 11:40:38 »

Кодом было бы гораздо проще. И если вы хотите делать игры посложнее, то без кода не обойтись
Записан
AndrewVideoGames
Главный Модератор
*

Репутация: 821
Offline Offline

Пол: Мужской
Награды:
За постоянность! [500 дней на форуме]За лояльность! [+750 репутации]5000 сообщений!За помощь новичкам!
API: GameMaker Studio Pro
Деятельность: А я кто? А я руководитель!
Сообщений: 7316



« Ответ #6 : Январь 26, 2019, 13:19:55 »

Вечер добрый! У меня вопрос. Как сделать движение персонажа по диагонали? Мда.... У меня получается, что он идёт по "прямоугольнику". Мне надо, что бы персонаж мог ходить по диагонали. Желательно, чтобы это действие было не кодом. Заранее спасибо!
Чем кнопочки проще кода? Как по мне, кнопочки - это как писать сообщение из смайликов, что куда менее понятно, чем писать с помощью обычных слов.
Выходить из зоны комфорта бывает полезно.
переспи с мужчиной
Главное, что бы мужчиной был не лис, иначе не считается.
Записан
Xarmas_XG
Новичок
*

Репутация: 0
Offline Offline

API: GameMaker Studio Pro
Сообщений: 4


« Ответ #7 : Январь 26, 2019, 20:59:43 »

Вечер добрый! У меня вопрос. Как сделать движение персонажа по диагонали? Мда.... У меня получается, что он идёт по "прямоугольнику". Мне надо, что бы персонаж мог ходить по диагонали. Желательно, чтобы это действие было не кодом. Заранее спасибо!

Господин Fur прав насчет того, что пора бы начать уже осваивать не только DnD (Кнопочки) в Game Maker, но и GML :)

Используя кнопку Set Variable (которая находится во вкладке Control) изменяй переменные hspeed и vspeed.
Если ты нажимаешь кнопку "Двигаться вправо", то следует изменять переменную hspeed (Горизонтальная скорость). Так как движение идёт вправо, то следует писать значение переменной положительное число. Число которое нужно указывать будет являться скоростью с которой будет двигаться персонаж вправо. И не забудь сделать событие, когда ты отпускаешь кнопку "Двигаться вправо", чтобы там переменная hspeed принимала значение 0.

При движении Влево, нужно будет делать тоже самое, но переменная hspeed должна быть отрицательной.

При движении Вниз и Вверх, уже будет использоваться другая переменная - "vspeed" (Вертикальная скорость).
Если ты нажимаешь кнопку "Двигаться вниз", то переменную vspeed следует изменять на положительное число, а если вверх, то на отрицательное.

Желательно чтобы скорость перемещения во все стороны было одинаковым (знак + - не учитываю). Нам же не нужно, чтобы персонаж двигался вправо быстрее чем влево?.

Выглядеть должно примерно так:
Когда ты держишь кнопку "Движения вправо"

Когда ты отпускаешь кнопку "Движения вправо"

Когда ты держишь кнопку "Движения влево"

Когда ты отпускаешь кнопку "Движения влево"

Когда ты держишь кнопку "Движения вниз"

Когда ты отпускаешь кнопку "Движения вниз"

Когда ты держишь кнопку "Движения вверх"

Когда ты отпускаешь кнопку "Движения вверх"




Вообще, это гораздо удобнее делается кодом, нежели кнопочками. Надеюсь я ответил на твой вопрос)




Спасибо за объяснение! Буду учиться GML.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

HellRoom Games © 2006-2012 All Rights Reserved
Powered by SMF 1.1.21 | SMF © 2013, Simple Machines
Страница сгенерирована за 0.102 секунд. Запросов: 32.