public virtual void Start()
 {
     componenteDeAnimacion = GetComponent <Animator>();
     accionesDelPersonaje  = GetComponent <InterfazDeMetodosGenericosParaAcciones>();
     player                = GetComponent <DatosPersistentesDelPlayer>();
     playerNumber          = player.playerNumber;
     oponente              = BuscandoOponente();
     baseNombreHorizontal += playerNumber.ToString();
     baseNombreVertical   += playerNumber.ToString();
     movimientoDelObjeto   = GetComponent <MovimientoGenerico>();
     if (playerNumber == 2)
     {
         punioDebil   = KeyCode.Joystick2Button0;
         punioFuerte  = KeyCode.Joystick2Button1;
         patadaDebil  = KeyCode.Joystick2Button2;
         patadaFuerte = KeyCode.Joystick2Button3;
     }
     else if (playerNumber == 1)
     {
         punioDebil   = KeyCode.Joystick1Button0;
         punioFuerte  = KeyCode.Joystick1Button1;
         patadaDebil  = KeyCode.Joystick1Button2;
         patadaFuerte = KeyCode.Joystick1Button3;
     }
 }
Пример #2
0
    private float LoQueTieneQueQuitarDependiendoDeTipoDeGolpe(InterfazDeMetodosGenericosParaAcciones instanciaAComponenteDeDanioMetodo)
    {
        float fuerzaAQuitar = 0;

        //Sacamos del objecto de colision su padre
        if (instanciaAComponenteDeDanioMetodo.IsPunioActivo)
        {
            fuerzaAQuitar = instanciaAComponenteDeDanioMetodo.Punio;
        }
        else if (instanciaAComponenteDeDanioMetodo.IsPatadaActivo)
        {
            fuerzaAQuitar = instanciaAComponenteDeDanioMetodo.Patada;
        }
        else if (instanciaAComponenteDeDanioMetodo.IsFireBall)
        {
            fuerzaAQuitar = 100;
        }
        else if (instanciaAComponenteDeDanioMetodo.IsDragonPunch)
        {
            fuerzaAQuitar = instanciaAComponenteDeDanioMetodo.FuerzaDragonPunch;
        }

        //Debug.Log("Fuerza a quitar " + fuerzaAQuitar);
        return(fuerzaAQuitar);
    }
Пример #3
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.gameObject.CompareTag("golpe"))
        {
            if (collision.gameObject.GetComponent <ReferenciaAlPadre>().padre.GetComponent <InterfazDeMetodosGenericosParaAcciones>() != null)
            {
                instanciaAComponenteDeDanioDelOtro = collision.gameObject.GetComponent <ReferenciaAlPadre>().padre.GetComponent <InterfazDeMetodosGenericosParaAcciones>();
            }

            if (!GetComponent <BaseMaquinaEstadosFinita>().IsGolpeado&& GetComponent <BaseMaquinaEstadosFinita>().GetType() != typeof(EstadoDefender) && collision.gameObject.GetComponent <ReferenciaAlPadre>().padre != gameObject)
            {
                GetComponent <InterfazDeMetodosGenericosParaAcciones>().QuitarVida(LoQueTieneQueQuitarDependiendoDeTipoDeGolpe(instanciaAComponenteDeDanioDelOtro));
                if (collision.gameObject.GetComponent <ComportamientoFireBall>() != null)
                {
                    collision.gameObject.GetComponent <Animator>().SetTrigger("colisiono");
                }
                //aplicamos la fuerza del oponente, y se la aplicamos en direccion hacia atras de este personaje
                //fuerza a aplicar del oponente
                GetComponent <MovimientoGenerico>().AplicarFuerzaPersonaje(FuerzaAplicarParaDesplazamientoDelObjeto(instanciaAComponenteDeDanioDelOtro));
                if (GetComponent <InterfazDeMetodosGenericosParaAcciones>().Vida <= 0)
                {
                    GetComponent <BaseMaquinaEstadosFinita>().Player.TerminarElJuegoPorqueUnoDeLosDosJugadoresGano();
                }
            }
        }
    }
Пример #4
0
 public override void Start()
 {
     base.Start();
     inputManager          = GameObject.Find("ControladorDeEscenario").GetComponent <InputManager>();
     componenteDeAnimacion = GetComponent <Animator>();
     accionesDelPersonaje  = GetComponent <InterfazDeMetodosGenericosParaAcciones>();
     player                = GetComponent <DatosPersistentesDelPlayer>();
     playerNumber          = player.playerNumber;
     oponente              = BuscandoOponente();
     baseNombreHorizontal += playerNumber.ToString();
     baseNombreVertical   += playerNumber.ToString();
     movimientoDelObjeto   = GetComponent <MovimientoGenerico>();
     if (playerNumber == 2)
     {
         punioDebil   = InputDefinidosParaElJuego.PunioDebil_p2;
         punioFuerte  = InputDefinidosParaElJuego.PunioFuerte_p2;
         patadaDebil  = InputDefinidosParaElJuego.PatadaDebil_p2;
         patadaFuerte = InputDefinidosParaElJuego.PatadaFuerte_p2;
     }
     else if (playerNumber == 1)
     {
         punioDebil   = InputDefinidosParaElJuego.PunioDebil;
         punioFuerte  = InputDefinidosParaElJuego.PunioFuerte;
         patadaDebil  = InputDefinidosParaElJuego.PatadaDebil;
         patadaFuerte = InputDefinidosParaElJuego.PatadaFuerte;
     }
 }
 private void Start()
 {
     quienLoLanza = GetComponent <ReferenciaAlPadre>().padre.GetComponent <InterfazDeMetodosGenericosParaAcciones>();
     maquina      = GetComponent <ReferenciaAlPadre>().padre.GetComponent <BaseMaquinaEstadosFinita>();
     speed       += quienLoLanza.SpeedFireBall;
     Debug.Log(maquina.CardinalidadDeHaciaAtras());
     GetComponent <SpriteRenderer>().flipY = maquina.CardinalidadDeHaciaAtras() == 1 ? true : false;
 }
Пример #6
0
    private float FuerzaAplicarParaDesplazamientoDelObjeto(InterfazDeMetodosGenericosParaAcciones instanciaAComponenteDeOponente)
    {
        float fuerzaAplicar = 0;

        //Sacamos del objecto de colision su padre
        if (instanciaAComponenteDeOponente.IsPunioActivo)
        {
            fuerzaAplicar = instanciaAComponenteDeOponente.FuerzaGolpeDebil;
        }
        else if (instanciaAComponenteDeOponente.IsPatadaActivo)
        {
            fuerzaAplicar = instanciaAComponenteDeOponente.FuerzaGolpeFuerte;
        }
        else if (instanciaAComponenteDeOponente.IsDragonPunch)
        {
            fuerzaAplicar = instanciaAComponenteDeOponente.FuerzaEmpujeDragonPunch;
        }
        //ahora que sabemos cual es la fuerza, debemos buscar la cardinalidad de el
        fuerzaAplicar *= GetComponent <BaseMaquinaEstadosFinita>().CardinalidadDeHaciaAtras();
        return(fuerzaAplicar);
    }