void ProcessButtonPress()
    {
        if (activationBehaviour == ActivationBehaviour.Toggle)
        {
            pauseController.activatePause = !pauseController.activatePause;
        }
        else if (activationBehaviour == ActivationBehaviour.Activate)
        {
            pauseController.activatePause = true;
        }
        else if (activationBehaviour == ActivationBehaviour.Deactivate)
        {
            pauseController.activatePause = false;
        }

        foreach (ActivateGameObject activateGameObject in gameObjectActivations)
        {
            if (!activateGameObject.gobj)
            {
                continue;
            }

            GameObject gobj = activateGameObject.gobj;



            GameObjectActivationBehaviour ab = activateGameObject.activationBehaviour;

            if (ab == GameObjectActivationBehaviour.ActivationWithInput)
            {
                if (activateGameObject.affectsChildren)
                {
                    gobj.SetActiveRecursively(true);
                }
                else
                {
                    gobj.active = true;
                }
            }
            else if (ab == GameObjectActivationBehaviour.DeactivationWithInput)
            {
                if (activateGameObject.affectsChildren)
                {
                    gobj.SetActiveRecursively(false);
                }
                else
                {
                    gobj.active = false;
                }
            }
        }
    }
    void DoGameObjectActivationWatch()
    {
        bool pause_activation = pauseController.activatePause;

        foreach (ActivateGameObject activateGameObject in gameObjectActivations)
        {
            if (!activateGameObject.gobj)
            {
                continue;
            }

            GameObject gobj = activateGameObject.gobj;

            GameObjectActivationBehaviour ab = activateGameObject.activationBehaviour;

            if (ab == GameObjectActivationBehaviour.ActivateWithPauseActivation)
            {
                if (activateGameObject.affectsChildren)
                {
                    gobj.SetActiveRecursively(pause_activation);
                }
                else
                {
                    gobj.active = pause_activation;
                }
            }
            else if (ab == GameObjectActivationBehaviour.ActivateInverseWithPauseActivation)
            {
                if (activateGameObject.affectsChildren)
                {
                    gobj.SetActiveRecursively(!pause_activation);
                }
                else
                {
                    gobj.active = !pause_activation;
                }
            }
        }
    }