public static void Serialize(QuestSystem qs, IGenericWriter writer) { if (qs == null) { writer.WriteEncodedInt(0x00); } else { writer.WriteEncodedInt(0x01); Write(qs.GetType(), QuestSystem.QuestTypes, writer); qs.BaseSerialize(writer); } }
private static Type ReadType(QuestSystem qs, GenericReader reader) { string[] referenceTable; if (qs != null) { Type type = qs.GetType(); if (_QuestTable.TryGetValue(type.FullName, out referenceTable) && referenceTable.Length > 0 && !referenceTable[0].Contains('.')) { for (int i = 0; i < referenceTable.Length; i++) { referenceTable[i] = $"{type.Namespace}.{referenceTable[i]}"; } } } else { referenceTable = _QuestTypes; } return(ReadType(referenceTable, reader)); }
public static void Serialize( QuestSystem qs, GenericWriter writer ) { if ( qs == null || qs.Removed ) writer.WriteEncodedInt( 0x00 ); else { writer.WriteEncodedInt( 0x01 ); Write( qs.GetType(), QuestSystem.QuestTypes, writer ); qs.BaseSerialize( writer ); } }