我正在用JavaScript和html编程一个多人游戏。为了实现这个目标,我需要玩家之间的交流。我该怎么做呢?
我代码: enchant();
window.onload = function() {
var game = new Game(320, 320);
这是我的第一个问题:应该计算现在有多少玩家,谁最后进入房间。然后应该给这个玩家分配一个号码。我想用一个函数来解决这个问题。
var my_bear = get_player_number();
game.preload('chara1.gif');
game.fps=15;
var bears = [];
game.onload = function() {
var ix;
var bear;
for (ix = 0; ix < 5; ix++) {
bear=new Sprite(32, 32);
bear.image = game.assets['chara1.gif'];
bear.frame = 4;
bear.x=Math.random()*300;
bear.y=Math.random()*300;
game.rootScene.addChild(bear);
bears.push(bear);
}
};
game.start();
var addit=6;
document.addEventListener('keyup',function (evt) {
if(evt.keyCode == 38){bears[my_bear-1].y-=addit;}
if(evt.keyCode == 39){bears[my_bear-1].x+=addit;}
if(evt.keyCode == 40){bears[my_bear-1].y+=addit;}
if(evt.keyCode == 37){bears[my_bear-1].x-=addit;}
});
}
由于我的程序简化,你有5只熊。其中一个可以用方向键控制(bear变量的值为"my_bear")。
但它仍然是一款单人游戏…
init_other_players(my_bear);
一个功能将是完美的,它可以检测并指示其他电脑上玩家的任何动作。我的程序可以使用web空间和两个域名。
我非常期待你有用的答案,谢谢!!
首先,如果你想要多人游戏,你需要一些东西来管理房间等等,所以你需要一个服务器。对于游戏,我建议使用NodeJS。Node是一个用JS构建的服务器应用程序,所以这是一门你熟悉的语言。现在你不需要知道太多关于node的知识,在你编写代码的时候简单地运行它就足够了,之后我想说你应该更深入地研究它。
之后,我会查看Socket。IO,它可以让你管理你的websockets,因此用户和服务器之间的通信。在网站的入门部分有关于聊天的教程,可以让你了解用户之间交流的基本知识。
从那里你可以创建你的房间和游戏的其余部分的逻辑!它可能看起来有很多东西要学,但老实说,它解释得很好,很容易掌握。