public QuestRewardData GetQuestRewardData(int stage) { var tb = questRewardTb.GetTable(); QuestRewardData data = null; if (tb == null) { Debug.LogError("TableError"); return(null); } foreach (var val in tb) { if (val.Value.nID == stage) { return(data = val.Value); } } return(null); }
public void Load(BinaryReader pReader) { Identifier = pReader.ReadUInt16(); NextIdentifier = pReader.ReadUInt16(); Area = pReader.ReadByte(); MinLevel = pReader.ReadByte(); MaxLevel = pReader.ReadByte(); PetCloseness = pReader.ReadUInt16(); TamingMobLevel = pReader.ReadByte(); RepeatWait = pReader.ReadInt32(); Fame = pReader.ReadUInt16(); int jobsCount = pReader.ReadInt32(); Jobs = new List<ushort>(jobsCount); while (jobsCount-- > 0) Jobs.Add(pReader.ReadUInt16()); int requirementsCount = pReader.ReadInt32(); Requirements = new List<QuestRequirementData>(requirementsCount); while (requirementsCount-- > 0) { QuestRequirementData requirement = new QuestRequirementData(); requirement.Load(pReader); Requirements.Add(requirement); } int rewardsCount = pReader.ReadInt32(); Rewards = new List<QuestRewardData>(rewardsCount); while (rewardsCount-- > 0) { QuestRewardData reward = new QuestRewardData(); reward.Load(pReader); Rewards.Add(reward); } }