// For more information on bundling, visit http://go.microsoft.com/fwlink/?LinkId=301862 public static void RegisterBundles(BundleCollection bundles) { var Context = new HttpContextWrapper(HttpContext.Current); bundles.Add(new ScriptBundle("~/Scripts/jquery").Include("~/Scripts/jquery-{version}.js")); SkinDefinition skindef = SkinDefinition.Load(Context); foreach (var script in skindef.scripts.Keys) { bundles.Add(new ScriptBundle(script).Include(skindef.scripts[script].ToArray())); } foreach (var css in skindef.css.Keys) { StyleBundle bundle = new StyleBundle(css); foreach (string file in skindef.css[css]) { bundle.Include(file, new CssRewriteUrlTransform()); } bundles.Add(bundle); } if (!string.IsNullOrEmpty(skindef.layout)) { SkinDefinition.CurrentLayout(Context, skindef.layout); } }
public UnifiedSetData() { UnifiedMode = PageDefinition.UnifiedModeEnum.SkinDynamicContent; Popups = false; UnifiedAnimation = 1000; PageList = new List <string>(); PageGuids = new SerializableList <Guid>(); PageSkin = new SkinDefinition(); }
public Model() { PageSkinReq = new SkinDefinition(); PageSkin = new SkinDefinition(); PageSkinRO = new SkinDefinition(); PopupSkinReq = new SkinDefinition(); PopupSkin = new SkinDefinition(); PopupSkinRO = new SkinDefinition(); ModuleSkins = new SerializableList <SkinDefinition>(); ModuleSkinsRO = new SerializableList <SkinDefinition>(); }
private void LoadSkinDefinition(SkinDefinition skinDefinition) { _skinDefinition = new SkinDefinitionViewModel(_serviceLocator); var skinContent = skinDefinition.SkinContent; LoadTriggers(skinContent.Triggers); LoadArenas(skinContent.Arenas); LoadGamesGroupCollection("Top games", skinContent.TopGames, _skinDefinition.TopGames); LoadGamesGroupCollection("VIP games", skinContent.VipTopGames, _skinDefinition.VipGames); LoadLobbies(skinContent.Lobbies); LoadMyAccount(skinContent); }
private SkinDefinition BuildSkinDefinition() { var skinDefinition = new SkinDefinition(); skinDefinition.SkinContent = new Interfaces.Entities.SkinContent(); foreach (var arenaViewModel in SkinDefinition.Arenas) { skinDefinition.SkinContent.Arenas.Add(BuildArena(arenaViewModel)); } foreach (var lobbyViewModel in SkinDefinition.Lobbies) { skinDefinition.SkinContent.Lobbies.Add(BuildLobby(lobbyViewModel)); } foreach (var gamesGroupViewModel in SkinDefinition.TopGames) { skinDefinition.SkinContent.TopGames.Add(BuildGameGroupLayout(gamesGroupViewModel)); } foreach (var gamesGroupViewModel in SkinDefinition.VipGames) { skinDefinition.SkinContent.VipTopGames.Add(BuildGameGroupLayout(gamesGroupViewModel)); } foreach (var myAccountItemViewModel in SkinDefinition.MyAccount.Lobby) { skinDefinition.SkinContent.MyAccountLobby.Add(BuildMyAccountMenu(myAccountItemViewModel)); } foreach (var myAccountItemViewModel in SkinDefinition.MyAccount.History) { skinDefinition.SkinContent.MyAccountHistory.Add(BuildMyAccountMenu(myAccountItemViewModel)); } foreach (var triggerViewModel in SkinDefinition.Triggers) { skinDefinition.SkinContent.Triggers.Add(BuildTrigger(triggerViewModel)); } return(skinDefinition); }
public SkinConversionResult Convert(SkinDefinition skinDefinition) { UpdateGamesGroup(skinDefinition.SkinContent.TopGames, XmlNames.topGames, XmlNames.topGame); UpdateGamesGroup(skinDefinition.SkinContent.VipTopGames, XmlNames.vipGames, XmlNames.vipGame); UpdateArenas(skinDefinition.SkinContent); UpdateMyAccount(skinDefinition.SkinContent); var result = new List <ConvertedClientConfigurationFile>(); UpdateTriggers(skinDefinition.SkinContent.Triggers).Do(file => result.Add(file)); result.Add(new ConvertedClientConfigurationFile(_navigationPlan, _navigationPlanXml.ToString())); var games = AppendMissingGames(skinDefinition, result); return(new SkinConversionResult(result.ToArray(), games)); }
public SkinConversionResult Convert(SkinDefinition skinDefinition) { var navigationPlanJson = JsonConvert.DeserializeObject <dynamic>(_navigationPlan.Content); var languageJson = JsonConvert.DeserializeObject <dynamic>(_language.Content); UpdateGamesGroup(skinDefinition.SkinContent.TopGames, navigationPlanJson.navigationPlan, JsonNames.topGames); UpdateGamesGroup(skinDefinition.SkinContent.VipTopGames, navigationPlanJson.navigationPlan, JsonNames.vipGames); UpdateArenas(skinDefinition.SkinContent, navigationPlanJson.navigationPlan); UpdateMyAccount(skinDefinition.SkinContent, navigationPlanJson); UpdateTriggers(skinDefinition.SkinContent.Triggers, navigationPlanJson); var resultedFiles = new List <ConvertedClientConfigurationFile>(); var newGames = AppendMissingGames(skinDefinition, navigationPlanJson, languageJson); return(new SkinConversionResult(new ConvertedClientConfigurationFile[] { new ConvertedClientConfigurationFile(_navigationPlan, JsonConvert.SerializeObject(navigationPlanJson)), new ConvertedClientConfigurationFile(_language, JsonConvert.SerializeObject(languageJson)) } , newGames)); }
public Skin(Program P, IMyTextSurface surface, SurfaceMath surfaceMath, IMyTerminalBlock block, SkinDefinition skinDefinition, List <IMeter> meters) { this.P = P; Surface = surface; SM = surfaceMath; Block = block; SkinDef = skinDefinition; Meters = meters; foreach (var meter in SkinDef.meters) { //This data could also be acceses if meters.def was public. DataInUse |= meter.data; } //These 3 could be run every interation, but why? //On setup should be enough. Surface.ContentType = ContentType.SCRIPT; Surface.Script = ""; if (skinDefinition.backgroundColorSet) { Surface.ScriptBackgroundColor = skinDefinition.backgroundColor; } }
private SkinConversionResult.NewGameInformation[] AppendMissingGames(SkinDefinition skinDefinition, dynamic navigationPlanJson, dynamic languageJson) { var gamesProperties = (JObject)navigationPlanJson.navigationPlan.games.properties.gamesPropertiesList; var existingGames = new Dictionary <int, JToken>(); foreach (JProperty prop in gamesProperties.Properties()) { existingGames.Add(int.Parse(prop.Name), prop.Value); } var newGames = new List <SkinConversionResult.NewGameInformation>(); foreach (var game in skinDefinition.SkinContent.Arenas.SelectMany(a => a.Layouts.SelectMany(l => l.Games))) { if (existingGames.ContainsKey(game.GameType)) { continue; } var resourcePrefix = game.Name.Replace(" ", "_").Replace(".", "_") + "_" + game.GameType; var relativeImageUrl = $"navigation/media/icons/{game.GameType}/image.png"; newGames.Add(new SkinConversionResult.NewGameInformation(game.GameType, game.Name, relativeImageUrl)); AddToGamesModuleStorageIfNecessary(navigationPlanJson, game); dynamic newGameElement = new JObject(); newGameElement.blockedGame = new JArray(); // newGameElement.bonusGame = false; // newGameElement.eventType = "GameLink"; newGameElement.freeSpinGame = false; // newGameElement.gameBarLabelId = resourcePrefix; newGameElement.gameHistoryLabelId = resourcePrefix; newGameElement.gameTagLabelId = resourcePrefix; newGameElement.gameType = game.GameType; newGameElement.groupId = 30; newGameElement.height = false; newGameElement.histGroup = 12; newGameElement.historyDDLLabelId = resourcePrefix; newGameElement.images = new JArray(); // newGameElement.jackpotId = 6006; // newGameElement.lineSetThree = false; // newGameElement.lobbyLabelId = resourcePrefix; newGameElement.maxBetDKK = 300000; // newGameElement.maxBetEUR = 30000; // newGameElement.maxBetGBP = 30000; // newGameElement.maxBetUSD = 30000; // newGameElement.maxPerSpotEUR = 1000; // newGameElement.maxPerSpotGBP = 1000; // newGameElement.maxPerSpotUSD = 1000; // newGameElement.minBetDKK = 10; // newGameElement.minBetEUR = 1; // newGameElement.minBetGBP = 1; // newGameElement.minBetUSD = 1; // newGameElement.mobileLabel = false; // newGameElement.multipliers = false; // newGameElement.numOfDecks = 0; // newGameElement.numOfLines = 30; // newGameElement.numOfReels = 5; // newGameElement.previewTemplateID = 0; newGameElement.privateTable = false; // newGameElement.progressiveJackpot = false; // newGameElement.resourcePrefix = resourcePrefix; newGameElement.rouletteZeros = 0; // newGameElement.standardGame = true; // newGameElement.styles = new JArray(); // newGameElement.tabLabelId = resourcePrefix; newGameElement.toolTipLabelId = resourcePrefix; newGameElement.videoSlot = true; // newGameElement.width = false; // newGameElement.wrapperType = "GGPGAME"; // gamesProperties.Add(new JProperty(game.GameType.ToString(), newGameElement)); var iconResources = (JObject)navigationPlanJson.navigationPlan.iconResources.images; iconResources.Add(new JProperty(resourcePrefix, new JValue(relativeImageUrl))); iconResources.Add(new JProperty(resourcePrefix + "Preview", new JValue(relativeImageUrl))); iconResources.Add(new JProperty(resourcePrefix + "Lobby", new JValue(relativeImageUrl))); iconResources.Add(new JProperty(resourcePrefix + "Small", new JValue(relativeImageUrl))); iconResources.Add(new JProperty(resourcePrefix + "FullBackground", new JValue(relativeImageUrl))); var gamesTexts = (JObject)languageJson.games; dynamic newGameTexts = new JObject(); newGameTexts.html = false; newGameTexts.text = game.Name; gamesTexts.Add(new JProperty(resourcePrefix, newGameTexts)); } return(newGames.ToArray()); }
public async Task <ActionResult> Edit(FormCollection form) { bool require_restart = false; var settings = await db.AppSettings.ToListAsync(); foreach (var setting in settings) { if (form.AllKeys.Contains(setting.Name)) { var normalizedValue = NullIfEmpty(form[setting.Name]); if (!string.IsNullOrEmpty(normalizedValue)) { if (setting.Kind == AppSetting.KindDirectory) { if (!ExistsDir(normalizedValue)) { SetFailureMessage(normalizedValue + " does not exist."); continue; } } else if (setting.Kind == AppSetting.KindNumber) { double doubleResult; if (!double.TryParse(normalizedValue, out doubleResult)) { SetFailureMessage(normalizedValue + string.Format(" is not a valid value for {0}.", setting.Name)); continue; } } else if (setting.Kind == AppSetting.KindFile) { if (!ExistsFile(normalizedValue)) { SetFailureMessage(normalizedValue + " does not exist."); continue; } else if (setting.Name == Settings.kSkinDefinitionFile && setting.Value != normalizedValue) { try { SkinDefinition skindef = SkinDefinition.Load(HttpContext.Server.MapPath(normalizedValue)); settings.Find(s => s.Name == Settings.kDefaultPageLayout).Value = skindef.layout; } catch { SetFailureMessage(normalizedValue + " is not a valid skin definition file."); continue; } } } if (setting.Name == Settings.kCreatePDFVersionsOfDocuments && normalizedValue == bool.TrueString) { if (!System.IO.File.Exists(Settings.ConvertPdfExe)) { SetFailureMessage("Cannot enable PDF conversion because ConvertPdf.exe is missing."); continue; } else { int exitcode = DocumentHelper.CheckConverterSetup(Settings.ConvertPdfExe, System.IO.Path.Combine(Settings.TempDir, "convertpdf.log")); if (exitcode < 0) { SetFailureMessage("(Error:{0}) Cannot enable PDF conversion because ConvertPdf.exe failed to run.", exitcode); continue; } else if ((exitcode & 7) != 7) { SetFailureMessage("(Error:{0}) Cannot enable PDF conversion because the Microsoft Office installation is missing or incomplete.", exitcode); continue; } } } } if (setting.Name == Settings.kSkinDefinitionFile && setting.Value != normalizedValue) { require_restart = true; } setting.Value = normalizedValue; db.Entry(setting).State = EntityState.Modified; } } await db.SaveChangesAsync(); CacheHelper.ClearFromCache(HttpContext, typeof(Settings)); SetSuccessMessage("Settings updated successfully!"); if (require_restart) { HttpRuntime.UnloadAppDomain(); } return(RedirectToAction("Index")); }
public SkinConversionResult Apply(SkinDefinition skinDefinition) { return(GetBuilder().Convert(skinDefinition)); }
private SkinConversionResult.NewGameInformation[] AppendMissingGames(SkinDefinition skinDefinition, List <ConvertedClientConfigurationFile> files) { if (_gamesPropertiesXml == null) { return(new SkinConversionResult.NewGameInformation[0]); } var newGames = new List <SkinConversionResult.NewGameInformation>(); var iconResources = _iconResourcesXml.Root.Element("icons"); var gamesTextsElements = _gamesTextsXml.Root.Element(XmlNames.elements); var gamesXmlElement = _gamesPropertiesXml.Root.Element(XmlNames.games); var existingGamesInGamesProperties = gamesXmlElement.Descendants(XmlNames.game).Select(element => element.GetAttributeValue <int>(XmlNames.gameType)) .Distinct() .ToDictionary(gt => gt); foreach (var game in skinDefinition.SkinContent.Arenas.SelectMany(a => a.Layouts.SelectMany(l => l.Games)) .GroupBy(g => g.GameType) .Select(g => g.First())) { if (existingGamesInGamesProperties.ContainsKey(game.GameType)) { continue; } var newGameXmlElement = new XElement(XmlNames.game); newGameXmlElement.AddOrUpdateAttributeValue(XmlNames.gameType, game.GameType); newGameXmlElement.AddOrUpdateAttributeValue(XmlNames.eventType, "GameLink"); newGameXmlElement.AddOrUpdateAttributeValue("histGroup", 0); newGameXmlElement.AddOrUpdateAttributeValue("previewTemplateID", 0); newGameXmlElement.AddOrUpdateAttributeValue("groupId", 0); var resourcePrefix = game.Name.Replace(" ", "_") + "_" + game.GameType; newGameXmlElement.AddOrUpdateAttributeValue(XmlNames.resourcePrefix, resourcePrefix); newGameXmlElement.AddOrUpdateAttributeValue("toolTipLabelId", resourcePrefix); newGameXmlElement.AddOrUpdateAttributeValue("gameTagLabelId", resourcePrefix); newGameXmlElement.AddOrUpdateAttributeValue("lobbyLabelId", resourcePrefix); newGameXmlElement.AddOrUpdateAttributeValue("tabLabelId", resourcePrefix); newGameXmlElement.AddOrUpdateAttributeValue("gameBarLabelId", resourcePrefix); gamesXmlElement.Add(newGameXmlElement); var gameTextElement = new XElement(XmlNames.element); gameTextElement.AddOrUpdateAttributeValue(XmlNames.varName, resourcePrefix); gameTextElement.Value = game.Name; gamesTextsElements.Add(gameTextElement); string relativeImageUrl = $"navigation/media/icons/{game.GameType}/image.png"; var iconUrlElement = new XElement(XmlNames.item); iconUrlElement.AddOrUpdateAttributeValue("name", resourcePrefix); iconUrlElement.AddOrUpdateAttributeValue("source", relativeImageUrl); iconResources.Add(iconUrlElement); iconUrlElement = new XElement(XmlNames.item); iconUrlElement.AddOrUpdateAttributeValue("name", resourcePrefix + "Preview"); iconUrlElement.AddOrUpdateAttributeValue("source", relativeImageUrl); iconResources.Add(iconUrlElement); iconUrlElement = new XElement(XmlNames.item); iconUrlElement.AddOrUpdateAttributeValue("name", resourcePrefix + "Lobby"); iconUrlElement.AddOrUpdateAttributeValue("source", relativeImageUrl); iconResources.Add(iconUrlElement); newGames.Add(new SkinConversionResult.NewGameInformation(game.GameType, game.Name, relativeImageUrl)); } if (newGames.Count > 0) { files.Add(new ConvertedClientConfigurationFile(_gamesProperties, _gamesPropertiesXml.ToString())); files.Add(new ConvertedClientConfigurationFile(_gamesTexts, _gamesTextsXml.ToString())); files.Add(new ConvertedClientConfigurationFile(_iconResources, _iconResourcesXml.ToString())); } else { files.Add(new ConvertedClientConfigurationFile(_gamesProperties, null)); files.Add(new ConvertedClientConfigurationFile(_gamesTexts, null)); files.Add(new ConvertedClientConfigurationFile(_iconResources, null)); } return(newGames.ToArray()); }
public SkinConversionResult Convert(SkinDefinition skinDefinition) { return(this.Converter.Convert(skinDefinition)); }
public SkinConversionResult Apply(SkinDefinition skinDefinition) { throw new NotSupportedException(); }
/// <summary> /// Parses an IDE file from a byte array. /// </summary> /// <param name="data">The IDE data to read in an array of bytes.</param> /// <param name="errorCount">The number of errors.</param> public void Parse(byte[] data, out int errorCount) { string parserData = Encoding.UTF8.GetString(data); string[] lines = parserData.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries); string mode = null; errorCount = 0; foreach (string line in lines) { if (line.StartsWith("#", StringComparison.InvariantCultureIgnoreCase) || line.Trim().Length == 0) { continue; } if (mode == null) { if (line.StartsWith("objs", StringComparison.InvariantCultureIgnoreCase) || line.StartsWith("tobj", StringComparison.InvariantCultureIgnoreCase) || line.StartsWith("anim", StringComparison.InvariantCultureIgnoreCase) || line.StartsWith("cars", StringComparison.InvariantCultureIgnoreCase) || line.StartsWith("weap", StringComparison.InvariantCultureIgnoreCase) || line.StartsWith("peds", StringComparison.InvariantCultureIgnoreCase) || // unused line.StartsWith("hier", StringComparison.InvariantCultureIgnoreCase) || line.StartsWith("path", StringComparison.InvariantCultureIgnoreCase) || line.StartsWith("2dfx", StringComparison.InvariantCultureIgnoreCase) || line.StartsWith("txdp", StringComparison.InvariantCultureIgnoreCase)) { mode = line.Substring(0, 4).ToLowerInvariant(); } continue; } else { if (line.StartsWith("end", StringComparison.InvariantCultureIgnoreCase)) { mode = null; continue; } var parts = line.Split(new char[] { ',', ' ', '\t' }, StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < parts.Length; i++) { parts[i] = parts[i].Trim(' ', '\t', '\r', ','); } try { if (mode == "objs") { var element = new ObjectsIDEElement(); if (parts.Length == 5) { element.Id = UInt32.Parse(parts[0]); element.ModelName = parts[1]; element.TextureDictionaryName = parts[2]; element.DrawDistance = float.Parse(parts[3]); element.Flags = (IDEFlags)UInt32.Parse(parts[4]); } else if (parts.Length == 6) { element.Id = UInt32.Parse(parts[0]); element.ModelName = parts[1]; element.TextureDictionaryName = parts[2]; element.DrawDistance = float.Parse(parts[4]); element.Flags = (IDEFlags)UInt32.Parse(parts[5]); } else if (parts.Length == 7) { element.Id = UInt32.Parse(parts[0]); element.ModelName = parts[1]; element.TextureDictionaryName = parts[2]; element.DrawDistance = float.Parse(parts[5]); element.Flags = (IDEFlags)UInt32.Parse(parts[6]); } else if (parts.Length >= 8) { element.Id = UInt32.Parse(parts[0]); element.ModelName = parts[1]; element.TextureDictionaryName = parts[2]; element.DrawDistance = float.Parse(parts[6]); element.Flags = (IDEFlags)UInt32.Parse(parts[7]); } var obj = new ObjectDefinition() { ModelName = element.ModelName, TextureDictionaryName = element.TextureDictionaryName }; MasterDictionary.ObjectDefinitions.Add((int)element.Id, obj); } else if (mode == "tobj") { var element = new ObjectsIDEElement(); if (parts.Length == 7) { element.Id = UInt32.Parse(parts[0]); element.ModelName = parts[1]; element.TextureDictionaryName = parts[2]; element.DrawDistance = float.Parse(parts[3]); element.Flags = (IDEFlags)UInt32.Parse(parts[4]); element.TimeOn = UInt32.Parse(parts[5]); element.TimeOff = UInt32.Parse(parts[6]); } else if (parts.Length == 8) { element.Id = UInt32.Parse(parts[0]); element.ModelName = parts[1]; element.TextureDictionaryName = parts[2]; element.DrawDistance = float.Parse(parts[3]); element.Flags = (IDEFlags)UInt32.Parse(parts[5]); element.TimeOn = UInt32.Parse(parts[6]); element.TimeOff = UInt32.Parse(parts[7]); } else if (parts.Length == 9) { element.Id = UInt32.Parse(parts[0]); element.ModelName = parts[1]; element.TextureDictionaryName = parts[2]; element.DrawDistance = float.Parse(parts[3]); element.Flags = (IDEFlags)UInt32.Parse(parts[6]); element.TimeOn = UInt32.Parse(parts[7]); element.TimeOff = UInt32.Parse(parts[8]); } else if (parts.Length >= 10) { element.Id = UInt32.Parse(parts[0]); element.ModelName = parts[1]; element.TextureDictionaryName = parts[2]; element.DrawDistance = float.Parse(parts[3]); element.Flags = (IDEFlags)UInt32.Parse(parts[7]); element.TimeOn = UInt32.Parse(parts[8]); element.TimeOff = UInt32.Parse(parts[9]); } var obj = new ObjectDefinition() { ModelName = element.ModelName, TextureDictionaryName = element.TextureDictionaryName }; MasterDictionary.ObjectDefinitions.Add((int)element.Id, obj); } else if (mode == "anim") { var element = new ObjectsIDEElement(); if (parts.Length >= 6) { element.Id = UInt32.Parse(parts[0]); element.ModelName = parts[1]; element.TextureDictionaryName = parts[2]; element.AnimationName = parts[3]; element.DrawDistance = float.Parse(parts[4]); element.Flags = (IDEFlags)UInt32.Parse(parts[5]); } var obj = new ObjectDefinition() { ModelName = element.ModelName, TextureDictionaryName = element.TextureDictionaryName, AnimationName = element.AnimationName }; MasterDictionary.ObjectDefinitions.Add((int)element.Id, obj); } else if (mode == "cars") { var element = new CarsIDEElement(); if (parts.Length >= 11) { element.Id = UInt32.Parse(parts[0]); element.ModelName = parts[1]; element.TextureDictionaryName = parts[2]; element.Type = VehicleTypeFromString(parts[3]); element.Handling = parts[4]; element.GXTKey = parts[5]; element.Anims = parts[6]; element.Class = VehicleClassFromString(parts[7]); element.Frequency = parts[8]; element.Unknown = parts[9]; element.Comprules = parts[10]; } if (parts.Length >= 15) { element.WheelId = Int32.Parse(parts[11]); element.WheelScaleFront = float.Parse(parts[12]); element.WheelScaleRear = float.Parse(parts[13]); element.WheelUpgradeClass = Int32.Parse(parts[14]); } var veh = new VehicleDefinition() { ModelName = element.ModelName, TextureDictionaryName = element.TextureDictionaryName, Type = element.Type, WheelScaleFront = element.WheelScaleFront, WheelScaleRear = element.WheelScaleRear }; MasterDictionary.VehicleDefinitions.Add((int)element.Id, veh); } else if (mode == "weap") { var element = new WeaponsIDEElement(); if (parts.Length >= 6) { element.Id = UInt32.Parse(parts[0]); element.ModelName = parts[1]; element.TextureDictionaryName = parts[2]; element.AnimationName = parts[3]; element.MeshCount = UInt32.Parse(parts[4]); element.DrawDistance = UInt32.Parse(parts[5]); } var wep = new WeaponDefinition() { ModelName = element.ModelName, TextureDictionaryName = element.TextureDictionaryName, AnimationName = element.AnimationName }; MasterDictionary.WeaponDefinitions.Add((int)element.Id, wep); } else if (mode == "peds") { var element = new PedsIDEElement(); if (parts.Length >= 14) { element.Id = UInt32.Parse(parts[0]); element.ModelName = parts[1]; element.TextureDictionaryName = parts[2]; element.Type = PedestrianTypeFromString(parts[3]); element.Behavior = parts[4]; element.AnimationGroup = parts[5]; element.CarsCanDrive = parts[6]; element.Flags = UInt32.Parse(parts[7]); element.AnimationFile = parts[8]; element.Radio1 = UInt32.Parse(parts[9]); element.Radio2 = UInt32.Parse(parts[10]); element.VoiceArchive = parts[11]; element.Voice1 = parts[12]; element.Voice2 = parts[13]; } var skin = new SkinDefinition() { ModelName = element.ModelName, TextureDictionaryName = element.TextureDictionaryName, AnimationGroupName = element.AnimationGroup, Type = element.Type }; MasterDictionary.SkinDefinitions.Add((int)element.Id, skin); } } catch { errorCount++; } } } }