Пример #1
0
        string StepContextString(QuestStep qs)
        {
            string str = "";

            switch (qs.CompType)
            {
            case QuestStep.CompletionType.KillMonster:
            case QuestStep.CompletionType.GoToLocation:
            case QuestStep.CompletionType.CollectItem:
                str = qs.CompTargetID.ToString();
                break;

            case QuestStep.CompletionType.ReachLevel:
                break;      // Empty

            case QuestStep.CompletionType.TalkToNPC:
                str = _npcs.ContainsKey(qs.CompTargetID) ? _npcs[qs.CompTargetID].ToString() : "Unknown";
                break;

            case QuestStep.CompletionType.WearItem:
                if (_items.ContainsKey(qs.CompTargetID))
                {
                    NamedItemTemplate nit = _items[qs.CompTargetID];
                    str = nit.ToString();
                }
                else
                {
                    str = qs.CompTargetID.ToString();
                }
                break;
            }
            return(str);
        }
Пример #2
0
        string RewardContextString(QuestReward qr)
        {
            string str = "";

            switch (qr.Type)
            {
            case QuestReward.RewardType.Gold:
            case QuestReward.RewardType.Exp:
            case QuestReward.RewardType.Fame:
                str = qr.Context.ToString();
                break;

            case QuestReward.RewardType.Item:
                if (_items.ContainsKey(qr.Context))
                {
                    NamedItemTemplate nit = _items[qr.Context];
                    str = nit.ToString();
                }
                else
                {
                    str = qr.Context.ToString();
                }
                break;

            case QuestReward.RewardType.Teleport:
                if (_locations.ContainsKey(qr.Context))
                {
                    Location loc = _locations[qr.Context];
                    str = loc.ToString();
                }
                else
                {
                    str = qr.Context.ToString();
                }
                break;

            case QuestReward.RewardType.Skill:
                // TODO: Need to implement skills
                str = qr.Context.ToString();
                break;
            }

            return(str);
        }