aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-12-02 15:21:02 +0100
committerOvahlord <dreadkiller@gmx.de>2024-12-07 09:06:01 +0100
commitd86e2671d933b20eb81a9a06d3a4b604ad844215 (patch)
tree998a32d8ac6942a00d75749464c6be52b9518fe9 /src
parent4b9bb32cdc019a4b2ff72e056dab01c9c8cd6514 (diff)
Core/Commands: Handle more quest objective types with .quest complete command
(cherry picked from commit e071c08526666e542088439a36481afc13ecbdc2)
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Commands/cs_quest.cpp20
1 files changed, 5 insertions, 15 deletions
diff --git a/src/server/scripts/Commands/cs_quest.cpp b/src/server/scripts/Commands/cs_quest.cpp
index 57f1290d6d5..26b29e6fe79 100644
--- a/src/server/scripts/Commands/cs_quest.cpp
+++ b/src/server/scripts/Commands/cs_quest.cpp
@@ -169,17 +169,9 @@ public:
}
break;
}
- case QUEST_OBJECTIVE_MONSTER:
+ case QUEST_OBJECTIVE_CURRENCY:
{
- if (CreatureTemplate const* creatureInfo = sObjectMgr->GetCreatureTemplate(obj.ObjectID))
- for (uint16 z = 0; z < obj.Amount; ++z)
- player->KilledMonster(creatureInfo, ObjectGuid::Empty);
- break;
- }
- case QUEST_OBJECTIVE_GAMEOBJECT:
- {
- for (uint16 z = 0; z < obj.Amount; ++z)
- player->KillCreditGO(obj.ObjectID);
+ player->ModifyCurrency(obj.ObjectID, obj.Amount, CurrencyGainSource::Cheat);
break;
}
case QUEST_OBJECTIVE_MIN_REPUTATION:
@@ -203,13 +195,11 @@ public:
player->ModifyMoney(obj.Amount);
break;
}
- case QUEST_OBJECTIVE_PLAYERKILLS:
- {
- for (uint16 z = 0; z < obj.Amount; ++z)
- player->KilledPlayerCredit(ObjectGuid::Empty);
+ case QUEST_OBJECTIVE_PROGRESS_BAR:
+ // do nothing
break;
- }
default:
+ player->UpdateQuestObjectiveProgress(static_cast<QuestObjectiveType>(obj.Type), obj.ObjectID, obj.Amount);
break;
}
}