Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static void Save()
- {
- var model = ProtoBuf.Meta.TypeModel.Create();
- AddTypeToModel<Staff>( model );
- AddTypeToModel<Hammer>( model );
- AddTypeToModel<SmallBundle>( model );
- AddTypeToModel<CultureInfo>( model );
- MetaType weapon = AddTypeToModel<Weapon>( model );
- weapon.AddSubType( 100, typeof( Staff ) );
- weapon.AddSubType( 101, typeof( Hammer ) );
- weapon.AddSubType( 102, typeof( SmallBundle ) );
- MetaType item = AddTypeToModel<Item>( model );
- item.AddSubType( 100, typeof( Weapon ) );
- List<Staff> weapons = _items.OfType<Staff>().ToList<Staff>();
- Serialize( model, weapons );
- }
- private static MetaType AddTypeToModel<T>(RuntimeTypeModel typeModel)
- {
- var properties = typeof(T).GetProperties().Select(p => p.Name).OrderBy(name => name);
- return typeModel.Add(typeof(T), true).Add(properties.ToArray());
- }
Advertisement
Add Comment
Please, Sign In to add comment