Электрическая цепь (puzzle)

исходники и примеры в формате .capx

Сообщение Электрическая цепь (puzzle)
» 16 апр 2013, 12:18

Не помню как называется такой тип игр, пусть будет электрическая цепь (или трубы?)
Задача: составить цепь активных элементов от одной точки до другой путем вращения этих самых элементов.
Если появится интерес, могу прокомментировать исходник.
Посмотреть на scirra arcade
electric_circuit_(puzzle).capx
(12.15 КБ) Скачиваний: 1099
Изображение
Аватара пользователя

Игродел
Сообщений: 1197
Я тут с 14 сен 2012
Откуда: Красноярск
Репутация 197 [ ? ]

Сообщение Re: Электрическая цепь (puzzle)
» 16 апр 2013, 14:24

конечно комментируй, если есть на это силы)))
Пути геймдева неисповедимы!
Аватара пользователя

Игродел
Сообщений: 928
Я тут с 23 сен 2012
Откуда: Хабаровск
Двиг: Construct 2/3
Лицензия: Personal
VK: vk.com/virusfun
Репутация 152 [ ? ]

Сообщение Re: Электрическая цепь (puzzle)
» 16 апр 2013, 14:45

Zaksoid, буквально пару дней назад была идея реализовать подобное, но как-то не случилось =)))
Да, комментарии, конечно, не помешали бы... "Сходу" не могу понять принцип работы =))
Аватара пользователя

Игродел
Сообщений: 401
Я тут с 08 янв 2013
Откуда: Мск
Репутация 221 [ ? ]

Сообщение Re: Электрическая цепь (puzzle)
» 16 апр 2013, 17:53

Работает все на основе массива 12х12х8
X и Y координаты элементов цепи(игравого поля), каждый элемент имеет 7 параметров по Z
0- отвечает за активность элемента, то есть есть напряжение или нет.
1- тип элемента, от 0 до 5
..0- победный элемент, к которому нужно подвести ток
..1- стартовый элемент, отсюда все начинается, всегда активен.
..2- прямой провод с двумя концами
..3- Г-образный с двумя концами
..4- с тремя концами
..5- четыре конца
2- угол элемента на который повернут (0-90-180-270)
3- UID спрайта который показывает что элемент активен
4- показывает есть ли проход у элемента с правой стороны (1-есть, 0-нет)
5- показывает есть ли проход у элемента снизу (1-есть, 0-нет)
6- показывает есть ли проход у элемента с левой стороны (1-есть, 0-нет)
7- показывает есть ли проход у элемента сверху стороны (1-есть, 0-нет)
(Тут думаю все понятно, если элемент такой "|" то координаты по z будут 4=0, 5=1, 6=0, 7=1)

1-18 событие генерация массива
19-24 поворот элемента. происходит сдвиг по оси z вниз на одну ячейку с 4 по 7, 7-мая становится 4-той. Обнуляются все активные ячейки.
25-38 происходит проверка каждой ячейки.
Алгоритм такой- текущая ячейка проверяет активная ли она, если нет, проверяет есть ли активная ячейка справа, если да, проверяет есть ли у этой ячейки справа проход к текущей (то есть 6=1?) и проверяет есть ли у текущей проход к правой (4=1?) если да, то становится активной. Затем алгоритм повторяется с ячейками снизу, слева, сверху. И так каждая ячейка.

Вот, собственно, и весь алгоритм.
Сейчас пробую логику для игр типа ZUMA, на первый взгляд, вроде не сложно, хотя кто знает, посмотрим, в правильном ли я направлении пошел.
Изображение
Аватара пользователя

Игродел
Сообщений: 1197
Я тут с 14 сен 2012
Откуда: Красноярск
Репутация 197 [ ? ]

Сообщение Электрическая цепь (puzzle)
» 25 мар 2020, 21:31

Класс! В твою игру два часа залипал!
Аватара пользователя

Участник
Сообщений: 11
Я тут с 20 мар 2020
Двиг: Construct 2
Репутация 0 [ ? ]

Сообщение Электрическая цепь (puzzle)
» 26 мар 2020, 21:58

Gogol писал(а):Класс! В твою игру два часа залипал!

вот еще позалипай http://c2community.ru/courses/games/Plumbing/index.html :ok:

интересный факт. Zaksoid, для просчета цепи использовал массив, который как известно довольно серьезно нагружает проц мобильного устройства. я же в своей игре решил вообще отказаться от массива и создал похожий механизм, но исключительно на триггерынх коллизиях (обмен данными между трубами только в момент касания). если интересно как такое делать - пиши в лс. кину ссылку на урок :ok:
Аватара пользователя
___

error
Сообщений: 6640
Я тут с 05 сен 2012
Репутация 476 [ ? ]

Сообщение Электрическая цепь (puzzle)
» 27 мар 2020, 00:59

___ писал(а):интересный факт. Zaksoid, для просчета цепи использовал массив, который как известно довольно серьезно нагружает проц мобильного устройства

Советую вообще отказаться от массивов. У меня как-то раз ноут завис, когда я решил использовал целых ДВА массива
Изображение
Аватара пользователя

Игродел
Сообщений: 1337
Я тут с 31 авг 2015
Откуда: Нижний Новгород
Двиг: C2, C3
Лицензия: Personal
Репутация 213 [ ? ]

Сообщение Электрическая цепь (puzzle)
» 27 мар 2020, 01:09

q3olegka,
*Я использующий в одном своём проекте 7 массивов*
:lol: :lol:
 
Изображение
Аватара пользователя

Участник
Сообщений: 516
Я тут с 07 май 2017
Двиг: CC,C2
Лицензия: full
Репутация 192 [ ? ]

Сообщение Электрическая цепь (puzzle)
» 27 мар 2020, 12:24

___ писал(а):интересный факт. Zaksoid, для просчета цепи использовал массив, который как известно довольно серьезно нагружает проц мобильного устройства.

С чего вдруг такая уверенность? Почему ты думаешь, что проверка коллизий дешевле для проца чем перебор массива? ))

Посмотрел, код конечно так себе, сейчас бы уже по другому сделал, не нужно каждый тик проверять массив, только после клика мышкой, рекурсивной функцией
Изображение
Аватара пользователя

Игродел
Сообщений: 1197
Я тут с 14 сен 2012
Откуда: Красноярск
Репутация 197 [ ? ]

Сообщение Электрическая цепь (puzzle)
» 27 мар 2020, 13:32

Zaksoid писал(а):
___ писал(а):интересный факт. Zaksoid, для просчета цепи использовал массив, который как известно довольно серьезно нагружает проц мобильного устройства.

С чего вдруг такая уверенность? Почему ты думаешь, что проверка коллизий дешевле для проца чем перебор массива? ))

Посмотрел, код конечно так себе, сейчас бы уже по другому сделал, не нужно каждый тик проверять массив, только после клика мышкой, рекурсивной функцией


Игру можно конечно оптимизировать, но сказать что без массивов будет меньше нагружать проц. не могу. Просто делать без массивов в С2 более проще и короче код, по крайней мере видимый по эвентам. Так 15нашки у меня уложились в 8 строк. И еще в качестве хранения нужных данных С2 предоставляет массу возможностей по мимо массива.
Аватара пользователя

Игродел
Сообщений: 2644
Я тут с 24 окт 2014
Откуда: Москва
Двиг: C2
Лицензия: Personal
Репутация 534 [ ? ]



Вернуться в Исходники и Примеры для Construct 2

Сейчас эту тему просматривают

Зарегистрированные пользователи: нет зарегистрированных пользователей

Наверх