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); }
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); }