[Construct 2] Несколько вопросов в процессе создания игры
|
|
ggman | Дата: Вторник, 28 Января 2014, 12:40 | Сообщение # 1 |
постоянный участник
Сейчас нет на сайте
| Хочу сделать вроде бы простую вещь. Раз в секунду определенный объект спаунит рандомно врага одного из трех типов. Проблема в том, что я не могу понять как задать логику рандома в Ивентах Constract 2. Как сделать чтобы раз в секунду обьект получал случайное число и в зависимости от того чему равно это число спаунил врага определенного типа? Или то что я хочу делается совсем по другому принципу?
Сообщение отредактировал ggman - Четверг, 30 Января 2014, 12:10 |
|
| |
IvanKorobko | Дата: Вторник, 28 Января 2014, 12:50 | Сообщение # 2 |
IK Studio
Сейчас нет на сайте
|
|
|
| |
ggman | Дата: Вторник, 28 Января 2014, 15:07 | Сообщение # 3 |
постоянный участник
Сейчас нет на сайте
| Спасибо!
А еще такой вопрос. Глобальные переменные действуют в пределах только одного ивентлиста, или на всю игру?
Сообщение отредактировал ggman - Вторник, 28 Января 2014, 15:15 |
|
| |
XeoDoz | Дата: Вторник, 28 Января 2014, 15:22 | Сообщение # 4 |
XeoDoz Games
Сейчас нет на сайте
| ggman, на весь проект целиком
Ехал Falco через Falco, видит Falco в реке Falco, сунул Falco руку в Falco, Falco Falco Falco Falco Очень рад плюсеГгам в репу
|
|
| |
IvanKorobko | Дата: Вторник, 28 Января 2014, 15:37 | Сообщение # 5 |
IK Studio
Сейчас нет на сайте
| Цитата ggman ( ) А еще такой вопрос. Глобальные переменные действуют в пределах только одного ивентлиста, или на всю игру?
Если тебе нужно, чтобы каждый отдельно взятый спавнер спавнил разных рандомных юнитьв, то вот так наверное лучше рандомить локальные переменные самого спавнера, а не глобальные:
Сообщение отредактировал IvanKorobko - Вторник, 28 Января 2014, 15:40 |
|
| |
ggman | Дата: Среда, 29 Января 2014, 23:13 | Сообщение # 6 |
постоянный участник
Сейчас нет на сайте
| О, спасибо, так еще круче) Добавлено (29.01.2014, 23:13) --------------------------------------------- IvanKorobko, А подскажи еще такую вещь. Сколько ивентов можно поместить в игру, чтобы они все нормально работали и ничего не лагало) 100-200?
|
|
| |
IvanKorobko | Дата: Четверг, 30 Января 2014, 07:16 | Сообщение # 7 |
IK Studio
Сейчас нет на сайте
| Цитата ggman ( ) IvanKorobko, А подскажи еще такую вещь. Сколько ивентов можно поместить в игру, чтобы они все нормально работали и ничего не лагало) 100-200?
Зависит от прямоты рук, оптимизации кода/графики, мощности игрового устройства...
|
|
| |
ggman | Дата: Четверг, 30 Января 2014, 12:18 | Сообщение # 8 |
постоянный участник
Сейчас нет на сайте
| Понятно. А какой оптимальный максимум, если все выше перечисленные параметры на среднем уровне?))
Продолжаю делать игру и столкнулся с еще двумя проблемами: Игра тавердефенс. Для обработки действий игрока использую объект "Touch". По плану, если игрок тапает по блоку, то поверх него строится башня. Если игрок тапает уже по башне, то открывается меню улучшений. На практике же при тапе по башне, в том же месте строится еще одна башня. Думал решить эту проблему введя еще одно свойство в блок: "free". Но при попытке изменить его оно меняется во всех блоках на экране. В связи с этим два вопроса: Как сделать правильную обработку кликов по объектам? Как изменить свойство в одном конкретном объекте?
|
|
| |
IvanKorobko | Дата: Четверг, 30 Января 2014, 12:49 | Сообщение # 9 |
IK Studio
Сейчас нет на сайте
| Цитата ggman ( ) Как изменить свойство в одном конкретном объекте?
For Each Object
Цитата ggman ( ) Как сделать правильную обработку кликов по объектам?
Переменными, как вариант. Есть допустим объект "место установки под башню" - "Baza". Задать объекту "Baza" переменные:
Свободна, Радиус, Урон, Скорость стрельбы и т.п.. При первом тапе на "Baza", если "Свободна"=0 - ставим на нее нужный спрайт. Меняем переменные "Свободна"=1(теперь по тапу уже ничего устанавливаться не будет), Радиус/урон/скорость - по усмотрению - начальные. Далее при тапе на "База" с переменной "Свободна"=1 - выводим меню, в котором уже мудрим над настройками конкретной данной турели...
Цитата ggman ( ) А какой оптимальный максимум, если все выше перечисленные параметры на среднем уровне?))
Не бывает такого. Можно сделать пинг-понг в 2 события(исходник есть на с2коммунити) - это будет полноценная игра, а можно сделать платформер-демку на 3000 событий и он будет далек от завершенности. Все зависит от конкретной игры. Где-то можно нагородить 500 лишних событий, не зная нужных операторов, где-то можно впихать кучу поведений, хотя оптимальней было бы их описать самому с помощью 100 лишних событий и работало бы это быстрее...
|
|
| |
ggman | Дата: Четверг, 30 Января 2014, 14:10 | Сообщение # 10 |
постоянный участник
Сейчас нет на сайте
| For each - это же цыкл. Который переберет все объекты и поменяет свойство в каждом из них. Или я ошибаюсь?
|
|
| |
Lasmelan | Дата: Четверг, 30 Января 2014, 15:30 | Сообщение # 11 |
Construct 2 & Classic
Сейчас нет на сайте
| Цитата ggman ( ) For each - это же цыкл. Который переберет все объекты и поменяет свойство в каждом из них. Или я ошибаюсь? For Each Block: Подсобытие: Block - Free: Ставить башню.
Мое портфолио:
|
|
| |
IvanKorobko | Дата: Четверг, 30 Января 2014, 17:48 | Сообщение # 12 |
IK Studio
Сейчас нет на сайте
| Цитата ggman ( ) For each - это же цыкл. Который переберет все объекты и поменяет свойство в
том объекте над которым совершается действие/который соответствует условиям и т.п.
Сообщение отредактировал IvanKorobko - Четверг, 30 Января 2014, 17:49 |
|
| |