/*
 * Classe statique JS - WEBSOCKET:TETRIS:UTILS
 */


(function(){ 
VLA_LIBRAIRIE.tetris.utils = VLA_LIBRAIRIE.tetris.utils || {};

VLA_LIBRAIRIE.tetris.utils = {
	abonnementClavier:function () {
		$(document).ready(function(){
			$(document).unbind('keypress');
		    $(document).keydown(self.filtreTouche); 
		});
		//$(document).bind('clavier',self.clavierActif);
	}, // </abonnementClavier>
	
	desabonnementClavier:function () {
		$(document).unbind('keydown',self.filtreTouche);
		//$(document).unbind('clavier',self.clavierActif);
	}, // </desabonnementClavier>
	
	filtreTouche:function(e) {
		$(document).trigger("clavier");	
    	switch (e.keyCode) { 
        case 38: // -- Flèche haut 
    		e.preventDefault();
    		$(document).trigger("clavier.haut");
            break;
		case 40: // -- Flèche bas 
    		e.preventDefault();
    		$(document).trigger("clavier.bas");
            break;
		case 32: // -- Touche Espace
    		e.preventDefault();
    		
			break;
		case 39: // -- FlÃ¨che droite 
    		e.preventDefault();
    		$(document).trigger("clavier.droite");
            break;
			
		case 37: // -- FlÃ¨che gauche
    		e.preventDefault();
    		$(document).trigger("clavier.gauche");
            break;
            
		case 27://  -- Touche Echap
    		e.preventDefault();
    		$(document).trigger("clavier.echap");
			break;
		case 13: // -- Touche EntrÃ©e
    		e.preventDefault();
    		$(document).trigger("clavier.entree");
			break;	
    	} 
	},	// </filtreTouche>
	
	clavierActif:function(e) {
		//console.log("utilisation du clavier");
	},	// </clavierActif>
	
	randomRange:function (minVal,maxVal,floatVal)
	{
	  var randVal = minVal+(Math.random()*(maxVal-minVal));
	  return typeof floatVal=='undefined'?Math.round(randVal):randVal.toFixed(floatVal);
	},	// </randomRange>
	
	isNumber:function (n) {
		return !isNaN(parseFloat(n)) && isFinite(n);
	} // </isNumber>
};

var self = VLA_LIBRAIRIE.tetris.utils;
alias.utils = self;
})(); 
