Вот сейчас установил, и что-то я не могу понять. Получается, что нельзя писать код под флеш платформу, а собрать в JS?
Допустим я хочу использовать flash.display.Sprite чтобы создать простой спрайт с заливкой, но чтобы он отображался прямо в браузере, без флеш плеера.
Если я ставлю платформу JavaScript, то не могу использовать флешевские классы. А если ставлю платформу Flash Player, то прога запустится через флеш плеер.
В чем подвох? Получается, что все равно нужно учить новый API для каждой платформы?
Где-то на форуме хекса откопал, что есть jeash, но при попытке установить как там написано, получаю в командной строке Error: No such project. Видимо инфа устаревшая
Разобрался. Короче haxe.org катострофически не хватает систематизации информации. old.haxe.org вообще нужно было давно закрыть и удалить. Поисковик ведет в основном туда, но практически ничего оттуда в новых версиях уже не работает.
В общем, чтобы запилить html5 проект в haxe но использовать при этом привычный flash api нужно:
1) (Опционально) Установить HaxeDevelop или FlashDevelop (если у кого-то вдруг нет)
2) Установить haxelib
3) После установки haxelib запускаем командную строку и пишем
haxelib install openfl
(ждем)
дальше
haxelib install nme
(ждем)
дальше
haxelib install actuate
ждем
4) Открываем HaxeDevelop / FlashDevelop и создаем проект OpenFL.
По умолчанию он уже импортирует все что нужно для запуска.
После чего используем вместо слова flash в названиях пакетов openfl, и пишем привычный код
Собственно, вот код тестового файла

Код AS3:
package;
import openfl.display.Sprite;
import openfl.Lib;
class Main extends Sprite {
public function new() {
super();
var sprite:Sprite = new Sprite();
sprite.graphics.beginFill(0xFFFF00);
sprite.graphics.drawCircle(0, 0, 20);
sprite.graphics.endFill();
sprite.x = 200;
sprite.y = 200;
addChild(sprite);
// Assets:
// openfl.Assets.getBitmapData("img/assetname.jpg");
}
}
Который выдаст в браузере вот это