![]() |
Цитата:
А расширяет TransportEvent для того, чтобы унаследовать от него свойство dog Даже если бы он вообще ничего не умел нового и констант не содержал, он все равно должен был бы быть, потому что Man должен посылать ManEvent, а не какой-то там TransportEvent. Вообще, исходя из вашей логики, не надо создавать вообще никаких лишних классов. Можно весь код писать в одном полотенце Main и не париться, аккуратно раскладывая все по полочкам. Программе пофиг аккуратно там все написано или названия классов и свойств вообще обфусцированы. Все это делается исключительно для удобства чтения программистом. |
Цитата:
Цитата:
|
Что ж, удачи тогда с изобретением новых концепций)
|
Цитата:
Код AS3:
Ну или разные слушатели для разных типов событий. |
Цитата:
Цитата:
Проблема вобщем в том, что addEventListener принимает подозрительную строку а не тип События. И этого нам не исправить, увы (иногда не увы а ура, но здесь кажется увы). Вцелом я вообще не вижу никакой проблемы, кроме "мы ожидаем", потому что "мы" же и использовали константу из другого класса. Ну так не ожидайте. Во всех случаях, когда мы используем обычный Event со своим строковым типом, мы имеем ровно эту проблему — подписываемся на какую-то левую строку, а получаем в хэндлер стандартный Event. И все довольны. Либо напишите пресловутый ManEvent extends TransportEvent, как советует Кейси. Только наверное нет смысла добавлять к "грузу" еще и "собаку"))))) |
Цитата:
caseyryan приписал мне: Код AS3:
После чего я приписал ему интерфейсы. |
может вообще не стоит использовать классы событий, если нет четкого понимания как и зачем это делать)
передавайте через общую шину событие buyPet, единсвтенное можете расширить Event до datEvent, и уже в data пихаете все что нужно. Мне кажется проблема в первую очередь в архитектуре, но однозначно сказать не могу по этому отрывку кода, но слишком все усложнено и запутано. |
Цитата:
Цитата:
|
Дело не в принципе работе событий, а понимании целей их типизации. Вы сами видите что получается сложно и запутанно - это сразу должно настораживать. У transportEvent та же проблема, семантически не отражает своей сути (если это просто dataEvent) . Если пользователь купил собаку, то в системе должно быть сгенерировано что-то типа addPet, это логично что где-то понадобится обрабатывать целый класс событий, а не отдельно рождение кошек, собак, поросят.
Но не видя игры целиком - это опять же мое предположение |
faraday, вся эта тема, и предыдущая его тема тоже, попахивает каким-то троллингом (кого-то он мне напоминает, из уже неоднократно забаненных на форуме). Чувак либо вообще нифига не понимает и не хочет понимать, либо специально делает вид, что не понимает. Ему уже и так все досконально разжевали что, как и зачем. В итоге вся тема стоит на том же месте, с которого началась.
|
| Часовой пояс GMT +4, время: 23:49. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.