public void Deserialize( tabtoy.DataReader reader ) { // Sample if ( reader.MatchTag(0x90000) ) { reader.ReadList_Struct<SampleDefine>( this.Sample ); } // Exp if ( reader.MatchTag(0x90001) ) { reader.ReadList_Struct<ExpDefine>( this.Exp ); } // Build Sample Index for( int i = 0;i< this.Sample.Count;i++) { var element = this.Sample[i]; _SampleByID.Add(element.ID, element); _SampleByName.Add(element.Name, element); } // Build Exp Index for( int i = 0;i< this.Exp.Count;i++) { var element = this.Exp[i]; _ExpByLevel.Add(element.Level, element); } }
public List<Prop> StrStruct = new List<Prop>(); // 字符串结构 public void Deserialize( tabtoy.DataReader reader ) { // 唯一ID if ( reader.MatchTag(0x20000) ) { this.ID = reader.ReadInt64( ); } // 名称 if ( reader.MatchTag(0x60001) ) { this.Name = reader.ReadString( ); } // 图标ID if ( reader.MatchTag(0x10002) ) { this.IconID = reader.ReadInt32( ); } // 攻击率 if ( reader.MatchTag(0x50003) ) { this.NumericalRate = reader.ReadFloat( ); } // 物品id if ( reader.MatchTag(0x10004) ) { this.ItemID = reader.ReadInt32( ); } // BuffID if ( reader.MatchTag(0x10005) ) { reader.ReadList_Int32( this.BuffID ); } // 类型 if ( reader.MatchTag(0x80006) ) { this.Type = reader.ReadEnum<ActorType>( ); } // 技能ID列表 if ( reader.MatchTag(0x10007) ) { reader.ReadList_Int32( this.SkillID ); } // 单结构解析 if ( reader.MatchTag(0x90008) ) { this.SingleStruct = reader.ReadStruct<Prop>( ); } // 字符串结构 if ( reader.MatchTag(0x90009) ) { reader.ReadList_Struct<Prop>( this.StrStruct ); } }