![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Nov 2010
Сообщений: 7
|
Доброго времени суток! Облазил интернет, форум и так далее, но не смог найти решения. Люди помогите пожалуйста реализовать один момент в моей разработке.
Делаю простенькую игру, и не могу понять как создать логику вот в чем: у меня есть мувиклип hero - в нем 4 кадра с разными состояниями героя. у героя в настройках указал класс: MyHero Так же у меня есть меч, у него класс: Sword и кнопка с изображением меча: swordButton Не могу понять как можно добавить оружие в руки персонажу. Другими словами, нажимая на кнопку оружия, как сделать так, чтобы меч оказался в руках у героя. Думаю есть 2 варианта, но не могу реализовать их почему-то: 1. Изначально добавить оружие в руки герою и сделать alpha = 0 и при нажатии на кнопку увеличивать альфу 2. Сделать чтобы оружие добавлялось в руки к герою через addChild(), только как реализовать. Прошу помогите, хотя бы логику понять. Заранее благодарен за ответы! |
|
|||||
|
Цитата:
![]() Есть еще третий вариант - изначально нарисовать героя с мечем и без меча. И когда брать меч - просто менять картинку, но этот вариант подойдет только если у вас на всю игру будет 1-3 меча, а то рисовать запаритесь. Так же можно для меча сделать пустой мувиклип, но чтоб с именем был. и добавлять меч в него. что-то типа: myHero.swordHolder.addChild(); ну а swordHolder - разместить в руке уже как положено, кроме того в него потом можно будет много чего полезного пихать, посох там какой-то, цветы для бабы мечты.
__________________
Кто к нам с чем для чего - тот у нас того от того. |
|
|||||
|
Регистрация: Nov 2010
Сообщений: 7
|
Ооо, спасибо за такой быстрый ответ. Сделать контейнер для меча и туда заливать. только вот у меня проблема я не могу взаимодействовать из своего главного класса с уже созданными во флеше мувиклипами, то есть:
Если дать им instance name, то Flash Builder просто не видит их. А если дать контейнеру класс для взаимодействия, то как я его вставлю в руку? Если можно немного проясните. Заранее спасибо |
|
|||||
|
"Не видит" и "не может взаимодествовать" - это разные вещи. То что не видит - да, а взаимодействует нормально.
Если стремно через точку то можно юзать myHero.getChildByName("swordHolder").addChild(); С проверками соответственно нашли такой чилд по имени или не нашли.
__________________
Кто к нам с чем для чего - тот у нас того от того. |
|
|||||
|
Без разницы, любой вариант пойдет.
1.вариант проще, делай его. Если, нужно разное оружие, тогда создай клип (оружие) в кадрах размести разное оружие и в зависимости от выбора оружия, переключай кадры.
__________________
Книги и желание лучшие учителя. |
|
|||||
|
Регистрация: Nov 2010
Сообщений: 7
|
Всем спасибо за ответы. Сейчас попробую
Добавлено через 13 минут Блин. все равно не получается от чего-то. Может я что-то не правильно делаю? я делаю так: private var hero = new MyHero(); private var sword:Sword = new Sword(); private var swordButton:SwordButton = new SwordButton(); public function testGame() { addChild(swordButton); swordButton.addEventListener(MouseEvent.CLICK, clicked); addChild(hero); hero.x = 400; hero.y = 200; hero.gotoAndStop('stop'); //Заставляю героя находиться в состоянии стоп } private function clicked(e:MouseEvent):void { hero.swordHolder.addChild(Sword); } то не могу из класса взаимодействовать с ним. как быть? Последний раз редактировалось royality; 10.06.2011 в 11:15. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Цитата:
__________________
Reality.getBounds(this); |
|
|||||
|
ну а ошибки какие?
Вроде всё ок, при условии что у MyHero есть внутри мувик с инстансНеймом swordHolder Добавлено через 38 секунд Да, втыкнул.
__________________
Кто к нам с чем для чего - тот у нас того от того. |
|
|||||
|
Регистрация: Nov 2010
Сообщений: 7
|
Цитата:
Добавлено через 1 минуту А если swordHolder находится в мувиклипе рука, который не обозначен как класс но является составной частью MyHero? то как быть? |
![]() |
![]() |
Часовой пояс GMT +4, время: 01:35. |
|
|
« Предыдущая тема | Следующая тема » |
| Теги |
| инвентарь , РПГ |
|
|