您的位置:首页 > 其它

Flash游戏开发实例①打砖块-1-mcPaddle的动作建立

2016-05-12 18:02 330 查看
现在我们就来做一个Flash打砖块的游戏实例,

打砖块的游戏实例可以说在所有编程语言的教程里都有出现。

现在我们就看看在Flash平台中如何创建打砖块游戏。

1.打开Flash CS6(博主用的)

2.新建action script 3.0如图:


1部分:编写平台动作

这里所说的平台就是支撑打砖块的球的那个垫子。

好吧,这是我的第一个教程,我将把它们分成几部分。

首先,我们要让舞台变成黑色背景,我们要设置帧速率为24。



然后,我们去画那个平台,我们要把它转换成一个影片剪辑。



至于平台的形状,大家想画成什么就画成什么吧!

我把它转化成了影片剪辑元件,名字叫:mcPaddle

然后你的库中就应该有mcPaddle的元件了



接下来我们新建一个图层,命名为:actions



并按F9快捷键载入脚本窗口



粘贴下列代码并关闭

//首先定义一个函数
//接下来是游戏所需代码
//这包括变量,什么的。。
//code by releed
function beginCode():void{
//增加paddle
//游戏每一帧就运行一次函数
mcPaddle.addEventListener(Event.ENTER_FRAME,movePaddle);
}

function movePaddle(event:Event):void
{
//paddle随着鼠标动
mcPaddle.x = mouseX ;
}
beginCode();


希望代码里的解释你们能够看懂,运行后,我们则看到鼠标并没有在mcPaddle的中心,只是左对齐了,将以下代码更改就行了:

mcPaddle.x = mouseX ;


更改为:

mcPaddle.x= mouseX - mcPaddle.width/2;


所以这段代码的意思是:鼠标X坐标值减去mcPaddle宽度并除以2两者的值赋值给mcPaddle的X坐标

(假设鼠标X坐标为100,mcPaddle宽度为50,那个mcPaddle的X坐标为100-25=75)

但是问题又来了,如果你将鼠标移出游戏窗口,发现mcPaddle也跟着出去了。



这是在游戏中不允许的,除非有特殊用处,那么该怎么办?

很简单,在刚才修改的代码后面,就是

mcPaddle.x= mouseX - mcPaddle.width/2;


加入

//如果鼠标脱离范围
if(mouseX < mcPaddle.width / 2)
{
//保证paddle不脱离舞台的范围
mcPaddle.x = 0;
}
//If the mouse goes off too far to the right
if(mouseX > stage.stageWidth - mcPaddle.width / 2)
{
//保证paddle不脱离舞台的范围
mcPaddle.x = stage.stageWidth - mcPaddle.width;
}


这样就保证了mcPaddle始终在游戏窗口内。

所以总结以上代码,应该是像下面一样:

//首先定义一个函数
//接下来是游戏所需代码
//这包括变量,什么的。。
//code by releed
function beginCode():void
{
//增加paddle
//游戏每一帧就运行一次函数
mcPaddle.addEventListener(Event.ENTER_FRAME, movePaddle
a1d6
);
}

function movePaddle(event:Event):void
{
//paddle随着鼠标动
mcPaddle.x = mouseX - mcPaddle.width / 2;
//保证paddle不脱离舞台的范围

//如果鼠标脱离范围 if(mouseX < mcPaddle.width / 2) { //保证paddle不脱离舞台的范围 mcPaddle.x = 0; } //If the mouse goes off too far to the right if(mouseX > stage.stageWidth - mcPaddle.width / 2) { //保证paddle不脱离舞台的范围 mcPaddle.x = stage.stageWidth - mcPaddle.width; }
}
beginCode();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: