欢迎大家光临【无师自通-教程网】您的到来是我们的荣幸。本站提供photoshop教程,ps教程,flash教程,cad教程,网页制作教程,excel教程,asp教程,vb教程,3d教程,c语言教程,html教程,coreldraw教程,dreamweaver教程,java教程,3dmax教程 等各种教程为主题的内容和服务,相信您会在这里找到您所需要的东东。无师自通伴您一生-谢谢您的光临!!
网站地图 设为首页
简繁切换 加入收藏
栏目待定 留言本站
您现在的位置: 无师自通-教程网 >> 多媒体动画 >> Flash教程 >> Flash游戏实例教程 >> 教程正文

  没有公告

教程: Flash教程-Flash游戏实例教程-Flash 制作弹力球 更多...
教程: Flash教程-Flash游戏实例教程-Flash 制作弹力球

围是6-11,yStep的范围是3-8,random(N)这个随//机函数会产生一个从0到N的随机数

xModifier = random(10);

yModifier = random(10);

//设置两也随机变量,范围都是从0到10

if (Number(xModifier)>5) {

xStep = xStep-(xStep*2);

}

if (Number(yModifier)>5) {

yStep = yStep-(yStep*2);

}

//根据xModifier和yModifier这两个随机树取值的不同,对xStep和ystep两变量值//进行修改

if (Number(lives) == 0)

//如果lives值等于0,即生命值为0,则游戏结束,跳到第22桢也就是游戏结束画面

11. 第20桢添加如下as

horX = getProperty("/mousetrack", _x);

setProperty("/hor", _x, eval("horX"));

//取得对象mousetrack的横坐标,并赋给水平挡板hor,这样就控制了水平挡板和鼠标//的横坐标始终相等,使它们保持在一条垂直线上

vertY = getProperty("/mousetrack", _y);

if (Number(vertY)<245) {

setProperty("/vert", _y, eval("vertY"));

} else {

setProperty("/vert", _y, 245);

}

//设置垂直挡板的位置,并且规定了挡板的最大纵坐标值为245

BallX = getProperty("/Ball", _x);

setProperty("/Ball", _x, Number(BallX) Number(int(xStep)));

BallY = getProperty("/Ball", _y);

setProperty("/Ball", _y, Number(BallY) Number(int(yStep)));

//设置弹力小球的坐标值,经过一系列计算后,产生了一个随机的坐标值

12. 第21桢添加如下as

Lose = 0;

LeftConstraint = getProperty("/hor", _x)-47;

RightConstraint = Number(LeftConstraint) 94;

UpperConstraint = getProperty("/vert", _y)-47;

LowerConstraint = Number(UpperConstraint) 94;

yAccel = vertY-getProperty("/mousetrack", _y);

xAccel = horX-getProperty("/mousetrack", _x);

//定义一系列变量,LeftConstraint,RightConstraint,UpperConstraint,LowerConstraint

//设置了小球所能活动的范围

if (Number(getProperty("/Ball", _y))>270 or Number(getProperty("/Ball", _y))<30) {

if ((Number(getProperty("/Ball",_x))>Number(LeftConstraint)) and (Number(getProperty("/Ball", _x))
yStep = yStep-(yStep*2);

xStep = int(xStep-(0.15*xAccel));

Score = Number(Score) 50;

} else {

Lose = 1;

}

}

//此段程序判断小球是否碰到了水平挡板上,如果碰到了,则分数加50,然后设置小//球的反弹坐标,否则,标志位lose记为1,说明碰到了墙壁

if (Number(getProperty("/Ball", _x))>270 or Number(getProperty("/Ball", _x))<30) {

if ((Number(getProperty("/Ball",_y))>Number(UpperConstraint)) and (Number(getProperty("/Ball", _y))
xStep = xStep-(xStep*2);

yStep = int(yStep-(0.15*yAccel));

Score = Number(Score) 50;

} else {

Lose = 1;

}

}

//此段程序判断小球是否碰到了垂直挡板上, 如果碰到了,则分数加50,然后设置小//球的反弹坐标,否则,标志位lose记为1,说明碰到了墙壁

if (Number(Lose) == 0) else {

setProperty("/Ball", _x, 150);

setProperty("/Ball", _y, 150);

Lives = Lives-1;

Score = Score-500;

gotoAndPlay(1);

}

//若没有让小球触到墙壁,即lose的值为0,则回到第20桢,继续游戏,如果小球触//到了墙壁,则重新设置小球的位置,并且分数减去500,生命值扣掉1,回到第一桢

//开始游戏


13最后的时间线如图14所示,到这里,本游戏中最关键的action就添加完了,下面我就可以开始布置主场景了。



图14

游戏场景的布置

1. 回到主场景中,新建立layer2到layer4四个图层。

2. 在图层layer1中,我们铺上一幅游戏背景图,可以自己在flash中画,也可以从外部导入一幅图片,如图15所示:



图15

3. 在图层layer2中,将组件Mouse Tracker拖到舞台上,作为传递鼠标值的中间角色,并在properties面板中给其命名为mousetrack。

4. 在图层layer3中,分别将组件Horizontal Paddles,Vertical Paddles和Paddle Controller放到舞台的合适位置,分别在properties面板中命名为hor,ver和Controller,如图16所示:



图16

5. 然后在图层layer3的第1桢家as:

stop();

/Controller:Lives = 5;

/Controller:Score = 0;

//初始化游戏得分和生命值分别为0和5


6.最后将组件ball放到图层layer4中,在properties面板中给其命名为Ball,并给图层layer4的第1桢加as:

setProperty("/mousetrack", _visible, "0");

startDrag("mousetrack", true, 55, 55, 245, 330);

setProperty("/quitspot", _visible, 0);

//设置对象mousetrack在游戏中不可见,并且对mousetrack进行拖动,使对象//mousetrack紧跟鼠标运动。


8. 止,整个游戏就做完了,最后的主场景和时间线分别如图17和图18所示:



图17



图18

点击 下载源代码



上一页  [1] [2] [3] 下一页

教程录入:admin    责任编辑:admin 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     
     
     
     

    3DsMAX实例制作:三维玻璃灯泡

    3dmax在线教程--蝴蝶

    3ds max时尚水晶鞋

    精彩Flash制作风吹草动效果动画

    教程: 3DS Max-设计实例-三维虚拟…

    3dmax7.0教程--火焰特效

    绘画技巧:Flash绘制人头造型

    3ds max 室内设计---室内效果图
    免责声明!本站资料大部分来自于互联网,其版权归原作者或其他合法者所有.如内容涉及或侵犯了您的权益,请通知本人,我将尽快处理!.欢迎您的光临。
    辽ICP备07003958号
    无师自通,伴你一生-教程网