public static ClassId GetClassId(this QuestSort sort) { switch (sort) { case QuestSort.Warlock: return(ClassId.Warlock); case QuestSort.Warrior: return(ClassId.Warrior); case QuestSort.Shaman: return(ClassId.Shaman); case QuestSort.Paladin: return(ClassId.Paladin); case QuestSort.Mage: return(ClassId.Mage); case QuestSort.Rogue: return(ClassId.Rogue); case QuestSort.Hunter: return(ClassId.Hunter); case QuestSort.Priest: return(ClassId.Priest); case QuestSort.Druid: return(ClassId.Druid); case QuestSort.DeathKnight: return(ClassId.DeathKnight); } return(ClassId.End); }
public string GetCommand(int entry, QuestMethod method, int level, int minLevel, QuestSort sort, QuestType type, int players, int[] factId, int[] factRep, int nextQuest, int xpId, int rewReqMoney, int rewMoneyMaxLvl, int rewSpell, int rewSpellCast, int rewHonor, float rewHonorBonus, int srcItemId, QuestFlag flags, int titleId, int reqPlayerKills, int bonusTalents, int bonusArenaPoints, int bonusUnk, int[] rewItemId, int[] rewItemCnt, int[] rewChoiceItemId, int[] rewChoiceItemCnt, int[] rewFactionId, int[] rewFactionIdx, int[] rewRepOverride, int pointMap, float pointX, float pointY, int pointOpt, string title, string objectives, string details, string endText, string returnText, KeyValuePair <int, bool>[] reqId, int[] reqCnt, int[] srcId, int[] srcCnt, int[] reqItemId, int[] reqItemCnt, string[] objectiveText) { var builder = new CommandBuilder("quest_template"); builder.AddColumnValue("entry", entry); builder.AddColumnValue("Method", (int)method); builder.AddColumnValue("ZoneOrSort", (int)sort); builder.AddColumnValue("SkillOrClass", 0); builder.AddColumnValue("MinLevel", minLevel); builder.AddColumnValue("QuestLevel", level); builder.AddColumnValue("Type", (int)type); builder.AddColumnValue("RequiredRaces", 0); builder.AddColumnValue("RequiredSkillValue", 0); builder.AddColumnValue("RepObjectiveFaction", factId[0]); builder.AddColumnValue("RepObjectiveValue", factRep[0]); if (SQLOutput.Format == SqlFormat.Trinity) { builder.AddColumnValue("RepObjectiveFaction2", factId[1]); builder.AddColumnValue("RepObjectiveValue2", factRep[1]); } builder.AddColumnValue("RequiredMinRepFaction", 0); builder.AddColumnValue("RequiredMinRepValue", 0); builder.AddColumnValue("RequiredMaxRepFaction", 0); builder.AddColumnValue("RequiredMaxRepValue", 0); builder.AddColumnValue("SuggestedPlayers", players); builder.AddColumnValue("LimitTime", 0); builder.AddColumnValue("QuestFlags", (int)flags); builder.AddColumnValue("SpecialFlags", 0); builder.AddColumnValue("CharTitleId", titleId); builder.AddColumnValue("PlayersSlain", reqPlayerKills); builder.AddColumnValue("BonusTalents", bonusTalents); if (SQLOutput.Format == SqlFormat.Trinity) { builder.AddColumnValue("BonusArenaPoints", bonusArenaPoints); } builder.AddColumnValue("PrevQuestId", 0); builder.AddColumnValue("NextQuestId", 0); builder.AddColumnValue("ExclusiveGroup", 0); builder.AddColumnValue("NextQuestInChain", nextQuest); builder.AddColumnValue("RewXPId", xpId); builder.AddColumnValue("SrcItemId", srcItemId); builder.AddColumnValue("SrcItemCount", 0); builder.AddColumnValue("SrcSpell", 0); builder.AddColumnValue("Title", title); builder.AddColumnValue("Details", details); builder.AddColumnValue("Objectives", objectives); builder.AddColumnValue("OfferRewardText", string.Empty); builder.AddColumnValue("RequestItemsText", string.Empty); builder.AddColumnValue("EndText", endText); builder.AddColumnValue("CompletedText", returnText); for (var i = 0; i < 4; i++) { builder.AddColumnValue("ObjectiveText" + (i + 1), objectiveText[i]); } for (var i = 0; i < 4; i++) { builder.AddColumnValue("ReqItemId" + (i + 1), reqItemId[i]); } for (var i = 0; i < 4; i++) { builder.AddColumnValue("ReqItemCount" + (i + 1), reqItemCnt[i]); } for (var i = 0; i < 4; i++) { builder.AddColumnValue("ReqSourceId" + (i + 1), srcId[i]); } for (var i = 0; i < 4; i++) { builder.AddColumnValue("ReqSourceCount" + (i + 1), srcCnt[i]); } for (var i = 0; i < 4; i++) { builder.AddColumnValue("ReqCreatureOrGOId" + (i + 1), reqId[i].Value ? -reqId[i].Key : reqId[i].Key); } for (var i = 0; i < 4; i++) { builder.AddColumnValue("ReqCreatureOrGOCount" + (i + 1), reqCnt[i]); } for (var i = 0; i < 4; i++) { builder.AddColumnValue("ReqSpellCast" + (i + 1), 0); } for (var i = 0; i < 6; i++) { builder.AddColumnValue("RewChoiceItemId" + (i + 1), rewChoiceItemId[i]); } for (var i = 0; i < 6; i++) { builder.AddColumnValue("RewChoiceItemCount" + (i + 1), rewChoiceItemCnt[i]); } for (var i = 0; i < 4; i++) { builder.AddColumnValue("RewItemId" + (i + 1), rewItemId[i]); } for (var i = 0; i < 4; i++) { builder.AddColumnValue("RewItemCount" + (i + 1), rewItemCnt[i]); } for (var i = 0; i < 5; i++) { builder.AddColumnValue("RewRepFaction" + (i + 1), rewFactionId[i]); } for (var i = 0; i < 5; i++) { builder.AddColumnValue("RewRepValueId" + (i + 1), rewRepOverride[i]); } for (var i = 0; i < 5; i++) { builder.AddColumnValue("RewRepValue" + (i + 1), 0); } builder.AddColumnValue("RewHonorAddition", rewHonor); builder.AddColumnValue("RewHonorMultiplier", rewHonorBonus); if (SQLOutput.Format == SqlFormat.Trinity) { builder.AddColumnValue("unk0", bonusUnk); } builder.AddColumnValue("RewOrReqMoney", rewReqMoney); builder.AddColumnValue("RewMoneyMaxLevel", rewMoneyMaxLvl); builder.AddColumnValue("RewSpell", rewSpell); builder.AddColumnValue("RewSpellCast", rewSpellCast); builder.AddColumnValue("RewMailTemplateId", 0); builder.AddColumnValue("RewMailDelaySecs", 0); builder.AddColumnValue("PointMapId", pointMap); builder.AddColumnValue("PointX", pointX); builder.AddColumnValue("PointY", pointY); builder.AddColumnValue("PointOpt", pointOpt); for (var i = 0; i < 4; i++) { builder.AddColumnValue("DetailsEmote" + (i + 1), 0); } builder.AddColumnValue("IncompleteEmote", 0); builder.AddColumnValue("CompleteEmote", 0); for (var i = 0; i < 4; i++) { builder.AddColumnValue("OfferRewardEmote" + (i + 1), 0); } builder.AddColumnValue("StartScript", 0); builder.AddColumnValue("CompleteScript", 0); return(builder.BuildInsert(true)); }
public string GetCommand(int entry, QuestMethod method, int level, int minLevel, QuestSort sort, QuestType type, int players, int[] factId, int[] factRep, int nextQuest, int xpId, int rewReqMoney, int rewMoneyMaxLvl, int rewSpell, int rewSpellCast, int rewHonor, float rewHonorBonus, int srcItemId, QuestFlag flags, int titleId, int reqPlayerKills, int bonusTalents, int bonusArenaPoints, int bonusUnk, int[] rewItemId, int[] rewItemCnt, int[] rewChoiceItemId, int[] rewChoiceItemCnt, int[] rewFactionId, int[] rewFactionIdx, int[] rewRepOverride, int pointMap, float pointX, float pointY, int pointOpt, string title, string objectives, string details, string endText, string returnText, KeyValuePair<int, bool>[] reqId, int[] reqCnt, int[] srcId, int[] srcCnt, int[] reqItemId, int[] reqItemCnt, string[] objectiveText) { var builder = new CommandBuilder("quest_template"); builder.AddColumnValue("entry", entry); builder.AddColumnValue("Method", (int)method); builder.AddColumnValue("ZoneOrSort", (int)sort); builder.AddColumnValue("SkillOrClass", 0); builder.AddColumnValue("MinLevel", minLevel); builder.AddColumnValue("QuestLevel", level); builder.AddColumnValue("Type", (int)type); builder.AddColumnValue("RequiredRaces", 0); builder.AddColumnValue("RequiredSkillValue", 0); builder.AddColumnValue("RepObjectiveFaction", factId[0]); builder.AddColumnValue("RepObjectiveValue", factRep[0]); if (SQLOutput.Format == SqlFormat.Trinity) { builder.AddColumnValue("RepObjectiveFaction2", factId[1]); builder.AddColumnValue("RepObjectiveValue2", factRep[1]); } builder.AddColumnValue("RequiredMinRepFaction", 0); builder.AddColumnValue("RequiredMinRepValue", 0); builder.AddColumnValue("RequiredMaxRepFaction", 0); builder.AddColumnValue("RequiredMaxRepValue", 0); builder.AddColumnValue("SuggestedPlayers", players); builder.AddColumnValue("LimitTime", 0); builder.AddColumnValue("QuestFlags", (int)flags); builder.AddColumnValue("SpecialFlags", 0); builder.AddColumnValue("CharTitleId", titleId); builder.AddColumnValue("PlayersSlain", reqPlayerKills); builder.AddColumnValue("BonusTalents", bonusTalents); if (SQLOutput.Format == SqlFormat.Trinity) builder.AddColumnValue("BonusArenaPoints", bonusArenaPoints); builder.AddColumnValue("PrevQuestId", 0); builder.AddColumnValue("NextQuestId", 0); builder.AddColumnValue("ExclusiveGroup", 0); builder.AddColumnValue("NextQuestInChain", nextQuest); builder.AddColumnValue("RewXPId", xpId); builder.AddColumnValue("SrcItemId", srcItemId); builder.AddColumnValue("SrcItemCount", 0); builder.AddColumnValue("SrcSpell", 0); builder.AddColumnValue("Title", title); builder.AddColumnValue("Details", details); builder.AddColumnValue("Objectives", objectives); builder.AddColumnValue("OfferRewardText", string.Empty); builder.AddColumnValue("RequestItemsText", string.Empty); builder.AddColumnValue("EndText", endText); builder.AddColumnValue("CompletedText", returnText); for (var i = 0; i < 4; i++) builder.AddColumnValue("ObjectiveText" + (i + 1), objectiveText[i]); for (var i = 0; i < 4; i++) builder.AddColumnValue("ReqItemId" + (i + 1), reqItemId[i]); for (var i = 0; i < 4; i++) builder.AddColumnValue("ReqItemCount" + (i + 1), reqItemCnt[i]); for (var i = 0; i < 4; i++) builder.AddColumnValue("ReqSourceId" + (i + 1), srcId[i]); for (var i = 0; i < 4; i++) builder.AddColumnValue("ReqSourceCount" + (i + 1), srcCnt[i]); for (var i = 0; i < 4; i++) builder.AddColumnValue("ReqCreatureOrGOId" + (i + 1), reqId[i].Value ? -reqId[i].Key : reqId[i].Key); for (var i = 0; i < 4; i++) builder.AddColumnValue("ReqCreatureOrGOCount" + (i + 1), reqCnt[i]); for (var i = 0; i < 4; i++) builder.AddColumnValue("ReqSpellCast" + (i + 1), 0); for (var i = 0; i < 6; i++) builder.AddColumnValue("RewChoiceItemId" + (i + 1), rewChoiceItemId[i]); for (var i = 0; i < 6; i++) builder.AddColumnValue("RewChoiceItemCount" + (i + 1), rewChoiceItemCnt[i]); for (var i = 0; i < 4; i++) builder.AddColumnValue("RewItemId" + (i + 1), rewItemId[i]); for (var i = 0; i < 4; i++) builder.AddColumnValue("RewItemCount" + (i + 1), rewItemCnt[i]); for (var i = 0; i < 5; i++) builder.AddColumnValue("RewRepFaction" + (i + 1), rewFactionId[i]); for (var i = 0; i < 5; i++) builder.AddColumnValue("RewRepValueId" + (i + 1), rewRepOverride[i]); for (var i = 0; i < 5; i++) builder.AddColumnValue("RewRepValue" + (i + 1), 0); builder.AddColumnValue("RewHonorAddition", rewHonor); builder.AddColumnValue("RewHonorMultiplier", rewHonorBonus); if (SQLOutput.Format == SqlFormat.Trinity) builder.AddColumnValue("unk0", bonusUnk); builder.AddColumnValue("RewOrReqMoney", rewReqMoney); builder.AddColumnValue("RewMoneyMaxLevel", rewMoneyMaxLvl); builder.AddColumnValue("RewSpell", rewSpell); builder.AddColumnValue("RewSpellCast", rewSpellCast); builder.AddColumnValue("RewMailTemplateId", 0); builder.AddColumnValue("RewMailDelaySecs", 0); builder.AddColumnValue("PointMapId", pointMap); builder.AddColumnValue("PointX", pointX); builder.AddColumnValue("PointY", pointY); builder.AddColumnValue("PointOpt", pointOpt); for (var i = 0; i < 4; i++) builder.AddColumnValue("DetailsEmote" + (i + 1), 0); builder.AddColumnValue("IncompleteEmote", 0); builder.AddColumnValue("CompleteEmote", 0); for (var i = 0; i < 4; i++) builder.AddColumnValue("OfferRewardEmote" + (i + 1), 0); builder.AddColumnValue("StartScript", 0); builder.AddColumnValue("CompleteScript", 0); return builder.BuildInsert(true); }