2014-01-31 3 views
0

플레이어가 원뿔로 표시된 코스를 탐색하는 AS3에서 플래시 레이싱 게임을 진행하고 있습니다. 콘과 차는 무비 클립 'gamesprite'에 포함되어 있습니다. 나는 자동차와 원뿔 사이의 충돌을 검사하기 위해 원뿔에 대한 배열을 만들었습니다.AS3 # 1034 : 유형 강제 변환 실패 : flash.display.DisplayObject로 변환 할 수 없습니다.

public var cones:Array; 

public function findCones() 
    { 
     cones = new Array(); 
     for(var i=0;i<gamesprite.numChildren;i++) 
     { 
      var mc = gamesprite.getChildAt(i); 
      if (mc is Cone) 
      { 
       cones.push(Cone); 
       trace(cones); 
      } 
     } 
    } 

나중에 내 게임 루프 기능에서 나는 gamesprite.car 무비 클립 및 배열의 ​​콘의 각 사이의 충돌에 대한 확인이 있습니다.

 for(var j:Number=0;j<cones.length;j++) 
      { 
       if (gamesprite.car.hitTestObject (cones[j])) 
       { 
        trace("cones and car colliding"); 
       } 
      } 

게임을 테스트 할 때이 오류가 나타납니다.

TypeError : 오류 # 1034 : 형식 강제 변환에 실패했습니다. Cone $를 flash.display.DisplayObject로 변환 할 수 없습니다. at Racing/gameLoop()

나는 간단한 것을 놓치고는 있지만 알아낼 수는 없습니다.

답변

0

배열에 잘못된 것을 넣고 있습니다. 거기에 cones.push(Cone);이 있지만 대신해야합니다. cones.push(mc);

+0

아하! 어리석은 줄 알았어. 감사합니다! – user3168320

관련 문제