Esempio n. 1
0
	var tick = function(msDuration) {
	  processEvents();
	  
	  var mainSurface = gamejs.display.getSurface();
		game.update(msDuration);
		game.draw(mainSurface);
	};
Esempio n. 2
0
	var onKeyDown = function(key) {
		if (key == gamejs.event.K_SPACE) {
			game.fire();
		} else if (key == gamejs.event.K_TAB) {
		  game.scoreboard.show();
		} else {
			var direction = utils.keyToDirection(key);
		  game.changeDirection(direction);
		}
	};
Esempio n. 3
0
	var onKeyUp = function(key) {
	  if (key == gamejs.event.K_TAB) {
	    game.scoreboard.hide();
	  } else if (utils.keyToDirection(key) === game.currentDirection) {
			game.stopMoving();
		}
	};
Esempio n. 4
0
var start = function(display, socket) {
  socket.on('gameStateDelta', function(state) {
	  game.updateState(state);
	});
	
	var game = new Game(params.gameWidth, params.gameHeight, socket);
	
	ipad.start(game, socket);
	
  socket.emit('startGame', function(gameInit) {
  	game.updateState(gameInit);
  });
	
	var onKeyDown = function(key) {
		if (key == gamejs.event.K_SPACE) {
			game.fire();
		} else if (key == gamejs.event.K_TAB) {
		  game.scoreboard.show();
		} else {
			var direction = utils.keyToDirection(key);
		  game.changeDirection(direction);
		}
	};
	
	var onKeyUp = function(key) {
	  if (key == gamejs.event.K_TAB) {
	    game.scoreboard.hide();
	  } else if (utils.keyToDirection(key) === game.currentDirection) {
			game.stopMoving();
		}
	};
	
	var processEvents = function() {
	  var byType = {};
		byType[gamejs.event.KEY_DOWN] = [];
		byType[gamejs.event.KEY_UP] = [];
		
		gamejs.event.get().forEach(function(e) {
			if (e.type == gamejs.event.KEY_DOWN || e.type == gamejs.event.KEY_UP) {
				byType[e.type].push(e);
			}
		});
		
		if (byType[gamejs.event.KEY_DOWN].length > 0) {
		  _(byType[gamejs.event.KEY_DOWN]).each(function(e) {
		    onKeyDown(e.key);
		  });
		}
		
		if (byType[gamejs.event.KEY_UP].length > 0) {
		  var e = byType[gamejs.event.KEY_UP][0];
		  onKeyUp(e.key);
		}
	};
	
	var tick = function(msDuration) {
	  processEvents();
	  
	  var mainSurface = gamejs.display.getSurface();
		game.update(msDuration);
		game.draw(mainSurface);
	};
	
	gamejs.time.fpsCallback(tick, this, 25);
};
Esempio n. 5
0
 socket.emit('startGame', function(gameInit) {
 	game.updateState(gameInit);
 });