2. 分牌的制作:游戏中需要显示玩家的得分,所以需要一个得分牌。新建一个Moview clip组件,重命名为mScorebar,进入组件编辑状态后,按照制作记时器的方法制作一个”得分”的文本和一个动态文本框,同样将此文本框设置个变量名txt,然后新建一个图层,重命名为actions,再此层的第一祯添加如下as:
txt = _root.score;
//将主场景中的变量score的值赋给得分文本框,关于变量score,将在主场景中//进行说明。
3. 宝石变化组件的制作:游戏中掉下的宝石或者炸弹是随机出现的,所以我们这里可以使用一点制作技巧,将所有将要落下的物体放到一个mc里,但是分别放到不同的关键桢中,这样只需要使用as随机调用不同的桢即可实现随机掉下不同的宝石的效果,所以这里新建一个movie
clip,重命名为mstonepics,在图层layer1中插入四个连续的关键桢,分别将炸弹,红宝石,黄宝石和蓝宝石放到第1到第4关键桢中。
4. 随即下落宝石MC的制作:游戏中宝石需要随机下落,所以这里专门制作一个movie
clip来进行宝石随机下落的控制,新建一个movie clip组件,重命名为mFallingStone,进入组件的编辑状态后,将图层layer1重命名为StonePics,并将此图层延长到第三桢,然后将组件mStonePics拖到此层,并在Proiperties属性面板中将其命名为stone,如图4所示

图4
再新建一个图层,重命名为actions,在此图层的第一关键桢添加如下as:
var plusScore;
//定义变量plusScore,用来代表不同宝石所有的不同分数
i = Math.random();
//使用random随机函数产生随机值在0到1范围内的值,并赋给变量i
if (i<0.5)
//如果产生的随机数小于0.5,则执行下面的代码
{
Stone.gotoAndStop(1);
plusScore = -5;
}
// 组件Stone将停止在第一桢,也即放置炸弹的那一桢,并且将-5赋给代表加分的变//量plusScore
else if (i<0.7)
//如果产生的随机数大于0.5而小于0.7,则执行下面的代码
{
Stone.gotoAndStop(2);
plusScore = 2;
}
// 组件Stone将停止在第2桢,也即放置红宝石的那一桢,并且将2赋给代表加分的//变量plusScore
else if (i<0.9)
//如果产生的随机数大于0.7而小于0.9,则执行下面的代码
{
Stone.gotoAndStop(3);
plusScore = 2;
}
// 组件Stone将停止在第3桢,也即放置黄宝石的那一桢,并且将2赋给代表加分的//变量plusScore
else
//如果产生的随机数大于0.9而小于1,则执行下面的代码
{
Stone.gotoAndStop(4);
plusScore = 5;
}
// 组件Stone将停止在第4桢,也即放置蓝色宝石的那一桢,并且将5赋给代表加分//的变量plusScore
this._x = random(560)+20;
this._y = -10;
//设置不同宝石的随机坐标,横坐标的范围为20到580之间,纵坐标统一为-10
speed = 10+random(20);
//变量speed为下落速度,范围为10到30之间
|