Advertisement
Guest User

Untitled

a guest
Mar 1st, 2012
147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var app = require("http").createServer(handler),
  2.     io = require("socket.io").listen(app),
  3.     fs = require("fs"),
  4.     path = require("path");
  5.  
  6. function handler(req, res) {
  7.     var file = "." + req.url;
  8.     if(file === "./") file = "./index.html";
  9.    
  10.     var extname = path.extname(file);
  11.     var contentType;
  12.    
  13.     switch(extname) {
  14.         case '.html':
  15.         case '.htm':
  16.             contentType = 'text/html';
  17.             break;
  18.         case '.js':
  19.             contentType = 'text/javascript';
  20.             break;
  21.         case '.css':
  22.             contentType = 'text/css';
  23.             break;
  24.         case '.png':
  25.             contentType = 'image/png';
  26.             break;
  27.            
  28.         //don't allow any other file types
  29.         default:
  30.             console.log(extname, file);
  31.             res.writeHead(500);
  32.             res.end();
  33.             return;
  34.     }
  35.    
  36.     path.exists(file, function(exists) {
  37.         if(exists) {
  38.             fs.readFile(file, function(err, data) {
  39.                 res.writeHead(200, {'Content-Type': contentType});
  40.                 res.end(data);
  41.             });
  42.         } else {
  43.             console.log("404", "[" + file + "]");
  44.             res.writeHead(404);
  45.             res.end();
  46.         }
  47.     });
  48. }
  49.  
  50. app.listen(8080);
  51.  
  52. var players = {};
  53. var count = 0;
  54. var x;
  55. var y;
  56.  
  57. var Player = function(x, y) {
  58.     this.x = x;
  59.     this.y = y;
  60. };
  61.  
  62. io.sockets.on('connection', function(socket) {
  63.     var myNumber = ++count;
  64.     x = Math.floor(Math.random() * 100);
  65.     y = Math.floor(Math.random() * 100);
  66.     var mySelf = players[myNumber] = new Player(x, y);
  67.     for(var player in players) {
  68.         socket.emit('a', {
  69.             player : player,
  70.             x: players[player].x,
  71.             y: players[player].y
  72.         });
  73.     }
  74.     for(var player in players) {
  75.         socket.broadcast.emit('a', {
  76.             player : player,
  77.             x: players[player].x,
  78.             y: players[player].y
  79.         });
  80.     }
  81.     socket.emit('b',{
  82.             player: myNumber,
  83.             x: mySelf.x,
  84.             y: mySelf.y
  85.     });
  86.  
  87.     socket.on('keys', function(data) {
  88.         console.log(data);
  89.     });
  90.     socket.on('b', function(data) {
  91.        
  92.     });
  93. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement