Exemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        DirectionalCamera cDir = CameraApplicator.cam.Cdir;

        if (mudandoCam)
        {
            tempoDecorrido             += Time.deltaTime;
            cDir.SphericalDistance      = Mathf.Lerp(startDistance, dtForCam.distance, tempoDecorrido / TEMPO_MUDANDO_CAM);
            cDir.VarVerticalHeightPoint = Mathf.Lerp(startHeight, dtForCam.height, tempoDecorrido / TEMPO_MUDANDO_CAM);

            if (tempoDecorrido >= TEMPO_MUDANDO_CAM)
            {
                mudandoCam = false;
            }
        }
        else
        {
            Vector3 V = new Vector3(
                -CommandReader.GetAxis("Xcam", Controlador.teclado),
                -CommandReader.GetAxis("Zcam", Controlador.teclado),
                CommandReader.GetAxis("Ycam", Controlador.teclado)
                );

            if (CameraApplicator.cam)
            {
                CameraApplicator.cam.ValoresDeCamera(V.x, 0, false, false);
                float f = cDir.SphericalDistance + V.z * velMinMaxZ.x * Time.deltaTime;
                cDir.SphericalDistance = Mathf.Clamp(f, velMinMaxZ.y, velMinMaxZ.z);
                f = cDir.VarVerticalHeightPoint + V.y * velMinMaxY.x * Time.deltaTime;
                cDir.VarVerticalHeightPoint = Mathf.Clamp(f, velMinMaxY.y, velMinMaxY.z);
            }
            else
            {
                Debug.Log("Ué");
            }
        }
    }
Exemplo n.º 2
0
    private void MainAction(int index)
    {
        EditableElements target = activeEditables[index];

        if (target.type == EditableType.control)
        {
            ControlMainAction(target);
        }
        else if (target.type == EditableType.mesh || target.type == EditableType.texture)
        {
            ChangeElementMainAction(target);
        }
        else if (target.type == EditableType.color)
        {
            ColorContainerStruct ccs = secManager.GetColorAssignById(target.member).coresEditaveis[target.inIndex];

            secManager.StartChangeColor(target.member, target.inIndex, ccs);
            ChangeColorMainAction(ccs);
            estado = EstadoDoMenu.colorGrid;
        }
        else if (target.type == EditableType.personagemBase)
        {
            if (secManager == secManagerH_Base)
            {
                ChangeBaseCharacter(false);
                DirectionalCamera cDir = CameraApplicator.cam.Cdir;
                //CameraAplicator.cam.FocusBasicCam(secManager.transform, 0.2f, .7f);
                CameraApplicator.cam.Cdir.VarVerticalHeightPoint = .7f;
                SupportSingleton.Instance.InvokeOnEndFrame(() =>
                {
                    secManager.SetColorsByAssign(secManagerH_Base.ColorAssign);
                });
            }
            else if (secManager == secManagerM_Base)
            {
                ChangeBaseCharacter(true);
                DirectionalCamera cDir = CameraApplicator.cam.Cdir;
                //CameraAplicator.cam.FocusBasicCam(secManager.transform, 0.2f, .7f);
                CameraApplicator.cam.Cdir.VarVerticalHeightPoint = .7f;
                SupportSingleton.Instance.InvokeOnEndFrame(() =>
                {
                    CameraApplicator.cam.Cdir.VarVerticalHeightPoint = .7f;
                    secManager.SetColorsByAssign(secManagerM_Base.ColorAssign);
                });
            }
        }
        else if (target.type == EditableType.conclusao)
        {
            estado = EstadoDoMenu.confirmacaoAberta;
            confirmation.StartConfirmationPanel(
                () => {
                cMenu.FinishHud();
                ProvisionalStartGame.InitProvisionalStartGame(
                    testMeshCombiner, secManager
                    );
            },
                () => {
                estado = EstadoDoMenu.main;
            },
                "Iniciar o jogo com esse personagem?",
                hideSelections: true
                );
        }
    }