public void CheckVerticalUp_P2()
 {
     if (player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.Nulo && InputPlayerController.Vertical_Button_P2() > 0 && moveVerticalPlayer2 ||
         player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.Saltar)
     {
         player2.SetControllerJoystick(true);
         player2.MovementJump();
         moveVerticalPlayer1 = false;
         player2.SetIsDuck(false);
     }
 }
 public void CheckHorizontalRight_P1()
 {
     if (InputPlayerController.Horizontal_Button_P1() > 0 && moveHorizontalPlayer1 && player1.enumsPlayers.movimiento == EnumsPlayers.Movimiento.Nulo ||
         player1.enumsPlayers.movimiento == EnumsPlayers.Movimiento.MoverAdelante)
     {
         player1.SetControllerJoystick(true);
         moveHorizontalPlayer1 = false;
         player1.MovementRight();
         player1.SetIsDuck(false);
     }
 }
Beispiel #3
0
 public void Init(
     SignalBus signalBus,
     LevelConfig levelConfig,
     PlayerController playerController, InputPlayerController inputPlayerController, LevelUIController uiController)
 {
     _signalBus             = signalBus;
     _levelConfig           = levelConfig;
     _playerController      = playerController;
     _inputPlayerController = inputPlayerController;
     _uiController          = uiController;
 }
Beispiel #4
0
 public LevelEndAnimationManager(
     SignalBus signalBus, AsyncProcessor asyncProcessor,
     LevelUIController uiController,
     PlayerController playerController, InputPlayerController inputPlayerController
     )
 {
     _signalBus             = signalBus;
     _asyncProcessor        = asyncProcessor;
     _playerController      = playerController;
     _inputPlayerController = inputPlayerController;
     _uiController          = uiController;
 }
 public void MoveCursor()
 {
     if (cursorPlayer1.x >= 0 && cursorPlayer1.x < filas)
     {
         if (InputPlayerController.Horizontal_Button_P1() > 0 && cursorPlayer1.x < filas - 1)
         {
             if (aviableMoveHorizontal)
             {
                 cursorPlayer1.x++;
                 CursorSelectorPlayer1.MoveRight();
                 aviableMoveHorizontal = false;
             }
         }
         else if (InputPlayerController.Horizontal_Button_P1() < 0 && cursorPlayer1.x > 0)
         {
             if (aviableMoveHorizontal)
             {
                 cursorPlayer1.x--;
                 CursorSelectorPlayer1.MoveLeft();
                 aviableMoveHorizontal = false;
             }
         }
     }
     if (cursorPlayer1.y >= 0 && cursorPlayer1.y < columnas)
     {
         if (InputPlayerController.Vertical_Button_P1() > 0 && cursorPlayer1.y > 0)
         {
             if (aviableMoveVertical)
             {
                 cursorPlayer1.y--;
                 CursorSelectorPlayer1.MoveUp();
                 aviableMoveVertical = false;
             }
         }
         else if (InputPlayerController.Vertical_Button_P1() < 0 && cursorPlayer1.y < columnas - 1)
         {
             if (aviableMoveVertical)
             {
                 cursorPlayer1.y++;
                 CursorSelectorPlayer1.MoveDown();
                 aviableMoveVertical = false;
             }
         }
     }
     if (InputPlayerController.Vertical_Button_P1() == 0)
     {
         aviableMoveVertical = true;
     }
     if (InputPlayerController.Horizontal_Button_P1() == 0)
     {
         aviableMoveHorizontal = true;
     }
 }
 public void CheckVerticalDown_P2()
 {
     if (InputPlayerController.Vertical_Button_P2() < 0 && player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.Nulo ||
         player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.Agacharse)
     {
         player2.SetControllerJoystick(true);
         player2.MovementDuck();
         player2.enumsPlayers.movimiento         = EnumsPlayers.Movimiento.Agacharse;
         player2.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.Agachado;
         player2.SetIsDuck(true);
     }
 }
Beispiel #7
0
 public void CheckMenu()
 {
     if (InputPlayerController.PauseButton_P1())
     {
         menuPlayer1.SetActive(true);
         menuPlayer2.SetActive(false);
     }
     else if (InputPlayerController.PauseButton_P2())
     {
         menuPlayer1.SetActive(false);
         menuPlayer2.SetActive(true);
     }
 }
 public void CheckSpriteMoverAdelante_P2()
 {
     if (InputPlayerController.Horizontal_Button_P2() < 0 && InputPlayerController.Vertical_Button_P2() == 0 ||
         player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.MoverAtras)
     {
         if (player2.structsPlayer.dataPlayer.columnaActual > 0)
         {
             player2.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.MoverAdelante;
         }
         else
         {
             player2.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.Parado;
         }
     }
 }
 public void CheckSpriteMoverAtras_P2()
 {
     if (InputPlayerController.Horizontal_Button_P2() > 0 && InputPlayerController.Vertical_Button_P2() == 0 ||
         player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.MoverAdelante)
     {
         if (player2.structsPlayer.dataPlayer.columnaActual < player2.gridPlayer.GetCuadrilla_columnas() - 1)
         {
             player2.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.MoverAtras;
         }
         else
         {
             player2.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.Parado;
         }
     }
 }
Beispiel #10
0
    public LevelStartAnimationManager(
        SignalBus signalBus, AsyncProcessor asyncProcessor,
        LevelConfig levelConfig,
        LevelUIController uiController, PlayerController playerController, InputPlayerController inputPlayerController
        )
    {
        _signalBus             = signalBus;
        _asyncProcessor        = asyncProcessor;
        _levelConfig           = levelConfig;
        _playerController      = playerController;
        _inputPlayerController = inputPlayerController;
        _uiController          = uiController;

        _signalBus.Subscribe <LevelStartSignal>(s => this.OnLevelStart(s));
    }
 public void CheckVerticalCero_P2()
 {
     if (InputPlayerController.Vertical_Button_P2() == 0 &&
         (player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.Agacharse ||
          player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.AgacharseAtaque ||
          player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.AgacheDefensa))
     {
         player2.enumsPlayers.movimiento = EnumsPlayers.Movimiento.Nulo;
         player2.SetIsDuck(false);
     }
     else if (InputPlayerController.Vertical_Button_P2() == 0)
     {
         moveVerticalPlayer2 = true;
         player2.SetIsDuck(false);
     }
 }
        public void CheckVerticalDown_P1()
        {
            if (InputPlayerController.Vertical_Button_P1() < 0 && player1.enumsPlayers.movimiento == EnumsPlayers.Movimiento.Nulo ||
                player1.enumsPlayers.movimiento == EnumsPlayers.Movimiento.Agacharse)
            {
                player1.SetControllerJoystick(true);
                player1.MovementDuck();

                player1.enumsPlayers.movimiento = EnumsPlayers.Movimiento.Agacharse;
                if (player1.spritePlayerActual.ActualSprite != SpritePlayer.SpriteActual.RecibirDanio && player1.spritePlayerActual.ActualSprite
                    != SpritePlayer.SpriteActual.ContraAtaqueAgachado)
                {
                    player1.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.Agachado;
                }
                player1.SetIsDuck(true);
            }
        }
 public void CheckSpritesAgachado_P2()
 {
     if (InputPlayerController.Vertical_Button_P2() < 0 && player2.enumsPlayers.movimiento != EnumsPlayers.Movimiento.Saltar)
     {
         if (InputPlayerController.CheckPressAttackButton_P2())
         {
             player2.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.AgachadoAtaque;
         }
         else if (InputPlayerController.CheckPressDeffenseButton_P2())
         {
             player2.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.AgachadoDefensa;
         }
         else
         {
             player2.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.Agachado;
         }
     }
 }
 public void CheckSpecialAttackButton_P2()
 {
     if (player2.GetEnableSpecialAttack())
     {
         if (InputPlayerController.SpecialAttackButton_P2())
         {
             if (player2.enumsPlayers.specialAttackEquipped != EnumsPlayers.SpecialAttackEquipped.ProyectilImparable)
             {
                 if (player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.Saltar ||
                     player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.SaltoAtaque ||
                     player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.SaltoDefensa)
                 {
                     player2.spritePlayerActual.PlayAnimation("Ataque Especial protagonista");//ANIMACION DE ATAQUE ESPECIAL SALTANDO
                     enableMovementPlayer2 = false;
                 }
                 else if (player2.GetIsDuck())
                 {
                     player2.spritePlayerActual.PlayAnimation("Ataque Especial protagonista");//ANIMACION DE ATAQUE ESPECIAL AGACHADO
                     enableMovementPlayer2 = false;
                 }
                 else
                 {
                     player2.spritePlayerActual.PlayAnimation("Ataque Especial protagonista");//ANIMACION DE ATAQUE ESPECIAL PARADO
                     enableMovementPlayer2 = false;
                 }
             }
             else
             {
                 if (player2.enumsPlayers.movimiento != EnumsPlayers.Movimiento.Saltar &&
                     player2.enumsPlayers.movimiento != EnumsPlayers.Movimiento.SaltoAtaque &&
                     player2.enumsPlayers.movimiento != EnumsPlayers.Movimiento.SaltoDefensa)
                 {
                     player2.spritePlayerActual.PlayAnimation("Ataque Especial protagonista");//ANIMACION DE ATAQUE ESPECIAL SALTANDO
                     enableMovementPlayer2 = false;
                 }
                 else
                 {
                     //player2.spritePlayerActual.PlayAnimation("Salto protagonista");
                 }
             }
         }
     }
 }
 public void CheckSpritesParado_P2()
 {
     if (player2.enumsPlayers.movimiento != EnumsPlayers.Movimiento.Saltar &&
         player2.enumsPlayers.movimiento != EnumsPlayers.Movimiento.Agacharse && InputPlayerController.Horizontal_Button_P2() == 0)
     {
         if (InputPlayerController.CheckPressAttackButton_P2())
         {
             player2.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.ParadoAtaque;
         }
         else if (InputPlayerController.CheckPressDeffenseButton_P2())
         {
             player2.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.ParadoDefensa;
             player2_PvP.playerState = Player_PvP.State.Defendido;
         }
         else
         {
             player2.spritePlayerActual.ActualSprite            = SpritePlayer.SpriteActual.Parado;
             player2.spritePlayerActual.delaySpriteRecibirDanio = player2.spritePlayerActual.GetAuxDelaySpriteRecibirDanio();
         }
     }
 }
 public void CheckDeffenceButton_P2()
 {
     if (!InputPlayerController.CheckPressAttackButton_P2())
     {
         if (InputPlayerController.CheckPressDeffenseButton_P2())
         {
             player2.SetControllerJoystick(true);
             player2.Deffence();
             player2.boxColliderAgachado.state = BoxColliderController.StateBoxCollider.Defendido;
             player2.boxColliderParado.state   = BoxColliderController.StateBoxCollider.Defendido;
             player2.boxColliderSaltando.state = BoxColliderController.StateBoxCollider.Defendido;
             player2.boxColliderSprite.state   = BoxColliderController.StateBoxCollider.Defendido;
         }
         else
         {
             player2.boxColliderAgachado.state = BoxColliderController.StateBoxCollider.Normal;
             player2.boxColliderParado.state   = BoxColliderController.StateBoxCollider.Normal;
             player2.boxColliderSaltando.state = BoxColliderController.StateBoxCollider.Normal;
             player2.boxColliderSprite.state   = BoxColliderController.StateBoxCollider.Normal;
         }
     }
 }
Beispiel #17
0
 public void CheckInput()
 {
     if (direccionSelect == Direccion.Horizontal)
     {
         // EN CASO DE USAR ESTE SCRIPT EN OTRO PROYECTO TENEMOS DOS OPCIONES:
         // 1) Llevarme el script de InputManager y el de InputPlayerController y configurar el playerSetting -> input tal cual como en este proyecto
         // 2) cambiar los la condicion del if con el Input.GetKeyDown(KeyCode.BotonCorrespondiente) para que seleccione el boton.
         if (InputPlayerController.Horizontal_Button_P1() > 0)
         {
             SumarPosicion();
         }
         // EN CASO DE USAR ESTE SCRIPT EN OTRO PROYECTO TENEMOS DOS OPCIONES:
         // 1) Llevarme el script de InputManager y el de InputPlayerController y configurar el playerSetting -> input tal cual como en este proyecto
         // 2) cambiar los la condicion del if con el Input.GetKeyDown(KeyCode.BotonCorrespondiente) para que seleccione el boton.
         if (InputPlayerController.Horizontal_Button_P1() < 0)
         {
             RestarPosicion();
         }
     }
     else if (direccionSelect == Direccion.Vertical)
     {
         // EN CASO DE USAR ESTE SCRIPT EN OTRO PROYECTO TENEMOS DOS OPCIONES:
         // 1) Llevarme el script de InputManager y el de InputPlayerController y configurar el playerSetting -> input tal cual como en este proyecto
         // 2) cambiar los la condicion del if con el Input.GetKeyDown(KeyCode.BotonCorrespondiente) para que seleccione el boton.
         if (InputPlayerController.Vertical_Button_P1() > 0)
         {
             SumarPosicion();
         }
         // EN CASO DE USAR ESTE SCRIPT EN OTRO PROYECTO TENEMOS DOS OPCIONES:
         // 1) Llevarme el script de InputManager y el de InputPlayerController y configurar el playerSetting -> input tal cual como en este proyecto
         // 2) cambiar los la condicion del if con el Input.GetKeyDown(KeyCode.BotonCorrespondiente) para que seleccione el boton.
         if (InputPlayerController.Vertical_Button_P1() < 0)
         {
             RestarPosicion();
         }
     }
 }
        public void CheckSelectCursor()
        {
            if (InputPlayerController.SelectButton_P1())
            {
                switch (grillaDeSeleccion[cursorPlayer1.x, cursorPlayer1.y])
                {
                case "Aula_Anatomia":
                    gm.structGameManager.gm_dataCombatPvP.level_selected = DataCombatPvP.Level_Selected.Anatomia;
                    cursorPlayer1.condirmed = true;
                    break;

                case "Aula_Historia":
                    gm.structGameManager.gm_dataCombatPvP.level_selected = DataCombatPvP.Level_Selected.Historia;
                    cursorPlayer1.condirmed = true;
                    break;

                case "Aula_EducacionFisica":
                    gm.structGameManager.gm_dataCombatPvP.level_selected = DataCombatPvP.Level_Selected.EducacionFisica;
                    cursorPlayer1.condirmed = true;
                    break;

                case "Aula_Arte":
                    gm.structGameManager.gm_dataCombatPvP.level_selected = DataCombatPvP.Level_Selected.Arte;
                    cursorPlayer1.condirmed = true;
                    break;

                case "Aula_Matematica":
                    gm.structGameManager.gm_dataCombatPvP.level_selected = DataCombatPvP.Level_Selected.Matematica;
                    cursorPlayer1.condirmed = true;
                    break;

                case "Aula_Quimica":
                    gm.structGameManager.gm_dataCombatPvP.level_selected = DataCombatPvP.Level_Selected.Quimica;
                    cursorPlayer1.condirmed = true;
                    break;

                case "Aula_Programacion":
                    gm.structGameManager.gm_dataCombatPvP.level_selected = DataCombatPvP.Level_Selected.Programacion;
                    cursorPlayer1.condirmed = true;
                    break;

                case "Aula_TESIS":
                    gm.structGameManager.gm_dataCombatPvP.level_selected = DataCombatPvP.Level_Selected.TESIS;
                    cursorPlayer1.condirmed = true;
                    break;

                case "Aula_Cafeteria":
                    gm.structGameManager.gm_dataCombatPvP.level_selected = DataCombatPvP.Level_Selected.Cafeteria;
                    cursorPlayer1.condirmed = true;
                    break;

                default:
                    cursorPlayer1.condirmed = false;
                    break;
                }
            }
            cursorPlayer2.condirmed = true; // SACAR ESTO Y REMPLAZARLO POR LO MISMO QUE HICE CON cursorPlayer1 PERO UTILIZANDO cursorPlayer2
            if (cursorPlayer1.condirmed && cursorPlayer2.condirmed)
            {
                SceneManager.LoadScene(nameNextScene);
            }
        }
 public void CheckAttackButton_P2()
 {
     if (InputPlayerController.AttackButton_P2() && player2.GetEnableAttack() &&
         player2.enumsPlayers.movimiento != EnumsPlayers.Movimiento.MoverAdelante &&
         player2.enumsPlayers.movimiento != EnumsPlayers.Movimiento.MoverAtras &&
         !InputPlayerController.CheckPressDeffenseButton_P2())
     {
         //Debug.Log("JUGADOR 2 ATAQUE ACTIVED");
         player2.SetControllerJoystick(true);
         if (player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.Saltar && InputPlayerController.Vertical_Button_P2() < 0)
         {
             player2.spritePlayerActual.PlayAnimation("Ataque Abajo Salto protagonista");
             enableMovementPlayer2 = false;
         }
         else if (player2.enumsPlayers.movimiento == EnumsPlayers.Movimiento.Saltar && InputPlayerController.Vertical_Button_P2() >= 0)
         {
             player2.spritePlayerActual.PlayAnimation("Ataque Salto protagonista");
             enableMovementPlayer2 = false;
         }
         else
         {
             if (!player2.GetIsDuck())
             {
                 player2.spritePlayerActual.PlayAnimation("Ataque protagonista");
                 enableMovementPlayer2 = false;
             }
             else if (player2.GetIsDuck())
             {
                 player2.spritePlayerActual.PlayAnimation("Ataque Agachado protagonista");
                 enableMovementPlayer2 = false;
             }
         }
     }
 }
        public void CollisionWhitProyectil(Collider2D collision)
        {
            Proyectil proyectil = collision.GetComponent <Proyectil>();

            if (proyectil.GetComponent <ProyectilInparable>() == null && proyectil.GetComponent <GranadaGaseosa>() == null)
            {
                if (player != null && !inEnemy && inPlayer)
                {
                    bool enableDamagePlayer = true;
                    if (state == StateBoxCollider.Normal)
                    {
                        if (proyectil.GetEnemy() != null)
                        {
                            if (proyectil.disparadorDelProyectil == Proyectil.DisparadorDelProyectil.Enemigo)
                            {
                                player.SetEnableCounterAttack(true);
                                if (player.delayCounterAttack > 0)
                                {
                                    player.delayCounterAttack = player.delayCounterAttack - Time.deltaTime;
                                    if (InputPlayerController.DeffenseButton_P1())
                                    {
                                        proyectil.gameObject.SetActive(false);
                                        player.Attack(Proyectil.DisparadorDelProyectil.Jugador1);
                                        player.delayCounterAttack = player.GetAuxDelayCounterAttack();
                                        //proyectil.timeLife = 0;
                                        //enableDamagePlayer = false;
                                        proyectil.AnimationHit();
                                    }
                                }
                                if (player.delayCounterAttack <= 0 && proyectil.timeLife <= 0 && enableDamagePlayer || !ZonaContraAtaque)
                                {
                                    if (proyectil.gameObject.activeSelf && gameObject.activeSelf && proyectil != null && proyectil.GetEnemy() != null)
                                    {
                                        proyectil.GetEnemy().SetXpActual(proyectil.GetEnemy().GetXpActual() + proyectil.GetEnemy().xpForHit);
                                        player.PD.lifePlayer = player.PD.lifePlayer - proyectil.damage;
                                    }
                                    player.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.RecibirDanio;
                                    if (!ZonaContraAtaque)
                                    {
                                        //proyectil.timeLife = 0;
                                        //proyectil.gameObject.SetActive(false);
                                        proyectil.AnimationHit();
                                    }
                                }
                                else if (player.delayCounterAttack <= 0 && proyectil.timeLife > 0 && enableDamagePlayer || !ZonaContraAtaque)
                                {
                                    proyectil.GetEnemy().SetXpActual(proyectil.GetEnemy().GetXpActual() + proyectil.GetEnemy().xpForHit);
                                    player.delayCounterAttack = player.GetAuxDelayCounterAttack();
                                    player.SetEnableCounterAttack(false);
                                    player.PD.lifePlayer = player.PD.lifePlayer - proyectil.damage;
                                    player.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.RecibirDanio;
                                    //proyectil.timeLife = 0;
                                    //proyectil.gameObject.SetActive(false);
                                    proyectil.AnimationHit();
                                }
                            }
                        }
                        if (proyectil.GetPlayer() != null)
                        {
                            if (proyectil.disparadorDelProyectil == Proyectil.DisparadorDelProyectil.Jugador1 ||
                                player.enumsPlayers.numberPlayer == EnumsPlayers.NumberPlayer.player2)
                            {
                                //AUMENTO XP PARA EL ATAQUE ESPECIAL
                                if (proyectil.gameObject.activeSelf && gameObject.activeSelf && proyectil != null && proyectil.GetPlayer() != null)
                                {
                                    proyectil.GetPlayer().SetXpActual(proyectil.GetPlayer().GetXpActual() + proyectil.GetPlayer().xpForHit);
                                    proyectil.GetPlayer().PD.score = proyectil.GetPlayer().PD.score + proyectil.GetPlayer().PD.scoreForHit;
                                }
                                player.SetEnableCounterAttack(true);
                                if (player.delayCounterAttack > 0)
                                {
                                    player.delayCounterAttack = player.delayCounterAttack - Time.deltaTime;
                                    if (InputPlayerController.DeffenseButton_P2())
                                    {
                                        player.Attack(Proyectil.DisparadorDelProyectil.Jugador2);
                                        player.delayCounterAttack = player.GetAuxDelayCounterAttack();
                                        enableDamagePlayer        = false;
                                        //proyectil.timeLife = 0;
                                        proyectil.AnimationHit();
                                    }
                                }
                                if (player.delayCounterAttack <= 0 && proyectil.timeLife <= 0 && enableDamagePlayer)
                                {
                                    player.PD.lifePlayer = player.PD.lifePlayer - proyectil.damage;
                                    player.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.RecibirDanio;
                                }
                                else if (player.delayCounterAttack <= 0 && proyectil.timeLife > 0 && enableDamagePlayer)
                                {
                                    player.delayCounterAttack = player.GetAuxDelayCounterAttack();
                                    player.SetEnableCounterAttack(false);
                                    player.PD.lifePlayer = player.PD.lifePlayer - proyectil.damage;
                                    player.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.RecibirDanio;
                                    //proyectil.timeLife = 0;
                                    //proyectil.gameObject.SetActive(false);
                                    proyectil.AnimationHit();
                                }
                            }
                        }
                        if (proyectil.GetPlayer2() != null)
                        {
                            if (proyectil.disparadorDelProyectil == Proyectil.DisparadorDelProyectil.Jugador2 ||
                                player.enumsPlayers.numberPlayer == EnumsPlayers.NumberPlayer.player1 ||
                                proyectil.GetPlayer2() != null)
                            {
                                //AUMENTO XP PARA EL ATAQUE ESPECIAL
                                if (proyectil.gameObject.activeSelf && gameObject.activeSelf && proyectil != null && proyectil.GetPlayer2() != null)
                                {
                                    proyectil.GetPlayer2().SetXpActual(proyectil.GetPlayer2().GetXpActual() + proyectil.GetPlayer2().xpForHit);
                                    proyectil.GetPlayer2().PD.score = proyectil.GetPlayer2().PD.score + proyectil.GetPlayer2().PD.scoreForHit;
                                }
                                player.SetEnableCounterAttack(true);
                                if (player.delayCounterAttack > 0)
                                {
                                    player.delayCounterAttack = player.delayCounterAttack - Time.deltaTime;
                                    if (InputPlayerController.DeffenseButton_P1())
                                    {
                                        player.Attack(Proyectil.DisparadorDelProyectil.Jugador1);
                                        player.delayCounterAttack = player.GetAuxDelayCounterAttack();
                                        enableDamagePlayer        = false;
                                        //proyectil.timeLife = 0;
                                        proyectil.AnimationHit();
                                    }
                                }
                                if (player.delayCounterAttack <= 0 && proyectil.timeLife <= 0 && enableDamagePlayer)
                                {
                                    player.PD.lifePlayer = player.PD.lifePlayer - proyectil.damage;
                                    player.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.RecibirDanio;
                                }
                                else if (player.delayCounterAttack <= 0 && proyectil.timeLife > 0 && enableDamagePlayer)
                                {
                                    player.delayCounterAttack = player.GetAuxDelayCounterAttack();
                                    player.SetEnableCounterAttack(false);
                                    player.PD.lifePlayer = player.PD.lifePlayer - proyectil.damage;
                                    player.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.RecibirDanio;
                                    //proyectil.timeLife = 0;
                                    //proyectil.gameObject.SetActive(false);
                                    //proyectil.GetPoolObject().Recycle();
                                    proyectil.AnimationHit();
                                }
                            }
                        }
                    }
                    else if (state == StateBoxCollider.Defendido)
                    {
                        Player_PvP player_PvP = player.gameObject.GetComponent <Player_PvP>();
                        float      realDamage;
                        if (proyectil.GetPlayer() != null)
                        {
                            if (proyectil.disparadorDelProyectil == Proyectil.DisparadorDelProyectil.Jugador1 ||
                                player.enumsPlayers.numberPlayer == EnumsPlayers.NumberPlayer.player2)
                            {
                                //AUMENTO XP PARA EL ATAQUE ESPECIAL
                                //SI SE DEFIENDE CARGA LA MITAD DE LA BARRA DEL ATAQUE ESPECIAL.
                                if (proyectil.gameObject.activeSelf && gameObject.activeSelf && proyectil != null && proyectil.GetPlayer() != null)
                                {
                                    proyectil.GetPlayer().SetXpActual(proyectil.GetPlayer().GetXpActual() + (proyectil.GetPlayer().xpForHit / 2));
                                    proyectil.GetPlayer().PD.score = proyectil.GetPlayer().PD.score + (proyectil.GetPlayer().PD.scoreForHit / 2);
                                }
                                realDamage           = proyectil.damage - player.pointsDeffence;
                                player.PD.lifePlayer = player.PD.lifePlayer - realDamage;
                                proyectil.damage     = proyectil.GetAuxDamage();
                                //proyectil.timeLife = 0;
                                //proyectil.GetPoolObject().Recycle();
                                //proyectil.gameObject.SetActive(false);
                                proyectil.AnimationHit();
                            }
                        }
                        if (player_PvP != null)
                        {
                            //Debug.Log(proyectil.GetEnemy());
                            if (proyectil.GetPlayer2() != null)
                            {
                                if (proyectil.disparadorDelProyectil == Proyectil.DisparadorDelProyectil.Jugador2 ||
                                    player.enumsPlayers.numberPlayer == EnumsPlayers.NumberPlayer.player1)
                                {
                                    //AUMENTO XP PARA EL ATAQUE ESPECIAL
                                    //SI SE DEFIENDE CARGA LA MITAD DE LA BARRA DEL ATAQUE ESPECIAL.
                                    if (proyectil.gameObject.activeSelf && gameObject.activeSelf && proyectil != null && proyectil.GetPlayer2() != null)
                                    {
                                        proyectil.GetPlayer2().SetXpActual(proyectil.GetPlayer2().GetXpActual() + (proyectil.GetPlayer2().xpForHit / 2));
                                        proyectil.GetPlayer2().PD.score = proyectil.GetPlayer2().PD.score + (proyectil.GetPlayer2().PD.scoreForHit / 2);
                                    }
                                    realDamage           = proyectil.damage - player.pointsDeffence;
                                    player.PD.lifePlayer = player.PD.lifePlayer - realDamage;
                                    proyectil.damage     = proyectil.GetAuxDamage();
                                    //proyectil.timeLife = 0;
                                    //proyectil.GetPoolObject().Recycle();
                                    //proyectil.gameObject.SetActive(false);
                                    proyectil.AnimationHit();
                                }
                            }
                            if (player_PvP.playerSelected == Player_PvP.PlayerSelected.Defensivo)
                            {
                                switch (player_PvP.playerState)
                                {
                                case Player_PvP.State.Defendido:
                                    player.spritePlayerActual.ActualSprite = SpritePlayer.SpriteActual.ContraAtaqueParado;
                                    if (player_PvP.playerActual == Player_PvP.Player.player1)
                                    {
                                        player.Attack(Proyectil.DisparadorDelProyectil.Jugador1);
                                    }
                                    else if (player_PvP.playerActual == Player_PvP.Player.player2)
                                    {
                                        player.Attack(Proyectil.DisparadorDelProyectil.Jugador2);
                                    }
                                    realDamage           = proyectil.damage - player.pointsDeffence;
                                    player.PD.lifePlayer = player.PD.lifePlayer - realDamage;
                                    proyectil.damage     = proyectil.GetAuxDamage();
                                    //proyectil.GetPoolObject().Recycle();
                                    //proyectil.gameObject.SetActive(false);
                                    //proyectil.timeLife = 0;
                                    proyectil.AnimationHit();
                                    break;

                                default:
                                    if (proyectil.GetPlayer() != null)
                                    {
                                        if (proyectil.disparadorDelProyectil == Proyectil.DisparadorDelProyectil.Jugador1 ||
                                            player.enumsPlayers.numberPlayer == EnumsPlayers.NumberPlayer.player2)
                                        {
                                            //AUMENTO XP PARA EL ATAQUE ESPECIAL
                                            //SI SE DEFIENDE CARGA LA MITAD DE LA BARRA DEL ATAQUE ESPECIAL.
                                            if (proyectil.gameObject.activeSelf && gameObject.activeSelf && proyectil != null && proyectil.GetPlayer() != null)
                                            {
                                                proyectil.GetPlayer().SetXpActual(proyectil.GetPlayer().GetXpActual() + (proyectil.GetPlayer().xpForHit / 2));
                                                proyectil.GetPlayer().PD.score = proyectil.GetPlayer().PD.score + (proyectil.GetPlayer().PD.scoreForHit / 2);
                                            }
                                        }
                                    }
                                    else if (proyectil.GetPlayer2() != null)
                                    {
                                        if (proyectil.disparadorDelProyectil == Proyectil.DisparadorDelProyectil.Jugador2 ||
                                            player.enumsPlayers.numberPlayer == EnumsPlayers.NumberPlayer.player1)
                                        {
                                            //AUMENTO XP PARA EL ATAQUE ESPECIAL
                                            //SI SE DEFIENDE CARGA LA MITAD DE LA BARRA DEL ATAQUE ESPECIAL.
                                            if (proyectil.gameObject.activeSelf && gameObject.activeSelf && proyectil != null && proyectil.GetPlayer2() != null)
                                            {
                                                proyectil.GetPlayer2().SetXpActual(proyectil.GetPlayer2().GetXpActual() + (proyectil.GetPlayer2().xpForHit / 2));
                                                proyectil.GetPlayer2().PD.score = proyectil.GetPlayer2().PD.score + (proyectil.GetPlayer2().PD.scoreForHit / 2);
                                            }
                                        }
                                    }
                                    realDamage           = proyectil.damage - player.pointsDeffence;
                                    player.PD.lifePlayer = player.PD.lifePlayer - realDamage;
                                    proyectil.damage     = proyectil.GetAuxDamage();
                                    //proyectil.timeLife = 0;
                                    //proyectil.GetPoolObject().Recycle();
                                    //proyectil.gameObject.SetActive(false);
                                    proyectil.AnimationHit();
                                    break;
                                }
                            }
                            //Debug.Log(proyectil.GetEnemy());
                            if (proyectil.GetEnemy() != null)
                            {
                                //Debug.Log("A LA DEFENSA");
                                proyectil.GetEnemy().SetXpActual(proyectil.GetEnemy().GetXpActual() + (proyectil.GetEnemy().xpForHit / 2));
                                realDamage           = proyectil.damage - player.pointsDeffence;
                                player.PD.lifePlayer = player.PD.lifePlayer - realDamage;
                                proyectil.damage     = proyectil.GetAuxDamage();
                                //proyectil.timeLife = 0;
                                //proyectil.GetPoolObject().Recycle();
                                //proyectil.gameObject.SetActive(false);
                                proyectil.AnimationHit();
                            }
                        }
                    }
                }
                else if (enemy != null && !inPlayer && inEnemy)
                {
                    bool enableDamagePlayer = true;
                    //Debug.Log(disparadorDelProyectil);
                    if (state == StateBoxCollider.Normal)
                    {
                        if (proyectil.disparadorDelProyectil == Proyectil.DisparadorDelProyectil.Jugador1)
                        {
                            if (enemy.enumsEnemy.GetMovement() != EnumsEnemy.Movimiento.MoveToPointCombat && enemy.enumsEnemy.GetMovement() != EnumsEnemy.Movimiento.MoveToPointDeath)
                            {
                                enemy.spriteEnemy.ActualSprite = SpriteEnemy.SpriteActual.RecibirDanio;
                                enemy.life = enemy.life - proyectil.damage;

                                //AUMENTO XP PARA EL ATAQUE ESPECIAL
                                if (proyectil.gameObject.activeSelf && gameObject.activeSelf && proyectil != null && proyectil.GetPlayer() != null)
                                {
                                    proyectil.GetPlayer().SetXpActual(proyectil.GetPlayer().GetXpActual() + proyectil.GetPlayer().xpForHit);
                                    proyectil.GetPlayer().PD.score = proyectil.GetPlayer().PD.score + proyectil.GetPlayer().PD.scoreForHit;
                                }
                                //proyectil.timeLife = 0;
                                //proyectil.gameObject.SetActive(false);
                                //proyectil.GetPoolObject().Recycle();
                                proyectil.AnimationHit();
                            }
                        }
                    }
                    else if (state == StateBoxCollider.Defendido)
                    {
                        if (proyectil.disparadorDelProyectil == Proyectil.DisparadorDelProyectil.Jugador1)
                        {
                            //AUMENTO XP PARA EL ATAQUE ESPECIAL
                            //SI SE DEFIENDE CARGA LA MITAD DE LA BARRA DEL ATAQUE ESPECIAL.
                            if (proyectil.gameObject.activeSelf && gameObject.activeSelf && proyectil != null && proyectil.GetPlayer() != null)
                            {
                                proyectil.GetPlayer().SetXpActual(proyectil.GetPlayer().GetXpActual() + (proyectil.GetPlayer().xpForHit / 2));
                                proyectil.GetPlayer().PD.score = proyectil.GetPlayer().PD.score + (proyectil.GetPlayer().PD.scoreForHit / 2);
                            }
                            if (enemy.enumsEnemy.typeEnemy != EnumsEnemy.TiposDeEnemigo.Defensivo)
                            {
                                float realDamage = proyectil.damage - enemy.pointsDeffence;
                                enemy.life = enemy.life - realDamage;
                            }
                            else
                            {
                                if (enemy.enumsEnemy.GetMovement() == EnumsEnemy.Movimiento.DefensaEnElLugar)
                                {
                                    //MECANICA DEFENSIVA DEL ENEMIGO DEFENSIVO//
                                    if (enemy.GetComponent <Defensivo>() != null)
                                    {
                                        Defensivo enemyDeffended = enemy.GetComponent <Defensivo>();
                                        if (enemyDeffended.GetStateDeffence() == Defensivo.StateDeffence.CounterAttackDeffense)
                                        {
                                            enemy.spriteEnemy.ActualSprite = SpriteEnemy.SpriteActual.ContraAtaque;
                                            //enemy.Attack(false, false, true, cuadrilla);
                                            enemy.Attack(false, false, true, proyectil);
                                            enemyDeffended.SetStateDeffense(Defensivo.StateDeffence.Nulo);
                                            enemyDeffended.delayStateCounterAttackDeffense = 0;
                                            enemyDeffended.delayStateDeffense = enemyDeffended.GetAuxDelayStateDeffense();
                                            enemyDeffended.delayVulnerable    = enemyDeffended.GetAuxDelayVulnerable();
                                            if (enemy.damageCounterAttack)
                                            {
                                                float realDamage = proyectil.damage - enemy.pointsDeffence;
                                                enemy.life = enemy.life - realDamage;
                                            }
                                        }
                                        else if (enemyDeffended.GetStateDeffence() == Defensivo.StateDeffence.NormalDeffense)
                                        {
                                            if (enemy.damageCounterAttack)
                                            {
                                                float realDamage = proyectil.damage - enemy.pointsDeffence;
                                                enemy.life = enemy.life - realDamage;
                                            }
                                        }
                                    }
                                    //-----------------------------------------//
                                }
                                else
                                {
                                    enemy.life = enemy.life - proyectil.damage;
                                }
                            }
                            //proyectil.timeLife = 0;
                            //proyectil.GetPoolObject().Recycle();
                            //proyectil.gameObject.SetActive(false);
                            proyectil.AnimationHit();
                        }
                    }
                }
            }
        }
Beispiel #21
0
        public void CheckSelectCursor()
        {
            if (InputPlayerController.SelectButton_P1())
            {
                //Debug.Log(cursorPlayer1.x+", "+cursorPlayer1.y);
                switch (grillaDeSeleccion[cursorPlayer1.x, cursorPlayer1.y])
                {
                case "Balanceado":
                    gm.structGameManager.gm_dataCombatPvP.player1_selected = DataCombatPvP.Player_Selected.Balanceado;
                    cursorPlayer1.condirmed = true;
                    break;

                case "Agresivo":
                    gm.structGameManager.gm_dataCombatPvP.player1_selected = DataCombatPvP.Player_Selected.Agresivo;
                    cursorPlayer1.condirmed = true;
                    break;

                case "Defensivo":
                    gm.structGameManager.gm_dataCombatPvP.player1_selected = DataCombatPvP.Player_Selected.Defensivo;
                    cursorPlayer1.condirmed = true;
                    break;

                case "Protagonista":
                    gm.structGameManager.gm_dataCombatPvP.player1_selected = DataCombatPvP.Player_Selected.Protagonista;
                    cursorPlayer1.condirmed = true;
                    break;

                default:
                    cursorPlayer1.condirmed = false;
                    break;
                }
            }
            if (InputPlayerController.SelectButton_P2())
            {
                //Debug.Log(cursorPlayer1.x + ", " + cursorPlayer1.y);
                switch (grillaDeSeleccion[cursorPlayer2.x, cursorPlayer2.y])
                {
                case "Balanceado":
                    gm.structGameManager.gm_dataCombatPvP.player2_selected = DataCombatPvP.Player_Selected.Balanceado;
                    cursorPlayer2.condirmed = true;
                    break;

                case "Agresivo":
                    gm.structGameManager.gm_dataCombatPvP.player2_selected = DataCombatPvP.Player_Selected.Agresivo;
                    cursorPlayer2.condirmed = true;
                    break;

                case "Defensivo":
                    gm.structGameManager.gm_dataCombatPvP.player2_selected = DataCombatPvP.Player_Selected.Defensivo;
                    cursorPlayer2.condirmed = true;
                    break;

                case "Protagonista":
                    gm.structGameManager.gm_dataCombatPvP.player2_selected = DataCombatPvP.Player_Selected.Protagonista;
                    cursorPlayer2.condirmed = true;
                    break;

                default:
                    cursorPlayer2.condirmed = false;
                    break;
                }
            }

            if (cursorPlayer1.condirmed && cursorPlayer2.condirmed)
            {
                SceneManager.LoadScene(nameNextScene);
            }
        }
Beispiel #22
0
        public void MoveCursor()
        {
            //---MOVIMIENTO DEL CURSOR DEL PLAYER 1---//
            if (cursorPlayer1.x >= 0 && cursorPlayer1.x < filas)
            {
                if (InputPlayerController.Horizontal_Button_P1() > 0 && cursorPlayer1.x < filas - 1)
                {
                    if (aviableMoveHorizontalP1)
                    {
                        cursorPlayer1.x++;
                        CursorSelectorPlayer1.MoveRight();
                        aviableMoveHorizontalP1 = false;
                    }
                }
                else if (InputPlayerController.Horizontal_Button_P1() < 0 && cursorPlayer1.x > 0)
                {
                    if (aviableMoveHorizontalP1)
                    {
                        cursorPlayer1.x--;
                        CursorSelectorPlayer1.MoveLeft();
                        aviableMoveHorizontalP1 = false;
                    }
                }
            }
            if (cursorPlayer1.y >= 0 && cursorPlayer1.y < columnas)
            {
                if (InputPlayerController.Vertical_Button_P1() > 0 && cursorPlayer1.y > 0)
                {
                    if (aviableMoveVerticalP1)
                    {
                        cursorPlayer1.y--;
                        CursorSelectorPlayer1.MoveUp();
                        aviableMoveVerticalP1 = false;
                    }
                }
                else if (InputPlayerController.Vertical_Button_P1() < 0 && cursorPlayer1.y < columnas - 1)
                {
                    if (aviableMoveVerticalP1)
                    {
                        cursorPlayer1.y++;
                        CursorSelectorPlayer1.MoveDown();
                        aviableMoveVerticalP1 = false;
                    }
                }
            }
            if (InputPlayerController.Vertical_Button_P1() == 0)
            {
                aviableMoveVerticalP1 = true;
            }
            if (InputPlayerController.Horizontal_Button_P1() == 0)
            {
                aviableMoveHorizontalP1 = true;
            }
            //----------------------------------------//

            //---MOVIMIENTO DEL CURSOR DEL PLAYER 2---//
            if (cursorPlayer2.x >= 0 && cursorPlayer2.x < filas)
            {
                if (InputPlayerController.Horizontal_Button_P2() > 0 && cursorPlayer2.x < filas - 1)
                {
                    if (aviableMoveHorizontalP2)
                    {
                        cursorPlayer2.x++;
                        CursorSelectorPlayer2.MoveRight();
                        aviableMoveHorizontalP2 = false;
                    }
                }
                else if (InputPlayerController.Horizontal_Button_P2() < 0 && cursorPlayer2.x > 0)
                {
                    if (aviableMoveHorizontalP2)
                    {
                        cursorPlayer2.x--;
                        CursorSelectorPlayer2.MoveLeft();
                        aviableMoveHorizontalP2 = false;
                    }
                }
            }
            if (cursorPlayer2.y >= 0 && cursorPlayer2.y < columnas)
            {
                if (InputPlayerController.Vertical_Button_P2() > 0 && cursorPlayer2.y > 0)
                {
                    if (aviableMoveVerticalP2)
                    {
                        cursorPlayer2.y--;
                        CursorSelectorPlayer2.MoveUp();
                        aviableMoveVerticalP2 = false;
                    }
                }
                else if (InputPlayerController.Vertical_Button_P2() < 0 && cursorPlayer2.y < columnas - 1)
                {
                    if (aviableMoveVerticalP2)
                    {
                        cursorPlayer2.y++;
                        CursorSelectorPlayer2.MoveDown();
                        aviableMoveVerticalP2 = false;
                    }
                }
            }
            if (InputPlayerController.Vertical_Button_P2() == 0)
            {
                aviableMoveVerticalP2 = true;
            }
            if (InputPlayerController.Horizontal_Button_P2() == 0)
            {
                aviableMoveHorizontalP2 = true;
            }
            //----------------------------------------//
        }
        public void CheckInputPlayer2()
        {
            if (player2 != null)
            {
                if (player2_PvP == null)
                {
                    CheckVerticalUp_P2();
                    CheckVerticalDown_P2();
                    CheckVerticalCero_P2();
                    CheckHorizontalLeft_P2();
                    CheckHorizontalRight_P2();
                    CheckHorizontalCero_P2();
                    CheckAttackButton_P2();
                    CheckDeffenceButton_P2();
                    CheckSpecialAttackButton_P2();
                }
                else
                {
                    switch (player2_PvP.playerSelected)
                    {
                    case Player_PvP.PlayerSelected.Agresivo:
                        CheckVerticalUp_P2();
                        CheckVerticalCero_P2();
                        CheckHorizontalLeft_P2();
                        CheckHorizontalRight_P2();
                        CheckHorizontalCero_P2();
                        CheckAttackButton_P2();
                        CheckDeffenceButton_P2();
                        CheckSpecialAttackButton_P2();
                        break;

                    case Player_PvP.PlayerSelected.Balanceado:
                        CheckVerticalUp_P2();
                        CheckVerticalDown_P2();
                        CheckVerticalCero_P2();
                        CheckHorizontalLeft_P2();
                        CheckHorizontalRight_P2();
                        CheckHorizontalCero_P2();
                        CheckAttackButton_P2();
                        CheckDeffenceButton_P2();
                        CheckSpecialAttackButton_P2();
                        break;

                    case Player_PvP.PlayerSelected.Defensivo:
                        CheckVerticalCero_P2();
                        CheckHorizontalLeft_P2();
                        CheckHorizontalRight_P2();
                        CheckHorizontalCero_P2();
                        CheckAttackButton_P2();
                        CheckDeffenceButton_P2();
                        CheckSpecialAttackButton_P2();
                        break;

                    case Player_PvP.PlayerSelected.Protagonista:
                        CheckVerticalUp_P2();
                        CheckVerticalDown_P2();
                        CheckVerticalCero_P2();
                        CheckHorizontalLeft_P2();
                        CheckHorizontalRight_P2();
                        CheckHorizontalCero_P2();
                        CheckAttackButton_P2();
                        CheckDeffenceButton_P2();
                        CheckSpecialAttackButton_P2();
                        break;
                    }
                }

                if (!InputPlayerController.CheckPressDeffenseButton_P2() && !player2.GetIsJumping() &&
                    player2.enumsPlayers.movimiento != EnumsPlayers.Movimiento.Saltar &&
                    player2.enumsPlayers.movimiento != EnumsPlayers.Movimiento.SaltoAtaque &&
                    player2.enumsPlayers.movimiento != EnumsPlayers.Movimiento.SaltoDefensa)
                {
                    player2.gridPlayer.CheckCuadrillaOcupada(player2.structsPlayer.dataPlayer.columnaActual, player2.structsPlayer.dataPlayer.CantCasillasOcupadas_X, player2.structsPlayer.dataPlayer.CantCasillasOcupadas_Y);
                }
            }
        }