Esempio n. 1
0
    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);
    }
Esempio n. 2
0
        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);
            }
        }