Android 용 런 게임 앱을 만들기 시작했습니다. 타일과 Adobe Air를 사용하여 플래시로 만들었습니다. 게임은 플레이어가 자동으로 오른쪽으로 달리고 땅을 따라 점프하거나 슬라이딩하여 장애물을 피하는 것입니다.as3 및 플래시로 만든 실행중인 게임에서 오래된 타일 제거
필자는 항상 배열에서 첫 번째 레벨을 취하고 시작 레벨로 사용하는 함수를 만들었습니다.
private function createLevel()
{
map_level.levell();
level = map_level.level1;
for(var t = 0; t < level.length; t++)
{
for(var u = 0; u < level[t].length; u++)
{
if(level[t][u] != 0)
{
var new_tile:platform_tile = new platform_tile;
addChild(new_tile);
new_tile.gotoAndStop(level[t][u]);
new_tile.x = u * 32;
new_tile.y = t * 32;
tiles.push(new_tile);
}
}
}
total_tile_width += u;
}
그런 다음 경로 배열에서 임의의 수준을 사용하는 함수를 만듭니다. 플레이어가 트랙을 따라 일정 길이에 도달하면
private function random_level()
이 레벨
는 첫 번째 트랙의 끝에 추가되고, 다음 트랙이 무단 보인다 후 카메라 플레이어를 다음되도록했다.private function update_level()
{
random_level();
for(var t = 0; t < mid_lvl.length; t++)
{
for(u = 0; u < mid_lvl[t].length; u++)
{
if(mid_lvl[t][u] != 0)
{
var new_tile:platform_tile = new platform_tile;
level[t][u + total_tile_width] = mid_lvl[t][u];
addChild(new_tile);
new_tile.gotoAndStop(mid_lvl[t][u]);
new_tile.x = (u + total_tile_width) * 32;
new_tile.y = t * 32;
tiles.push(new_tile);
}
}
}
// Indstiller hvis spilleren skal have en stigende fart
if(movementspeed < 40)
{
movementspeed = movementspeed + 2;
}
else
movementspeed = movementspeed;
total_tile_width += u;
trace ("speed: " + movementspeed);
}
이 모든
은해야하고 PC와 같은 완벽한 또한 게임 기능으로 작동하지만, 이미 재생 된 이전 수준을 제거하기 때문에하는 방법을 알아낼 수 없기 때문에 전화가 그것을 오버로드 빠른 것 전화 메모리에는 많은 레벨이있을 것입니다.나는 (오래된 타일이 다시 무대를 떠났다 ")로 removeChild 같은 필요하지만 오래된뿐 아니라 모든 타일 타일을 찾는 방법에 더 idear 없어. 수
누구든지 나를 도와? BTW 희망 당신이하지 최고의 영어 쓰기에 메신저로 내 질문을 이해합니다.
모르 텐은
개체 풀링이 모바일 최적화를 도와야한다고 생각합니다. 여기에서 확인하십시오. http://help.adobe.com/en_US/as3/mobile/WS948100b6829bd5a6-19cd3c2412513c24bce-8000.html 및 동영상 자습서 : http://www.gotoandlearn.com/play.php?id=160 –