Суббота, 11.01.2025, 00:56
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Общие вопросы по Game Maker 6/7/8/Studio
BRESSДата: Суббота, 11.10.2014, 08:47 | Сообщение # 556
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
Убедительная просьба писать ТЗ, а не что попало )) Ну а так всё тривиально:

with instance_create(x,y,объект_пули) {
direction = угол_выстрела;
speed = скорость полета
}


Этот скрипт создает пулю. Далее вы можете его продублировать и изменить угол выстрела. Чтобы был прям натуральный разброс, есть функция irandom(x), выдающая псевдо-случайные числа:

with instance_create(x,y,объект_пули) {
direction = угол_выстрела - x + (irandom(x*2)); //x - макс. отклонение траектории пули
speed = скорость полета
}


Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
 
XomafokДата: Воскресенье, 26.10.2014, 16:11 | Сообщение # 557
Известен под логином VS games
Группа: Постоянный
Сообщений: 932
Награды: 2
Репутация: 172
Статус: Offline
Недавно я перешел на GM Studio. Пытаюсь как - то юзать встроенную физику. Вопрос такой - как сделать объект, обладающий всякими там физическими свойствами и при этом абсолютно неподвижный?

разобрался. Надо плотность поставить на ноль.

Новый вопрос: Как сделать виртуальные кнопки управления, чтобы они рисовались "поверх" вида?
Ситуация такая - игра для двоих на одном устройстве, под Андроид. Есть два вида - первого игрока и второго. Если использовать стандартные способы, то при сближении игроков у второго игрока появляется часть интерфейса первого игрока, а у первого игрока часть интерфейса второго.

Сформулирую вопрос по - другому - как сделать объект невидимым для одного вида, но при этом видимым для другого, учитывая что виды находятся одновременно на одном экране?


Сообщение отредактировал Xomafok - Вторник, 28.10.2014, 11:46
 
MordaniusДата: Пятница, 31.10.2014, 04:04 | Сообщение # 558
Заглянувший
Группа: Пользователи
Сообщений: 9
Награды: 0
Репутация: 0
Статус: Offline
В восьмерке можно было проверять номер вида, который рисуется в данный момент. Как там в студии, я не знаю.

if (view_current == 1)
{
//Рисуем худ первого игрока.
};
if (view_current == 2)
{
//Рисуем худ второго
};
//Можно продолжить в том же духе

Только если кнопочки должны быть интерактивными, придется сделать их объектами, а в draw прописать что-то вроде:

if (view_current != 1) exit;
draw_self();

Это понятное дело, для первого игрока.

З.Ы. Возможно надо будет сделать что-то похожее и с обработкой нажатий.


Сообщение отредактировал Mordanius - Пятница, 31.10.2014, 04:25
 
XomafokДата: Пятница, 31.10.2014, 09:35 | Сообщение # 559
Известен под логином VS games
Группа: Постоянный
Сообщений: 932
Награды: 2
Репутация: 172
Статус: Offline
Я забил на эти кнопки в виде объектов и начал делать проверку местоположения мыши и рисование GUI.
 
MordaniusДата: Суббота, 01.11.2014, 02:25 | Сообщение # 560
Заглянувший
Группа: Пользователи
Сообщений: 9
Награды: 0
Репутация: 0
Статус: Offline
Тогда все просто. Первый вариант.
 
XomafokДата: Воскресенье, 02.11.2014, 21:08 | Сообщение # 561
Известен под логином VS games
Группа: Постоянный
Сообщений: 932
Награды: 2
Репутация: 172
Статус: Offline
Вопрос такой пиратский лагучий ГМ Студия как - то умудрился удалить мой проект. Я зашел в папку Гм ,и увидел, что все ресурсы сохранились. Есть ли возможность это все восстановить, не делая все заново и не загружая сто лет все эти ресурсы
 
BRESSДата: Понедельник, 03.11.2014, 07:38 | Сообщение # 562
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
Цитата Xomafok ()
Вопрос такой пиратский лагучий ГМ Студия как - то умудрился удалить мой проект. Я зашел в папку Гм ,и увидел, что все ресурсы сохранились. Есть ли возможность это все восстановить, не делая все заново и не загружая сто лет все эти ресурсы
Создай пустой проект и тупо перекинь ресурсы из папок. Если они не повреждены, все будет ок.


Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
 
fdk123Дата: Пятница, 07.11.2014, 11:55 | Сообщение # 563
Олдфаг-Программист
Группа: Постоянный
Сообщений: 214
Награды: 0
Репутация: 28
Статус: Offline
BRESS, Спойлер

1.Как сделать эти команды на буквы? Вместь vk_left = a и т.д.? В этом же исходнике...

Код
if keyboard_check(vk_left) && Move[1,0]=true{     
    motion_set(180,S)//шагать налево со скоростью S     
    }    
    if keyboard_check(vk_right) && Move[1,1]=true{     
    motion_set(0,S)//шагать направо со скоростью S     
    }    
    if keyboard_check(vk_down) && Move[1,2]=true{     
    motion_set(270,S)//шагать вниз со скоростью S     
    }    
    if keyboard_check(vk_up) && Move[1,3]=true{     
    motion_set(90,S)//шагать наверх со скоростью S     
    }

Заранее спасибо...


Run To Life
Visual Basic — пишу свободно
Visual C++ — пишу свободно
Visual C# — пишу свободно(изредка в книжку гляжу)
GML — без гайдов ни строчки


Сообщение отредактировал fdk123 - Суббота, 08.11.2014, 20:05
 
BRESSДата: Суббота, 08.11.2014, 20:31 | Сообщение # 564
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
Цитата fdk123 ()
Как сделать эти команды на буквы? Вместь vk_left = a и т.д.? В этом же исходнике...
Вроде бы вместо "vk_left" надо прописывать, к примеру, "ord('A')". Если честно, я уже начал забывать некоторые функции GM. С остальными вопросами я запутался: ты их решил сам или как?..


Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
 
fdk123Дата: Воскресенье, 09.11.2014, 03:18 | Сообщение # 565
Олдфаг-Программист
Группа: Постоянный
Сообщений: 214
Награды: 0
Репутация: 28
Статус: Offline
Цитата BRESS ()
Вроде бы вместо "vk_left" надо прописывать, к примеру, "ord('A')". Если честно, я уже начал забывать некоторые функции GM. С остальными вопросами я запутался: ты их решил сам или как?..
Спасибо, остальные решил сам. По спойлер запихал ради архива, вдруг баги вылезут...
Ещё раз спасибо огромное BRESS!

Добавлено (09.11.2014, 03:18)
---------------------------------------------
BRESS, Как сделать небольшую задержку на смену спрайта?


Run To Life
Visual Basic — пишу свободно
Visual C++ — пишу свободно
Visual C# — пишу свободно(изредка в книжку гляжу)
GML — без гайдов ни строчки
 
BRESSДата: Воскресенье, 09.11.2014, 09:10 | Сообщение # 566
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
Цитата fdk123 ()
BRESS, Как сделать небольшую задержку на смену спрайта?
А теперь то же, но только понятно :)


Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
 
fdk123Дата: Воскресенье, 09.11.2014, 11:52 | Сообщение # 567
Олдфаг-Программист
Группа: Постоянный
Сообщений: 214
Награды: 0
Репутация: 28
Статус: Offline
Цитата BRESS ()
А теперь то же, но только понятно :)
Мне нужно что-бы в событии Key Release спрайт менялся на стоящего человечка с небольшой задержкой.


Run To Life
Visual Basic — пишу свободно
Visual C++ — пишу свободно
Visual C# — пишу свободно(изредка в книжку гляжу)
GML — без гайдов ни строчки
 
BRESSДата: Воскресенье, 09.11.2014, 13:47 | Сообщение # 568
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
Цитата fdk123 ()
Мне нужно что-бы в событии Key Release спрайт менялся на стоящего человечка с небольшой задержкой.
alarm[0]=задержка
и в событии Alarm 0 нужный код пиши


Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
 
fdk123Дата: Воскресенье, 09.11.2014, 14:42 | Сообщение # 569
Олдфаг-Программист
Группа: Постоянный
Сообщений: 214
Награды: 0
Репутация: 28
Статус: Offline
=====ИСПРАВИЛ САМ. ОТБОЙ=====


Run To Life
Visual Basic — пишу свободно
Visual C++ — пишу свободно
Visual C# — пишу свободно(изредка в книжку гляжу)
GML — без гайдов ни строчки


Сообщение отредактировал fdk123 - Воскресенье, 09.11.2014, 16:19
 
XomafokДата: Воскресенье, 09.11.2014, 16:57 | Сообщение # 570
Известен под логином VS games
Группа: Постоянный
Сообщений: 932
Награды: 2
Репутация: 172
Статус: Offline
Вот такой вот код:
Код
if hp>=60 and hp<80 then image_index=1
if hp>=40 and hp<60 then image_index=2
if hp>=20 and hp<40 then image_index=3
if hp>0 and hp<20 then image_index=4
if hp<=0 then
{
//Некое засекреченное действие'
}


При изменении hp кадры не изменяются, но при нулевом hp "некое засекреченное действие" выполняется, как и должно было выполняться.
Как сделать смену кадров?
P.S. В Create прописано image_index=0. Объект использует физику Box2D.
 
Поиск: