jarg

Форум для проектов, находящихся на стадии Альфа и Бета. В них ещё не реализована вся задуманная автором функциональность, а значит идёт активная разработка.

Модераторы: Sanja, Максим Кич

Аватара пользователя
ishellstrike
Сообщения: 37
Зарегистрирован: 21 авг 2013, 21:50
Откуда: Москва

Re: jarg

Сообщение ishellstrike » 01 фев 2016, 14:03

И верно, меня не туда понесло

Аватара пользователя
karagy
Сообщения: 950
Зарегистрирован: 10 янв 2007, 14:13

Re: jarg

Сообщение karagy » 01 фев 2016, 17:26

Смотрел я намедни псевдокод Инкуршена, с тамошними

Код: Выделить всё

On Event ...
On Event EV_PREREQ
PRE(EV_PRAY)
GODWATCH(PRE(EV_HIT))
GODWATCH(POST(EV_EFFECT))
...
- а в голове упорно вертелась мысль - что иногда (иногда!) имеет смысл держать фильтрующие функции не в диспетчере или получателе, но при самом эвенте.

Аватара пользователя
Jesus05
Сообщения: 1792
Зарегистрирован: 02 дек 2009, 07:50
Откуда: Норильск, сейчас Санкт-петербург.
Контактная информация:

Re: jarg

Сообщение Jesus05 » 02 фев 2016, 06:45

karagy писал(а):Смотрел я намедни псевдокод Инкуршена, с тамошними

Код: Выделить всё

On Event ...
On Event EV_PREREQ
PRE(EV_PRAY)
GODWATCH(PRE(EV_HIT))
GODWATCH(POST(EV_EFFECT))
...
- а в голове упорно вертелась мысль - что иногда (иногда!) имеет смысл держать фильтрующие функции не в диспетчере или получателе, но при самом эвенте.
Ты имеешь ввиду что-бы было:

Код: Выделить всё

Event->isHit();
Event->isEffect();

Аватара пользователя
karagy
Сообщения: 950
Зарегистрирован: 10 янв 2007, 14:13

Re: jarg

Сообщение karagy » 02 фев 2016, 08:26

Инкуршен - это только фон к размышлениям. Внутри там всё по-своему хорошо.

Я имею ввиду группировку нетривиальных фильтров при эвенте. Пока не могу придумать яркий пример когда удобней вынести фильтр в эвент (для производительности, либо для группировки кода).

Общие соображения были такие:
Обычно, система эвентов это отношение один (эвент) ко многим (получатели).
Если, вдруг, приспичит иметь отношение многие к одному или многие ко многим, то не должен вызывать удивления диспетчер перебирающий (и, возможно, фильтрующий) не получателей для эвентов а наборот, эвенты для получателя. И удобные места для группировки фильтров могут оказаться непривычны. Например при эвентах.

Аватара пользователя
ishellstrike
Сообщения: 37
Зарегистрирован: 21 авг 2013, 21:50
Откуда: Москва

Re: jarg

Сообщение ishellstrike » 03 май 2016, 11:48

Из проекта, что обсуждался в этой теме вырос несколько другой, если интересно, прошу по ссылке http://vk.com/alphamensae_dev
Сложно сказать насколько он остался рогаликом =)

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя