mirror of
https://github.com/EQEmu/Server.git
synced 2026-05-06 08:52:25 +00:00
Add quest::uncompletetask to quest API
This commit is contained in:
parent
a0ff9d67a1
commit
66dda2f107
15
CMakeSettings.json
Normal file
15
CMakeSettings.json
Normal file
@ -0,0 +1,15 @@
|
||||
{
|
||||
"configurations": [
|
||||
{
|
||||
"name": "x64-Debug",
|
||||
"generator": "Visual Studio 17 2022",
|
||||
"configurationType": "Debug",
|
||||
"inheritEnvironments": [ "msvc_x64_x64" ],
|
||||
"buildRoot": "${projectDir}\\out\\build\\${name}",
|
||||
"installRoot": "${projectDir}\\out\\install\\${name}",
|
||||
"cmakeCommandArgs": "",
|
||||
"buildCommandArgs": "",
|
||||
"ctestCommandArgs": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -1271,6 +1271,11 @@ void Perl__failtask(int task_id)
|
||||
quest_manager.failtask(task_id);
|
||||
}
|
||||
|
||||
void Perl__uncompletetask(int task_id)
|
||||
{
|
||||
quest_manager.uncompletetask(task_id);
|
||||
}
|
||||
|
||||
int Perl__tasktimeleft(int task_id)
|
||||
{
|
||||
return quest_manager.tasktimeleft(task_id);
|
||||
@ -6628,6 +6633,7 @@ void perl_register_quest()
|
||||
package.add("faction", (void(*)(int, int, int))&Perl__faction);
|
||||
package.add("factionvalue", &Perl__FactionValue);
|
||||
package.add("failtask", &Perl__failtask);
|
||||
package.add("uncompletetask", &Perl__uncompletetask);
|
||||
package.add("firsttaskinset", &Perl__firsttaskinset);
|
||||
package.add("follow", (void(*)(int))&Perl__follow);
|
||||
package.add("follow", (void(*)(int, int))&Perl__follow);
|
||||
|
||||
@ -722,6 +722,10 @@ void lua_fail_task(int task_id) {
|
||||
quest_manager.failtask(task_id);
|
||||
}
|
||||
|
||||
void lua_uncomplete_task(int task_id) {
|
||||
quest_manager.uncompletetask(task_id);
|
||||
}
|
||||
|
||||
int lua_task_time_left(int task_id) {
|
||||
return quest_manager.tasktimeleft(task_id);
|
||||
}
|
||||
@ -5970,6 +5974,7 @@ luabind::scope lua_register_general() {
|
||||
luabind::def("reset_task_activity", &lua_reset_task_activity),
|
||||
luabind::def("assign_task", &lua_assign_task),
|
||||
luabind::def("fail_task", &lua_fail_task),
|
||||
luabind::def("uncomplete_task", &lua_uncomplete_task),
|
||||
luabind::def("task_time_left", &lua_task_time_left),
|
||||
luabind::def("is_task_completed", &lua_is_task_completed),
|
||||
luabind::def("enabled_task_count", &lua_enabled_task_count),
|
||||
|
||||
@ -40,6 +40,7 @@
|
||||
#include "dialogue_window.h"
|
||||
|
||||
#include "../common/repositories/account_repository.h"
|
||||
#include "../common/repositories/completed_tasks_repository.h"
|
||||
#include "../common/repositories/tradeskill_recipe_repository.h"
|
||||
#include "../common/repositories/instance_list_repository.h"
|
||||
#include "../common/repositories/grid_entries_repository.h"
|
||||
@ -2958,6 +2959,21 @@ void QuestManager::failtask(int taskid) {
|
||||
initiator->FailTask(taskid);
|
||||
}
|
||||
|
||||
void QuestManager::uncompletetask(int task_id) {
|
||||
QuestManagerCurrentQuestVars();
|
||||
|
||||
if (RuleB(TaskSystem, EnableTaskSystem) && initiator) {
|
||||
CompletedTasksRepository::DeleteWhere(
|
||||
database,
|
||||
fmt::format(
|
||||
"charid = {} AND taskid = {}",
|
||||
initiator->CharacterID(),
|
||||
task_id
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
int QuestManager::tasktimeleft(int taskid) {
|
||||
QuestManagerCurrentQuestVars();
|
||||
|
||||
|
||||
@ -224,6 +224,7 @@ public:
|
||||
void resettaskactivity(int task, int activity);
|
||||
void assigntask(int taskid, bool enforce_level_requirement = false);
|
||||
void failtask(int taskid);
|
||||
void uncompletetask(int task_id);
|
||||
int tasktimeleft(int taskid);
|
||||
bool istaskcompleted(int task_id);
|
||||
bool aretaskscompleted(const std::vector<int>& task_ids);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user