Esempio n. 1
0
    // Update is called once per frame
    void Update()
    {
        if (VersionManager.Instance().GetMergeWorker() != null)
        {
            selectClosestPreview();
            if (currentlySelectedObject != null && Input.GetKeyDown(KeyCode.P))
            {
                VersionManager.Instance().GetMergeWorker().PickObject(currentlySelectedObject);
            }
        }
        else
        {
            selectVersionable();
            if (currentlySelectedObject != null && Input.GetKeyDown(KeyCode.Q))
            {
                VersionController versionController = currentlySelectedObject.GetComponentInParent <VersionController>();
                if (VersionManager.Instance().IsObjectStaged(versionController))
                {
                    VersionManager.Instance().Unstage(versionController);
                }
                else
                {
                    VersionManager.Instance().Add(versionController);
                }
                Debug.Log(currentlySelectedObject == gameObject ? "Adding player" : "Adding closest object");
                Debug.Log(currentlySelectedObject);
            }
            else if (Input.GetKeyDown(KeyCode.R))
            {
                VersionManager.Instance().ResetToHead();
            }
            else if (Input.GetKeyDown(KeyCode.J))
            {
                if (!VersionManager.Instance().HasBranch("demo"))
                {
                    VersionManager.Instance().CreateBranch("demo");
                }
                VersionManager.Instance().Checkout("demo");
            }
            else if (Input.GetKeyDown(KeyCode.K))
            {
                VersionManager.Instance().Checkout("master");
            }
        }

        if (Input.GetKeyDown(KeyCode.O))
        {
            if (overlay != null)
            {
                overlay.Destroy();
                overlay = null;
            }
            else
            {
                overlay = new Overlay(VersionManager.Instance().GetHead(), Color.red);
            }
        }
    }