Воскресенье, 24 Ноября 2024, 02:58

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Рандомный уровень
DemixДата: Четверг, 05 Декабря 2013, 13:16 | Сообщение # 1
Pixel Fire Software™
Сейчас нет на сайте
Хочу задать вопрос знающим людям:
Допустим имеется 100 отдельных уровней, после того как кончается 1 из них компьютер рандомом выбирает номер следующего уровня и переходит к нему( До этого все понятно), но как сделать так что-бы после того как уровень пройден и компьютер перешел к следующему, то предыдущий уровень уже никогда не выберется рандомом?


Мои проекты:
Spell Castle Bricks [Android]
O'er! [Android]
JessyStormДата: Четверг, 05 Декабря 2013, 14:45 | Сообщение # 2
заслуженный участник
Сейчас нет на сайте
Двумерный массив используй.

https://www.artstation.com/artist/jessystorm
atorisДата: Четверг, 05 Декабря 2013, 15:04 | Сообщение # 3
участник
Сейчас нет на сайте
Цитата JessyStorm ()
Двумерный массив используй.

почему именно двухмерный?
Обычный массив отлично для этих целей подойдет, есть 2 варианта использования массива
1. При прохождении рандомного уровня из массива удаляется этот уровень
2. Изначально отсортировать рандомно массив([0,1,2,3,4,5...]->[2,4,0,5,1,3...])
П.С. второй вариант легче


Вступайте в групу

Сообщение отредактировал atoris - Четверг, 05 Декабря 2013, 15:05
Aed_MindgartДата: Четверг, 05 Декабря 2013, 15:39 | Сообщение # 4
участник
Сейчас нет на сайте
Ну что, кто проще?
1.Создаём массив с размером соответствующим количеству уровней, в свойствах выставляем атрибут "глобальный", по умолчанию он залит нолями.
2.Создаем глобальную переменную в которой будем хранить случайное число, которое будет генерироваться в конце каждого уровня.
3.Создаем event sheet с следующим содержанием:

У меня, для примера, условие перехода нажатие левой кнопки мышки, каждый лайоут соответствует элементу массива, а значение элемента: 0 - нас тут не было, 1 - мы тут были и больше не придём. Последовательность действий такая:
1.В переменную pointer записывается случайное целое число в диапазоне (от 0 до [размер массива]) + 1.
2.Производится проверка: если элемент массива с индексом pointer имеет значение 0: Мы отмечаем элемент массива соответствующий текущему уровню значением 1. И переходим к лайоуту с номером записанным в переменной pointer.


Сообщение отредактировал Aed_Mindgart - Четверг, 05 Декабря 2013, 15:41
  • Страница 1 из 1
  • 1
Поиск:

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