2 Years Ago
GenericGameData fgd autogen Delete IModelGameData, Add ModelDoc.GenericGameData Attribute Move door_sounds modelgamedata to c# Move prop_data to c# Update models_gamedata.fgd Move explosion_behavior to c# More strict usage for AutoGenerate, FGDType and BitFlags attributes Classes can dictate their own FGD type via FGDTypeAttribute (So you don't have to put the attribute on every property every time) Rename ParticleAttachment fields to be consistent FGDWriter can output classes as "choices" selector in tools This is a workaround to be able to use strings as data in fgd choices type, which c# enums do not allow. Move 'particle' (particles_list) modelgamedata to c# Cleanup Fix Model.GetData<>() not working with structs ModelBreakPiece works with Model.GetData<>() Obsolete Model.GetJson, GetData(str), HasData(str) Update ModelExtension.cs FGDWriter can use ComponentModel.DisplayName & JsonPropertyName Attributes ComponentModel.DisplayName replacing Property.Title JsonPropertyName replacing Property.Name If a class as no properties with [Property] attribute, all properties will be exported to .fgd Delete ParticleAttachmentType Switch ModelGameData back to JSON for deserialization Update BasePathNode.cs Remove no longer needed interop methods Fix missing 'using' in FGDWriter Added Model.TryGetData<> FGDTypeAttribute can now provide choices to fgd properties Attribute suffix for ModelDoc attributes Fix recent changes Make ParticleAttachment public Hammer.Skip works for enum fields Engine's string to particleattachment type supports string numbers Model.GetData<>() supports deserializing to enums ModelParticle class uses ParticleAttachment enum Merge ModelDoc.ListAttribute into ModelDoc.GenericGameData, and rename it to ModelDoc.GameData Demote Model.TryToGetData()'s error to a warning Update base_modeldata.fgd Merge pull request #75 from Facepunch/modeldoc-fgdgen Basic FGD Autogen for ModelDoc