2015-09-07 77 views
0

我試圖創建一個基本的html5畫布遊戲世界。 我想在繼續框架之前在純JavaScript中實現這個。我想通過鍵盤輸入以(1)使字符跳轉。 如果有人幫助我理解/實現一個側面滾動遊戲世界或至少一些關於如何開始的信息。以用戶輸入 - 「跳轉」 - 在我的HTML5畫布中游戲

//capture user input 
      $k(document).keydown(function(event) 
      { var keycode = (event.keyCode ? event.keyCode : event.which); 
       if (keycode == 87) { //w 
        me.clearCanvas(); 
        me.pY = me.pY - 10; 
        //Draw Player on stage 
        me.drawPlayer(me.pX,me.pY,68); 
       } 
       /* if (keycode == 83) { //s 
        me.clearCanvas(); 
        me.pY = me.pY + 10; 
        //Draw Player on stage 
        me.drawPlayer(me.pX,me.pY,68); 
       } */ 
       if (keycode == 65) { //a 
        me.clearCanvas(); 
        me.pX = me.pX - 10; 
        //Draw Player on stage 
        me.drawPlayer(me.pX,me.pY,65); 
       } 
       if (keycode == 68) { //d 
        me.clearCanvas(); 
        me.pX = me.pX + 10; 
        //Draw Player on stage 
        me.drawPlayer(me.pX,me.pY,68); 
       }  
      }); 

請看看我的小提琴:http://jsfiddle.net/GAIsaaks/kbez4crk/1/

在此先感謝

+1

jsfiddle看起來很漂亮 – scniro

+0

即使包含jQuery,你的小提琴似乎也不工作。 –

+1

我有這些擺動的小提琴。他們是粗暴的演示,但他們可能有啓發性(或不?)。 **跳躍:** https://jsfiddle.net/m1erickson/qDQBh/,**跑步:** http://jsfiddle.net/m1erickson/qjamY/ – markE

回答

0

通常你只記錄輸入,因爲他們進來,並使用更新循環觸發動作。 也就是說: 按下你要設置的向上箭頭character.isJumping = true; 在更新循環中,您可能會檢查用戶是否試圖跳轉。如果角色在地面上,則開始跳躍,否則重置標誌(或者可能觸發雙跳)。每個更新中的 根據您的跳轉功能設置高度(上半部分上升,下半部分再次下降)。 如果角色觸及平臺/地面,則清除跳躍狀態。如果角色觸及屏幕底部,可能會死亡。