2014-11-27 7 views
0

동일한 클래스 파일에 여러 이미지 (각 PNG에 대해 수동으로 @:bitmap(...))를 삽입하려고합니다. 나는 PNG를 사용하는 올 때하나의 클래스 파일에 여러 이미지를 임베딩 Haxe 3

그러나, 나는

Class not found : assets._NameOfImageClass_가 계속 처음에 던져 내가 그들 모두를있는 * .hx 파일로 같은 이름의 클래스를 가져올해야합니까?

(예 : 그들은 모두에 정의되어있는 경우 : 내가 new ICON_FILE();를 사용하거나 그냥 import assets.ICON_FILE;을 사용할 수 있어야하기 전에 나는 import assets.Assets;해야합니까, assets/Assets.hx)

나는에 FlashDevelop을 사용하고,이 플래시를 타겟팅하는 것입니다.

(참고 :이 대한 OpenFL 솔루션을 사용하지 선호) 당신은 단지 라인 import assets.Assets;

에게 자산 클래스가 필요

답변

0

합니다.

package mypack ; 

import flash.media.Sound; 

@:sound("assets/sound/Hit_Hurt.wav") class Hit_Hurt extends flash.media.Sound { } 
@:sound("assets/sound/Jump2.wav") class Jump extends flash.media.Sound { } 
@:sound("assets/sound/Laser_Shoot.wav") class Laser_Shoot extends flash.media.Sound { } 

class SoundLib 
{ 
    private static var _sounds:Array<Sound> = [ new Hit_Hurt(), new Jump(), new Laser_Shoot() ]; 


    public static function play(index:Int):Void 
    { 
     _sounds[ index ].play(); 
    } 

} 

주류.

package ; 

import flash.display.StageAlign; 
import flash.display.StageScaleMode; 
import flash.Lib; 
import flash.media.Sound; 
import mypack.SoundLib; 

class Main 
{ 


    static function main() 
    { 
     var stage = Lib.current.stage; 
     stage.scaleMode = StageScaleMode.NO_SCALE; 
     stage.align = StageAlign.TOP_LEFT; 

     var tmp:Sound = new Laser_Shoot(); 
     tmp.play(); 
    } 

}