2017-09-08 17 views
-2

게임에서 Actionscript으로 작업 중이며 다음 코드는 키보드에서 키를 눌렀는지 여부를 확인하는 함수 내에 포함되어 있습니다. 중요한 것은 'OrbRing'뿐이므로 라이브러리에서 동영상 클립이로드됩니다.Actionscript 3 addChild가 두 번째 시도를 무시합니다.

TAB 키를 누르면 화면의 막대 길이가 설정된 양만큼 감소하고 화면에 링이 나타납니다. 처음 시도하면 모든 것이 정상적으로 작동합니다. 링이 나타나고 막대 길이가 줄어 듭니다.

그러나 두 번째 시간이 걸리면 막대 길이가 줄어들지 만 OrbRing이 나타나지 않습니다.

이상하게도, 세 번째로 시간이 걸리므로 모든 것이 정상적으로 다시 정상적으로 작동합니다.

그러나 네 번째 시간은 두 번째 시도와 같습니다.

그래서 모든 시도를하더라도 addChild 코드는 무시 된 것처럼 보이지만 바 길이가 매번 감소하기 때문에 함수가 계속 실행 중입니다. 그리고 이상한 시도가있을 때마다 기능은 정상적으로 수행됩니다.

왜 이런 일이 발생하는지 알 수 없으며 오류 메시지가 표시되지 않습니다. 이 문제를 해결할 수있는 도움이나 아이디어는 크게 감사하겠습니다.

if(levelseven==true) { 
    if (mykey.keyCode==Keyboard.TAB) { 
     if(gear1==true && CPUBAR1_mc.CPUBARYLW_mc.width>=215) { 

      CPUBAR1_mc.CPUBARYLW_mc.width-=215; 
      addChild(OrbRing); 
      OrbRing.x=Orb_mc.x; 
      OrbRing.y=Orb_mc.y; 
      OrbRing.gotoAndPlay(1);  
     } 
    } 
} 
+0

조건부 추적을했는지 확인 했습니까? 내 첫 번째 가정은 gear1이 거짓이거나 해당 Movieclip의 너비가 215 미만이라는 것입니다. – DodgerThud

+0

여기에 더 많은 컨텍스트가 필요합니다. 나는 더 많은 것을 돕기 위해 관련된 기능들을 볼 필요가있다. – quantomworks

+0

반지를 사라지게하는 데 사용되는 코드는 무엇입니까? – BadFeelingAboutThis

답변

-1

해결책을 찾았습니다. 이유가 무엇이든 (나는 아직도 이유를 모르겠다.) 영화 클립은 매회 시도 할 때마다 첫 프레임에 달라 붙고 있었다. gotoAndPlay (2)를 추가하기 만하면됩니다. 지시에 따라 영화 클립이 매번 재생됩니다. 모든 도움을 주셔서 대단히 감사합니다.