public override void HandleInput(ScreenManager.StateControl.InputState input) { if (!Atacado) { if (input.IsLeft(null)) { EstadoPersonaje = EstadoPersonaje.Caminando; if (!ColisionHumana() && !ColisionGoblinRey()) this.MovimientoHorizontal(true); } else if (input.IsRight(null)) { EstadoPersonaje = EstadoPersonaje.Caminando; if (!ColisionHumana()) this.MovimientoHorizontal(); } else if (input.IsA(null)) { Sound.Sonido.PlayEffect(Sound.PiezasEfectos.Golpe); EstadoPersonaje = EstadoPersonaje.Atacando; AnimacionTerminada = false; FrameActual = 0; ColisionHumana(true); } else if (input.IsD(null)) { if (Forja.Forja.TrampasDisponibles > 0) { float posx; if (SpriteEffect == SpriteEffects.None) { posx = this.Posicion.X - 25; }else{ posx = this.Posicion.X + Ancho + 5; } Nivel.AddPincho(posx); --Forja.Forja.TrampasDisponibles; } } else if (AnimacionTerminada) { EstadoPersonaje = EstadoPersonaje = EstadoPersonaje.Quieto; } if (input.IsEnter(null)) { if (ColisionForja()) { Nivel.ScreenManagerController.AddScreen( Nivel.forja, null ); } } } }