Ejemplo n.º 1
0
        private void ReleaseTarget()
        {
            hasTarget = false;
            m_target  = null;

            At.SetValue((Transform)null, typeof(VideoCamera), VideoCamera.Instance, "m_targetTrans");
            At.SetValue(VideoCamera.VideoCamState.NORMAL, typeof(VideoCamera), VideoCamera.Instance, "m_state");
        }
Ejemplo n.º 2
0
        private void SetFreeCam(bool active)
        {
            At.Call(typeof(VideoCamera), VideoCamera.Instance, "SetCameraActive", null, active);

            if (active)
            {
                At.SetValue(true, typeof(VideoCamera), VideoCamera.Instance, "m_flyMode");
                Global.LockCursor(true);
            }
        }
Ejemplo n.º 3
0
        private void SetTarget(Character target)
        {
            hasTarget = true;
            m_target  = target;

            RPCManager.Instance.SendUIMessageLocal(m_ownerCharacter, "Spectating " + target.Name);

            At.SetValue(target.transform, typeof(VideoCamera), VideoCamera.Instance, "m_targetTrans");
            At.SetValue(VideoCamera.VideoCamState.FOLLOW_POS, typeof(VideoCamera), VideoCamera.Instance, "m_state");
        }
Ejemplo n.º 4
0
        private void MenuMouseFix()
        {
            // menu mouse fix
            bool shouldUpdate = false;

            if (!lastMenuToggle && showGui)
            {
                lastMenuToggle = true;
                shouldUpdate   = true;
            }
            else if (lastMenuToggle && !showGui)
            {
                lastMenuToggle = false;
                shouldUpdate   = true;
            }
            if (shouldUpdate)
            {
                Character c = CharacterManager.Instance.GetFirstLocalCharacter();

                if (c.CharacterUI.PendingDemoCharSelectionScreen is Panel panel)
                {
                    if (lastMenuToggle)
                    {
                        panel.Show();
                    }
                    else
                    {
                        panel.Hide();
                    }
                }
                else if (lastMenuToggle)
                {
                    GameObject obj = new GameObject();
                    obj.transform.parent = c.transform;
                    obj.SetActive(true);

                    Panel newPanel = obj.AddComponent <Panel>();
                    At.SetValue(newPanel, typeof(CharacterUI), c.CharacterUI, "PendingDemoCharSelectionScreen");
                    newPanel.Show();
                }
            }
        }