- 0
- 0
- 约5.25千字
- 约 8页
- 2019-01-08 发布于湖北
- 举报
修改昨天的一个错误: 不管用的是那个版本的Flash Builder 4.7,请无视第四步到第七步,不需要作此修改。原因是我把后面的一部分内容看错,提前发出来了,在这里向大家表示道歉,原帖正在修改中,给大家带来的误解尽情原谅。 不说废话,昨天已经把我们需要的环境搭建好了,我们今天就开始来写代码吧!一、代码结构规划 如图所示,请手动建立这些包。
app.game:游戏除初始化类以外的所有类; app.game.core:存放一下游戏的核心类; app.game.events:存放游戏所需要的事件类,这些类包括从AS3的Event原生继承下来的,也包括Starling的Event继承下来的; app.game.mvc:游戏MVC的核; app.game.mvc.controllers:游戏MVC中的控制器; app.game.mvc.models.data:游戏MVC中的模型之静态数据; app.game.mvc.models.env:游戏MVC中的模型之系统初始化数据; app.game.mvc.models.message:游戏MVC中的模型之与服务器交互的数据类; app.game.mvc.views:游戏MVC中的视图; app.game.uis:游戏里面所有UI存放的地方,这个地址将UI和View分开,可以很快速的更换UI的所有部分,View里面可以少量更改,或者不更改都不影响整个游戏; app.game.uis.controls:游戏里面自定义的控件; app.game.uis.controls.renderers:游戏里用的一些渲染器; app.game.utils:游戏工具包。 这里其实还有一种分法,就是每一个功能模块下各有一个mvc包,这样的分发更适合中大型游戏,一个人有一个独立的模块这样去做。像我们的《暗黑》其实没有必要这样分,有点浪费,更显得凌乱。毕竟《暗黑》不是一个大游戏啊。二、初始化 我们先预设一下我们的游戏大小,背景颜色,和帧之类的东西。在Main类声明上面填上这么一句就OK了:
[SWF(width = 480, height = 800, frameRate = 60, backgroundColor = 0x000000)]
public class Main extends Sprite
{
? ? // ......
}
复制代码
这句话就是说明,我们游戏的宽为480px,高800px,帧为60,背景为黑色,当然你可以随心所欲的更改。 AS游戏有个很重要的点,就是我们所有的干活必须要等Adobe他们把我们的舞台(stage)初始化好。不然,你啥都别想干了。所以我们在Main里面干的第一件事情理论上来说就是检测stage是否存在的问题。如下面的代码所示:
public function Main()
{
? ? stage ? initialize() : addEventListener(Event.ADDED_TO_STAGE, function(e:Event):void
? ? {
? ?? ???e.target.removeEventListener(Event.ADDED_TO_STAGE, arguments.callee);
? ?? ???initialize();
? ? });
}
复制代码
初碰AS3的人童鞋们看见 stage ? initialize() : addEventListener(...) 这样的语句别害怕啊,其实写成这样,就明白了:
public function Main()
{
? ? if (stage != null) // 这句也可以写成 if (stage) { ... }
? ? {
? ?? ???initialize();
? ? }
? ? else
? ? {
? ?? ???addEventListener(Event.ADDED_TO_STAGE, function(e:Event):void?
? ?? ?? ?? ?{
? ?? ?? ?? ?? ???e.target.removeEventListener(Event.ADDED_TO_STAGE, arguments.callee);?
? ?? ?? ?? ?? ???// arguments是function的一个内置对象,在AS里面一个function是一个Function实例,代表的意思是这个方法的参数
? ?? ?? ?? ?? ???// arguments.callee 说明方法参数在寻找调用的方法
? ?? ?? ?? ?? ???initialize(
您可能关注的文档
- 2019年鹤壁市山城区事业编考试模拟.doc
- 2019上海交通大学考研827材料科学和839化工原理基础复习全析含真题.docx
- 2020南京大学中国古代文学考研参考书 经验 真题.pdf
- 3341机巷顺层钻孔预抽工作面区域煤层瓦斯抽放设计.doc
- 4399赛尔号赛宾斯实战解析.doc
- 24222运输巷掘进回风系统调整方案.doc
- 201102第2章 建筑工程造价构成.ppt
- 201211第3章 平面机构结构分析.ppt
- 201303-助推全面转型升级强大精神力量.doc
- 201346第三章 查阅文献与综述.ppt
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测生物试卷+答案.doc
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测语文试卷+答案.doc
- 四川省绵阳南山中学实验学校2025-2026学年高三上学期1月月考数学含答案.doc
- 2026届辽宁省大连市高三上学期双基考试物理试卷+答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测化学含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测生物含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测英语含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测政治含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试化学含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试生物含答案.doc
最近下载
- 爱登堡电梯BT303C电气图纸.pdf
- 天津市河东区2024-2025学年七年级上学期期末考试道德与法治试卷(含答案).pdf VIP
- KH2100型薄层色谱扫描仪 用户手册.doc VIP
- 中国大学MOOC《高等数学(二)》(国防科大学)慕课 章节测验期末考试答案.docx VIP
- 四川省南充市2024-2025学年高一上学期1月期末质量检测物理试题(含答案).pdf VIP
- 2025年度民主生活会、组织生活会批评与自我批评意见(100条)供参考.docx VIP
- 第二课礼仪与教化教案.doc VIP
- 劳务费、专家咨询费用发放申领表.doc VIP
- 英文学术写作实战(北大)大学MOOC慕课 客观题答案.docx VIP
- 8款火爆的流媒体直播APP总有1个适合你.docx VIP
原创力文档

文档评论(0)