《J2ME手机游戏开发详解:快速入门、难点剖析、商业案例》PDF下载

  • 购买积分:18 如何计算积分?
  • 作  者:龚剑等编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2008
  • ISBN:9787121056505
  • 页数:624 页
图书介绍:本书是一本介绍J2ME无线开发的实训教程,面向具有基本J2ME无线开发基础的开发人员。本书通过7个典型的例子,从不同的方面分别介绍了J2ME游戏开发的实用技术。通过实际代码的阅读和讨论,读者能够在提高编程技能的同时,培养游戏开发的素养。本书分为13章,第1~6章是J2ME游戏开发的准备知识,主要介绍J2ME的基本知识,以及WTK开发环境的搭建;第7~13章详细讲解了《数独》、《坦克大战》、《雷电》、《五子棋》的单机和蓝牙版、《连连看》、《剑神》等多款游戏的设计与开发,这些游戏涵盖了射击策略游戏、棋类游戏、休闲娱乐游戏、飞行射击游戏、蓝牙联网游戏、角色扮演游戏等类型游戏。本书选择的实例都是精心设计的并且富有代表性,每个实例的制作步骤都以通俗易懂的语言阐述,并穿插讲解和效果演示,在阅读时就像听课一样详细而贴切。读者只需要按照步骤操作,就可以写出实现各种不同功能的MIDP程序。各个实例之间相互独立,读者可以根据兴趣和需求有选择地进行学习。本书的读者对象要求有J2ME语言基础,已经基本掌握用户界面、媒体播放和记录存储的概念和技巧。主要为从事J2ME平台移动增值业务开发的工程技术人员、高校学生和

第1篇 基础篇 2

第1章 J2ME理论基础 2

1.1 J2ME简介 3

1.2 MIDlet Suites简介 3

1.3 MIDlet生命周期 4

1.4 MIDlet程序结构 4

1.5 MIDP类库 6

1.6 低级用户界面 6

1.6.1 Display类的使用 7

1.6.2 Image类的使用 7

1.6.3 Graphics类的使用 7

1.6.4 键盘事件处理 8

1.7 高级用户界面 8

1.7.1 Alert类的使用 8

1.7.2 List类的使用 8

1.7.3 TextBox类和Form类的使用 8

1.8 本章小结 9

第2章 WTK 2.5和集成开发环境 10

2.1 WTK 2.5简介 11

2.2 WTK 2.5的安装 11

2.3 WTK开发流程 13

2.4 设置项目属性 17

2.4.1 设置项目属性 17

2.4.2 属性内容 18

2.4.3 Manifest文件 19

2.4.4 JAD文件 19

2.5 打包及混淆 20

2.5.1 文件的打包 20

2.5.2 文件的混淆 21

2.5.3 混淆器的下载 21

2.6 运行和部署JAR文件 22

2.6.1 应用发现 22

2.6.2 下载并校验应用描述文件 23

2.6.3 下载并执行MIDlet套件 23

2.7 集成开发环境 23

2.7.1 JBuilder 23

2.7.2 Eclipse 24

2.7.3 NetBeans 24

2.8 本章小结 24

第3章 程序优化和图片处理 25

3.1 图片格式和透明背景 26

3.1.1 PNG格式简介 26

3.1.2 使用Photoshop制作透明背景 26

3.1.3 使用Fireworks制作透明背景 27

3.2 资源优化 28

3.2.1 图片的色深 29

3.2.2 缩小图片尺寸 29

3.2.3 集成图片 29

3.2.4 优化声音资源 30

3.2.5 优化数据资源 30

3.3 程序优化 30

3.4 查看程序的执行性能 31

3.4.1 绘制延迟 31

3.4.2 刷新性能 32

3.4.3 运行速度 32

3.4.4 网络速度 32

3.5 监视程序的执行情况 32

3.6 本章小结 35

第4章 游戏类型划分 36

4.1 动作游戏 37

4.1.1 魂斗罗 37

4.1.2 三国志 37

4.1.3 合金弹头 38

4.1.4 反恐精英 39

4.1.5 星际联盟 39

4.2 冒险游戏 40

4.2.1 冒险岛 40

4.2.2 超级玛丽 40

4.2.3 波斯王子 41

4.3 射击游戏 42

4.3.1 沙罗曼蛇 42

4.3.2 雷电 42

4.3.3 空中霸王 43

4.4 角色扮演游戏 43

4.4.1 仙剑奇侠传 43

4.4.2 黄金法师 44

4.5 策略类游戏 44

4.5.1 帝国时代 45

4.5.2 三国志 45

4.5.3 大富翁 45

4.5.4 足球经理 46

4.6 体育游戏 46

4.6.1 足球游戏 46

4.6.2 篮球游戏 47

4.6.3 保龄球游戏 47

4.7 棋牌游戏 48

4.7.1 象棋游戏 48

4.7.2 麻将游戏 48

4.8 竞速游戏 49

4.8.1 极品飞车 49

4.8.2 赛马游戏 49

4.9 益智游戏 50

4.9.1 泡泡龙 50

4.9.2 祖玛 50

4.10 格斗游戏 50

4.11 模拟类游戏 51

4.12 本章小结 52

第5章 手机游戏策划概述 53

5.1 手机游戏特征和设计原则 54

5.1.1 按键设计 55

5.1.2 图形处理需求 56

5.1.3 联网限制 56

5.1.4 其他要点 57

5.2 玩家需求分析 57

5.2.1 满足体验需求 58

5.2.2 满足交流需求 58

5.2.3 使玩家获得成就感 59

5.3 玩家行为分析 59

5.3.1 运动行为 59

5.3.2 探索行为 60

5.3.3 角色扮演行为 60

5.3.4 物品收集行为 60

5.3.5 积累行为 61

5.3.6 思考行为 61

5.3.7 资源调配行为 62

5.4 用户界面与操作性 62

5.4.1 帮助文档和提示 62

5.4.2 使用图标 63

5.4.3 菜单风格 63

5.4.4 操作说明的图形化 64

5.5 游戏开发流程 64

5.6 本章小结 65

第6章 游戏技术和游戏题材 66

6.1 3D游戏 67

6.1.1 魔法与利刃 67

6.1.2 3D赛车 67

6.1.3 FirstGroove 68

6.2 网络游戏 68

6.2.1 无限乾坤 69

6.2.2 网络棋牌类 69

6.2.3 天劫OnLine 70

6.3 经典题材 70

6.3.1 街头霸王 70

6.3.2 三国志 71

6.3.3 圆桌骑士 71

6.3.4 名将 71

6.4 电影题材 72

6.4.1 变形金刚 72

6.4.2 哈利波特与凤凰社 73

6.4.3 霍元甲 74

6.4.4 金刚 75

6.5 小说题材 75

6.5.1 鬼吹灯 75

6.5.2 西游记 76

6.5.3 水浒 76

6.5.4 红楼梦 77

6.5.5 三国演义 78

6.5.6 寻秦记 78

6.6 武侠题材 79

6.6.1 仙剑奇侠传 79

6.6.2 剑啸江湖 79

6.6.3 江湖外传 79

6.7 历史题材 80

6.7.1 沙漠之狐 80

6.7.2 市场花园 81

6.7.3 甲午风云 81

6.7.4 抗日战争 82

6.8 本章小结 82

第2篇 案例篇 84

第7章 益智猜谜游戏——数独的设计与实现 84

7.1 数独游戏的策划和准备工作 85

7.1.1 数独游戏的历史和现状 85

7.1.2 数独游戏的规则和通用解法 86

7.1.3 数独题目的生成 87

7.1.4 游戏的准备工作 89

7.1.5 谜题数据的制作 90

7.2 数独的架构 91

7.2.1 游戏的类结构 91

7.2.2 用户界面流程 92

7.3 主类SuDoKuMIDlet类 93

7.3.1 闪屏界面 93

7.3.2 游戏菜单列表 93

7.3.3 继续游戏选项 94

7.3.4 填充完成后提示界面 95

7.3.5 通用加载图片方法 96

7.4 游戏闪屏SplashScreen类 96

7.4.1 加载闪屏图片 96

7.4.2 绘制闪屏屏幕 97

7.4.3 闪屏的线程 97

7.4.4 闪屏的取消 98

7.5 游戏菜单MenuList类 98

7.5.1 MenuList类的构造函数 98

7.5.2 游戏当前状态 99

7.5.3 菜单事件处理 100

7.6 游戏设置OptionsScreen类 101

7.6.1 OptionsScreen类的构造函数 101

7.6.2 参数设置按键事件处理 102

7.7 游戏说明InstructionsScreen类 103

7.7.1 InstructionsScreen类的构造函数 103

7.7.2 软键事件处理 104

7.8 游戏画布SuDoKuCanvas类 104

7.8.1 SuDoKuCanvas类的构造函数 104

7.8.2 设置游戏参数 106

7.8.3 绘制背景和单元格 107

7.8.4 填充数字 109

7.8.5 播放声音 111

7.8.6 游戏线程 111

7.8.7 键盘处理和绘制屏幕 112

7.8.8 开始和加载游戏 113

7.8.9 显示答案 114

7.8.10 软键事件响应 114

7.9 游戏控制SuDoKuModel类 115

7.9.1 构造函数 116

7.9.2 游戏难度和输入方式 117

7.9.3 谜题的产生 117

7.9.4 保存加载和开始新游戏 119

7.9.5 键盘处理 120

7.9.6 填充数字和显示结果 122

7.9.7 获取提示 123

7.10 数独逻辑SuDoKuLogic类 124

7.10.1 构造函数 124

7.10.2 获取属性和内容 126

7.10.3 填充和清空宫格 127

7.10.4 检测填充结果 127

7.10.5 获取数组字符串 129

7.11 游戏存储SuDoKuStore类 130

7.11.1 记录的读取 130

7.11.2 记录的保存 132

7.11.3 获取参数 133

7.12 游戏声效SoundEffects类 133

7.12.1 获取唯一实例 134

7.12.2 加载声音文件 134

7.12.3 播放声音 135

7.12.4 停止播放声音 136

7.13 数独的深度开发探讨 136

7.13.1 数独的界面改进 137

7.13.2 数独的情节策划 138

7.14 本章小结 139

第8章 射击策略游戏——坦克大战的设计与实现 140

8.1 坦克大战游戏的策划和准备工作 141

8.1.1 游戏的发展背景 141

8.1.2 游戏的策划分析 141

8.1.3 游戏的准备工作 142

8.1.4 地图索引文件的制作 144

8.2 坦克大战的架构 146

8.2.1 游戏的类结构 146

8.2.2 用户界面流程 146

8.3 主类TankMIDlet类 147

8.3.1 TankMIDlet类的构造函数 147

8.3.2 游戏状态的改变 148

8.4 游戏画布和控制TankCanvas类 149

8.4.1 构造函数和初始化资源 149

8.4.2 初始化地图参数 151

8.4.3 游戏线程 153

8.4.4 游戏的绘制和输入 154

8.4.5 闪屏的绘制流程 156

8.4.6 片头动画的绘制流程 157

8.4.7 绘制菜单 159

8.4.8 设置关卡参数 163

8.4.9 读取地图 166

8.4.10 游戏绘制 168

8.4.11 对战时的用户输入 184

8.4.12 子弹发射 185

8.4.13 选择关卡 187

8.4.14 游戏说明 189

8.4.15 游戏结果 189

8.5 玩家坦克Hero类 196

8.5.1 构造函数 196

8.5.2 坦克的运动 199

8.5.3 坦克的初始状态 200

8.5.4 普通模式和无敌状态 202

8.5.5 爆炸状态 204

8.5.6 检测与障碍物的碰撞 205

8.5.7 运动物体检测 207

8.6 子弹Bullet类 207

8.6.1 构造函数 208

8.6.2 子弹与地图的碰撞 209

8.6.3 与其他物体的碰撞 210

8.6.4 坦克的控制和绘制 211

8.6.5 子弹爆炸 213

8.6.6 子弹的运动和方向 214

8.7 敌方坦克EnemyPool类和Enemy类 215

8.7.1 图片加载工具EnemyPool类 215

8.7.2 Enemy类构造函数 218

8.7.3 坦克的绘制 220

8.7.4 障碍物碰撞检测 222

8.7.5 与运动物体的碰撞检测 224

8.7.6 坦克的人工智能 225

8.8 游戏道具Bonus类 227

8.8.1 加载和创建道具 227

8.8.2 道具的绘制 229

8.9 声音播放SoundPlayer类 230

8.9.1 获取唯一实例 230

8.9.2 加载声音资源 231

8.9.3 播放声音 231

8.10 坦克大战的深度开发探讨 232

8.10.1 坦克大战的道具和关卡改进 232

8.10.2 45度视角的坦克大战 235

8.11 本章小结 236

第9章 棋类游戏——五子棋的设计与实现 237

9.1 五子棋游戏的策划和准备工作 238

9.1.1 棋类游戏开发概述 238

9.1.2 游戏的背景知识 239

9.1.3 游戏的准备工作 240

9.2 五子棋游戏的架构 241

9.2.1 事件驱动游戏 241

9.2.2 游戏的类结构 241

9.2.3 游戏的流程 242

9.2.4 五子棋的人工智能 243

9.3 主类FIRMIDlet类 244

9.3.1 构造函数和软键声明 244

9.3.2 软键事件处理 246

9.3.3 程序状态改变 246

9.4 游戏设置和介绍表单实现 247

9.4.1 棋盘尺寸选择 247

9.4.2 先手选择 248

9.4.3 难度选择 249

9.4.4 创建设置表单 250

9.4.5 存储和加载默认选项 251

9.4.6 获取表单参数 253

9.4.7 游戏介绍表单的实现 253

9.5 棋子Dot类的实现 254

9.5.1 棋子的行列位置 254

9.5.2 初始化棋子位置的三种方式 255

9.5.3 修改棋子的位置 255

9.5.4 检查越界 256

9.6 对战逻辑FIRLogic类的实现 256

9.6.1 构造函数和传递游戏参数 256

9.6.2 建立数据结构 257

9.6.3 落子和悔棋 258

9.6.4 基本检测方法 259

9.6.5 检测五子连珠(游戏结束) 263

9.6.6 双方落子 264

9.6.7 实现“连五” 265

9.6.8 实现“活四” 266

9.6.9 完成“冲四”、“活三” 268

9.6.10 完成“双四”、“四三”、“双三” 271

9.6.11 最佳落子点 272

9.6.12 棋型检测调度 273

9.7 游戏画布FIRCanvas类的实现 274

9.7.1 构造函数 274

9.7.2 屏幕绘制 275

9.7.3 新开局和软键布局 280

9.7.4 用户输入 281

9.7.5 提示字符串 283

9.8 棋类游戏的相关探讨 284

9.8.1 逻辑层和表现层的分离 284

9.8.2 自适应尺寸和可移植性 284

9.8.3 五子棋游戏设计概要 285

9.9 本章小结 286

第10章 休闲娱乐游戏——连连看的设计与实现 287

10.1 连连看游戏的策划和准备工作 288

10.1.1 连连看游戏概述 288

10.1.2 游戏的准备工作 289

10.2 连连看的架构 290

10.2.1 游戏的类结构 290

10.2.2 用户界面流程 291

10.2.3 游戏的算法分析 291

10.3 主类和菜单MainMenu类 294

10.3.1 主类LLKMID1et类 294

10.3.2 MainMenu菜单类 295

10.3.3 MainMenu类的构造函数 296

10.3.4 主菜单 296

10.3.5 难度设置 297

10.3.6 操作说明和关于 298

10.3.7 键盘输入 298

10.4 矩阵LLKMatrix类 301

10.4.1 LLKMatrix类的构造函数 301

10.4.2 初始化矩阵 302

10.4.3 设置和获取元素 304

10.4.4 判断是否可连 305

10.4.5 方块自动重排 321

10.4.6 方块自动上升 322

10.4.7 方块向下坠落 323

10.4.8 方块左方往下,右方往上 324

10.4.9 方块向左靠拢 325

10.4.10 方块上方向左,下方向右 326

10.4.11 方块上方向上,下方向下 327

10.4.12 方块左方向左,右方向右 327

10.4.13 方块上下向中间靠拢 328

10.4.14 方块左右向中间靠拢 329

10.4.15 组合变换 330

10.5 游戏画布LLKCanvas类 331

10.5.1 LLKCanvas类的构造函数 331

10.5.2 读取游戏资源 332

10.5.3 播放声音 334

10.5.4 游戏计时 335

10.5.5 屏幕绘制 336

10.5.6 绘制游戏画面 338

10.5.7 键盘响应 346

10.5.8 返回菜单 350

10.5.9 通过本关 350

10.5.10 获取提示框 350

10.6 定时器和游戏胜利屏幕 351

10.6.1 定时器TimerTask类 351

10.6.2 走马灯提示信息的实现 352

10.6.3 GameWinCanvas类的构造函数 352

10.6.4 屏幕线程 353

10.6.5 屏幕绘制和键盘处理 354

10.7 连连看的相关探讨 355

10.7.1 连连看的图案变换 356

10.7.2 连连看的排列改进 357

10.8 本章小结 357

第11章 飞行射击游戏——雷电游戏的设计与实现 358

11.1 雷电游戏的策划和准备工作 359

11.1.1 雷电游戏概述 359

11.1.2 游戏的准备工作 359

11.2 雷电的架构 361

11.2.1 游戏的类结构 362

11.2.2 用户界面流程 362

11.3 主类和游戏闪屏 363

11.3.1 显示闪屏和菜单 363

11.3.2 设置音效和振动 364

11.3.3 开始和退出游戏 365

11.3.4 暂停游戏 366

11.3.5 判断得分 366

11.3.6 读取存储记录 366

11.3.7 保存记录 367

11.3.8 转换时间格式 369

11.3.9 创建图片 370

11.3.10 游戏闪屏SplashScreen类 370

11.4 道具和子弹 372

11.4.1 游戏道具类 372

11.4.2 子弹类 373

11.5 游戏飞机的实现 375

11.5.1 Enemy1类的构造函数 375

11.5.2 屏幕参数和敌机状态 376

11.5.3 敌机运动循环 377

11.5.4 绘制屏幕和初始化参数 378

11.5.5 敌人Enemy2类 379

11.5.6 敌人Enemy3456类 382

11.5.7 玩家飞机Player类 384

11.6 游戏画布RaidenCanvas类 387

11.6.1 构造函数 387

11.6.2 加载资源 388

11.6.3 初始化游戏参数 390

11.6.4 游戏线程 390

11.6.5 处理键盘事件 392

11.6.6 游戏逻辑 393

11.6.7 绘制游戏画布 397

11.7 游戏音效Audio类 400

11.7.1 获取唯一实例 400

11.7.2 创建声音对象 401

11.7.3 播放声音 402

11.7.4 停止播放声音 403

11.7.5 释放声音资源 403

11.8 菜单画布MenuCanvas 403

11.8.1 构造函数 404

11.8.2 屏幕绘制和键盘输入 407

11.8.3 响应软键事件 408

11.8.4 显示弹出对话框 409

11.8.5 触发事件 410

11.8.6 固定标志菜单选项 412

11.8.7 菜单绘制类 412

11.9 菜单Menu类 414

11.9.1 构造函数 414

11.9.2 菜单的绘制 415

11.9.3 跳转页 415

11.9.4 菜单线程和切换页面 416

11.9.5 获取当前页、获取和设置选项 419

11.9.6 获取和设置参数 421

11.9.7 键盘输入 422

11.9.8 响应菜单事件 423

11.10 菜单页面MenuPage类 424

11.10.1 构造函数 424

11.10.2 设置标题和标题图片 424

11.10.3 添加菜单选项 425

11.10.4 索引与选项的对应 426

11.10.5 获取和设置索引 426

11.10.6 操作菜单选项 427

11.11 菜单选项PageItem 428

11.11.1 构造函数 428

11.11.2 菜单选项的ID 429

11.11.3 激活和禁止选中 430

11.11.4 菜单选项的排列方式 431

11.11.5 帮助说明 431

11.11.6 双选菜单BinaryPageItem类 432

11.12 默认菜单绘制DefaultMenuPainter类 433

11.12.1 绘制菜单标题 435

11.12.2 绘制单个菜单选项 436

11.12.3 绘制所有菜单选项 437

11.12.4 菜单切换 438

11.12.5 菜单选项的宽度和高度 439

11.13 菜单的接口 439

11.13.1 菜单的绘制接口MenuPainter 439

11.13.2 菜单的事件监听接口MenuListener 440

11.13.3 菜单的事件触发ItemAction接口 441

11.14 软键控制SoftButtonControl类 441

11.14.1 初始化 442

11.14.2 设置软键 442

11.14.3 激活和禁止软键 443

11.14.4 软键按下事件 444

11.14.5 绘制软键 445

11.15 弹出对话框的实现 446

11.15.1 Popup类的构造函数 447

11.15.2 初始化对话框 448

11.15.3 划分字符串 450

11.15.4 屏幕绘制 451

11.15.5 键盘事件 453

11.15.6 线程和对话框超时 454

11.15.7 弹出对话框PopupListener接口 456

11.16 雷电游戏的相关探讨 456

11.16.1 雷电游戏的地图设计 456

11.16.2 雷电游戏的子弹设计 457

11.16.3 雷电游戏的道具设计 458

11.16.4 雷电游戏的碰撞检测 458

11.16.5 雷电游戏的关卡设计 458

11.17 本章小结 459

第12章 蓝牙游戏——五子棋对战游戏的设计与实现 460

12.1 蓝牙对战游戏的策划和准备工作 461

12.1.1 蓝牙技术概述 461

12.1.2 蓝牙游戏现状 462

12.1.3 游戏的策划和准备工作 466

12.2 蓝牙通信流程简介 466

12.2.1 蓝牙API和OBEX API 466

12.2.2 蓝牙控制中心 469

12.2.3 协议栈 469

12.2.4 设备管理 470

12.2.5 搜索设备 470

12.2.6 搜索服务 470

12.2.7 建立通信 471

12.3 蓝牙对战五子棋的架构 471

12.3.1 游戏的用户界面设计 472

12.3.2 游戏的蓝牙连接流程 472

12.3.3 游戏的类结构 474

12.4 主类BTFIRMIDlet类 474

12.4.1 BTFIRMIDlet类的构造函数 474

12.4.2 软键事件处理 476

12.4.3 程序状态转换 476

12.5 逻辑类BTFIRLogic类的实现 477

12.5.1 构造函数 477

12.5.2 双方落子 478

12.5.3 检测五子连珠 480

12.5.4 外部接口 483

12.6 游戏画布类BTFIRCanvas类的实现 483

12.6.1 构造函数 484

12.6.2 绘制棋盘 485

12.6.3 用户输入 489

12.6.4 网络连接 491

12.6.5 游戏开局 492

12.6.6 提示字符串 492

12.7 连接控制类Connection类 493

12.7.1 Connection类的构造函数 493

12.7.2 启动连接 494

12.7.3 信息的收发 495

12.8 服务器类Server类 495

12.8.1 构造函数 495

12.8.2 连接线程 496

12.8.3 客户端处理程序(内部类) 498

12.8.4 收发数据 500

12.9 客户端类Client类 501

12.9.1 构造函数 501

12.9.2 连接线程 502

12.9.3 搜索设备 503

12.9.4 搜索服务 504

12.9.5 收发信息 505

12.10 蓝牙五子棋游戏的相关探讨 506

12.10.1 游戏的改善方案 506

12.10.2 蓝牙游戏设计概要 507

12.11 本章小结 507

第13章 角色扮演游戏——剑神的设计与实现 508

13.1 剑神游戏的策划和准备工作 509

13.1.1 RPG游戏概述 509

13.1.2 多结局与重玩性 510

13.1.3 游戏的准备工作 511

13.2 剑神的架构 516

13.2.1 游戏的类结构 516

13.2.2 用户界面流程 516

13.3 游戏主类和菜单 517

13.3.1 主类SwordMIDlet 518

13.3.2 菜单类的构造函数 519

13.3.3 加载图片资源 520

13.3.4 绘制线程 520

13.3.5 绘制方法 521

13.3.6 键盘事件处理 522

13.3.7 创建游戏进度画面 524

13.4 加载画布LoadingCanvas类 525

13.4.1 构造函数 525

13.4.2 绘制线程 526

13.4.3 绘制加载界面 528

13.5 游戏画布SwordCanvas类 529

13.5.1 构造函数 529

13.5.2 游戏参数的初始化 531

13.5.3 地图系统 534

13.5.4 运动系统 542

13.5.5 键盘事件处理 549

13.5.6 菜单系统 563

13.5.7 战斗系统 570

13.5.8 玩家属性 577

13.5.9 对话系统 583

13.5.10 天气系统 586

13.5.11 绘制屏幕 587

13.6 精灵与定时器 595

13.6.1 游戏精灵Sprite类 595

13.6.2 定时器的构造函数 596

13.6.3 实现天气效果 597

13.6.4 进行场景切换 597

13.6.5 回血技能 598

13.6.6 补气技能 599

13.6.7 改变攻击顺序 600

13.6.8 敌人发动攻击 602

13.6.9 落日技能 604

13.6.10 乱电和残风技能 605

13.6.11 玩家发起的普通攻击 606

13.7 游戏存储SwordStore类 607

13.7.1 检查存储是否存在 607

13.7.2 保存记录 608

13.7.3 读取记录 609

13.7.4 删除记录 610

13.8 游戏音效SoundEffects类 611

13.8.1 获取唯一实例 611

13.8.2 读取声音文件 611

13.8.3 播放声音 612

13.8.4 暂停声音 613

13.8.5 停止和释放声音 613

13.9 绘制特效GraphicsEffects类 614

13.9.1 获取唯一实例 614

13.9.2 裁剪绘制小图 614

13.9.3 绘制特效文字 615

13.10 RPG设计要点 615

13.10.1 战斗画面的设计 615

13.10.2 道具系统的设计 616

13.10.3 游戏对白的设计 617

13.11 武侠RPG手机游戏一览 617

13.11.1 《傲世奇侠传》 618

13.11.2 《仙剑奇侠传》 619

13.11.3 《佣兵天下》 619

13.11.4 《浪子剑客》 621

13.11.5 《侠侣仙踪》 623

13.12 本章小结 624