예제 #1
0
    // Update is called once per frame
    void Update()
    {
        P1 = GameObject.FindGameObjectWithTag("P1");
        P2 = GameObject.FindGameObjectWithTag("P2");
        //animP1 = P1.GetComponent<Animator>();
        //animP2 = P2.GetComponent<Animator>();

        GenerarPowerUp();
        MoverGenerador();
        //MainCam.transform.position = Vector3.Slerp(MainCam.transform.position, cameras[CurrentLevel].transform.position, t);
        for (int i = 0; i < spawns.Length; i++)
        {
            if (i == CurrentLevel)
            {
                spawns[i].SetActive(true);
            }
            else
            {
                spawns[i].SetActive(false);
            }
        }
        if (SceneChangeManager.freezCamera)
        {
            CameraCube.transform.position = Vector3.Lerp(CameraCube.transform.position, cameraPositions[CurrentLevel].position, t);
        }
        if (SceneChangeManager.cambioScena)
        {
            Debug.Log("CambaEscena");
            HealManager.vidaP1             = HealManager.vidaMaxima;
            HealManager.vidaP2             = HealManager.vidaMaxima;
            spawn1                         = spawns[CurrentLevel].transform.Find("spawnP1").transform.position;
            spawn2                         = spawns[CurrentLevel].transform.Find("spawnP2").transform.position;
            generador.position             = spawn1;
            rbGenerador.velocity           = new Vector3(6, 0, 0);
            P1.transform.position          = new Vector3(0, -100, 0);
            P2.transform.position          = new Vector3(0, -100, 0);
            SceneChangeManager.cambioScena = false;
            if (currentPowerUp != null)
            {
                PowerUpsBase pb = currentPowerUp.GetComponent <PowerUpsBase>();
                if (pb.isParented == false)
                {
                    Destroy(currentPowerUp);
                }
                currentPowerUp = null;
            }

            Invoke("SpawnPlayers", 1.5f);
        }
    }
예제 #2
0
    public void CogerPowerUp(GameObject objetoRecogido)
    {
        if (objetoRecogido.CompareTag("PowerUp") && powerUp == null)
        {
            PowerUpsBase pb = objetoRecogido.GetComponent <PowerUpsBase>();
            if (pb.isParented == false)
            {
                powerUp = objetoRecogido.GetComponent <PowerUpsBase>();
                canUse(false);
            }



            if (transform.tag == "P1" && powerUp != null)
            {
                powerUp.Coger(transform, "P2", controlPersonaje, emitter);
            }
            else
            {
                powerUp.Coger(transform, "P1", controlPersonaje, emitter);
            }
        }
    }