2013-07-24 2 views
0

나는이 뱀과 사다리 게임을 개발할 때이 문제를 겪고 있으며, 너희들이 나를 도울 수 있기를 바라고있다. 나는 이미 보드와 아바타를 만들었습니다. 유일한 것은 내가 아바타를 사다리 위로 움직일 수 없으며, 뱀과 함께 움직입니다. 누군가 나를 도울 수 있습니까? 나는 지금 매우 필사적이다. 그리고 모든 도움은 감사한다, 너희들에게 감사해라!뱀과 사다리 AS3 .. 어떻게 영화 클립이 사다리를 오를 수 있습니까?

편집 :

여기

내가 지금까지 여기에 작성한 코드를 실행하는 if 문을 넣어 어디 몰라

stop(); 

var xCoord:Array = [141,251,360,471,580,691,799,910,1019,1127,1238,1238,1127,1019,910,799,691,580,471,360,251,251,360,471,580,691,799,910,1019,1127,1238,1238,1127,1019,910,799,691,580,471,360,251,251,360,471,580,691,799,910,1019,1127,1238,1238,1127,1019,910,799,691,580,471,360,251,251,360,471,580,691,799,910,1019,1127,1238,1238,1127,1019,910,799,691,580,471,360,251,251,360,471,580,691,799,910,1019,1127,1238,1238,1127,1019,910,799,691,580,471,360,251]; 
var yCoord:Array = [675,670,670,670,670,670,670,670,670,670,670,602,602,602,602,602,602,602,602,602,602,534,534,534,534,534,534,534,534,534,534,466,466,466,466,466,466,466,466,466,466,399,399,399,399,399,399,399,399,399,399,331,331,331,331,331,331,331,331,331,331,262,262,262,262,262,262,262,262,262,262,195,195,195,195,195,195,195,195,195,195,127,127,127,127,127,127,127,127,127,127,60,60,60,60,60,60,60,60,60,60]; 

var arrSquares:Array = new Array(xCoord.length); 

var spaceIndex:Number = 0; 

var delay:Number = 400; 

var tm:Timer = new Timer(delay); 
tm.addEventListener(TimerEvent.TIMER, mover); 
tm.addEventListener(TimerEvent.TIMER_COMPLETE, moveDone); 

spinner.addEventListener(MouseEvent.CLICK, doSpin); 
var total:Number =0; 
function doSpin(mevt:MouseEvent):void { 
var rn:Number = Math.round(5*Math.random()+1); 

txtCount.text = String(rn); 
total = total + rn; 
txtTotal.text = String(total); 



txtCount.visible = true; 
spinner.removeEventListener(MouseEvent.CLICK, doSpin); 




tm.reset(); 
tm.repeatCount = rn; 
tm.start(); 

} 



function mover(tevt:TimerEvent):void { 
spaceIndex = (spaceIndex+1)%(xCoord.length); 
chip.x = xCoord[spaceIndex]; 
chip.y = yCoord[spaceIndex]; 



} 


function moveDone(tevt:TimerEvent):void { 
spinner.addEventListener(MouseEvent.CLICK, doSpin); 
txtCount.visible = false; 

} 

.. 내가 지금까지 작성한 코드의 일부가되어 있어요 칩 (아바타)에 붙은 모션 트윈

답변

0

글쎄, 내 생각은 여기에있다. 나는 당신이 위아래로 움직이기를 원하는 캐릭터와 함께 애니메이션을 만들 것이다. 간단하게하기 위해, 등반을위한 애니메이션을 만든 다음 떨어지는 애니메이션을 만듭니다. 정말 쉽습니다. 키 프레임을 삽입 한 후 타임 라인에서 트윈 옵션을 사용하십시오.

애니메이션을 만든 것처럼 보입니다. 이제 그가 위로 올라 갔거나 넘어지는 지 여부는 뱀과 사다리가 어디에 있는지에 달려 있습니다. 여러분은 그것을 알고 있습니다. 따라서 보드의 특정 위치 (예 : x = 200 및 y = 200)에서 if 문이 발생하기를 원합니다. 그러나 우리는 당신의 아바타가 움직이는 것을 끝내기를 원합니다. 아마 지금

var checkX:Number = chip.x; 
var checkY:Number = chip.y 
checkLandingSpace(checkX,checkY); 

이의 우리가 촬영 또는 사다리

 function checkLandingSpace(checkX:Number,checkY:Number):void 
    { 
     if (checkX = (your point) || (another point) //first check all x points...continue like this for all points where a ladder is...the || means or 
     { 
       if (checkY = (your points....etc) 
       { 
        mc_avatarLadder.play(); //choose your instance name to be mc_avatar, then play the tween 
       } 
     } 
    } 

에있는 경우 확인 또는 동일시이 게시물을 확인하는 기능 checkLandingSpace을 할 수 있도록 새로운 기능을 생성하고, 상기 가동 기능에 다음을 추가 배열의 모든 요소에 하나의 변수가 있음 If [Get Variable] is equal to [Array]

이제 사다리에 해당 변수를 씁니다. 그런 다음 모든 슛 포인트로 똑같은 일을하십시오. 인스턴스 이름이 mc_avatarShoot 인 새 애니메이션을 만든 다음 mc_avatarShoot.play();라고 말하면됩니다.

그런 다음 마지막 프레임에서 두 인스턴스를 모두 확인한 후 gotoAndStop (1); 다음 번에 애니메이션을 재생할 준비가되었는지 확인하기 만하면됩니다.

물론 타이머를 적절하게 조정하십시오. 이것은 거의해야 할 일이며, 자신의 게임에 적응하기위한 몇 가지 일이있을 수 있지만,이를 따라하고 이해하면 얻을 수 있습니다.

+0

감사합니다. 비록 애니메이션과 약간의 코드를 포함하여 튜토리얼을 쉽게 배울 수있는 soe를 이미 보았지만 나는 as3에 매우 익숙하다. 내 아바타에 트위터를 끼워 보았습니다. 아바타가 사다리의 맨 아래에있을 때 애니메이션을 실행합니다. 나는 사다리를 오르려고하지만, 어느 정도까지는 올라 오지 않을 것입니다. 아니면 그저 나 일까? 코드를 알려주시겠습니까? – pyromoseLey

+0

선생님, 원하면 FLA 사본을 드릴 수 있습니다. : D – pyromoseLey

+0

관련 코드를 게시하거나 게시하십시오. 불행히도 나는 몇 시간 동안 내 CS6 컴퓨터를 가지지 않을 것이다. 그때까지 기다릴 수 있으면 더 자세한 내용을 알려줄 수 있습니다. 또는 코드 일부를 게시하고 여기에서 살펴 보겠습니다. 질문을 편집하십시오.) – spaderdabomb

관련 문제