public override void Apply()
 {
     if (Cvar.Text(command) != input.text)
     {
         ConfVar var = Cvar.Get(command, input.text);
     }
 }
示例#2
0
    private void OnCvarModnameSet(ConfVar c)
    {
        string mod      = Globals.modname.Text;
        string fullpath = Globals.gamepath.Text + "/" + mod + "/";

        if (!Directory.Exists(fullpath))
        {
            Console.LogError("Mod folder " + mod + " doesnt exits!");
            Cvar.Set("validmodname", 0);
        }
        else
        {
            Cvar.Set("validmodname", 1);
            Console.DebugLog("Modname seems valid.");

            if (Cvar.Exists("gamepath"))
            {
                Console.DebugLog("OnCvarModnameSet is restarting resource loader...");
                ResourceLoader.Init();
                if (MenuManager.Instance)
                {
                    MenuManager.Instance.GenerateMapPanel();
                }
            }
        }
    }
示例#3
0
    private void OnCvarHandChange(ConfVar c)
    {
        float scale = Globals.scale.Value;

        switch (c.Integer)
        {
        case 1:
            weaponXOffset = 11.4f * scale;
            break;

        case 2:
            weaponXOffset = -11.4f * scale;
            break;

        default:
            weaponXOffset = 0f;
            break;
        }

        float y, z;

        for (int i = 0; i < weaponSlots.Length; i++)
        {
            if (weaponSlots[i])
            {
                y = weaponSlots[i].transform.localPosition.y;
                z = weaponSlots[i].transform.localPosition.z;
                weaponSlots[i].transform.localPosition = new Vector3(weaponXOffset, y, z);
            }
        }
    }
示例#4
0
    private void OnCvarGamepathSet(ConfVar c)
    {
        c.NoEventSet(c.Text.Replace('\\', '/'));
        if (c.Text.EndsWith("/"))
        {
            c.NoEventSet(c.Text.Substring(0, c.Text.Length - 1));
        }

        if (!Directory.Exists(c.Text))
        {
            Console.LogError("Gamepath folder " + c.Text + " doesnt exits!");
            Cvar.Set("validgamepath", 0);
        }
        else
        {
            Cvar.Set("validgamepath", 1);
            Console.DebugLog("Game folder seems valid.");

            Cvar.WeakGet("modname", out ConfVar modname);
            if (modname != null)
            {
                OnCvarModnameSet(modname);
                if (!Utils.IsModnameValid())
                {
                    Console.DebugLog("OnCvarGamepathSet is restarting resource loader...");
                    ResourceLoader.Init();
                    if (MenuManager.Instance)
                    {
                        MenuManager.Instance.GenerateMapPanel();
                    }
                }
            }
        }
    }
示例#5
0
 private void OnCvarAfpsSet(ConfVar v)
 {
     v.NoEventSet(Mathf.Clamp(v.Integer, 20, 1000));
     if (Globals.async != null && Globals.async.Boolean)
     {
         Application.targetFrameRate = v.Integer;
     }
 }
示例#6
0
    private void OnCvarFovSet(ConfVar c)
    {
        c.NoEventSet(Mathf.Clamp(c.Value, 20, 150));

        mainCamera.fieldOfView = c.Value;

        skyboxCamera.fieldOfView = c.Value;
    }
示例#7
0
    private void Start()
    {
        PlayerState.OnWeaponPickup += OnWeaponPickup;
        PlayerState.itemResetEvent.AddListener(ClearWeapons);

        hand = Cvar.Get("hand", "1", OnCvarHandChange, CvarType.DEFAULT);
        OnCvarHandChange(hand);
    }
示例#8
0
    private void OnSliderChange(float value)
    {
        base.SetValue(value.ToString());

        if (Cvar.Text(command) != input.text)
        {
            ConfVar var = Cvar.Get(command, input.text);
        }
    }
示例#9
0
 private void OnCvarVidGainSet(ConfVar c)
 {
     if (postVolume.profile.TryGetSettings(out ColorGrading grading))
     {
         Vector4 newVal = grading.gain.value;
         newVal.w           = c.Value;
         grading.gain.value = newVal;
     }
 }
示例#10
0
    public override void Apply()
    {
        string ison = input.isOn ? "1" : "0";

        if (Cvar.Text(command) != ison)
        {
            ConfVar var = Cvar.Get(command, ison);
        }
    }
示例#11
0
    public override void Apply()
    {
        string current = Cvar.Text(command);

        if (current != input.text)
        {
            ConfVar var = Cvar.Get(command, input.text);
        }
    }
示例#12
0
    public static bool Boolean(string name)
    {
        ConfVar cvar = cvars.FirstOrDefault(i => i.Name == name);

        if (cvar != null)
        {
            return(cvar.Integer != 0);
        }
        return(false);
    }
示例#13
0
    public static int Integer(string name)
    {
        ConfVar cvar = cvars.FirstOrDefault(i => i.Name == name);

        if (cvar != null)
        {
            return(cvar.Integer);
        }
        return(0);
    }
示例#14
0
    public static string Text(string name)
    {
        ConfVar cvar = cvars.FirstOrDefault(i => i.Name == name);

        if (cvar != null)
        {
            return(cvar.Text);
        }
        return("");
    }
示例#15
0
    public static float Value(string name)
    {
        ConfVar cvar = cvars.FirstOrDefault(i => i.Name == name);

        if (cvar != null)
        {
            return(cvar.Value);
        }
        return(0);
    }
示例#16
0
 private void OnCvarFpsSet(ConfVar v)
 {
     v.NoEventSet(Mathf.Clamp(v.Integer, 20, 200));
     if (Globals.async != null && Globals.async.Boolean)
     {
         Time.fixedDeltaTime = 1f / v.Integer;
     }
     else
     {
         Application.targetFrameRate = v.Integer;
     }
 }
示例#17
0
    /// <summary>
    /// Sets cvar by string value.
    /// </summary>
    /// <returns>True if cvar was successfully set.</returns>
    public static bool Set(string name, string text)
    {
        ConfVar cvar = cvars.FirstOrDefault(i => i.Name == name);

        if (cvar != null && !cvar.Type.HasFlag(CvarType.LOCKED))
        {
            cvar.Text = text;
            return(true);
        }

        return(false);
    }
示例#18
0
    /// <summary>
    /// Sets cvar by integer value.
    /// </summary>
    /// <returns>True if cvar was successfully set.</returns>
    public static bool Set(string name, int value)
    {
        ConfVar cvar = cvars.FirstOrDefault(i => i.Name == name);

        if (cvar != null && !cvar.Type.HasFlag(CvarType.LOCKED))
        {
            cvar.Integer = value;
            return(true);
        }

        return(false);
    }
示例#19
0
    private void Awake()
    {
        SetSingleton();

        historyCapacity    = Cvar.Get("con_history", "50");
        scrollbackCapacity = Cvar.Get("con_scrollback", "200");
        scrollSpeed        = Cvar.Get("con_scrollspeed", "3");
        consoleOpen        = Cvar.Get("console_open", ConsolePanel.activeSelf ? "1" : "0", null, CvarType.HIDDEN);

#if DEBUG
        logDebugMessages = Cvar.Get("log_debug", "1");
#endif

        consoleHistory = new List <string>(historyCapacity.Integer);
        scrollback     = new Queue <string>(scrollbackCapacity.Integer);
    }
示例#20
0
    /// <summary>
    /// Finds or creates a new default cvar.
    /// </summary>
    /// <param name="name">Ientifier of the cvar.</param>
    /// <param name="value">Value.</param>
    /// <param name="onCvarSet">Function called on cvar set (null if none).</param>
    /// <param name="type">Cvar type.</param>
    /// <returns>Cvar with the provided parameter values.</returns>
    public static ConfVar Get(string name, string value, OnCvarSet onCvarSet, CvarType type)
    {
        ConfVar cvar = cvars.FirstOrDefault(i => i.Name == name);

        if (cvar == null)
        {
            cvar = new ConfVar(name, value, onCvarSet, type);
            cvars.Add(cvar);
        }
        else
        {
            cvar.Text = value;
        }

        return(cvar);
    }
示例#21
0
    private void Awake()
    {
        //register commands
        CommandManager.RegisterCommand("recall", Recall_c, "resets player position", CommandType.normal);
        CommandManager.RegisterCommand("store", Store_c, "stores player position", CommandType.normal);
        CommandManager.RegisterCommand("remstore", RemStore_, "removes stored player position", CommandType.normal);
        CommandManager.RegisterCommand("setfps", SetFps_c, "sets framerate cap", CommandType.normal);
        CommandManager.RegisterCommand("gamemode", PlayerState.GameMode_c, "sets game mode (fly, spectating, training, timeattack or 0, 1, 2, 3)", CommandType.normal);
        CommandManager.RegisterCommand("noclip", PlayerState.Noclip_c, "toggles noclip cvar", CommandType.normal);

        //add cvars
        Cvar.Add("noclip", "0", PlayerState.OnCvarNoclipSet, CvarType.DEFAULT);
        smoothCamera     = Cvar.Get("smooth_camera", "0");
        mouseSensitivity = Cvar.Get("mouse_sensitivity", "1.35");
        Globals.flySpeed = Cvar.Get("flyspeed", "300");

        //default movement binds
        BindManager.SetBind(KeyCode.A, "+left", BindType.hold, false);
        BindManager.SetBind(KeyCode.S, "+back", BindType.hold, false);
        BindManager.SetBind(KeyCode.D, "+right", BindType.hold, false);
        BindManager.SetBind(KeyCode.W, "+forward", BindType.hold, false);
        BindManager.SetBind(KeyCode.Mouse1, "+jump", BindType.hold, false);
        BindManager.SetBind(KeyCode.LeftControl, "+duck", BindType.hold, false);

        //store and recall
        BindManager.SetBind(KeyCode.R, "recall", BindType.toggle, false);
        BindManager.SetBind(KeyCode.Q, "store", BindType.toggle, false);
        BindManager.SetBind(KeyCode.P, "remstore", BindType.toggle, false);

        //state binds
        BindManager.SetBind(KeyCode.Alpha1, "gamemode flying", BindType.toggle, false);
        BindManager.SetBind(KeyCode.Alpha2, "gamemode training", BindType.toggle, false);
        BindManager.SetBind(KeyCode.Alpha3, "gamemode timeattack", BindType.toggle, false);
        BindManager.SetBind(KeyCode.N, "noclip", BindType.toggle, false);

        //default fps binds
        BindManager.SetBind(KeyCode.Z, "setfps 66", BindType.toggle, false);
        BindManager.SetBind(KeyCode.X, "setfps 22", BindType.toggle, false);
        BindManager.SetBind(KeyCode.C, "setfps 120", BindType.toggle, false);
        BindManager.SetBind(KeyCode.V, "setfps 27", BindType.toggle, false);
        BindManager.SetBind(KeyCode.B, "setfps 90", BindType.toggle, false);
        BindManager.SetBind(KeyCode.G, "setfps 200", BindType.toggle, false);
    }
示例#22
0
    private void OnCvarAntialiastingSet(ConfVar c)
    {
        switch (c.Integer)
        {
        case 1:
            postLayer.antialiasingMode = PostProcessLayer.Antialiasing.FastApproximateAntialiasing;
            break;

        case 2:
            postLayer.antialiasingMode = PostProcessLayer.Antialiasing.SubpixelMorphologicalAntialiasing;
            break;

        case 3:
            postLayer.antialiasingMode = PostProcessLayer.Antialiasing.TemporalAntialiasing;
            break;

        default:
            postLayer.antialiasingMode = PostProcessLayer.Antialiasing.None;
            break;
        }
    }
示例#23
0
    // Start is called before the first frame update
    void Start()
    {
        OnCvarFovSet(Cvar.Get("fov", "100", OnCvarFovSet, CvarType.DEFAULT));

        maxfps = Cvar.Get("maxfps", "120", OnCvarFpsSet, CvarType.DEFAULT);
        OnCvarFpsSet(maxfps);

        afps = Cvar.Get("afps", "500", OnCvarAfpsSet, CvarType.DEFAULT);
        OnCvarAfpsSet(afps);

        Globals.async = Cvar.Get("async", "1", OnCvarAsyncSet, CvarType.DEFAULT);
        OnCvarAsyncSet(Globals.async);

        Cvar.Add("vid_antialiasing", "0", OnCvarAntialiastingSet, CvarType.DEFAULT);
        Cvar.Add("vid_brightness", "0", OnCvarVidBrightnessSet, CvarType.DEFAULT);
        Cvar.Add("vid_gamma", "0", OnCvarVidGammaSet, CvarType.DEFAULT);
        Cvar.Add("vid_gain", "0", OnCvarVidGainSet, CvarType.DEFAULT);

        OnCvarLightmapSet(Cvar.Get("lightmap_mix", "1", OnCvarLightmapSet, CvarType.DEFAULT));
        OnCvarLightnessSet(Cvar.Get("lightsomeness", "15", OnCvarLightnessSet, CvarType.DEFAULT));
    }
示例#24
0
    private void Awake()
    {
        if (Instance)
        {
            DestroyImmediate(gameObject);
        }
        else
        {
            Instance = this;
        }

        speedUpdateFreq = Cvar.Get("keybar_speed_freq", "10");
        fpsUpdateFreq   = Cvar.Get("keybar_fps_freq", "2");

        valueGradient = new Gradient
        {
            colorKeys = new GradientColorKey[]
            {
                btmColor, lowColor, medColor, hiColor
            }
        };
    }
示例#25
0
 private void OnCvarVolumeChanged(ConfVar c)
 {
     c.NoEventSet(Mathf.Clamp01(c.Value));
     AudioListener.volume = c.Value;
 }
示例#26
0
 public static void OnCvarNoclipSet(ConfVar v)
 {
     noclip = v.Boolean;
 }
示例#27
0
 private void OnCvarLightmapSet(ConfVar c)
 {
     c.NoEventSet(Mathf.Clamp01(c.Value));
     Shader.SetGlobalFloat("_lightmapMix", c.Value);
 }
示例#28
0
 private void OnCvarLightnessSet(ConfVar c)
 {
     c.NoEventSet(Mathf.Clamp(c.Value, 1, 25));
     Shader.SetGlobalFloat("_lightness", c.Value);
 }
示例#29
0
 private void OnCvarAsyncSet(ConfVar c)
 {
     OnCvarFpsSet(maxfps);
     OnCvarAfpsSet(afps);
 }
示例#30
0
    /// <summary>
    /// Gets a cvar without creating a new one.
    /// </summary>
    /// <param name="name">Identifier.</param>
    /// <param name="cvar">Output cvar.</param>
    /// <returns>True if the cvar exists.</returns>
    public static bool WeakGet(string name, out ConfVar cvar)
    {
        cvar = cvars.FirstOrDefault(i => i.Name == name);

        return(cvar != null);
    }