aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-12-02 15:21:02 +0100
committerShauren <shauren.trinity@gmail.com>2024-12-02 15:21:02 +0100
commite071c08526666e542088439a36481afc13ecbdc2 (patch)
tree53843577aba22c9a082a1f7f0868b366af280da3 /src
parent7153538db65a2a78bd16339ea44025a9af5fc27c (diff)
Core/Commands: Handle more quest objective types with .quest complete command
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;
}
}