当前位置:首页>网络学院>网页制作>Flash教程>文章内容

Flash地图显示代码

[ 来源:www.it55.com | 作者: | 时间:2007-07-12 | 收藏 | 推荐 ] 【

步骤1:在Flash中新建一个影片,场景尺寸随意。 http://www.it55.com/

步骤2:新建一个空的影片剪辑,实体名称为allmc,然后拖到场景的左上角,x坐标为0,y坐标也为0.

http://www.it55.com/

步骤3:再新建一个影片剪辑,实体名称为smap,拖到场景任意位置.进到smap,在里面画个小地图背景(比如一个色块)。 www.it55.com

注意:如果注册点在左上角的话,那么这个色块的位置就要输入0,0,如果注册点在中心,那么色块的坐标就正好要是色块宽和高的一半。比如色块的宽是30,高是30,那么它的坐标就设置为15,15。弄好后把这个色块按F8转换为影片剪辑,命名实体名称为:smapmc。

IT资讯之家 www.it55.com

步骤4:建立控制的mc和小地图显示的mc。建立一个用来控制的mc,命名为box,再建立个mc,用在小地图中显示的,命名为cir。不要把它们拉进场景,只需要给它们做连接名,连接名称分别为box和cir。

IT资讯之家 www.it55.com

步骤5:AS代码部分,将以下代码复制到主场景第一帧。

www.it55.com

//////地图比例尺转换as,绝命时刻2007年4月3日///////

http://www.it55.com/

varsd:Number=5; www.it55.com

//定义速度

45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn

varboxmc=allmc.attachMovie("box","nbox",1); it55.com

//把控制的元件动态载入影片剪辑allmc,并赋予变量boxmc

45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn

boxmc._x=Math.random()*Stage.width;

IT资讯之家 www.it55.com

//boxmc里包含了nbox,现在定义它的X坐标,Stage.width是主场景的宽,让boxmc._x随机在主场景的任意X轴位置 www.it55.com

boxmc._y=Math.random()*Stage.height; http://www.it55.com/

//同上,不过这里是随机Y轴

www.it55.com

varxpos:Number=boxmc._x;

it55.com

//初始,把boxmc的X坐标显示出来,传递到动态文本筐xpos上 http://www.it55.com/

varypos:Number=boxmc._y; www.it55.com

//同上,这里传递的是Y坐标 免费资源www.it55.com

smap.attachMovie("cir","cir",1);

www.it55.com

//动态载入cir这个元件,把它载入到smap这个影片剪辑中,它是显示在小地图里的mc 45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn

smap.cir._x=boxmc._x/10;

45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn

//定义cir在smap里面的X坐标,由于地图大小是以10倍的比例缩放的,所以行走的速度和位置都要/10

www.it55.com

smap.cir._y=boxmc._y/10;

www.it55.com

//同上,这里定义的是Y坐标 IT资讯之家 www.it55.com

varsw:Number=Stage.width; www.it55.com在线教程

//把总场景的宽赋予变量sw http://www.it55.com/

varsh:Number=Stage.height;

45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn

//把总场景的高赋予变量sw

www.it55.com在线教程

smap.smapmc._width=sw/10;

www.it55.com

//为了让smap.smapmc.宽按比例缩小放大(考虑到不管如何改变主场景大小都能自行按比例缩小小地图),所以也应该/10,也是为什么

it55.com

//上两行代码要获取主场景的宽和高的原因 www.it55.com在线教程

smap.smapmc._height=sh/10; IT资讯之家 www.it55.com

//同上,这里是判断高

IT资讯之家 www.it55.com

smap.smapmc._x=smap.smapmc._width/2; www.it55.com在线教程

//为了要让smap.smapmc不管放大还是缩小都永远保持在smap._x=0位置上,所以/自己的一半

sflj www.it55.com kg^&fgd

smap.smapmc._y=smap.smapmc._height/2; 45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn

//同上,这里是定义Y坐标

免费资源www.it55.com

onEnterFrame=function(){ sflj www.it55.com kg^&fgd

xpos=boxmc._x;

sflj www.it55.com kg^&fgd

//不断的把boxmc的X坐标传递给动态文本xpos

vd;k;l www.it55.com rdfg

ypos=boxmc._y;

sflj www.it55.com kg^&fgd

//同上,这里是传递Y坐标 it55.com

if(Key.isDown(68)){

免费资源www.it55.com

boxmc._x+=sd;

免费资源www.it55.com

smap.cir._x+=sd/10; http://www.it55.com/

//boxmc每移动10像素那么小地图里的mc就移动1像素,所以就拿boxmc的速度/10,还是除于10,倍数

免费资源www.it55.com

} it55.com

if(Key.isDown(65)){

IT资讯之家 www.it55.com

boxmc._x-=sd;

IT资讯之家 www.it55.com

smap.cir._x-=sd/10;

www.it55.com

//同上

www.it55.com在线教程

}

免费资源www.it55.com

if(Key.isDown(87)){

vd;k;l www.it55.com rdfg

boxmc._y-=sd;

sflj www.it55.com kg^&fgd

smap.cir._y-=sd/10; it55.com

//同上 免费资源www.it55.com

} http://www.it55.com/

if(Key.isDown(83)){

45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn

boxmc._y+=sd; 免费资源www.it55.com

smap.cir._y+=sd/10;

www.it55.com

//同上 sflj www.it55.com kg^&fgd

}

45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn

};

www.it55.com在线教程

免费资源www.it55.com

原文件(解压密码:design.yesky.com):游戏地图.rar

免费资源www.it55.com

(阅读次数:

返回顶部
 

网友评论

[以下评论为网友观点,不代表本站。请自觉遵守互联网相关政策法规,所有连带责任均有评论者自负。]
[不超过250字]

热门文章