Фишка, основанная на блоках. Приведу пример.
Например мне нужен класс, в котором будет содержаться массив 10x10 из произвольных Int-ов в диапазоне 0...9. И мне всё равно как он устроен внутри. Никаких лишних функций вроде Array10x10.setup() вызывать я не хочу. Я делаю так:
За вставку внешнего ресурса отвечает swfmill.
ШАГ 1
Копируете файл изображения в папку вашего haXe-проекта. Файл появится в меню Project. Щёлкаете правой кнопкой и выбираете Add To Library.
ШАГ 2
Щёлкаете правой кнопкой и выбираете Options....
Убираете галочку Auto-generate ID for movieAttach() и вписываете в соответствующее поле удобное вам название класса/картинки. Если картинка находится в папке, то вы должны указать полный путь до нее folder.subfolder.image.png .
Ставите галочку Embed as a Bitmap instead of Clip.
Предположим нам необходимо различное поведение функции в зависимости от типа получаемого аргумента. Реализуется несколькими способоми. 1ый кажется самый простой для восприятия, а возможно и самый быстрый.
Портируя одну библиотеку с AS3 на haXe, пришел к выводу, что в последнем вместо класса flash.utils.Dictionary стоит использовать flash.utils.TypedDictionary, в первую очередь из-за того, что в haXe только типизированный словарь реализует Iterator, т.е. его элементы можно перебрать в цикле типа for (i in dict).
1) Вот тут нашел ссылку на библиотеку http://lib.haxe.org/p/raphaelExtern.
2) Установил haxelib install raphaelExtern
3) Cоздал haxe->js проект
4) Подключил библиотеку к проекту. Project/Properties/Compliler Options/Libraries/ добавил raphaelExtern
5) Написал код: (См. "How to use it" http://raphaeljs.com/ )
Коротко о главном: Поглядеть видео-туториал использования Pepervision3D на haXe.
Я глубоко убеждён, что константные типы недооцениваются разработчиками компиляторов и, как итог, разработчиками. Константы должны задавать не просто "неизменяемые" данные с удобным доступом, но и участвовать в прекомпиляции (условной компиляции).
Введение
В настоящее время, я работаю над проектом, одним из основных инструментов, в котором является язык haxe. В качестве среды разработки для haxe, в данном проекте, я использую FlashDevelop. В течение дня, проект собирается множество раз, и надо точно знать, какая сборка, сейчас, выложена в общий доступ. Для этого необходимо нумеровать сборки. Так как, ни в haxe, ни во FlashDevelop стандартного средства генерации номера сборки найдено не было, предлагаю для решения этой задачи, провернуть определённый трюк.
Трюк
Эксперимента ради я решил написать на haXe свой сайт http://team.elmortem.ru
Когда структура сайта продумана и пора приступать к реализации, первое, с чего стоит начать - База Данных. Традиционно для PHP используется MySQL, т.к. найти хостинг с этой базой данных проще всего. В haXe/PHP для работы с базами есть пакет php.db.*. Для своего удобства я написал простенький класс-обвёртку.
Последнее время я много работаю с haXe, поэтому решил попробовать писать о своём опыте где-нибудь. Например тут. Буду писать о самом haXe, о разработке на нём игр, об опыте портирования оных на iPhone, про портирование различных as3-библиотек на haXe, про опыт разработки сайта и о прочем разном.
Но это чуть попозже, а это просто пост знакомства. Так что всем привет и приятно познакомится. Будем с вами дружить. (:
Как я писал ранее, теперь haxe можно компилировать в c++ программы. Однако в интернете я нашел только один источник, касающийся связки haxe и c++ (http://blog.touchmypixel.com/2009/04/our-possible-haxe-c-plans/). Причем данный материал на английском языке и несколько устарел, т.к. ориентирован на версии haxe 2.03 и hxcpp 0.4. На момент же написания данного поста мы имеем haxe 2.04 (уже со встроенной поддержкой с++) и hxcpp 1.0.5, и взаимодействуют они уже немного по-другому.
Мне пришлось немного понервничать, устанавливая все это добро, поэтому я и решил поделится опытом. Приступаем к установке...
26 июля вышел haXe 2.04. Основное нововведение - поддержка с++ (спасибо стараниям Хью Сандерсона http://gamehaxe.com/).
Основным преимуществом программ на с++ является высокая производительность. Плюс мы еще на шаг ближе к флэш-играм на iPhone http://gamehaxe.com/2009/07/28/haxe-iphone-cpp-at-last/.
Что необходимо для того, чтобы начать работать с новой платформой, можно почитать здесь http://blog.touchmypixel.com/2009/04/our-possible-haxe-c-plans/ (на английском).
http://ncannasse.fr/blog/haxe_2.04 - здесь создатель языка haXe показывает классический пример "Hello world" для с++.
Тем кто пишет или собирается писать Flash игры на haXe может пригодиться небольшое руководство по использованию MochiAds в haXe, автор которого - Viktor Hesselbom. Описание того, как из MochiAds API для as3 сделать исходники для haXe, я позволил себе перевести для тех, кому это может понадобиться:
Сделали систему наблюдения за животными «К С И Н О». Интерфейс пользователя сделан на haXe.
Жду комментарии.
Нашел один интиресный баг в haxe
main.hx: