node.js websocket+html5实现的简单联网tank大战的游戏模型
来源:互联网 发布:ubuntu 装软件 编辑:程序博客网 时间:2024/05/15 12:10
刚开始学习node.js 下载了一个node.js websocket的聊天代码,后改为一个简单的tank 大战游戏雏形,献丑了
服务端代码
可直接部署到百度bae上
var app = require('express')();var http = require('http').Server(app);var io = require('socket.io')(http);app.get('/', function(req, res){res.send('<h1>game hahaha</h1>');});//在线用户var onlineUsers = {};//当前在线人数var onlineCount = 0;//控制的主人公var players={};io.on('connection', function(socket){console.log('a user connected');//监听新用户加入socket.on('login', function(obj){//将新加入用户的唯一标识当作socket的名称,后面退出的时候会用到socket.name = obj.userid;//检查在线列表,如果不在里面就加入if(!onlineUsers.hasOwnProperty(obj.userid)) {onlineUsers[obj.userid] = obj.username; players[obj.userid]=obj.persion;//在线人数+1onlineCount++;}//向所有客户端广播用户加入io.emit('login', {onlineUsers:onlineUsers, onlineCount:onlineCount, user:obj,players:players});console.log(obj.username+'加入了游戲');});//监听用户退出socket.on('disconnect', function(){//将退出的用户从在线列表中删除if(onlineUsers.hasOwnProperty(socket.name)) {//退出用户的信息var obj = {userid:socket.name, username:onlineUsers[socket.name]};//删除delete onlineUsers[socket.name]; delete players[socket.name];//在线人数-1onlineCount--;//向所有客户端广播用户退出io.emit('logout', {onlineUsers:onlineUsers, onlineCount:onlineCount, user:obj,players:players});console.log(obj.username+'退出了游戲');}});//监听用户发送tank信息socket.on('message', function(obj){//向所有客户端广播发布的消息 players[obj.userid]=obj.persion;io.emit('message', obj);}); });http.listen(18080, function(){console.log('游戏服务器启动 *:18080');});
这是一个简单node.js websocket 服务端 有许多不足,比如没有加上创建房间和加入房间的功能
客户端的代码如下载地址如下坦克大战客户端
0 0
- node.js websocket+html5实现的简单联网tank大战的游戏模型
- html5 websocket + node.js 实现网页聊天室
- 通过(Node Js||.Net)基于HTML5的WebSocket实现实时视频文字传输(上)
- 通过(Node Js||.Net)基于HTML5的WebSocket实现实时视频文字传输(上)
- 通过(Node Js||.Net)基于HTML5的WebSocket实现实时视频文字传输1
- html5+webSocket+node.js的页面聊天应用
- 跟着韩老师学HTML5的tank大战一些问题和代码
- 基于Node.js + socket.io实现WebSocket的聊天DEMO
- Node.js+Socket.IO实现的WebSocket群聊天室源码
- HTML5 坦克大战游戏的制作思路
- html5 websocket 简单实现
- HTML5 WebSocket(Client) + JavaWeb(Server) 实现简单的聊天室功能
- java+html5的websocket简单实现BS聊天DEMO实例
- HTML5 WebSocket(Client) + JavaWeb(Server)实现简单的聊天室功能
- HTML5 WebSocket(Client) + JavaWeb(Server) 实现简单的聊天室功能
- WebSocket的两种简单实现,Html5与STOMP。
- 用canvas实现简单的飞机大战游戏
- 简单的websocket实现
- 在树莓派/ArchlinuxArm上安装yaourt
- Material Design设计之Tinting(着色)和Clipping(裁剪)
- Git分支的前世今生
- 扫盲:字符编码与字符集的区别
- 用git下载代码很慢的问题解决
- node.js websocket+html5实现的简单联网tank大战的游戏模型
- 【Java+OpenCV】安装与配置
- linux修改默认的编辑器
- JavaScript原生下拉菜单完美兼容IE
- CodeVS2296 仪仗队
- ES6入门(一):块级作用域
- OpenCV Tutorial: 銳化
- Java 手动解析xml数据
- mac下安装virtualbox+vagrant