Autor Tema: [Friday of Code][1]Implementacion de Konami Code en Javascript  (Leído 1977 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado hkadejo

  • Global Moderator
  • The Communiter-
  • *
  • Mensajes: 3345
[Friday of Code][1]Implementacion de Konami Code en Javascript
« : noviembre 26, 2010, 09:18:52 pm »
Buenas noches comunidad, este dia empece una iniciativa personal, que consiste en tomarme un rato del viernes por la noche para programar algo no por obligacion, ni trabajo sino simplemente por diversion y ocio (si! se puede hacer XD ) que he llamado "Friday of Code" y en esta primera version, quize revivir mis tiempos de cuando jugaba Contra en el NES y hacia el truco para las 30 vidas, el famosos arriba, arriba, abajo...etc.

El codigo completo se los dejo aca:

Código: [Seleccionar]
var KonamiCode = function(v){
this.v = v;
this.secuencia = false;
this.index = 0;
this.teclas_presionadas = new Array();
this.id = 0;
this.secuencia_correcta = [38,38,40,40,37,39,37,39,66,65];
this.reset = function(){
thisObject = this;      
            clearInterval(thisObject.id);
this.secuencia = false;
this.index = 0;
this.teclas_presionadas = new Array();
}
this.secuencial = function(){
this.reset();
}
this.corroborar = function(){
if(this.index!=10){
this.v(this.teclas_presionadas[this.index-1],this.index-1,false);
}
  if(!this.secuencia)return;
  if(this.secuencia_correcta[this.index-1]!=this.teclas_presionadas[this.index-1]){
   this.reset();

   return;
  }
  //Si es la ultima tecla entonces es que se cumplio la secuencia;
  if(this.index==10){
      this.v(this.teclas_presionadas[this.index-1],this.index-1,true);
      this.reset();
  }
}
this.check = function(key){
      thisObject = this;      
      clearInterval(thisObject.id);
      this.secuencia = true;
      this.teclas_presionadas[this.index] = key;
      this.index++;
      this.corroborar();      
      thisObject.id = setInterval(function(){
thisObject.secuencial();
}, 1000);
}

this.keychek = function(e){
var KeyId = (document.all) ? e.keyCode : e.which;
    switch(KeyId){
case 37:
this.check(KeyId);
break;
case 38:
this.check(KeyId);
break;
case 39:
this.check(KeyId);
break;
case 40:
this.check(KeyId);
break;
case 65:
this.check(KeyId);
break;
case 66:
this.check(KeyId);
break;
}     
}

thisObject = this;
thisObject.id = setInterval(function(){
thisObject.secuencial();
}, 1000);
}

Se que hay en internet otras implementaciones mejores, pero simplemente quize aprender un poco y divertirme e hice una desde cero, como mejor lo pude hacer. Programar no siempre trata de grandes y poderosos sistemas, por momentos hay que recordar que tambien es para divertirse.

Post completo:http://www.hkadejo.com/blog/2010/11/26/friday-of-code-1/
Demo:http://www.hkadejo.com/demos/demo1.html

Bueno, mejoren el codigo que se puede y mucho  :thumbsup:
Feliz noche.

Desconectado hkadejo

  • Global Moderator
  • The Communiter-
  • *
  • Mensajes: 3345
Re: [Friday of Code][1]Implementacion de Konami Code en Javascript
« Respuesta #1 : noviembre 27, 2010, 08:34:32 am »
No sé nada de programación pero esperaba que pasara algo más divertido al ejecutarlo en tu demo XD

jajajaja si esa era la idea original, al ejecutar la secuencia que hiciera algo mas que mostrarte el mensajito que ves, pero tenia que empezar a trabajar en una iguana   :sorry:  por eso quedo sencillo y simple jejeje