문제

내보내는 리소스 파일이 있다고 가정 해 봅시다. mc1 4 프레임이 있습니다. 새로운 것을 만들고 싶습니다 MovieClip 다음과 같은 프레임을 삽입하십시오.

mc2:flash.display.MovieClip = new flash.display.MovieClip()

mc1.gotoAndStop(2);
mc2.gotoAndStop(1);
mc2.currentFrame = mc1.currenctFrame
mc1.gotoAndStop(1);
mc2.gotoAndStop(2);
mc2.currentFrame = mc1.currenctFrame
mc1.gotoAndStop(2);
mc2.gotoAndStop(3);
mc2.currentFrame = mc1.currenctFrame
mc1.gotoAndStop(4);
mc2.gotoAndStop(4);
mc2.currentFrame = mc1.currenctFrame

편집] 자세한 내용

나는 Flash IDE를 사용하지 않습니다. 나는 사용 중입니다 :

  • 잉크 스케이프 (SVG 생성)
  • SWFMILL (자산 파일 생성)
  • Haxe (애니메이션 만들기)

나는이 시점에서 게임이나 대화식을 구축하려고하지 않습니다. 나는 배경 스프라이트가 회전하는 간단한 애니메이션을 만들었습니다 (그리고 그게 바로). 나는 사용했다 TimerEvent이것을 달성하기 위해. 그러나 대신 나는 movieclip을 구성하고 개별 프레임을 첨부 한 다음 루프에서 재생할 수 있기를 원합니다.

또는 movieclip을 만들고 프로그래밍 방식으로 프레임으로 프레임을 그릴 수 있습니다. (그리고 물론 루프에서 플레이)

기본적으로 ActionScript를 사용하여 SWFMILL의 XML 대신 컨텐츠를 생성하고 싶습니다 ( simple 방언, simple 괜찮습니다). 나는 초보자이기 때문에 내가 당신에게 어떤 다른 정보를 줄 수 있는지 모른다. 다른 세부 정보를 제공 할 수 있는지 알려주세요.

도움이 되었습니까?

해결책

플래시 IDE가 없으면 gotoAndStop () 등을 사용하는 것이 거의 없습니다.

다른 프레임에 다른 자산을 추가 할 수 없으므로 AddChild (AssetToadd)를 사용하여 레이어로 모두 추가하고 하나를 제외한 모든 것을 표시 = false로 설정해야합니다. 그런 다음 다음과 같은 간단한 기능을 추가하십시오.

function showFrame(num:int):void
{
    for (var i:int = 0; i < numChildren; i++)
    {
       if (i == num)
       {
          getChildAt(i).visible = true;
       }
       else
       {
          getChildAt(i).visible = false;
       }
    }
}

다른 팁

나는 당신이하려는 일을하는 편리한 방법을 모릅니다. CurrentFrame은 읽기 전용 속성이기 때문에 예제는 작동하지 않으며, 반환하는 모든 것은 실제 프레임을 구성하는 데이터가 아니라 프레임 번호를 나타내는 정수입니다.

내 제안은 프레임을 동적으로 재 배열해야한다면 GotoAndPlay (x)를 원하는 숫자로 변환하는 사용자 정의 클래스로 특정 movieclip을 감싸는 것입니다.

그러나 이것은 당신이 달성하려는 것에 따라 그다지 유용하지 않을 수도 있지만, 당신이 당신의 질문을 조금 명확히한다면, 우리는 적절한 제안을 할 수 있다고 확신합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top