public void Set(OEIShared.IO.GFF.GFFField field) { if (this.Contains(field.StringLabel)) { this.Fields.Remove(field); } this.Fields.Add(field); }
private Newtonsoft.Json.Linq.JObject parseStruct(OEIShared.IO.GFF.GFFStruct gffStruct) { var j = new Newtonsoft.Json.Linq.JObject(); foreach (OEIShared.IO.GFF.GFFField field in gffStruct.Fields.Values) j.Add(field.StringLabel, parseField(field)); return j; }
private Newtonsoft.Json.Linq.JObject parseGFF(OEIShared.IO.GFF.GFFFile gff) { return parseStruct(gff.TopLevelStruct); }
private Newtonsoft.Json.Linq.JToken parseField(OEIShared.IO.GFF.GFFField gffField) { Newtonsoft.Json.Linq.JToken j = null; switch (gffField.Type) { case OEIShared.IO.GFF.GFFFieldType.Byte: j = gffField.ValueByte; break; case OEIShared.IO.GFF.GFFFieldType.CExoLocString: j = gffField.ValueCExoLocString.StringRef; break; case OEIShared.IO.GFF.GFFFieldType.CExoString: j = gffField.ValueCExoString.Value; break; case OEIShared.IO.GFF.GFFFieldType.Char: j = gffField.ValueChar; break; case OEIShared.IO.GFF.GFFFieldType.CResRef: j = gffField.ValueCResRef.Value; break; case OEIShared.IO.GFF.GFFFieldType.Double: j = gffField.ValueDouble; break; case OEIShared.IO.GFF.GFFFieldType.Dword: j = gffField.ValueDword; break; case OEIShared.IO.GFF.GFFFieldType.Dword64: j = gffField.ValueDword64; break; case OEIShared.IO.GFF.GFFFieldType.Float: j = gffField.ValueFloat; break; case OEIShared.IO.GFF.GFFFieldType.GFFList: //j = gffField.ValueList; var a = new Newtonsoft.Json.Linq.JArray(); foreach (OEIShared.IO.GFF.GFFStruct gffStruct in gffField.ValueList.StructList) a.Add(parseStruct(gffStruct)); j = a; break; case OEIShared.IO.GFF.GFFFieldType.GFFStruct: j = parseStruct(gffField.ValueStruct); break; case OEIShared.IO.GFF.GFFFieldType.Int: j = gffField.ValueInt; break; case OEIShared.IO.GFF.GFFFieldType.Int64: j = gffField.ValueInt64; break; case OEIShared.IO.GFF.GFFFieldType.Short: j = gffField.ValueShort; break; case OEIShared.IO.GFF.GFFFieldType.VoidData: j = gffField.ValueVoidData; break; case OEIShared.IO.GFF.GFFFieldType.Word: j = gffField.ValueWord; break; } return j; }
public void AddItemProperty(OEIShared.IO.GFF.GFFStruct ipGFF) { itemGFFStruct.GetListSafe("PropertiesList").StructList.Add(ipGFF); }
/// <summary> /// Create a new resource. /// </summary> /// <param name="ResRef">Supplies the resource resref.</param> /// <param name="ResType">Supplies the resource type.</param> /// <returns>The new resource entry.</returns> public override IResourceEntry CreateResource(OEIShared.Utils.OEIResRef ResRef, ushort ResType) { throw new NotSupportedException("CreateResource not implemented"); }
/// <summary> /// Create a copy of a resource. /// </summary> /// <param name="Entry">Supplies the resource to copy.</param> /// <returns>The new resource entry.</returns> public override OEIShared.IO.IResourceEntry CopyResource(OEIShared.IO.IResourceEntry Entry) { return CopyResource(Entry, Entry.ResRef); }
/// <summary> /// Create a copy of a resource. /// </summary> /// <param name="Entry">Supplies the resource to copy.</param> /// <param name="NewName">Supplies the new resource name.</param> /// <returns>The new resource entry.</returns> public override OEIShared.IO.IResourceEntry CopyResource(OEIShared.IO.IResourceEntry Entry, OEIShared.Utils.OEIResRef NewName) { throw new NotSupportedException("CopyResource not implemented"); }
private void EnforceNonDefaultScript(string reference, OEIShared.IO.IResourceEntry script, string newDefault, string[] blacklist) { if (Array.Exists(blacklist, element => element == script.ToString())) { log.WriteLine("FIXED: Object \"{0}\" has default script \"{1}\".", reference, script.ToString()); script.ResRef.Value = newDefault; } }
void PrintToDebugWindow(OEIShared.IO.GFF.GFFStruct gffStruct) { System.Collections.IEnumerator keys = gffStruct.Fields.Keys.GetEnumerator(); System.Collections.IEnumerator values = gffStruct.Fields.Values.GetEnumerator(); for (int i = 0; i < gffStruct.FieldCount; i++) { keys.MoveNext(); values.MoveNext(); string key = (string)keys.Current; OEIShared.IO.GFF.GFFField value = (OEIShared.IO.GFF.GFFField)values.Current; DebugWindow.PrintDebugMessage(key + " (" + value.Type.ToString() + "): " + value.Value.ToString()); } }