예제 #1
0
    /** */
    protected void DrawSettingsWindow()
    {
        float resX = Screen.width / 1920.0f;
        float resY = Screen.height / 1080.0f;

        if (GUI.Button(new Rect(15 * resX, Screen.height - 40 * resY, 220 * resX, 40 * resY), ((!drawSettings) ? "Show Settings" : "Hide Settings")))
        {
            drawSettings = !drawSettings;
        }

        if (GUI.Button(new Rect(235 * resX, Screen.height - 40 * resY, 200 * resX, 40 * resY), "Reset"))
        {
            Application.LoadLevel("Demo");
            return;
        }

        //
        if (drawSettings)
        {
            cameraTypeIndex = GUI.Toolbar(new Rect(10 * resX, 10 * resY, 800 * resX, 40 * resY), cameraTypeIndex, toolbarStrings);

            if (lastCameraTypeIndex != cameraTypeIndex)
            {
                lastCameraTypeIndex = cameraTypeIndex;
                switch (cameraTypeIndex)
                {
                case 0:
                    ActiveCameraSettingGUI = new CameraSettingGUI(DrawSettings_RTS_Camera);
                    camScript.SetMode      = CameraMove.CameraModeNames.RTS_Camera;
                    break;

                case 1:
                    ActiveCameraSettingGUI = new CameraSettingGUI(DrawSettings_RPG_Camera);
                    // fix it
                    if (camScript.target == null)
                    {
                        GameObject go = GameObject.FindWithTag("Player");
                        if (go)
                        {
                            camScript.SetTarget = go.transform;
                        }
                    }
                    camScript.SetMode = CameraMove.CameraModeNames.RPG_Camera;

                    break;

                case 2:
                    ActiveCameraSettingGUI = new CameraSettingGUI(DrawSettings_MTP_Camera);
                    camScript.SetMode      = CameraMove.CameraModeNames.MTP_Camera;
                    break;
                }
            }

            //
            ActiveCameraSettingGUI();
        }
    }
예제 #2
0
    void Start()
    {
        camScript = Camera.main.GetComponent <CameraMove>();

        ActiveCameraSettingGUI = new CameraSettingGUI(DrawSettings_RTS_Camera);

        if (camPrefab != null && camPrefab.Length > 0)
        {
            camPrefabNames = new string[camPrefab.Length];
            for (int idx = 0; idx < camPrefab.Length; ++idx)
            {
                camPrefabNames[idx] = camPrefab[idx].name;
            }
        }
    }