foodArray라는 배열에 넣는 food라는 무비 클립이 있습니다. 각 음식을 오른쪽으로 이동시키는 고유 한 클래스 (Mover라고 함)가 있습니다. 특정 지점에 도달하면 음식이 사라집니다.특정 지점에서 객체를 만드는 방법 3
다음은 Main 클래스에 넣은 음식을 사라지게하는 코드입니다. 나는 이것을 Enter Frame에 넣었다.
var l:int = foodArray.length - 1;
while ((l > -1))
{
if (foodArray[l].x > 1020)
{
removeChild(foodArray[l]);
foodArray.splice(l,1);
}
l = l - 1;
}
는 그리고 이것은 무버 클래스
public function Mover(inputMC:MovieClip, xV:Number)
{
this.insMC = inputMC;
this.xVel = xV;
}
public function startMove():void
{
this.insMC.addEventListener(Event.ENTER_FRAME, this.updatePos);
}
protected function updatePos(e: Event):void
{
this.insMC.x += this.xVel;
}
public function stopMove():void
{
this.insMC.removeEventListener(Event.ENTER_FRAME, this.updatePos);
}
음식은 잘 사라지고,하지만 단지 심지어 사라질해야하는 시점 이후 계속 몇 가지 음식이 있습니다. 문제는 배열 길이와 같다고 생각하지만 확신 할 수는 없습니다. 도움말 크게 감사하겠습니다. :)
이것은 내가 처음 열한 번째 음식을 만드는 곳입니다. 그래서 저는 각 타임 라인마다 여섯 가지 다른 그림이있는 음식이라는 영화 클립을 가지고 있습니다. 난 무작위로 음식을 만들고 싶다. 내가 한 번
function addFood()
{
randomFood = Math.ceil(Math.random() * 6);
food = new Food();
food.gotoAndStop(randomFood);
food.x = 76;
food.y = 675;
addChild(food);
foodArray.push(food);
food.sequece = foodSeq;
food.code = randomFood;
food.addEventListener(MouseEvent.MOUSE_DOWN,onDown);
foodSeq++;
//mover
mover = new Mover(food,XVEL);
moverArr.push(mover);
mover.startMove();
//timer
timerFood.reset();
timerFood.addEventListener(TimerEvent.TIMER, timerForFood);
timerFood.start();
}
에 하나의 음식을 추가 할 경우 여기
function showFood()
{
const ROW = 11;
for (foodSeq = 0; foodSeq < ROW; foodSeq++)
{
randomFood = Math.ceil(Math.random() * 6);
food = new Food();
food.gotoAndStop(randomFood);
food.x = 1010 - (84 * (foodSeq % ROW));
food.y = 675;
addChild(food);
foodArray.push(food);
food.sequence = foodSeq;
food.code = randomFood;
food.addEventListener(MouseEvent.MOUSE_DOWN,onDown);
//mover
mover = new Mover(food,XVEL);
moverArr.push(mover);
mover.startMove();
}
addFood();
}
그리고이는 addFood 기능을
function timerForFood(t: TimerEvent)
{
if (timerFood.currentCount > 2)
{
addFood();
}
}
foodArray에 어디에서 추가하고 있습니까? 해당 코드를 게시하십시오. – Montycarlo
나는 이미 내 질문을 편집했다. 거기에있는 코드를 볼 수있다. – blissaster