public override void LoadData(string settingName)
        {
            SettingName     = settingName;
            _label.text     = settingName;
            _settingElement = GetSettingElement(settingName);
            if (_settingElement == null)
            {
                Debug.LogError("Unsupported setting type: " + settingName);
                return;
            }
            SetDescription(string.Empty);
            _settingElement.gameObject.SetActive(true);
            _settingElement.Initialize(this, settingName);

            foreach (var se in GetComponentsInChildren <SettingElement>())
            {
                if (se == _settingElement)
                {
                    continue;
                }
                GameObject.Destroy(se.gameObject);
            }

            SetPendingChanges(false);

            _originalValue = DevConsole.GetVariableAsString(settingName);
        }
        private void OnInputChanged(string newValue)
        {
            _autoCompleteTemplate.Clear();
            _autoCompleteIndex = -1;
            if (!_dontResetHistoryIndex)
            {
                _historyIndex = -1;
            }
            _dontResetHistoryIndex = false;
            var entries = DevConsole.GetEntriesStartingWith(newValue);

            foreach (var entry in entries)
            {
                var data = new AutoCompleteEntryData()
                {
                    Name        = entry.Name,
                    Description = entry.Description,
                    Value       = DevConsole.GetVariableAsString(entry.Name),
                    OnClick     = () =>
                    {
                        _input.text = $"{entry.Name} ";
                        _input.ActivateInputField();
                        StartCoroutine(MoveToEndOfInput());
                    }
                };
                _autoCompleteTemplate.Append(data);
            }
        }
Пример #3
0
        protected override void OnPlayerIntroduced(IPlayer player)
        {
            if (!Game.IsHost)
            {
                return;
            }

            var replStr = string.Empty;
            var vars    = DevConsole.GetVariablesWithFlags(ConVarFlags.Replicator);

            foreach (var var in vars)
            {
                var str = var + " " + DevConsole.GetVariableAsString(var);
                if (replStr == string.Empty)
                {
                    replStr = str;
                }
                else
                {
                    replStr += "&" + str;
                }
            }
            var cp = PacketUtility.TakePacket <CustomPacket>();

            cp.Sc = SendCategory.UI_Important;
            cp.AddString(replStr);
            cp.Label = "Replicate";
            Game.Network.SendPacket(player.ClientIndex, cp);
        }
Пример #4
0
 private void OnEndEdit(string value)
 {
     if (value.Equals(DevConsole.GetVariableAsString(SettingName)))
     {
         return;
     }
     Queue($"{SettingName} {value}");
 }
Пример #5
0
        protected override void _Start()
        {
            _canSetResolution = true;

            foreach (var userSetting in DevConsole.GetVariablesWithFlags(ConVarFlags.UserSetting))
            {
                DevConsole.ExecuteLine(userSetting + " \"" + DevConsole.GetVariableAsString(userSetting) + "\"");
            }
        }
Пример #6
0
        private void FSConsole_OnVariableChanged(string varName)
        {
            if (!Game.IsHost ||
                !DevConsole.VariableHasFlags(varName, ConVarFlags.Replicator))
            {
                return;
            }

            var replStr = varName + " " + DevConsole.GetVariableAsString(varName);
            var cp      = PacketUtility.TakePacket <CustomPacket>();

            cp.Sc = SendCategory.UI_Important;
            cp.AddString(replStr);
            cp.Label = "Replicate";
            Game.Network.BroadcastPacket(cp);
        }
Пример #7
0
        public void Save()
        {
            foreach (string varName in DevConsole.GetVariablesWithFlags(ConVarFlags.UserSetting))
            {
                UpdateUserSetting(varName, DevConsole.GetVariableAsString(varName));
            }

            SaveBinds();

            var filePath = Path.Combine(Application.persistentDataPath, _settingFileName);

            _config.SaveToFile(filePath);

            if (SteamClient.IsValid)
            {
                var bytes = Encoding.UTF8.GetBytes(File.ReadAllText(filePath));
                SteamRemoteStorage.FileWrite(_settingFileName, bytes);
            }
        }
Пример #8
0
 public virtual void LoadValue()
 {
     LoadValue(DevConsole.GetVariableAsString(SettingName));
 }