mirror of
https://github.com/EQEmu/Server.git
synced 2026-05-17 07:18:37 +00:00
Add Optional Enforce Task Level Requirement
Affected: quest::assigntask $client->AssignTask This is to allow those task level requirements in DB to be used, optionally. It defaults to do not enforce (translated: no change for current servers), but can be set with an additional flag to both commands (see below). The LUA bit was added thanks to help from demonstar55. quest::assigntask(703); # works quest::assigntask(703, 1); # denies user $client->AssignTask(701, $npc->GetID()); # works $client->AssignTask(701, $npc->GetID(), 1); # denies user
This commit is contained in:
+11
-3
@@ -2383,11 +2383,19 @@ XS(XS__assigntask)
|
||||
{
|
||||
dXSARGS;
|
||||
unsigned int taskid;
|
||||
if(items == 1) {
|
||||
bool enforce_level_requirement = false;
|
||||
if(items == 1 || items == 2) {
|
||||
taskid = (int)SvIV(ST(0));
|
||||
quest_manager.assigntask(taskid);
|
||||
if (items == 2)
|
||||
{
|
||||
if ((int)SvIV(ST(1)) == 1)
|
||||
{
|
||||
enforce_level_requirement = true;
|
||||
}
|
||||
}
|
||||
quest_manager.assigntask(taskid, enforce_level_requirement);
|
||||
} else {
|
||||
Perl_croak(aTHX_ "Usage: assigntask(taskid)");
|
||||
Perl_croak(aTHX_ "Usage: assigntask(taskid, enforce_level_requirement)");
|
||||
}
|
||||
|
||||
XSRETURN_EMPTY;
|
||||
|
||||
Reference in New Issue
Block a user