看板 Flash 關於我們 聯絡資訊
※ 引述《weirdfoot (怪腳之哈比)》之銘言: : 各位大大好 : 小的最近在構思一個小遊戲 : 想先寫幾個小程式 來試試看順暢度 : 今天試的是子彈發射 : http://www.mediafire.com/download/d4y5gryixgaovpy/ShootTest_2013.fla : (家裡只有CS3 如有不便我可以只貼AS...) : 左右鍵可以移動 空白鍵發射子彈 : 我的問題是 : 我按下空白鍵後會連發 : 可是我想要發射第一發後 間隔一段時間再發射下一發 : 可是我沒有學過 家裡有的書也找不到相關的寫法.. : 想問問有沒有辦法做到 : 1.不連發 一下空白鍵發射一發 or 2.隔一段時間一發 : 這樣不知道會不會太伸手.. : 麻煩各位大大了(跪 遊戲中,建議用一個變數去判斷影格同步 以下描述邏輯,這是我比較常用的作法 var shoot_delay:Number=new Number(0) Keydown{ if(shoot_delay==0){ 發射 shoot_delay=30 } } Keyup{ shoot_delay=0 //可以不要,否則連按就可以拼命射 } EnterFrame{ if(shoot_delay>0){ shoot_delay-- } } 這樣就可以達到控制間隔的目的 -- ◥▇◣◣ の色 白い言葉 \ ╲ ◥█████◣      純粋へと戻る /‘ d▄▄▄◣/‘ ◥██████   願いましょう 幸せになれ ▂▄▄▄▄▆ ██████ sweet my sweet my dream ◢█   —◢██████  ~川澄 舞~ ◥██◤██http://youtu.be/EKzHyUFp87Y
-- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.64.175.178
SouthernSun:推推!! 09/30 18:02
weirdfoot:先感謝K大T_T 但因為我是用一個布林值檢測要不要發射 09/30 22:59
weirdfoot:原是keyDown後變數變true Enterframe檢測true後開始發射 09/30 23:00
weirdfoot:依照大大的邏輯測試 還是會有連發的狀況 我猜是因為沒有 09/30 23:00
weirdfoot:在"某個地方"檢測如果delay值>0則布林值變false 09/30 23:01
weirdfoot:但我不確定要寫在哪..要另起一個Enterframe檢測嗎? 09/30 23:02
KawasumiMai:布林只有true false兩種,int的true(正數)則有"程度" 10/01 22:57
KawasumiMai:一樣用EnterFrame,反向思考,delay=0就是true 10/01 22:58
KawasumiMai:依據你的作法,可以在EnterFrame檢測true後修改delay 10/01 23:02