Как убрать эту ошибку с помощью HaxePunk в FlashDevelop?

Я пытался исследовать это и использовать готовые шаблоны, но безрезультатно. Я просто хочу получить настоящий базовый проект HaxePunk, работающий с FlashDevelop, с учетом создания Flash-игр. Возвращаясь к реальным базовым учебникам и тому подобному, это мой код:

import com.haxepunk.Engine;
import com.haxepunk.HXP;

class Main extends Engine
{

    /*override public function init()
    {
#if debug
        HXP.console.enable();
#end
        //HXP.scene = new MainScene();
    }*/

    public static function main() { new Main(); }

}

Я не уверен, компилировать ли это как проект Flash Player или проект NME (я действительно новичок в этом). Если я попытаюсь скомпилировать его как проект Flash Player, я получаю эту ошибку во время выполнения:

TypeError: Error #2007: Parameter type must be non-null.
    at flash.events::EventDispatcher/addEventListener()
    at flash.display::Stage/addEventListener()
    at com.haxepunk.utils::Input$/enable()
    at com.haxepunk::Engine/onStage()
    at com.haxepunk::Engine()
    at Main()
    at Main$/main()
    at boot_0b9a/init()
    at flash::Boot/start()
    at boot_0b9a()

Если я попытаюсь скомпилировать его как проект NME, я получаю эту ошибку во время компиляции:

Error: You must have a "project.xml" file or specify another valid project file
when using the 'build' command

Я не нахожу много информации об этом. Что тут может быть не так? Спасибо.


person Panzercrisis    schedule 15.01.2014    source источник


Ответы (1)


Вы должны сделать проект OpenFL, а не flash, потому что HaxePunk использует OpenFL для рендеринга.

Чтобы заставить flashdevelop работать с проектом HaxePunk, я обычно делаю следующее:

  1. Создайте новый пустой проект openfl в FlashDevelop.
  2. Создайте проект haxepunk в командной строке (это должно быть «новое имя haxepunk»)
  3. Подставляем файлы из проекта haxepunk в проект flashdevelop
  4. «Исправить то, что не так»

Номер 4 обычно связан с переименованием файлов, iirc в файлах проекта haxepunk имеет другое имя, чем в файле flashdevelop, поэтому вам придется его изменить.

person npretto    schedule 15.01.2014