public CarGen(string oplstr) { OPLStr = oplstr; string[] parts = oplstr.Split(','); PosX = float.Parse(parts[0].Trim(), CultureInfo.InvariantCulture); PosY = float.Parse(parts[1].Trim(), CultureInfo.InvariantCulture); PosZ = float.Parse(parts[2].Trim(), CultureInfo.InvariantCulture); RotX = float.Parse(parts[3].Trim(), CultureInfo.InvariantCulture); RotY = float.Parse(parts[4].Trim(), CultureInfo.InvariantCulture); Length = float.Parse(parts[5].Trim(), CultureInfo.InvariantCulture); ModelName = parts[6].Trim().ToLowerInvariant(); CarColor1 = int.Parse(parts[7].Trim(), CultureInfo.InvariantCulture); CarColor2 = int.Parse(parts[8].Trim(), CultureInfo.InvariantCulture); CarColor3 = int.Parse(parts[9].Trim(), CultureInfo.InvariantCulture); SpecularColor = int.Parse(parts[10].Trim(), CultureInfo.InvariantCulture); Flags = uint.Parse(parts[11].Trim(), CultureInfo.InvariantCulture); Alarm = int.Parse(parts[12].Trim(), CultureInfo.InvariantCulture); Unk2 = int.Parse(parts[13].Trim(), CultureInfo.InvariantCulture); //if (model.StartsWith("hash:")) //{ // ModelName = model.Substring(5); // if (ModelName == "0") ModelName = string.Empty; //} //else //{ // ModelName = model; //} if (ModelName.StartsWith("hash:")) { string[] hparts = ModelName.Split(':'); uint hash; if (uint.TryParse(hparts[1].Trim(), out hash)) { string str = JenkIndex.TryGetString(hash); if (!string.IsNullOrEmpty(str)) { ModelName = str.ToLowerInvariant(); } else { ModelName = "hash_" + hash.ToString("X").ToLowerInvariant(); } } } }
public Entity(string oplstr) { OPLStr = oplstr; string[] parts = oplstr.Split(','); PosX = float.Parse(parts[0].Trim(), CultureInfo.InvariantCulture); PosY = float.Parse(parts[1].Trim(), CultureInfo.InvariantCulture); PosZ = float.Parse(parts[2].Trim(), CultureInfo.InvariantCulture); RotX = float.Parse(parts[3].Trim(), CultureInfo.InvariantCulture); RotY = float.Parse(parts[4].Trim(), CultureInfo.InvariantCulture); RotZ = float.Parse(parts[5].Trim(), CultureInfo.InvariantCulture); RotW = float.Parse(parts[6].Trim(), CultureInfo.InvariantCulture); Name = parts[7].Trim().ToLowerInvariant(); Flags = int.Parse(parts[8].Trim(), CultureInfo.InvariantCulture); ParentIndex = int.Parse(parts[9].Trim(), CultureInfo.InvariantCulture); Unk1 = int.Parse(parts[10].Trim(), CultureInfo.InvariantCulture); Unk2 = float.Parse(parts[11].Trim(), CultureInfo.InvariantCulture); if (Name.StartsWith("hash:")) { string[] hparts = Name.Split(':'); uint hash; if (uint.TryParse(hparts[1].Trim(), out hash)) { string str = JenkIndex.TryGetString(hash); if (!string.IsNullOrEmpty(str)) { Name = str.ToLowerInvariant(); } else { Name = "hash_" + hash.ToString("X").ToLowerInvariant(); } } } }