Четверг, 25.04.2024, 20:14
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Другое » Корзина » Ещё вопрос.
Ещё вопрос.
lenalenikaДата: Вторник, 21.04.2015, 17:43 | Сообщение # 1
Начинающий игродел
Группа: Пользователи
Сообщений: 85
Награды: 0
Репутация: 1
Статус: Offline
Пауза так то у меня есть, но нужно, что бы можно было выполнять во время паузы действия, например прокачка игрока ( то есть нужно что бы затормаживалась не вся игра) так можно сделать?

Сообщение отредактировал lenalenika - Суббота, 25.04.2015, 19:43
 
BRESSДата: Вторник, 21.04.2015, 18:23 | Сообщение # 2
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
Позвольте поинтересоваться, а как реализована пауза? Паузу можно кучей способов реализовать. Если вы пользуетесь самым банальным путем (а именно деактивацией объектов) то всегда можно после деактивации активировать объект, отвечающий за действия во время паузы при помощи instance_activate_object(объект);

Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
 
lenalenikaДата: Вторник, 21.04.2015, 18:38 | Сообщение # 3
Начинающий игродел
Группа: Пользователи
Сообщений: 85
Награды: 0
Репутация: 1
Статус: Offline
при нажатии кнопки отвечающий за паузу (отдельный объект)
draw_set_color(c_red);
draw_set_alpha(0.3);
draw_rectangle(view_xview, view_yview, view_xview + view_wview, view_yview + view_hview, 0);
draw_set_alpha(1);
draw_text(view_xview + view_wview/2-string_width('PAUSE')/2, view_yview + view_hview/2-string_height('PAUSE')/2, 'PAUSE');

screen_refresh();

keyboard_wait();
и ещё если пригодится при нажатии кнопки ( действие в игроке) открывается объект (прокачка) как реализовать остановку всего кроме этой функции.


Сообщение отредактировал lenalenika - Вторник, 21.04.2015, 18:41
 
BRESSДата: Среда, 22.04.2015, 07:31 | Сообщение # 4
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
У тебя пауза завязана на том, что компьютер не делает ничего до того момента, пока не нажмут какую-либо кнопку. Только жмешь что-то - сразу слетает пауза.

Попробуй реализовать паузу через instance_deactivate_all(1); Эта команда деактивирует все объекты, за исключением того, через который и был вызван этот скрипт. То бишь по нажатии определенной кнопки тебе надо деактивировать все объекты и вызвать меню прокачки. А потом активировать всё обратно при помощи instance_activate_all();

Перед этим позаботься, чтобы экран не оставался пуст, так как, деактивируя объекты, ты также отключаешь событие draw в них. Проще говоря, после деактивации объекты не будут отображаться на экране.


Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
 
lenalenikaДата: Среда, 22.04.2015, 19:39 | Сообщение # 5
Начинающий игродел
Группа: Пользователи
Сообщений: 85
Награды: 0
Репутация: 1
Статус: Offline
Почему не работает прыжок врага??
if obj_player.x > x /////координаты игрока
{
if place_free(x + 5,y) // если нету стены справа от нас
{
if distance_to_object(obj_player) > 149//дистанция
{
x += 3.1///скорость врага
}
}
if not place_free(x+5,y)& jump=1//прыжок если есть стена
{
alarm[2]=25 ///таймер скорости прыжка
jump=0// прыжок равен 0
vspeed = -8///// высота прыжка.
}
}
вот немного отредактировал.
И это только на правую сторону на левую такой же только наоборот ( так вот есть проблема при движении за игроком при попадании перед врагом объекта он сталкивается и не прыгает)
и да в таймере пишу такой код
if(jump=0)// если прыжок равен 0
{
jump=1//прыжок равен 1
}


Сообщение отредактировал lenalenika - Четверг, 23.04.2015, 16:43
 
BRESSДата: Четверг, 23.04.2015, 14:00 | Сообщение # 6
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
Не совсем понятно, как работает этот код. То бишь, как я понял, здесь учитывается, что игрок находится слева, но при этом идет проверка участка справа.

Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
 
lenalenikaДата: Пятница, 24.04.2015, 18:44 | Сообщение # 7
Начинающий игродел
Группа: Пользователи
Сообщений: 85
Награды: 0
Репутация: 1
Статус: Offline
Цитата BRESS ()
Перед этим позаботься, чтобы экран не оставался пуст, так как, деактивируя объекты, ты также отключаешь событие draw в них. Проще говоря, после деактивации объекты не будут отображаться на экране.
А как это сделать?
 
XomafokДата: Пятница, 24.04.2015, 19:13 | Сообщение # 8
Известен под логином VS games
Группа: Постоянный
Сообщений: 932
Награды: 2
Репутация: 172
Статус: Offline
lenalenika, можно сделать просто скриншот перед заморозкой, и рисовать его. Потом просто удалить. Но это конечно слишком "грубо", но у меня других идей пока нет.
 
lenalenikaДата: Суббота, 25.04.2015, 18:52 | Сообщение # 9
Начинающий игродел
Группа: Пользователи
Сообщений: 85
Награды: 0
Репутация: 1
Статус: Offline
почему aa переменная продолжает отниматься даже если gg= 1
if aa>20{
aa-=10
gg+=1
}
else
{
if aa<20{
aa-=0
gg+=0
show_message('--')
}
else
{
if gg=1{
aa-=0
}
}
}


Сообщение отредактировал lenalenika - Суббота, 25.04.2015, 18:53
 
BRESSДата: Воскресенье, 26.04.2015, 08:19 | Сообщение # 10
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
У тебя от gg толком ничего не зависит.
См. первые строчки кода:

if aa>20{
aa-=10
gg+=1
}


Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
 
Форум » Другое » Корзина » Ещё вопрос.
  • Страница 1 из 1
  • 1
Поиск: