![]() |
Гм, я, кажется, по-русски написал, что и куда :D
|
просто не совсем понял каких именно компонентов CS3 в какую либу?
Для меня понятие либа - (от англ слова library - библиотека) больше направляет на то, что вызывается внутри редактора сочетанием Ctrl+L. Но тут, я так понимаю имеются в виду *.as файлы, лежащие в какой-то папке, которые нужно скопировать куда-то. Вот я и хочу уточнить что и куда. А что касается сочетания "компоненты CS3" так тут вообще можно подразумевать что угодно :(. Это ж пост "Action Script 3 с нуля" тут не всем привычны и понятны такие "страшные слова" =). И я не исключение. Уж простите. |
Нет, имеется ввиду именно библиотека Flash CS3-документа. А компоненты — это то, что открывается по Ctrl+F7 (Cmd+F7 на маке).
|
ясно - спасибо. Это кстати ответило на мой вопрос почему у меня в кое-каком месте сработал focus, я ещё подумал глюк какой.
|
есть событие MouseEvent.MOUSE_WHEEL которое позволяет отследить кручение колёсика мышки. А как отследить клик колёсика? Если такое вообще реально?
|
Это CLICK или MOUSE_DOWN.
|
__etc ты когда нить спишь? =)
Не, ни CLICK ни MOUSE_DOWN не помогли - они срабатывают только при обычном клике левой клавиши мыши. Ну или я что то упустил. |
Попробуй KEY_DOWN тогда. Теоретически это отловить можно, например, в том же AS1/AS2 можно.
|
да как раз про это читал.... в этом топике
делаю просто Код:
...точнее сказать почти редко какие вообще срабатывают. Я думаю это уже где то было подобное. Что я упустил? |
Наверное только то, что лучше тестировать не в IDE, а просто в плеере.
|
Цитата:
а то без него с трейсом полный облом. в общем клавиши заработали а вот мышку пока так и не поймал :o хотя по логике должно было вернуть код клавиш что то типа 1, 2, 4 |
В IDE надо отключать Keyboard Shortcuts.
|
как я понял для ловли мыши требуется недокументированная возможность ASnative, как её включить в AS3 я так и не понял. Зато понял что даже если и включить - есть вероятность что с выходом 10го плеера она будет неработать.
короче по ходу придётся забить. А жаль! Обычное колесо мало. а возможности юзать мыш по пальцам перечесть Click DoubleClick Ctrl+Click ALT+Click SHIFT+Click Ctrl+Alt+Click (ALT+SHIFT и Ctrl+Shift не хочу рисковать с глюком раскладки клавиатуры) маловато будет =) |
а у меня 3 руки и на каждой по 7 пальцев. я вообще не могу работать на стандартных мышках. мне на заказ делают специальные мышки с 45 кнопками.
совет такой: не стоит пытаться эмуливать кнопки мыши, которых может не быть у всех пользователей. да вообще не забывай про людей, которые вообще не знают зачем им нужна клава. казуальней надо быть. |
Это, сложно представить мышку, у которой нету третьей кнопки. :)
|
да то что есть мышки с 20ю кнопками это понятно - и к тому же для них свои драйвера есть и вообще можно задействовать любое сочетание клавиш... это удобно в играх использовать когда порой даже всей клавиатуры не хватает....
что касается моей проблемы - хочу игру создать, как правило в современных играх написанных на языках высокого уровня помимо клавиатуры используют мыш с двумя а то и тремя кнопками... например уже как то в привычку вошло управлять 3D камерой через левую и правую кнопку мыши. управлять объектами не твойным а одинарным кликом, а свойства смотреть через правую клавишу.. побочные свойства используются клавишами CTRL ALT SHIFT. А во флеше получается кроме левой клавиши то и нет то ничего.. кстати ещё почему плохо задействовать клавиатуру - например стоит задача сделать игру на КПК - а там мягко говоря не удобно будет играть в такую без клавы.... вот и получается что круг возможностей сократился до минимума этак 6 операций с мышью =( и то это неудобно! (надеюсь таки позволят в будущем во флеше использовать правую клавишу мыши) |
Цитата:
|
всё очень просто. чем больше требования к продукту со стороны разработчика, тем меньше у него аудитория.
всегда надо делать альтернатвные элементы управления. клава и все кнопки мышки, кроме левой - всего ли ш добавачный инструмент для хардкорщиков. посмотрите любой интерфейс, разработанный здравомыслящей компанией, обсолютно всё можно сделать при помощи левой кнопки мышки. всё остальное это доп-тулзы. просто не все готовы отказаться от аудиотри, которая не умеет работать многопоточно. кароче. деньги надо научиться считать, прежде чем садиться разрабатывать что-либо. даже в современных 3д шутарах можно настроить всё таким образом что бы управление было только мышкой. даже движение перса. |
шутеры на КПК вообще чит. По сути от шутеров много ненадо - только стрелки вперёд назад влево вправо и левая клавиша. оружие переключать каким нить табом , с альтернативным огнём только сложности будут без правой кнопки мыши то, а если поставить двойной клик сам понимаешь что получится.
а ещё хуже со стратегиями , а ещё хуже с 3D стратегиями =) а вообще хуже всего с 3D MMORPG - где одних скилов штук 20 и оружий 50 ) и как это всё мышкой управлять (у которой только одна левая клавиша? =) |
причём тут КПК? я вообще про разработку приложений.
ты внимательно читал мой пост? главное то, все навароты дополнтельны. я когда играю, я использую почти всю клаву, и только 2 кнопки мыши. среднию, икогда и низачто не настрою для действий. неудобно. нада давать пользователю свободу. а обязывать его использовать больше чем позволяет стилос - неэтично и экономически не выгодно. |
о том и реч. Я говорю что тоже с тобой согласен, что в других приложениях всё гораздо проще и как ты сам говоришь удобно использовать клаву и 2 кнопки мыши. А на счёт КПК я имел ввиду что там так дело не прокатит. Я же не на С++ разрабатываю а на флеше - ведь так? Вот и получается что так же круто как везде - технически не получится круто сделать у себя :(
ладно от темы что то как то ушли =) попробую что нить сделать сначала а потом думать. А пока вопросов не имею - спасибо за советы :) |
я говорю о том что прикручивать кнопки это дело 3е. сперва надо сделать что бы функционировало всё с мышкой/стилосом/точпадом и одной левой кнопкой.
|
Цитата:
В AS3 мувик грузится AVM1 (мувик с AS2 кодом) - RightClickAVM1.swf. RightClickAVM1.swf содержит код на AS2: Код:
//псевдо-кодЦитата:
У меня есть подозрения, что класс Key в AS2 может слушать любые устройства ввода (джойстики). Ведь он слушает все клавиши мыши. Никто не пробовал (джойстики)? //обратите внимание Key.isDown(i) - читает все, а Key.getCode() - возвращает только клавиши клавиатуры (и то не все). |
riden, мегакод, но, как бы, есть нечто получше. Правда, не совсем то, но из этой же оперы.
|
Не, я пишу про правую клавишу мыши и клик колесика в AS3.
Можно вместо этого Код:
for(var i:int=0;i<n;i+=1){Код:
//псевдо-код |
Я имел ввиду, что делать битмап и определять цвет клипа — изврат. Есть же нормальный вариант с LocalConnection и без необходимости загрузки swf извне, я его привел.
|
возник ещё вопрос из ряда "на засыпку".
Допустим мы программно что-то рисуем, создаём класс Sprite или класс унаследованный от него. например this.menuWindow = new MenuWindow(); затем мы добавляем его на сцену addChild(this.menuWindow); Чтобы удалить дисплей объект мы используем removeChild. В этом случае у нас удаляеттся только вид объекта но не сам объект. Это хорошо. Но у нас остался тот же visible=false. Который действует почти так же. Вот и спрашивается в каких случаях лучше использовать removeChild а в каких visible=false, в чём их разница, и что вообще можете посоветовать по этому поводу? |
блин сам подумал и понял одну вещь =]
при removeChild - не будет доступов типа parent. =] но всёравно хотел бы ещё ваши мнения послушать |
Работа с объектом при visible=false остаётся точно такой же. граници родителя считаются с учём клипа и т.д. при visible=false объект остётся дитём парента и учавствует во всех операциях, а так же, если надо постоянно показывать и прятать предмет, лучше использовать visible=false, так как это быстрее.
|
спасибо =)
|
подскажите пожалуйста такой момент.
У меня на главной сцене есть несколько предметов, им даны разные имена. Я гружу XML в котором содержатся эти имена (таким образом нахожу для кода нужные предметы) но бывает либо опечатка редактора либо просто звёзды не так встали и в XML кто то написал название несуществующего предмета. короче возникает ошибка ReferenceError: Error #1069: Property ovoshi3 not found on kitchen and there is no default value. как мне проверить существует ли такой предмет по имени? я делаю это так - но почему то не срабатывает Код:
for each (var item in xml.items.children()) { |
hasOwnProperty
|
спасибо!!! *__*
|
может есть смысл прикрепить эту тему? :rolleyes:
а то я частенько её кидаю своим подаванцам :umnik2: , а искать её всё сложнее :( |
спасибо что прикрепили - реально помогает!:victory:
у меня тут новая трудность - немогу решить. ситуация такова. есть один единственный SWF в котором в библиотеке забиты классы спрайтов (предметов) эти предметы могут быть а могут небыть.. их имена я подгружаю из XML. дальше по этим именам ищю такое свойство в главном классе и создаю объект. но есть пара странностей - уже на первичном классе немогу без глюков определить есть ли класс в библиотеке. вот как я делаю Код:
trace (bread); // выдаёт [class bread] |
Ну правильно выдает false.
Во-первых, ты передаешь не строковое значение в hasOwnProperty. Во-вторых, для того, чтобы определить, есть ли класс, можно использовать loaderInfo.applicationDomain.hasDefinition(). |
а hasOwnProperty - на какие свойства работает? я так понял на классы нет - потому что так тоже не пашет
trace (this.hasOwnProperty('bread')); // выдаёт false Оо спасибо - this.loaderInfo.applicationDomain.hasDefinition('bread') - прикрасно заработал. а ещё я вспомнил метод молотка и мата на любой случай жизни ) это обычный try =)) вот ещё вопрос - могу ли я как нибудь из конструктора любого класса или подкласса - получить свойства основного класса или главного Stage, без переносса ссылок ? т.е. мне например хочется узнать из под-под-под.... класса Stage.stageWidth для ресайза... или добавить общий клик. можно ли как то обойти перенос ссылок с помощью переменных? |
Естесственно, у this нет свойства bread.
Остальное не понял. |
есть основной класс
Код:
package KitchenClasses { |
У класса Stage нет статического свойства stageWidth.
|
| Часовой пояс GMT +4, время: 04:44. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.