內容簡介
《actionscript 3.0遊戲編程(第2版)》是flash 遊戲開發經典書籍的第2 版。書中通過25 個完整的遊戲示例教授actionscript 編程,其中有9 個全新遊戲,用於講述更多關於actionscript 3.0 的技巧。示例中的代碼亦可用於構建非遊戲類項目。本書還講述了如何結合使用flash 和actionscript 3.0,如何使用actionscript 構建基本的遊戲框架。
本書適用於所有的flash 遊戲開發人員。
作譯者
Gary Rosenzweig 資深Flash遊戲專家、CleverMedia公司創始人和CEO。CleverMedia是一家專注於遊戲開發的公司,在過去的15年裡,共開發了 300多個基於Web的Flash和Shockwave遊戲。這些遊戲可以在該公司旗下的主要遊戲網站上找到。開發游 戲之餘,Gary喜歡寫作,樂於與人分享學習所得。除本書外,他還著有Macromedia Flash MX ActionScript for Fun & Games和Sams Teach Yourself Flash MX ActionScript in 24 Hours等書。
胡蓉 現居住於上海,曾是Flash開發社區9ria的咨.
目錄
《actionscript 3.0遊戲編程(第2版)》
第1 章 使用flash 和actionscript 3.0 1
1.1 什麼是actionscript 3.0 1
1.2 創建簡單的actionscript 程式 2
1.2.1 trace 的簡單用法 3
1.2.2 創建螢幕輸出 5
1.2.3 我們的第一個actionscript 3.0類 6
1.3 使用flash cs5 9
1.3.1 顯示對象和顯示列表 9
1.3.2 舞台 9
1.3.3 庫 10
1.3.4 時間軸 10
1.4 編輯actionscript 代碼 11
1.5 actionscript 遊戲編程策略 13
1.5.1 單類方法 14
1.5.2 任務細分法 14
1.5.3 良好的編程規範 14
1.6 actionscript 的基本概念 16
1.6.1 創建和使用變數 17
1.6.2 條件語句 18
.1.6.3 循環 19
1.6.4 函式 19
1.7 測試及調試 20
1.7.1 bug 類型 20
1.7.2 測試方法 20
1.7.3 使用調試器 21
1.8 發布遊戲 23
1.8.1 格式 23
1.8.2 flash 24
1.8.3 html 25
1.9 actionscript 遊戲編程檢查清單 26
1.9.1 發布和文檔設定 26
1.9.2 類、函式和變數的名稱 27
1.9.3 運行時問題 28
1.9.4 測試問題 28
第2 章 actionscript 遊戲元素 30
2.1 創建可視對象 30
2.1.1 使用影片剪輯 31
2.1.2 創建按鈕 32
2.1.3 繪製圖形 35
2.1.4 繪製文本 37
2.1.5 創建連結文本 39
2.1.6 創建sprite 對象組 40
2.1.7 設定sprite 的深度 42
2.2 接收用戶輸入 42
2.2.1 滑鼠輸入 43
2.2.2 鍵盤輸入 44
2.2.3 文本輸入 45
2.3 創建動畫 46
2.3.1 sprite 運動 46
2.3.2 使用timer 48
2.3.3 基於時間的動畫 49
2.3.4 基於物理的動畫 49
2.4 設計用戶互動 51
2.4.1 移動sprite 51
2.4.2 拖曳sprite 53
2.4.3 碰撞檢測 54
2.5 獲取外部數據 55
2.5.1 外部變數 55
2.5.2 載入數據 57
2.5.3 存儲本地數據 57
2.6 各類遊戲元素 58
2.6.1 定製游標 58
2.6.2 播放聲音 60
2.6.3 載入進程界面 61
2.6.4 隨機數 62
2.6.5 數組重組 63
2.6.6 顯示時間 64
2.6.7 系統數據 64
2.6.8 遊戲盜版及保護問題 65
第3 章 基本遊戲框架:配對遊戲 67
3.1 放置可互動的元素 68
3.1.1 創建遊戲部件的方法 68
3.1.2 設定flash 影片 69
3.1.3 創建基本actionscript 類 70
3.1.4 使用常量實現更好的編程 73
3.1.5 隨機分配卡片 74
3.2 遊戲開始 76
3.2.1 添加滑鼠偵聽器 76
3.2.2 建立遊戲邏輯 77
3.2.3 檢測遊戲結束 81
3.3 封裝遊戲 83
3.3.1 創建遊戲影片剪輯 83
3.3.2 添加介紹界面 84
3.3.3 添加play again 按鈕 86
3.4 添加得分和時間 86
3.4.1 添加得分 87
3.4.2 添加時間 89
3.4.3 顯示時間 90
3.4.4 遊戲結束後顯示所得分數和時間 91
3.5 添加遊戲效果 93
3.5.1 卡片翻轉動畫 93
3.5.2 有限的卡片瀏覽時間 95
3.5.3 聲音效果 96
3.6 修改遊戲 98
第4 章 腦力遊戲:記憶和推理 99
4.1 數組和數據對象 99
4.1.1 數組 100
4.1.2 數據對象 101
4.1.3 數據對象數組 102
4.2 記憶遊戲 102
4.2.1 準備影片 103
4.2.2 編程策略 105
4.2.3 類定義 105
4.2.4 設定文本、燈和音頻 106
4.2.5 播放序列 109
4.2.6 開關燈 110
4.2.7 接收並檢查玩家輸入 111
4.2.8 修改遊戲 113
4.3 推理遊戲 114
4.3.1 建立影片 114
4.3.2 定義類 117
4.3.3 開始新的遊戲 118
4.3.4 檢查玩家的猜測 121
4.3.5 評估遊戲結果 121
4.3.6 結束遊戲 123
4.3.7 清除遊戲元素 126
4.3.8 修改遊戲 127
第5 章 遊戲動畫:射擊遊戲和彈跳遊戲 128
5.1 遊戲動畫 128
5.1.1 基於時間的動畫 129
5.1.2 基於時間動畫的編程 130
5.2 空襲遊戲 133
5.2.1 影片設定和配置 133
5.2.2 飛行中的飛機 134
5.2.3 移動炮台 137
5.2.4 射向天空的炮彈 140
5.2.5 遊戲類 142
5.2.6 修改遊戲 148
5.3 彈球遊戲 149
5.3.1 建立影片 149
5.3.2 類定義 152
5.3.3 開始遊戲 153
5.3.4 新建一個小球 155
5.3.5 遊戲動畫及碰撞檢測 155
5.3.6 遊戲結束 161
5.3.7 修改遊戲 162
第6 章 拼圖遊戲:滑動與拼圖 163
6.1 編輯點陣圖圖像 164
6.1.1 導入點陣圖 164
6.1.2 點陣圖切分 165
6.2 滑動拼接遊戲 167
6.2.1 設定影片 168
6.2.2 設定類 168
6.2.3 導入圖像 170
6.2.4 將圖像切分成小塊 171
6.2.5 重新排列小塊 173
6.2.6 對玩家單擊作出反應 175
6.2.7 滑動過程的動畫 177
6.2.8 遊戲結束和清理 178
6.2.9 修改遊戲 179
6.3 拼圖遊戲 179
6.3.1 設定類 180
6.3.2 導入和切割圖像 181
6.3.3 拖曳小塊 184
6.3.4 遊戲結束 188
6.3.5 修改遊戲 189
第7 章 方向和運動:空襲2、太空岩石和氣球遊戲 190
7.1 用數學方法旋轉和移動對象 190
7.1.1 正弦函式和餘弦函式 191
7.1.2 使用餘弦和正弦移動小車 192
7.1.3 根據位置計算角度 195
7.2 空襲2 198
7.2.1 改變高射炮 198
7.2.2 改變炮彈 200
7.2.3 創建airraid2。as 202
7.3 太空岩石 203
7.3.1 遊戲元素設計 203
7.3.2 設定圖形 205
7.3.3 設定類 206
7.3.4 開始遊戲 208
7.3.5 得分和狀態顯示對象 209
7.3.6 飛船運動和玩家輸入 211
7.3.7 打開保護盾 215
7.3.8 岩石 216
7.3.9 飛彈 219
7.3.10 遊戲控制 221
7.3.11 修改遊戲 223
7.4 氣球遊戲 223
7.4.1 遊戲元素設計 224
7.4.2 設定圖形 225
7.4.3 設定類 225
7.4.4 開始遊戲 226
7.4.5 準備一個遊戲級別 226
7.4.6 主要的遊戲事件 227
7.4.7 玩家控制 229
7.4.8 彈出氣球 230
7.4.9 結束分布級別和遊戲 231
7.4.10 時間軸腳本 232
7.4.11 修改遊戲 232
第8 章 休閒遊戲:同色消除和消除方塊 233
8.1 可重用的類:爆炸點 234
8.1.1 開發爆炸點類 235
8.1.2 在影片中使用爆炸點 238
8.2 同色消除 240
8.2.1 玩同色消除遊戲 241
8.2.2 遊戲功能概述 241
8.2.3 影片和match three 類 242
8.2.4 設定遊戲格線 244
8.2.5 玩家互動 246
8.2.6 製作小塊的移動動畫 248
8.2.7 尋找匹配 250
8.2.8 尋找可能的移動 254
8.2.9 分數記錄和遊戲結束 257
8.2.10 修改遊戲 258
8.3 消除方塊 258
8.3.1 設定圖形 260
8.3.2 設定類 260
8.3.3 開始遊戲 261
8.3.4 遞歸 262
8.3.5 使用遞歸移除小塊 264
8.3.6 掉落的小塊 266
8.3.7 檢查空列 267
8.3.8 遊戲結束 269
8.3.9 修改遊戲 270
第9 章 文字遊戲:hangman 和單詞搜尋 271
9.1 字元串和文本欄位 271
9.1.1 actionscript 3.0 字元串處理 272
9.1.2 對文本欄位套用文本格式 275
9.2 hangman 281
9.2.1 設定hangman 遊戲 281
9.2.2 hangman 類 282
9.3 單詞搜尋 284
9.3.1 開發策略 285
9.3.2 定義類 286
9.3.3 創建單詞搜尋格線 287
9.3.4 用戶互動 291
9.3.5 處理髮現的單詞 293
9.3.6 修改遊戲 296
第10 章 問題和答案:問答遊戲 297
10.1 存儲和獲取遊戲數據 297
10.1.1 理解xml 數據 298
12.2.3 音效 376
12.2.4 常量和變數 376
12.2.5 開始遊戲 377
12.2.6 遊戲主循環 378
12.2.7 車的移動 380
12.2.8 檢查進度 381
12.2.9 倒計時和時鐘 382
12.2.10 遊戲結束 383
12.2.11 修改遊戲 384
第13 章 紙牌遊戲:猜大小、電子撲克和21 點 385
13.1 猜大小 385
13.1.1 創建牌堆 386
13.1.2 建立類 387
13.1.3 開始遊戲 387
13.1.4 回響玩家的行為 389
13.1.5 清空 390
13.1.6 修改遊戲 391
13.2 電子撲克 391
13.2.1 洗牌和發牌 392
13.2.2 計時事件 392
13.2.3 創建牌堆 393
13.2.4 遊戲元素 393
13.2.5 建立類 394
13.2.6 洗牌 396
13.2.7 計時事件 396
13.2.8 開始發牌 397
13.2.9 抽牌 399
13.2.10 完成一手牌 401
13.2.11 計算撲克贏分 402
13.2.12 修改遊戲 403
13.3 21 點 403
13.3.1 遊戲元素 403
13.3.2 設定類 404
13.3.3 開始遊戲 405
13.3.4 計時事件 406
13.3.5 發牌 407
13.3.6 要牌或停牌 408
13.3.7 莊家行為 409
13.3.8 計算21 點的手牌 410
13.3.9 遊戲的其他函式 412
13.3.10 修改遊戲 413
第14 章 3d 遊戲:打靶訓練、競速遊戲和地牢冒險 414
14.1 flash 3d 基礎 415
14.1.1 設定3d 位置 415
14.1.2 旋轉物體 416
14.2 打靶訓練 418
14.2.1 遊戲元素 418
14.2.2 設定類 419
14.2.3 開始遊戲 420
14.2.4 繪製加農炮和標靶 420
14.2.5 移動加農炮 421
14.2.6 打出炮彈 422
14.2.7 修改遊戲 423
14.3 3d 競速遊戲 423
14.3.1 遊戲元素 424
14.3.2 建立影片 425
14.3.3 用戶控制 427
14.3.4 玩家的移動 429
14.3.5 z 索引排序 430
14.3.6 修改遊戲 431
14.4 3d 地牢冒險 431
14.4.1 遊戲元素 432
14.4.2 設定遊戲 432
14.4.3 構造地牢 433
14.4.4 遊戲主函式 436
14.4.5 玩家的移動 437
14.4.6 收集硬幣 438
14.4.7 遊戲的局限性 439
14.4.8 擴展遊戲 439
第15 章 為iphone 製作遊戲 441
15.1 開始ios 開發 441
15.1.1 需要準備什麼 442
15.1.2 為ios 的發布 443