2013-03-12 84 views
0

我發現這個game,它在畫布上運行。在HTML畫布中重疊的精靈

他們怎麼能在同一個位置(1畫布)上有2個字符?

他們可能更新遊戲人物每秒這樣的:

context.clearRect(0, 0, width, height); 
for (i=0;i<players.lenght;i++){ 
    context.drawImage(player, player[i][x], player[i][y]); 
} 

有了這個代碼,如果2名玩家將有相同的位置,1個播放器將是不可見..

有沒有什麼更好的辦法畫出所有的球員?

回答

1

只是因爲玩家可以在同一場比賽,但這並不意味着他們看到了同樣的觀點:)(認爲任何FPS遊戲你玩在線的)

然而,你的假設是有效的。我添加到您的示例代碼的代碼只是增加你的播放器陣列中的最後一名選手這意味着你將永遠在你的遊戲被顯示爲頂部(不管是否有2個或10個玩家)

context.clearRect(0, 0, width, height); 

// Move your player to the top 
for (i=0;i<players.lenght;i++){ 
    if (players.isYou()) { 
     var you = players.splice(i, 1); 
     players.push(you); 
    } 
} 

for (i=0;i<players.lenght;i++){ 
    context.drawImage(player, player[i][x], player[i][y]); 
}