Показать сообщение отдельно
Старый 14.01.2013, 16:41
iflamberg вне форума Посмотреть профиль Отправить личное сообщение для iflamberg Найти все сообщения от iflamberg
  № 7  
Ответить с цитированием
iflamberg
 
Аватар для iflamberg

Регистрация: Jan 2009
Сообщений: 1,651
Ну я не знаю. У меня вот,скажем, и по 70 килобайтов файлы классов получались, и меньше его ну никак не сделать, там логика передвижений, столкновений, сортировки спрайтов по глубине в изометрии, зачем это разносить?

Но это не твой случай, fd96. Тут можно разнести. Но тут такое дело... эту работу можешь выполнить ты и только ты. Никто не захочет в твоих простынях копаться, это не спросили-ответил вариант, это надо делать вдумчиво.

Пока же у тебя я не вижу понимания самого ООП. Вот скажем, можно ли выделить проверку столкновений в отдельный класс Collision? Да почему бы нет. Пусть будет такой себе класс, который для объекта проверит его столкновения с другим объектом и изменит состояния своих переменных colup, coldown и т.д. Но тогда он не должен искать объекты на сцене через stage.getChild. Передай ему те объекты, с которыми ему взаимодействовать. Через конструктор, вызов функции, вызов статической функции, еще как нибудь.

Или скажем контроллер клавиатуры. Как он работает? Как он должен взаимодействовать с основным классом и объектами на сцене? Нужен ли он вообще? Ну, в принципе, нужен. Зачем хранить в основном классе, какие клавиши нажаты, какие нет? Зачем держать слушатели клавиатуры в основном классе? loop плотно работает с клавиатурой? Ну и отлично. Главный класс может держать ссылку на контроллер клавиатуры, loop по ссылке обращается к контроллеру клавиатуры и узнает какие клавиши зажаты, куда двигать персонажа. Или, наоборот, контроллер клавиатуры может держать у себя ссылку на главный класс и по нажатию кнопки, вызывать функцию главного класса, заставляя его выполнять какие-то действия. Например, по нажатию ESC, вызываем game.pause(). Понимаешь? Какие-то такие должны быть размышления.
__________________
мой пустой блог