论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Flash AS教程
Tag:2.0,3.0菜鸟,游戏,,cs,技巧,源码,,文本,文字,函数,音乐,随机,拖拽,asp,access,xml,mc,视频教程

Flash as3中制作阶砖式游戏地图的方法

文章类别:Flash AS | 发表日期:2009-8-8 10:27:40

Flash as3中制作阶砖式游戏地图的方法 

.fla文件里有2个MC,一个空MC:drawMc,一个叫tile的MC(小方块)。

代码如下:
/**
* BuildMap.as
*/
package {
   import flash.display.MovieClip;
   public class BuildMap extends MovieClip {
         private var map:Array=[ [1,0,0,0,0,0,0,0,1,0,1],
                                  [0,1,0,0,0,1,0,0,0,1,0],
                                  [0,0,1,0,0,0,0,0,1,0,1],
                                  [0,0,0,1,0,1,0,0,0,1,1],
                                  [1,0,0,0,0,0,0,0,1,0,1],
                        [0,0,0,1,0,1,0,0,0,1,1],
                        [0,1,0,0,0,1,0,0,0,1,0],
                        [0,1,0,0,0,1,0,0,0,1,0],
                        [1,0,0,0,0,0,0,0,1,0,1],
                        [0,0,0,1,0,1,0,0,0,1,1],
                                  [0,1,0,0,1,0,1,0,0,0,1] ];
         public function BuildMap(){
             build(map);
         }
         public function build (map:Array,tileW:int=0,tileH:int=0):void{
            var mapWidth:int  = map[0].length;
            var mapHeight:int = map.length;
            var tile=new Tile();
            var i:int;
            var j:int;
            tileW= tileW!=0 ? tileW : tile.width ;
            tileH= tileH!=0 ? tileH : tile.height ;
           for (i = 0; i < mapHeight; i++) {
               for (j= 0; j < mapWidth; j++) {
                   tile=new Tile();
                   tile.x=j*tileW;
                   tile.y=i*tileH;
                   tile.gotoAndStop(map[i][j]+1);
                   this.addChild(tile);
                }
            }
        }
     }
}

 

视频教程列表
文章教程搜索
 
Flash AS推荐教程
Flash AS热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058