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

Вернуться   Форум Flasher.ru > Блоги

Аватар для BlooDHounD
стервочка (я мужик)
Рейтинг: 5.00. Голосов: 2.

Идиотизмы: не ByteArray а мусорка

Запись от BlooDHounD размещена 29.06.2010 в 02:07
Обновил(-а) BlooDHounD 02.07.2010 в 05:06
для понимания материала необходимы следующие знания:
flash.utils.ByteArray


сижу я, значит, пишу обновлении для своей крипто-библиотеки, и случайно вывожу на экран 2 результата от 2 запусков PNGEncoder.
первый вариант 100% совпадает с оригиналом, а второй был слегка искажён. я сперва не сообразил, что произошло, а потом пришёл в состояние шока. решил добавить ещё парочку результатов, и получил, ещё более искажённые результаты.

Название: Безымянный.jpg
Просмотров: 11955

Размер: 28.7 Кб
...
Старый
 
Размещено в bug , ByteArray , avm , идиотизм , ActionScript
Комментарии 31 BlooDHounD вне форума
Аватар для dimarik
.

Native dispatching

Запись от dimarik размещена 27.06.2010 в 23:32
Обновил(-а) dimarik 27.06.2010 в 23:36
Чтобы не забыть.

Нам нужно бабблить событие.

Кастомный вызов dispatchEvent отличается от системного бабблинга. Давайте вызовем распространение события системным способом. Предлагаю из серии InteractiveObject#tabIndex.

Будет, вероятно, шустрее. [Проверить тестами]
Старый
 
Размещено в Без категории
Комментарии 4 dimarik вне форума
Аватар для BlooDHounD
стервочка (я мужик)

Скрытый потенциал Error

Запись от BlooDHounD размещена 27.06.2010 в 20:26
Обновил(-а) BlooDHounD 28.06.2010 в 11:50
у класса Error недавно повилось 2 недокументированных метода:
Код AS3:
public static function getErrorMessage(index:int):String;
public static function throwError(type:Class, index:int, ...parameters):*;
первый возвращает локализованный текст нативной ошибки, а второй выкидывает исключение по коду ошибки с вбитым текстом.
некоторым ошибкам можно передать параметры для замены в тексте. для этого throwError принимает неограниченное количество параметров.

пример:
Код AS3:
Error.throwError(
...
Старый
 
Размещено в ActionScript
Комментарии 6 BlooDHounD вне форума

Сегодня я свалил флеш плеер...

Запись от chabapok размещена 25.06.2010 в 01:26
При помощи AS3 можно свалить флешплеер. Фаерфокс вылетает полностью, и дебаг флеш плеер, и обычный. Я даже обновился до 10.1 ветки - все падает. Проекторы тоже вылетают.

Падает не стабильно, иногда работает иногда нет.

В моей флешке используется движок away3dlite, 3-д тела скомпилены в отдельные swf при помощи hxswfml. В каждой такой swf лежит два класса - bytearray унаследованный от 3ds тела, и jpg с текстурой.

собственно, типичный загружаемый объект ...
Старый
 
Размещено в Без категории
Комментарии 6 chabapok вне форума
Аватар для dimarik
.

Loader vs FP security. Мат в два хода.

Запись от dimarik размещена 24.06.2010 в 12:38
Обновил(-а) dimarik 05.04.2011 в 23:35
Сделать хотел утюг, -
Слон получился вдруг


Из популярной песенки.

Немного соглашения о терминах.

Host application - загрузчик, недоступен для модифицирования.
Loadee - загружаемое приложение, которое полностью контролируется разработчиком, т.е. нами.
Весь представленный ниже код находится в loadee.

Пусть вас не смущает желтоватое название статьи - описанный ниже прием решается ровно в два хода.

Предыстория. ...
Старый
 
Размещено в Без категории
Комментарии 13 dimarik вне форума
Аватар для dimarik
.
Рейтинг: 4.82. Голосов: 11.

Loader vs FP security.

Запись от dimarik размещена 23.06.2010 в 14:00
Обновил(-а) dimarik 12.10.2012 в 00:29
Если нельзя, но очень хочется, то можно. Крылатая фраза.

Иногда возникает желание загрузить в приложение изображение с чужого сайта. Казалось бы, нет проблем. new Loader() и вперед!
И ведь загрузит. Однако при попытке обратиться к свойству content или скопировать пиксели методом BitmapData#draw() для реализации, например, DragManager, нас может ожидать разочарование. На чужом сайте просто забыли создать для вас файл политик crossdomain.xml или таковой существует, но отсутствует ...
Старый
 
Размещено в Без категории
Комментарии 22 dimarik вне форума
Аватар для dimarik
.

Loader можно использовать повторно

Запись от dimarik размещена 22.06.2010 в 01:16
Обновил(-а) dimarik 22.06.2010 в 01:39
А все ли знают, что единожды инстанцированный экземпляр класса Loader можно использовать повторно сколь угодно раз для скачивания очередной картинки или флеш-ролика? Теперь знаете. Его можно использовать для загрузки сколь угодно многих SWF. И я не оговорился. Те картинки, что в форматах JPG, PNG, GIF преобразуются нашим умным флеш-плеером именно в формат SWF. Но это отдельная история о 85-ом теге и я, может быть, немного расскажу о ней. В другой раз.

А сейчас нас интересует повторное ...
Старый
 
Размещено в Без категории
Комментарии 38 dimarik вне форума
listener

Расширение проектора: Продолжение 6. Работа с файлами.

Запись от alexcon314 размещена 21.06.2010 в 17:37
Переделал свои старые АС2 - примеры (окно выбора папки и окно выбора файлов) из под цинка на свой движок.
Добавил фичу - загрузку системных иконок, ассоциированных с типами файлов и запуск/открытие файлов.
Что касается АС3, написал простенький файл-менеджер "а-ля тотал-коммандер". Было интересно посмотреть. как мой двиг впишется в какой-нибудь сторонний фреймворк. В качестве такового выбрал ASwing A3 1.5.

ссылки на архивы с примерами
http://mdm-zinc.narod.ru/pub/files.zip ...
Старый
 
Размещено в Без категории
Комментарии 3 alexcon314 вне форума
Аватар для HotIceCream

radio ultra

Запись от HotIceCream размещена 21.06.2010 в 00:21
Некоторое время назад слушал онлайн радио через AIMP, сегодня захотел сделать свое приложение для прослушивания этого радио. Звук нормально воспроизводится, захотел что бы отображалось название текущего трека (в AIMP прекрасно помню - отображалось) - попробовал через id3 - итог null. Решения придумать ни как не мог, уже хотел сюда на форум писать, но решил зайти на форум самого радио. Первая же тема, которую я увидел:

Где плейлист (опубликована 19.06)
Цитата:
-Подскажите, пожалуйста,
...
Старый
 
Размещено в Без категории
Комментарии 3 HotIceCream вне форума
Аватар для BlooDHounD
стервочка (я мужик)

Идиотизмы: с чем готовить haXe для флэш-гурмана?

Запись от BlooDHounD размещена 15.06.2010 в 05:03
Обновил(-а) BlooDHounD 15.06.2010 в 09:59
для понимания материала необходимы следующие знания:
haXe


haXe по свей идеологии остался на уровне AS2. хотя он и умеет компилировать в AVM2-байткод, до AS3 ему ещё очень далеко:
  • отсутствие namespace'ов
  • отсутствие internal в каком либо виде
  • отсутствие private как сущности: всё является protected
  • отсутствие констант
кроме недостатков самого языка есть более важные минусы:
  • после компиляции напрочь исчезают private и становятся public
  • отсутвие нативных getter/seeter
...
Старый
  Комментарии 4 BlooDHounD вне форума
Аватар для BlooDHounD
стервочка (я мужик)
Рейтинг: 5.00. Голосов: 8.

Тяжёлые алгоритмы на стероидах (MD5, Base64, CRC32, JPEG, PNG)

Запись от BlooDHounD размещена 11.06.2010 в 19:51
Обновил(-а) BlooDHounD 11.04.2016 в 22:18 (поменял вложения)
Реализовал парочку алгоритмов на замену аналогам из as3corelib:
  • MD5
  • Base64
  • JPEG
  • PNG
результаты бенчмарка на моей машине:
Код:
by.blooddy.crypto.MD5.hashBytes: 40
com.adobe.crypto.MD5.hashBytes:  4483

by.blooddy.crypto.Base64.encode: 115
mx.utils.Base64Encoder:          1635

by.blooddy.crypto.Base64.decode: 141
mx.utils.Base64Decoder:          2762

by.blooddy.crypto.image.JPEGEncoder.encode: 447
com.adobe.images.JPGEncoder:
...
Старый
 
Размещено в ActionScript , compiler , haXe
Комментарии 63 BlooDHounD вне форума
Аватар для Котяра
буду краток
Рейтинг: 3.80. Голосов: 5.

Jamendo - музыка для ваших проектов

Запись от Котяра размещена 08.06.2010 в 10:47
Обновил(-а) Котяра 23.11.2010 в 14:37
Совсем недавно открыл для себя великолепный портал jamendo.com
Кроме, собственно, огромного количества великолепной незаезженной музыки для прослушивания, многие композиции можно использовать в коммерческих проектах по лицензии CC (by) совершенно бесплатно, а если лицензия типа CC( by-nc), то можно купить права прям на портале с оформлением всех бумаг за смешные деньги 80-500$ (зависит от проекта и разработчика)
Я спокойно использовал музыку для проектов ориентированных на западный ...
Старый
 
Размещено в игродел
Комментарии 3 Котяра вне форума
Аватар для BlooDHounD
стервочка (я мужик)

Идиотизмы: с миру по нотке

Запись от BlooDHounD размещена 08.06.2010 в 02:39
Обновил(-а) iNils 08.06.2010 в 02:45
не секрет, что в AS есть различные недокументированные багафичи.

например у класса Object есть такие вот методы:
Код AS3:
protected static function _dontEnumPrototype(proto:Object):void;
protected static function _setPropertyIsEnumerable(o:*, V:String, enumerable:Boolean):void;
static function init():*;
а как обнаружил недавно Дениска ( etcs.ru ), если, попытаться объявить метод $construct у наследников DisplayObject, то получим следующие ошибки:
Код:
1021: Повторное определение функции.
...
Старый
  Комментарии 16 BlooDHounD вне форума
Аватар для BlooDHounD
стервочка (я мужик)

Идиотизмы: Metadata у Stage

Запись от BlooDHounD размещена 08.06.2010 в 02:09
Обновил(-а) iNils 09.06.2010 в 13:26
для понимания материала необходимы следующие знания:
Metadata
flash.utils.describeType


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

в AS есть зарезервированный метатэг [Exclude], который скрывает указанную сущность в инспекторе билдера, и иногда в подсказках к коду. тэг должен применяться к классу. множество примеров можно обнаружить во Flex-фрэймворке. но этот метатэг применим не только для флекса, но и к обычным pure-as3 проектам.
...
Старый
 
Размещено в идиотизм , ActionScript , bug , xml
Комментарии 0 BlooDHounD вне форума
Аватар для BlooDHounD
стервочка (я мужик)

Идиотизмы: мнемоники в XML

Запись от BlooDHounD размещена 08.06.2010 в 01:45
Обновил(-а) BlooDHounD 02.07.2010 в 05:07
для понимания материала необходимы следующие знания:
XML
Мнемоники


все знают, что у нас XML неправильный?
Код AS3:
var node:XML = <node />;
node.appendChild( '<>&"' );
node.@prop = '<>&"';
в результате в теле не будет заменена " ( кавычка ), а в атрибуте как есть останется >.
на такое поведение ругнётся практически любой валидатор. почему спец символы не всегда заменяются на мнемоники, для меня загадка...
главный ...
Старый
 
Размещено в bug , xml , avm , идиотизм , ActionScript
Комментарии 0 BlooDHounD вне форума
Аватар для BlooDHounD
стервочка (я мужик)

Идиотизмы: brackets vs dot

Запись от BlooDHounD размещена 08.06.2010 в 01:05
Обновил(-а) BlooDHounD 02.07.2010 в 05:07 (криво назвал)
как-то давно я просматривал исходники флекса и не врубался почему они используют [ ] ( brackets ) для доступа к свойствам ко многим объектами. хотя сама адоба вроде как рекомендует юзать . ( dot ). так вот недавно я ощутил на себе парадокс ситуации.
понадобилось мне написать такой вот код:
Код AS3:
var LoaderConfig:Class = ApplicationDomain.currentDomain.getDefinition( 'mx.messaging.config::LoaderConfig' ) as Class;
var parameters:Object = ( LoaderConfig ? LoaderConfig.parameters : null );
удивиться ...
Старый
 
Размещено в идиотизм , ActionScript , bug , compiler , avm
Комментарии 0 BlooDHounD вне форума
Аватар для BlooDHounD
стервочка (я мужик)
Рейтинг: 5.00. Голосов: 2.

Идиотизмы: множественный addedToStage.

Запись от BlooDHounD размещена 07.06.2010 в 20:58
для понимания материала необходимы следующие знания:
flash.display.DisplayObject


множественный addedToStage... Вы думаете, что addedToStage срабатывает единожды? как бы не так!
давайте составим цепочку, в которой где в хэдлере на addedToStage будем создавать спрайт и ложить в только что добавленный спрайт (target).
Код AS3:
package {
 
    import flash.display.Sprite;
    import flash.events.Event;
 
    public class test extends Sprite {
...
Старый
 
Размещено в ActionScript , bug , display , идиотизм
Комментарии 7 BlooDHounD вне форума
Аватар для BlooDHounD
стервочка (я мужик)
Рейтинг: 5.00. Голосов: 2.

Идиотизмы: кто мой папа?

Запись от BlooDHounD размещена 07.06.2010 в 20:36
для понимания материала необходимы следующие знания:
flash.text.TextField
flash.display.SimpleButton


вспомни цепочку наследования класса TextField:
TextField ► InteractiveObject ► DisplayObject ► EventDispatcher ► Object

так вот это враньё.
на самом деле там пропущен DisplayObjectContainer.

рассмотрим на примере:
Код AS3:
package { 
 
    import flash.display.Sprite;
    import flash.events.Event;
    import
...
Старый
  Комментарии 1 BlooDHounD вне форума
Аватар для BlooDHounD
стервочка (я мужик)

Идиотизмы: загрузка данных.

Запись от BlooDHounD размещена 07.06.2010 в 19:26
Обновил(-а) BlooDHounD 08.06.2010 в 01:10 (table)
для понимания материала необходимы следующие знания:
flash.display.Loader
flash.media.Sound
flash.net.URLLoader
flash.net.URLStream
flash.net.FileReference


все обязательно писали прелоадеры для различных этапов работы приложения. никто не обращал внимания на предоставленные интерфейсы для загрузки контента?
задача, делать прелоадер, который может отображать процесс загрузки любого ресурса. а таких у нас имеется аж 5:
  1. Loader
  2. Sound
  3. URLLoader
...
Старый
  Комментарии 10 BlooDHounD вне форума
Аватар для dimarik
.

Скорость чтения динамического свойства объекта.

Запись от dimarik размещена 07.06.2010 в 17:57
Чтобы не забыть.

Код AS3:
var testObject:Object = new Object();
testObject.property = "property_value";
const prop:String = "property";
Вот результат в порядке возрастания времени доступа на 40 млн итерациях, в мсек:

Код AS3:
"property" in testObject; // 7222
 
prop in testObject; // 7270
 
testObject.property; // 7585
 
testObject[prop]; // 8077
 
testObject["property"];
...
Старый
 
Размещено в Без категории
Комментарии 5 dimarik вне форума
Аватар для BlooDHounD
стервочка (я мужик)

Идиотизмы: как лишить родительских прав?

Запись от BlooDHounD размещена 07.06.2010 в 17:27
Обновил(-а) BlooDHounD 07.06.2010 в 18:11 (безграмотность)
для понимания материала необходимы следующие знания:
flash.display.DisplayObjectContainer


допустим у нас есть 2 объекта:
Код AS3:
var container:DisplayObjectConteiner
var child:DisplayObject;
известно, что child находится в container. у container переопределены методы удаления, или вовсе отсутствуют ( removeChild и т.д. ).
но нам, злым юристам, очень хочется забрать ребёнка у отца!

нет ничего проще:
Код AS3:
var s:Sprite = new Sprite();
s.addChild( child );
...
Старый
 
Размещено в display , идиотизм , ActionScript
Комментарии 1 BlooDHounD вне форума
Аватар для BlooDHounD
стервочка (я мужик)
Рейтинг: 5.00. Голосов: 3.

Идиотизмы: Sound

Запись от BlooDHounD размещена 07.06.2010 в 17:01
Обновил(-а) BlooDHounD 07.06.2010 в 17:12
для понимания материала необходимы следующие знания:
flash.media.Sound
!true не всегда false


допустим есть класс SSS ( не спрашивайте, почему он такой ):
Код AS3:
package {
 
    import flash.media.Sound;
    import flash.media.SoundLoaderContext;
    import flash.net.URLRequest;
 
    public class SSS extends Sound {
 
        public function SSS() {
            super();
        }
 
        public
...
Старый
 
Размещено в идиотизм , ActionScript , bug , compiler , sound
Комментарии 3 BlooDHounD вне форума

 


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


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