Суббота, 23 Ноября 2024, 14:42

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Ещё один вопрос по уровням сложности.
DemonmegaДата: Воскресенье, 12 Апреля 2015, 18:14 | Сообщение # 1
был не раз
Сейчас нет на сайте
Например когда игра сохранятся образуется фаил с сохранением или когда имя вводишь ну и т д, а хотелось бы что бы они сохранялись во определенную папку которую я назначу.

Сообщение отредактировал Demonmega - Понедельник, 13 Апреля 2015, 22:33
YellowAfterlifeДата: Понедельник, 13 Апреля 2015, 05:11 | Сообщение # 2
Сейчас нет на сайте
В зависимости от версии.
В GameMaker 8.1 и ниже, файлы можно сохранять почти куда угодно - нужно лишь указать правильный абсолютный путь, ведущий к искомой (существующей) папке.
В GameMaker: Studio, в связи с ориентацией на поддержку большего количества платформ, это было изменено - по умолчанию игра может сохранять файлы в свою папку в (имя пользователя)/AppData/Local/(имя игры) (это место, куда сохраняются файлы, если не указывать абсолютный путь), а для сохранения в свободные места пользователь должен собственноручно выбрать путь через get_open_filename, или создание файла будет запрещено.


DemonmegaДата: Понедельник, 13 Апреля 2015, 22:23 | Сообщение # 3
был не раз
Сейчас нет на сайте
появился новый вопрос.
Если например хочешь сделать в игре 3 уровня сложности надо для каждого дублировать комнаты с врагами ( просто я хочу на каждом уровне сложности поменять некоторые характеристики врагов или можно это делать без дублирования каким нибудь скриптом?)
Простите за эти все нубские вопросы sad


Сообщение отредактировал Demonmega - Понедельник, 13 Апреля 2015, 22:34
EfimovMaxДата: Понедельник, 13 Апреля 2015, 22:44 | Сообщение # 4
заслуженный участник
Сейчас нет на сайте
Дублировать комнаты? surprised

Всё гораздо проще - сделай переменную типа Difficult. При выборе игроком сложности присваивай ей значение (easy, hard и т.д.). Ну и в самой игре делай на неё проверку и, например, изменяй здоровье врагов, их урон и т.д.


Текущий проект: The Experiment ☭

Выпущенные проекты Steam:
Princess.Loot.Pixel.Again
Princess.Loot.Pixel.Again x2
Dungetris
VAsKAДата: Вторник, 14 Апреля 2015, 10:16 | Сообщение # 5
частый гость
Сейчас нет на сайте
EfimovMax, Очень интересно. А есть примеры и уроки на эту тему. Давно хотел узнать ,как это делается.Где все конкретно показано.

Сообщение отредактировал VAsKA - Вторник, 14 Апреля 2015, 10:17
Quad69Дата: Вторник, 14 Апреля 2015, 11:08 | Сообщение # 6
заслуженный участник
Сейчас нет на сайте
VAsKA,
Просто создай объект control в самой первой комнате, напиши ей в Create
Код
globalvar dif;
dif=get_integer('Выберите уровень сложности (1-3)',2)

И поставь свойство "Постоянный" (Там где Твёрдый или Solid)
И дальше уже в врагах или где тебе там надо пишешь:
Код
if dif=1 {Что делает враг при сложности 1}
if dif=2 {Что делает враг при сложности 2 и т.д...}
EfimovMaxДата: Вторник, 14 Апреля 2015, 11:13 | Сообщение # 7
заслуженный участник
Сейчас нет на сайте
VAsKA,
Создаёшь в объекте ГГ, в create, переменную Difficult. В меню присваиваешь ей значение, в зависимости от выбранной сложности (например, Difficult='normal'). Теперь мы знаем, на какой сложности игрок. Далее, в Create всех врагов пишем что-то типа
Код

if Difficult='easy' Hp=10
else if Difficult='normal' Hp=20
else if Difficult='hard' Hp=30

Таким образом, буквально 3 строчки и у нас здоровье врагов напрямую зависит от сложности игры.

Объект ГГ должен быть создан раньше, чем игрок будет выбирать сложность!

UPD maksim1221232, опередил на 5 минут) Предпочитаю избегать дополнительных контролов, тем более если в нём будет всего 2 строчки)


Текущий проект: The Experiment ☭

Выпущенные проекты Steam:
Princess.Loot.Pixel.Again
Princess.Loot.Pixel.Again x2
Dungetris


Сообщение отредактировал EfimovMax - Вторник, 14 Апреля 2015, 11:18
OverdraveДата: Вторник, 14 Апреля 2015, 15:10 | Сообщение # 8
частый гость
Сейчас нет на сайте
Легче присваивать соответствующие числа - легче при записи кода.
Эх, помню, как сам делал такое в скролл-шутере. В зависимости от уровня сложности изменялся тип врагов, траектория их полёта, место и количество, в котором они спавнились, их скорость, точность, количество пуль (даже их цвет и траектория!), бэкграунд, количество хп, поведение и сложность босса и прочее. Всё реализовывалось через переменную diff, но не так, как здесь описано, а формулами в Create, типа
Код
maxhp=4+2*diff

или
Код
for (i=1;i<=2+diff;i++)
with(instance_create(x,y,e_bullet))
{
speed=7+diff-i*1.5
...
}
  • Страница 1 из 1
  • 1
Поиск:

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