Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 07.05.2012, 23:41
KirillKobyzev вне форума Посмотреть профиль Отправить личное сообщение для KirillKobyzev Найти все сообщения от KirillKobyzev
  № 1  
Ответить с цитированием
KirillKobyzev

Регистрация: Apr 2012
Адрес: Санкт-Петербург
Сообщений: 12
Question MVC и as3isolib

Приветствую всех заглянувших)

Пишу игру потихоньку, обучаюсь заодно as3, с MVC вроде бы разобрался отчасти, но!

Есть у меня MVC(хотя и не MVC уже оно) пространства(изометрического поля), с использованием as3isolib . Сначала пытался делать по MVC, но из-за специфики библиотеки, не смог грамотно настроить связи.. пришлось оставить контроллер, и всё остальное запихать во вьюху... вроде бы уже и свыкся, но парит, что слишком много всего в 1 классе у меня.. вроде бы ещё практически ничего и нету, а фаил Вьюхи у меня уже на 500+ строк..ну не суть.
Вроде сделал движок для пространства(статических объектов) и тут пора бы персонажа ввести наконец-то, а здесь начались трудности, не понимаю как бы мне сделать отдельный MVC для персонажа, ведь общий viewPort (всё, что находится на сцене в изометрическом виде), сортировка, находится в "MVC" пространства, следовательно, чтобы добавить новый слой с персонажем нужно каким то образом дёргать что-то там.. т.е. во-первых, нужно передать Сам объект, и как его потом контролировать, если вьюха Персонажа уже и не выполняет особых действий получается? в общем я в печали)

Само собой я могу в "MVC" Пространства запихать и персонажа, Но очень этого бы не хотелось делать)

Проблему свою выразить более чётко не смог, но хотелось советов, как быть (по теме совмещения AS3isolib с MVC)


Последний раз редактировалось KirillKobyzev; 07.05.2012 в 23:43.
Старый 08.05.2012, 00:00
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 2  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
У вас полюбому должна быть архитектура ( тоесть нужен основной контроллер полюбому ) :

GlobalController.as работает с
любым из видов ( нужных ) , держит все модели ( нужные ему ) , держит другие контроллеры.
И тогда вы из вида игры например диспатчите событие главному контролю о том, что вид меняется, а главнй контроллер отправляет запрос в другой вид или в другую модель, о которой не знает вид отправитель. Тоесть в вашем случае получится , что перс - отдельный вид, с ним можно работает отдельно, но благодаря свзяи общего контроллера, на него могут воздействовать любые другие объекты, точно так же как и он сам, при этом не зная их напрямую.

чтобы все работало как вы хотите.
__________________
Марк Tween

Старый 08.05.2012, 00:19
KirillKobyzev вне форума Посмотреть профиль Отправить личное сообщение для KirillKobyzev Найти все сообщения от KirillKobyzev
  № 3  
Ответить с цитированием
KirillKobyzev

Регистрация: Apr 2012
Адрес: Санкт-Петербург
Сообщений: 12
2 in4core
Есть такой контроллер,да, но я не понимаю, что передавать в Контроллер плоскости.. Сам объект? координаты постоянно передавать?
в контроллере плоскости, к примеру, есть проверка объектов при перетаскивание. Там создаётся битмапка и отрисовываются все объект, после чего по цвету проверяется, мне придётся к примеру отсылать запрос в плоскость на проверку битмапы и т д. мб расширить вьюху Персонажа от плоскости? а контроллер и модель от базовых.
Или вытаскивать проверку на битмапы отдельно...

мне кажется, что сейчас момент когда я понимаю, что всё через жопу и нужно всё переделывать, потому что я заранее об этом не побеспокоился..

или же пихаться всё в mvc плоскости

Добавлено через 8 минут
Цитата:
Тоесть в вашем случае получится , что перс - отдельный вид, с ним можно работает отдельно, но благодаря свзяи общего контроллера, на него могут воздействовать любые другие объекты, точно так же как и он сам, при этом не зная их напрямую.
как же мне с ним работать если он будет в "MVC" плоскости, так как его туда обязательно нужно добавить, иначе он не будет отображаться в общей картине, к примеру если я подвину плоскость он останется на месте..


Последний раз редактировалось KirillKobyzev; 08.05.2012 в 00:23.
Старый 08.05.2012, 00:28
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 4  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Ну расширятся от... это тоже какое то новшество* в вашем случае. У меня ни один контроллер или модель не расширяется ни от чего, хотя знаю есть ситуации когда это требуется для компактности.
Мне кажется вам надо абстрогироваться от понятия *контроллер плоскости* и разбить приложение на более БОЛЬШИЕ но осмысленные куски. Типа *главный контроллер* , *контроллер перса* , *контроллер самой игры, опять же глобальный* ну и т.п. Хотя может это и не лучшее решение в вашем случае. 500+ строк кода - это нормально, да хоть 1500+ если оно того заслуживает.
Далее
Цитата:
Есть такой контроллер,да, но я не понимаю, что передавать в Контроллер плоскости..
А , что туда обязательно что то передавать ? Если вы сами не знаете, что туда передавать, то может и не нужен там вообще контроллер , а достаточно вью?

Цитата:
Там создаётся битмапка и отрисовываются все объект, после чего по цвету проверяется, мне придётся к примеру отсылать запрос в плоскость на проверку битмапы и т д.
Собственно логику можно перенести и в модель, что скорее будет удобнее.
Ну отсылайте запрос на проверку и что в этом плохого?
Пока что все сумбурно, сложно как то сооринтировться в вашей проблеме
__________________
Марк Tween

Старый 09.05.2012, 01:39
Vishapakahr вне форума Посмотреть профиль Отправить личное сообщение для Vishapakahr Найти все сообщения от Vishapakahr
  № 5  
Ответить с цитированием
Vishapakahr

Регистрация: Apr 2009
Адрес: Armenia , Yerevan
Сообщений: 145
Советую Изучить Robotlegs и на нем постаратся строить приложение. Если будет сложно тагда puremvc лехче его попробуйте.
__________________
Urartu is a neoHittite and ProtoArmenian kingdom !!

Создать новую тему Ответ Часовой пояс GMT +4, время: 19:43.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 19:43.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.