- script atcmd_quest_manage -1,{
OnInit:
bindatcmd "checkquest", strnpcinfo(3) + "::OnCheckQuest", 99;
bindatcmd "setquest", strnpcinfo(3) + "::OnSetQuest", 99;
bindatcmd "erasequest", strnpcinfo(3) + "::OnEraseQuest", 99;
end;
OnCheckQuest:
.@quest_id = atoi(.@atcmd_parameters$[0]);
dispbottom "checkquest("+.@quest_id+"):";
switch (checkquest(.@quest_id)) {
case -1: dispbottom "-1 = Quest not started (not in quest log)";
case 0: dispbottom " 0 = Quest has been given, but the state is \"inactive\"";
case 1: dispbottom " 1 = Quest has been given, and the state is \"active\"";
case 2: dispbottom " 2 = Quest completed";
}
dispbottom "checkquest("+.@quest_id+", PLAYTIME):";
switch (checkquest(.@quest_id, PLAYTIME)) {
case -1: dispbottom "-1 = Quest not started (not in quest log)";
case 0: dispbottom " 0 = the time limit has not yet been reached";
case 1: dispbottom " 1 = the time limit has not been reached but the quest is marked as complete";
case 2: dispbottom " 2 = the time limit has been reached";
}
dispbottom "checkquest("+.@quest_id+", HUNTING):";
switch (checkquest(.@quest_id, HUNTING)) {
case -1: dispbottom "-1 = Quest not started (not in quest log)";
case 0: dispbottom " 0 = you haven't killed all of the target monsters and the time limit has not been reached.";
case 1: dispbottom " 1 = you haven't killed all of the target monsters but the time limit has been reached.";
case 2: dispbottom " 2 = you've killed all of the target monsters";
}
end;
OnSetQuest:
.@quest_id = atoi(.@atcmd_parameters$[0]);
if (checkquest(.@quest_id) == -1) {
setquest .@quest_id;
dispbottom "setquest("+.@quest_id+") - quest assigned.";
}
else {
dispbottom "setquest("+.@quest_id+") - failed, quest already assigned.";
}
end;
OnEraseQuest:
.@quest_id = atoi(.@atcmd_parameters$[0]);
if (checkquest(.@quest_id) == -1) {
dispbottom "erasequest("+.@quest_id+") - failed quest aren't assigned yet.";
}
else {
erasequest .@quest_id;
dispbottom "erasequest("+.@quest_id+") - quest erased.";
}
end;
}
Comments
0 B
|👍
/👎