Использование звуковых активов в Haxe
У меня проблемы с воспроизведением звуковых активов в Haxe. Я могу импортировать mp3 с swfmill
без ошибок:
<?xml version="1.0" encoding="utf-8" ?>
<movie width="100" height="100">
<frame>
<library>
... other resources ...
<sound id="Shoot" import="shoot.mp3"/>
</library>
</frame>
</movie>
В моем Main.hx
Я создал класс под названием Shoot
который расширяется Movieclip
так же, как я использовал для моего .png
Ресурсы. Затем я использую этот класс следующим образом:
var sound:MovieClip = new Shoot();
stage.addChild(sound);
sound.play();
Но во время выполнения, когда этот код выполняется, я получаю ошибку
"Error #2136: The SWF File <project swf> contains invalid data".
Есть какие-то очевидные ошибки, которые я делаю в своем SWF XML-файле или хак-коде? Как я могу отладить эту ошибку дальше?
1 ответ
Мне наконец удалось воспроизвести звуки из библиотеки, объявив их звуками (вместо MovieClips)
class Shoot extends flash.media.Sound {public function new() { super(); }}
и вам не нужно добавлять их на сцену, просто играйте в нее:
var shoot : flash.media.Sound = new Shoot();
shoot.play();