コード例 #1
0
        private void BuildCharSets()
        {
            LavishScriptAPI.LavishScriptIterator charsetIterator = _characterSets_Set.GetSetIterator();

            if (charsetIterator != null && charsetIterator.IsValid)
            {
                charsetIterator.First();
                do
                {
                    Set          charSet_Set = new Set(charsetIterator.GetPersistentMember("Value"));
                    CharacterSet charset     = new CharacterSet(charSet_Set.Name);

                    LavishScriptAPI.LavishScriptIterator slotIterator = charSet_Set.FindSet("Slots").GetSetIterator();
                    if (slotIterator.IsValid)
                    {
                        charsetIterator.First();
                        do
                        {
                            Set       characterSlot_Set = new Set(slotIterator.GetPersistentMember("Value"));
                            Character newChar           = new Character(characterSlot_Set.FindSetting("Character").ToString());
                            charset.AddCharacter(newChar);
                            slotIterator.Next();
                        }while (slotIterator.IsValid);
                    }
                    _characterSets.Add(charset.CharSetName, charset);
                    charsetIterator.Next();
                }while (charsetIterator.IsValid);
            }
        }
コード例 #2
0
        public LauncherProfiles()
        {
            // <Lax>   ${LavishSettings[${LavishScript.HomeDirectory}/GameConfiguration.XML]}
            //<Lax> but needs \ converted to /

            if (_homeDirectory == "")
            {
                // HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\InnerSpace.exe
                RegistryKey iskey = Registry.LocalMachine.OpenSubKey(
                    "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\InnerSpace.exe");
                _homeDirectory = iskey.GetValue("Path", "").ToString().Replace('\\', '/');
            }

            _gameConfigurationXMLSet = _lavishSettings.Tree.FindSet((_homeDirectory + "/GameConfiguration.XML"));
            _profilesSet             = _gameConfigurationXMLSet.FindSet("EVE Online").FindSet("Profiles");
            LavishScriptAPI.LavishScriptIterator profilesIterator = _profilesSet.GetSetIterator();
            if (profilesIterator == null)
            {
                _profilesSet     = _gameConfigurationXMLSet.FindSet("EVE").FindSet("Profiles");
                profilesIterator = _profilesSet.GetSetIterator();
            }

            if (profilesIterator != null && profilesIterator.IsValid)
            {
                profilesIterator.First();
                do
                {
                    _profileList.Add(new Profile(new Set(profilesIterator.GetPersistentMember("Value")), _profilesSet));
                    profilesIterator.Next();
                }while (profilesIterator.IsValid);
            }
        }
コード例 #3
0
        public Profile(Set ProfileSet, Set ProfileParentSet)
        {
            _profileName  = ProfileSet.Name;
            _path         = ProfileSet.FindSetting("Path").ToString();
            _executable   = ProfileSet.FindSetting("Executable").ToString();
            _setReference = ProfileSet;
            _parentSet    = ProfileParentSet;

            LavishScriptAPI.LavishScriptIterator startUpIterator = ProfileSet.FindSet("Startup Sequence").GetSettingIterator();

            if (startUpIterator.IsValid)
            {
                startUpIterator.First();
                do
                {
                    Setting setting = new Setting(startUpIterator.GetPersistentMember("Value"));
                    _startupSequence.Add(setting.Name, setting.ToString());
                    startUpIterator.Next();
                }while (startUpIterator.IsValid);
            }
        }