程式设计简介与流程规划.pdfVIP

  • 1
  • 0
  • 约1.03万字
  • 约 9页
  • 2017-09-02 发布于天津
  • 举报
程式设计简介与流程规划

程式設計簡介與流程規劃 C h a p t e 在遊戲中,常會使用條狀的動態圖示來顯示遊戲的訊息。在本範例中,以條狀的 r 08 動態圖表示主角生命值的血量 ,當主角碰到敵人的時候 ,主角的生命值會呈現出 血量減少的狀態 ,也就是條狀的動態圖會越來越短 ,當血條歸零的時候 ,遊戲就 結束 。為了增加遊戲的緊湊感 ,往往會加入一些限時的任務給玩家挑戰 ,因此還 設計一種條狀的計時器 ,當在遊戲進行中,此條狀計時器會獨立計時 ,隨著遊戲 進行 ,此條狀的計時器的圖示會越來越短 ,當時間倒數達到給定的時間就結束本分 積 算 計 與 果 成 錄 記 遊戲 。本範例將學習兩個重點 。第一個重點是利用連續碰撞來改變血量的影片片 段的長度 ,第二個重點是計時器的設計與使用 。 重點 1 利用連續碰撞來改變代表血量的影片片段的長度 有關碰撞的相對討論我們在前面的範例已經有研究探討過 ,而之前的碰撞大都是 屬於一次碰撞的情況 。所謂一次碰撞是說 ,當兩物件被偵測碰撞時 ,程式依碰撞 條件改變兩物的動態 ,因此碰撞條件即消失 。例如當主角碰到障礙物 ,程式馬上 重設 ,主角即改變位置 ,因此碰撞不再產生 。飛舞的金幣產生碰撞時 ,程式馬上 改變金幣的位置 ,所以金幣碰撞的情形改為分離 ,這些動作都在瞬間執行完成 。 本範例中,我們使用鍵盤控制主角移動或是跳躍 ,當主角與敵人互相接觸後 ,必須 等主角移動離開後主角與敵人的碰撞才會結束 ,這種碰撞我們稱之為連續碰撞 。 使用影格監聽中的ENT ER_ FRA ME 事件來處理此碰撞情形 ,一般而言 ,影格速率 為24f ps ,也就是監聽事件每秒會執行24 次 ,利用此次數頻率 ,將可用主角血量 的條狀圖影片片段來遞減寬度 。因此就可以使血量的條狀圖示產生一直縮短的效 果 ,其程式如下 : addEventListener (Event.ENTER_FRAME,_playHit); function _playHit (e:Event):void { if (Object.hitTestObject (player.HitArea)) { health.width- 1; } } 其中healt h.widt h 表示血量的條狀影片片段寬度 。 8-21 重點2 計時器的設計與使用 在ActionScript 3.0 中處理計時功能時 ,一般會使用T imer 類別 ,每當達到指定的 時間間隔 ,這個類別就會傳送事件 。當要用計時器 ,必須先建立T imer 類別的實 體 ,並指示計時器事件的頻率 ,以及要產生多少次事件才停止 。例如 ,下列程式 碼會建立一個oneMinuteT imer 變數 ,對應T imer 實體 ,每秒傳送一次事件 ,持續

文档评论(0)

1亿VIP精品文档

相关文档