Flash游戏开发教程:第七节
所属分类:
媒体动画 / Flash教程
阅读数:
77
收藏 0赞 0分享
请先阅读:Flash游戏开发教程:第六节
先补充个游戏里的结构:
_root下有三个空MC: pl,item和xs
pl这个空MC是用来attach人物的
item这个空MC是用来attach宝物的
xs这个MC是用来attach显示得分的
为什么要这么做呢?……因为管理方便呀~以后你会慢慢体会到的。
严重警告:第7课未搞懂看明白者,请回上节反复研究,直至搞懂。不然继续往下看会让你体内真气逆行,任、督二脉自锁,全身犹如蚂蚁咬,饭吃不下,觉睡不着,放P恶臭,对FLASH丧失学习信心……
(……)
好了,能看到这行的,说明你已经是个消化第7节内容的鸟了。
这一节我也话不多说,直接放代码了。用你第7节学到的内容自我检验下。
金币10和50共用的CLASS
class items.Jin extends MovieClip {
static var basic_speed:Number = 3; //下落基础速度
public var score:Number = 10; //得分
public var speed:Number; //下落速度
private var hit:MovieClip; //声明碰撞检测的MC
private var depth:Number; //当宝物被人物获得,显示得分的MC的深度
//---构造函数---
function Jin() {
init();
}
//隐式设置-获取方法
public function set _score(kkk:Number):Void {
score = kkk;
}//得分10还是50,传入这个参数就能解决
public function _bspeed(){
basic_speed= 3;
trace(basic_speed)
}//这个要说明下,静态变量basic_speed每实例化一个MC都会自我增加,所以基础速度越来越快。这个方法是让basic_speed变回原始的3。用于每回合开始时初始化使用。
public function set _speed(sss:Number):Void {
speed = sss;
}
//共有-私有方法
private function init() {
_x = 50 random(450);
_y = -15;
speed = basic_speed random(50)/10;//下落速度是由基础速度 随机增量
basic_speed =0.03
//trace(basic_speed)
onEnterFrame = Move;
}
private function Move() {
_y = speed;
if (_y>380) {
this.removeMovieClip();
}
/////////////////////////////////
if (hit.hitTest(_root.pl.player.hit)) {
getItem();
}
///////////////////////////////// 碰撞检测哦~
}
public function getItem() {
_root.music_control.snd("jin");//声音控制,以后会讲到
_root.score = score;
depth = _root.xs.getNextHighestDepth();
var a:MovieClip = _root.xs.attachMovie("getScore", "getScore" depth, depth );//ATTACH显示得分的MC
a.aaa.score = " " score;
a._x = _x;
a._y = _y;
this.removeMovieClip();
}
}
然后是两个宝物的CLASS,继承了金币的类,只不过改写了被人物吃到后的效果
爱心
class items.Bao1 extends items.Jin {
public function getItem() {
_root.music_control.snd("bao");
depth = _root.xs.getNextHighestDepth();
var a:MovieClip = _root.xs.attachMovie("getScore", "getScore" depth, depth );
a.aaa.score = "TIME";
a._x = _x;
a._y = _y;
////////
_root.time_c._time = 8;
///////调时间控制类的public方法,后面会讲到
this.removeMovieClip();
}
}
五角星
class items.Bao2 extends items.Jin {
public var score:Number = 30;
public function getItem() {
//_root.score =score
_root.music_control.snd("bao");
///////
for (var i in _root.item) {
if (_root.item[i]._name.substr(0, 3) != "bao") {
_root.item[i].getItem();
}
}
_root.score = score;
depth = _root.xs.getNextHighestDepth();
var a:MovieClip = _root.xs.attachMovie("getScore", "getScore" depth, depth );
a.aaa.score = " " score;
a._x = _x;
a._y = _y;
///////
this.removeMovieClip();
}
}
宝物这类,和人物类有点相似的。
下节会把时间控制类和分数控制类一起讲掉。大家快把这节的内容消化了吧~
FLASH CLASS的基本编写规范
继续回来写教程。本来不想写这节的,因为这节的内容很多书上或者网上资料都有,而且写的比我要详细正规得多。但后来想想,还是写吧!为啥?凑篇幅呗~啊哈哈~而且后面几节要结合接宝的范例游戏,具体分析它的几个CLASS,所以,还是用一节把CLASS的写法说一下。可能我对CLASS
收藏 0赞 0分享
flash教程:使用拆分数字和文字的函数
flash的小函数:拆分数字和文字的函数.
以下为引用的内容:
/*
* 拆分数字和文字
*/
public function splitNS(s:String):Object{
var tNum:String=""
收藏 0赞 0分享
通过实例学习Flash AS3.0——案例六
相关文章: 通过实例学习Flash AS3.0——案例五
首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下
收藏 0赞 0分享
用Flash AS制作逼真的下雨动画效果
Flash教程:用Flash AS制作逼真的下雨动画效果
先看下效果:(附.swf文件)
制作过程
一、新建一图层,大小随意;
二、新建元件(影片剪辑):
1、制作雨滴并下落。使用直线工具(颜色设为灰色,1像素)画一短直线,使用选择工具将直
收藏 0赞 0分享
通过实例学习Flash AS3.0——案例五
相关文章: 通过实例学习Flash AS3.0——案例四
首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下
收藏 0赞 0分享
Flash CS3制作Fla形式的组件
本文为大家介绍如何制作Flash CS3中的[*.fla]形式的的组件(Component)。这种组件和SWC组件不同,它和CS3自带的组件一样能够双击进入组件里面编辑,是Flash CS3新增加的一种组件形态。下面我们制作一个MyButton组件为例子。
制作步骤:
收藏 0赞 0分享
通过实例学习Flash AS3.0——案例四
相关文章:通过实例学习AS3.0——案例三
首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下知识。
收藏 0赞 0分享
通过实例学习flash AS3.0——案例二
相关文章:通过实例学习AS3.0 --案例一
首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下知识。
水平有限,错误难免,欢
收藏 0赞 0分享
通过实例学习AS3.0——案例三
相关文章:通过实例学习flash AS3.0——案例二
首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下知
收藏 0赞 0分享
通过实例学习AS3.0
首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下知识。
水平有限,错误难免,欢迎大虾小虾,大鸟小鸟指正。
下面进入正题:
收藏 0赞 0分享
查看更多