private WtgTrigger ParseTrigger(WcDataReader reader) { var trigger = new WtgTrigger(); trigger.Name = reader.ReadString(); trigger.Description = reader.ReadString(); if (FormatVersion >= 7) { trigger.IsComment = reader.ReadBoolean(); } trigger.Id = reader.ReadUInt32(); trigger.IsEnabled = reader.ReadBoolean(); trigger.IsText = reader.ReadBoolean(); trigger.IsEnabledFromStart = reader.ReadBoolean(); trigger.InitializeOnMapStart = reader.ReadBoolean(); trigger.ParentId = reader.ReadUInt32(); trigger.EACCount = reader.ReadUInt32(); if (trigger.EACCount > 0) { throw new NotImplementedException("Maps with ANY GUI triggers not supported yet."); } return(trigger); }
private WtgCategory ParseCategory(WcDataReader reader) { var category = new WtgCategory(); category.Id = reader.ReadUInt32(); category.Name = reader.ReadString(); if (FormatVersion >= 7) { category.IsComment = reader.ReadBoolean(); } category.HasChildren = reader.ReadBoolean(); category.ParentId = reader.ReadUInt32(); return(category); }
private WtgVariable ParseVariable(WcDataReader reader) { var variable = new WtgVariable(); variable.Name = reader.ReadString(); variable.Type = reader.ReadString(); variable.ToKeep = reader.ReadBoolean(); variable.IsArray = reader.ReadBoolean(); if (FormatVersion >= 7) { variable.ArraySize = reader.ReadUInt32(); } variable.HasStartingValue = reader.ReadBoolean(); variable.StartingValue = reader.ReadString(); variable.Id = reader.ReadUInt32(); variable.ParentId = reader.ReadUInt32(); return(variable); }