• 微课视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
微课江湖
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 微课视频
  • photoshop
  • Fireworks
  • CorelDraw
  • Illustrator
  • Painter
  • Freehand
  • Indesign
  • flash
  • maya
  • autocad
  • 3dmax
您的位置:首页 > 平面设计 >flash > Flash游戏开发教程:第四节

Flash游戏开发教程:第四节

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-05-24

佚名 向大家分享了Flash游戏开发教程:第四节,其中包含flash游戏开发教程,flash游戏制作教程,flash游戏编程教程,flash游戏教程,flash游戏特效教程等知识点,遇到此问题的同学们可以参考下
请先阅读:Flash游戏开发教程:第三节。
本来不想写这节的,因为这节的内容很多书上或者网上资料都有,而且写的比我要详细正规得多。但后来想想,还是写吧!
而且后面几节要结合接宝的范例游戏,具体分析它的几个CLASS,所以,还是用一节把CLASS的写法说一下。可能我对CLASS的写法也不是很正规,有老鸟看了后,最好也能指点一下。
先来个CLASS基本的模式。
文件名:Time_control.as
class Time_control {
//第一部分:声明本CLASS要用到的变量
static var a:Number=2;
private var b:Number;
private var c:Number=1;
public var d:Number;
//第二部分:构造函数
function Time_control() {
init();
}
//第三部分:隐式设置-获取法
public function set _d(sss:Number):Void {
d = sss;
}
public function get _d():Number {
return (d);
}
//第四部分:私有和公有方法
private function init() {
//一般写点初始化的内容
}
private function aa() {

}
public function bb() {

}
} 如果是要继承类,比如继承MovieClip类,第一行就改写成
class Time_control extends MovieClip { 下面简单解释下各个部分(我最不擅长解释说明这类东西)
CLASS类都是以
class 类名称 {
内容
} 的形式,而且类名称和文件名要相同。
CLASS的内容分四部分
第一部分
声明本CLASS所用到的变量,这里要提的是,和在SWF里定义变量不同。SWF里你可以用比如a=1这种自动变量形式,而在CLASS里你必须写明a的类型是Number,再定义变量值是1 第二部分
是CLASS的构造函数,什么意思呢?就是当CLASS的实例出现后,自动执行这个function里的内容,一般都是些初始化的内容。function的名称要和CLASS类的名称一样哦~而且这里初始化一般都是用个init()函数,init函数具体在后面回自己定义。为什么要这样而不直接把初始化内容写在构造函数内呢?因为当继承其它类的时候,构造函数是不能继承的,还得自己再写一次,而init函数是可以继承的,于是……呵呵,懒人懒办法嘛~直接把内容写在构造函数里的话,每次继承就还要重写次,用自定义init函数的话,就可以偷懒咯~ 第三部分
是定义隐式设置-获取的function,什么意思呢?上节我们说过,class可以看作一个封闭的盒子,跟外界无关。但有时候我们必须读取或者改变CLASS类内的某个变量。这时候就必须借助隐式设置-获取的function。只有定义后,外界才能读取和设置CLASS内的变量。定义的方法就是比普通function多了get/set这个单词。而且必须要指定返回变量类型,无需返回则用Void表示。 第四部分
就是写function咯~这个就不具体说了,function大家老写了 可能大家看到,class里比平时大家写的,多了private和public,还有static这三个词
啥意思捏?
简单简单的说下:
private与public定义的变量和方法都能在CLASS内一样使用,没啥区别
而不同的地方就是,public定义的变量和方法能够被外界读取设置和使用,而private则不能,只能在封闭的CLASS内使用。
比如public var d:Number=1设置了变量d是public型的
然后在第三部分写下:
public function set _d(sss:Number):Void {
d = sss;
}
public function get _d():Number {
return (d);
} 当CLASS实例化在了一个MC后
trace(MC._d)就得到1
输入MC._d=2后,MC内的d就变成2啦~而private设定的变量,你从外部既不能读取也不能赋值。
自己仔细体会下
同理,例如:
public function 发绝招{
} 就像上几节图里那个封闭盒子上的发绝招按钮,实例化到MC后,就可以直接
MC.发绝招()
来让MC执行 发绝招() 这个function
而static定义的变量,怎么跟大家描述呢……它不存在于CLASS的实例化里。
而且static定义的变量,是被所有CLASS实例共享的。
还是来个例子吧:
舞台ATTACH个MC,绑定的ccc.as类。类里有个static变量s=1。ccc类里初始化函数init()里让s ,这时候s就等于2了是吧?
然后继续在舞台ATTACH个MC,绑定的ccc.as类,这个MC的s就直接等于2了。然后它在初始化函数里同样执行了s ,这时候两个MC里的s都同时变成了3
这就是所有CLASS实例共享static变量。
怎么说呢,CLASS撰写方面,我自己也不是很行,可能还存在少许的理解误区或者缺少技巧经验。希望老鸟也指导下。
关于这节,我建议新鸟鸟们最好自己再找点正规教材自己学习下。
单靠这节写的些鸟文,小鸟对CLASS还不能很好的认识。正常。
所有的知识只有通过实战才能真正的理解。
在下节里,我会详细的开始教那个接宝游戏怎么做。具体的代码怎么写。CLASS怎么写怎么用。手把手的教鸟们学做这个范例游戏。
</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Flash游戏开发教程:第六节
  • Flash游戏开发教程:第五节
  • Flash游戏开发教程:第七节
  • Flash游戏开发教程:第八节
  • Flash游戏开发教程:第二节
  • Flash游戏开发教程:第三节
  • Flash游戏开发教程:第四节
  • Flash游戏开发:BitmapData的使用
  • Flash游戏开发教程:第一节

相关文章

  • 2017-05-24Flash AS3制作火苗跳动的gif动画教程
  • 2017-05-24Flash AS 入门教程 loadMovie应用举例 多画面与画中画实现
  • 2017-05-24flash怎么使用任意变形工具绘制图形?
  • 2017-05-24Flash 脚本游戏开发教程第四课
  • 2017-05-24教你利用Flash制作一个会走动的时钟(时针,分针,秒针)
  • 2017-05-24flash制作冰糖葫芦的矢量图?
  • 2017-05-24Flash教程:if条件语句的用法
  • 2017-05-24Flash AS3对单个图片进行角色动作化处理
  • 2017-05-24Flash动画技巧 坐标的计算方法
  • 2017-05-24如何将flash动画设为电脑桌面

文章分类

  • photoshop
  • Fireworks
  • CorelDraw
  • Illustrator
  • Painter
  • Freehand
  • Indesign
  • flash
  • maya
  • autocad
  • 3dmax

最近更新的内容

    • FLASH怎么画两个锤子敲打东西的动画?
    • Flash动画制作基础之元件的制作方法
    • flash怎么制作太阳月亮地球演示动态图?
    • flash制作车轮往前滚动的动画效果
    • 教你用Flash制作汽车广告之视频镜头效果
    • flash中的星星从暗到亮怎么调alpha值?
    • flash运用引导层动画制作天体之间的运动
    • Flash模拟地震摇晃动画效果
    • Flash AS 入门 duplicateMovieClip和removeMovieClip应用
    • Flash利用变形工具绘制小花

关于我们 - 联系我们 - 免责声明 - 网站地图

©2015-2018 All Rights Reserved. 微课江湖 版权所有