如何制作flash游戏?

Snake,在主场景的第一帧输入以下代码。

//-Flash MX贪吃蛇游戏(1Kb)制作Strille。版本2.2,共746字节。

//-复制下面的代码。主场景的第一帧,场景大小为512x280,fps为16。

createTextField("t ",1,1,255,511,32);

//创建一个文本字段来写分数和说明

//创建一个文本框来输出成绩和说明。

T.text = "单击开始";

//显示开始信息

begin fill(0x eeeeee);line style(1);lineTo(511,0);lineTo(511,256);lineTo(0,256);end fill();

//沿边框绘制背景

key . addlistener(t);

//使用现有的对象作为键盘框架来监听(就像那样,不需要创建新的Obejct,从而节省空间)

t.onKeyDown = function() {

//当按下键盘时,执行自定义的方法。

c = key . get code()-37;

//获取键的ASCII码(变量c每次都获取相对的ASCII码)

如果(!(c & gt& gt2)) {

//方向键的表示(c = 0,1,2或3)

如果(c!= q[0])

//在队列q中只存储新的方向键。

q . un shift(c);

返回;

//保存在队列中,结束方法(函数)。

}

//空格或其他键与按下的箭头键不同。

x = 32 * 8+32 * 520;

//蛇起点的坐标(左+右:可以看成X,Y坐标)

q =[];

//用于存储密钥的队列(因此更改一帧中的X坐标适用于所有帧中的X坐标)

m =[];

//创建一个数组来存储食物和蛇的坐标。

createEmptyMovieClip("s ",w = 0);

//创建一个空电影来存储蛇和食物的电影剪辑,并重置蛇的计数器(W)。

e = 2 *(m[x-520]= 2 *(r = 1));

//将擦除计数器(e)设置为4,将当前方向(R)设置为向上(1),蛇经过食物后立即将食物位置设置为当前设置的位置。

onEnterFrame = function () {

//主函数

c = q . pop();

//从队列中提取下一轮转换(当队列为空时,提取数未定义)

if (c%10!= r%10)

//检查不属于未定义和180度旋转(避免随意按一个键后改变蛇的方向)。

如果(c!=未定义)

r = c;

//将当前方向更改为新方向。

x += [-1,-65,1,65][r]* 8;

//将蛇移动到新的X位置(-1 =左,-65 =上,1 =右,65 =下)。

if (m[x] == 1或者!(x%520)或者!(int(x/520) % 33)) {

//如果新位置在蛇的身体上或在边界之外,游戏结束

删除onEnterFrame

//退出主循环功能

t.text += "不!你输了”;返回;

//输出游戏结束!并退出主程序。

}

with(s.createEmptyMovieClip(w,w)) {

//放置蛇(用于在第一个循环中放置食物)

begin fill(255 & lt;& lt16);

//首先将食物设置为红色。

if (w++) //蓝色蛇色其他时间

begin fill(0x 555588);

_ x = x % 520_ y = int(x/520)* 8;

//设置蛇的位置。

lineTo(0,-7);lineTo(-7,-7);lineTo(-7,0);lineTo(0,0);

//画一个正方形。

}

m[x]+= 1;

//将当前位置设置为“被占领”区域作为蛇体。

if (m[x] == 3) {

//检查新位置是否有食物。

T.text = "你吃的食物数量:"+(w-(e-= 5)-2)* 0.2;

//延时擦除计数器5(蛇体每次增加5),计算并输出分数(一个食物加10分)。

do {} while (m[c = (s[0])。_x = 8+random(64)*8)+(s[0]。_ y = 8+random(32)* 8)* 65]);

//找到一个空的放置点,存储值,设置食物的电影剪辑。

m[c]= 2;

//将所选位置设置为大于2的行。

}

如果(e) {

//如果不是food MC (s[0]),则擦除最后一个snake MC和数组m中的条目

c = s[e];

//获取最后一个电影剪辑

删除m[c . _ x+65 * c . _ y];remove movie clip(c);

//删除数组M中该元素的值,删除影片剪辑。

}

e++;

//将snake的擦除计数器加1。

}

}