win38에서 FlashDevelop를 사용하여 as3isolib과 isogame을 수행하고 있습니다. 게임은 AS2로 코딩 된 외부 SWF를로드해야합니다. 응용 프로그램을 디버깅 할 때 플레이어가 주어진 위치에 도달하면 SWF를로드합니다. 이 프로그램은 버튼과로드 된 SWF를 모두 닫는 (removeChild) 버튼을 인스턴스화합니다. 그러나 bin 폴더를 다른 위치 (다른 팀 동료에게 표시하기 위해)로 복사/붙여 넣을 때 SWF는로드되지 않지만 SWF에 포함 된 버튼이로드됩니다. 폴더 구조는 다음과 같습니다.AS3 FlashDevelop 프로젝트에서 as3isolib 경로 문제 사용
- isoGame/bin;
- isoGame/libs/... 모든 라이브러리;
- isoGame/src/... 주요 액션 스크립트; 모든 자원에 대한 경로가 포함
- isoGame/SRC/게임 ...
- isoGame/SCR/게임/자산
Assets.as라는 파일이 있습니다 모든 사용자 정의. 예를 들어, "OVA.swf". 해당 파일은/assets 및/bin에 복사됩니다. 그러나 다시, 폴더 위치를 변경하려고 할 때 SWF가로드되지 않습니다. 하여 SWF를로드
기능은 다음과 같습니다
private function onUpdate(e:Event):void
{
if (_avatar.x == 4 * _level.CELLSIZE && _avatar.y == 4 * _level.CELLSIZE)
{
//_swfFile = new URLRequest(Assets.OVA1_PATH);
_swfLoader.load(new URLRequest(Assets.OVA1_PATH));
_swfLoader.x = (Constants.PLAYER_WIDTH - 550)/2;
_swfLoader.y = (Constants.PLAYER_HEIGHT - 400)/2;
close_btn = new Assets.CLOSE_BTN_CLASS();
close_btn.addEventListener(MouseEvent.MOUSE_UP, onCloseOVA);
close_btn.x = 550 + _swfLoader.x;
close_btn.y = _swfLoader.y;
//adding the objects
addChild(_swfLoader);
addChild(close_btn);
}
}
감사합니다!