public SampleDefine GetSampleByName(string Name, SampleDefine def = default(SampleDefine)) { SampleDefine ret; if (_SampleByName.TryGetValue(Name, out ret)) { return(ret); } if (def == default(SampleDefine)) { TableLogger.ErrorLine("GetSampleByName failed, Name: {0}", Name); } return(def); }
public SampleDefine GetSampleByID(long ID, SampleDefine def = default(SampleDefine)) { SampleDefine ret; if (_SampleByID.TryGetValue(ID, out ret)) { return(ret); } if (def == default(SampleDefine)) { TableLogger.ErrorLine("GetSampleByID failed, ID: {0}", ID); } return(def); }
public static void Deserialize(SampleDefine ins, tabtoy.DataReader reader) { // 唯一ID if (reader.MatchTag(0x20000)) { ins.ID = reader.ReadInt64(); } // 名称 if (reader.MatchTag(0x60001)) { ins.Name = reader.ReadString(); } // 图标ID if (reader.MatchTag(0x10002)) { ins.IconID = reader.ReadInt32(); } // 攻击率 if (reader.MatchTag(0x50003)) { ins.NumericalRate = reader.ReadFloat(); } // 物品id if (reader.MatchTag(0x10004)) { ins.ItemID = reader.ReadInt32(); } // BuffID if (reader.MatchTag(0x10005)) { reader.ReadList_Int32(ins.BuffID); } if (reader.MatchTag(0x90006)) { ins.Pos = reader.ReadStruct <Vec2>(Vec2DeserializeHandler); } // 类型 if (reader.MatchTag(0x80007)) { ins.Type = reader.ReadEnum <ActorType>(); } // 技能ID列表 if (reader.MatchTag(0x10008)) { reader.ReadList_Int32(ins.SkillID); } // 单结构解析 if (reader.MatchTag(0x90009)) { ins.SingleStruct = reader.ReadStruct <Prop>(PropDeserializeHandler); } // 字符串结构 if (reader.MatchTag(0x9000a)) { reader.ReadList_Struct <Prop>(ins.StrStruct, PropDeserializeHandler); } }
public static void Deserialize(SampleDefine ins, tabtoy.DataReader reader) { int tag = -1; while (-1 != (tag = reader.ReadTag())) { switch (tag) { case 0x20000: { ins.ID = reader.ReadInt64(); } break; case 0x60001: { ins.Name = reader.ReadString(); } break; case 0x10002: { ins.IconID = reader.ReadInt32(); } break; case 0x50003: { ins.NumericalRate = reader.ReadFloat(); } break; case 0x10004: { ins.ItemID = reader.ReadInt32(); } break; case 0x10005: { ins.BuffID.Add(reader.ReadInt32()); } break; case 0x90006: { ins.Pos = reader.ReadStruct <Vec2>(Vec2DeserializeHandler); } break; case 0x80007: { ins.Type = reader.ReadEnum <ActorType>(); } break; case 0x10008: { ins.SkillID.Add(reader.ReadInt32()); } break; case 0x90009: { ins.AttackParam = reader.ReadStruct <AttackParam>(AttackParamDeserializeHandler); } break; case 0x9000a: { ins.SingleStruct = reader.ReadStruct <Prop>(PropDeserializeHandler); } break; case 0x9000b: { ins.StrStruct.Add(reader.ReadStruct <Prop>(PropDeserializeHandler)); } break; } } }