Fully implemented QuestReward. (credit to Cavedude on EQMacEmu)

Syntax on NPC is:
e.other:QuestReward(e.self,copper,silver,gold,platinum,item,experience,factionid,factionvalue);

This will give you any or all of the rewards and their messages with one call, including the quest ding sound. Any item is sent to your inventory, like SummonItem does now. The coin message is generated by the client, and will give you a message for each coin type (You recieve 5 copper...). No way around that, but it's still useful if the reward only calls for a single type.
This commit is contained in:
regneq
2015-05-11 11:35:54 -07:00
parent c360aa9b0f
commit d1fbd086d7
11 changed files with 161 additions and 107 deletions
+49 -1
View File
@@ -1255,6 +1255,46 @@ void Lua_Client::PlayMP3(std::string file)
self->PlayMP3(file.c_str());
}
void Lua_Client::QuestReward(Lua_Mob target) {
Lua_Safe_Call_Void();
self->QuestReward(target);
}
void Lua_Client::QuestReward(Lua_Mob target, uint32 copper) {
Lua_Safe_Call_Void();
self->QuestReward(target, copper);
}
void Lua_Client::QuestReward(Lua_Mob target, uint32 copper, uint32 silver) {
Lua_Safe_Call_Void();
self->QuestReward(target, copper, silver);
}
void Lua_Client::QuestReward(Lua_Mob target, uint32 copper, uint32 silver, uint32 gold) {
Lua_Safe_Call_Void();
self->QuestReward(target, copper, silver, gold);
}
void Lua_Client::QuestReward(Lua_Mob target, uint32 copper, uint32 silver, uint32 gold, uint32 platinum) {
Lua_Safe_Call_Void();
self->QuestReward(target, copper, silver, gold, platinum);
}
void Lua_Client::QuestReward(Lua_Mob target, uint32 copper, uint32 silver, uint32 gold, uint32 platinum, uint32 itemid) {
Lua_Safe_Call_Void();
self->QuestReward(target, copper, silver, gold, platinum, itemid);
}
void Lua_Client::QuestReward(Lua_Mob target, uint32 copper, uint32 silver, uint32 gold, uint32 platinum, uint32 itemid, uint32 exp) {
Lua_Safe_Call_Void();
self->QuestReward(target, copper, silver, gold, platinum, itemid, exp);
}
void Lua_Client::QuestReward(Lua_Mob target, uint32 copper, uint32 silver, uint32 gold, uint32 platinum, uint32 itemid, uint32 exp, uint32 factionid, int32 faction) {
Lua_Safe_Call_Void();
self->QuestReward(target, copper, silver, gold, platinum, itemid, exp, factionid, faction);
}
luabind::scope lua_register_client() {
return luabind::class_<Lua_Client, Lua_Mob>("Client")
.def(luabind::constructor<>())
@@ -1504,7 +1544,15 @@ luabind::scope lua_register_client() {
.def("SetConsumption", (void(Lua_Client::*)(int, int))&Lua_Client::SetConsumption)
.def("SendMarqueeMessage", (void(Lua_Client::*)(uint32, uint32, uint32, uint32, uint32, std::string))&Lua_Client::SendMarqueeMessage)
.def("SendColoredText", (void(Lua_Client::*)(uint32, std::string))&Lua_Client::SendColoredText)
.def("PlayMP3", (void(Lua_Client::*)(std::string))&Lua_Client::PlayMP3);
.def("PlayMP3", (void(Lua_Client::*)(std::string))&Lua_Client::PlayMP3)
.def("QuestReward", (void(Lua_Client::*)(Lua_Mob))&Lua_Client::QuestReward)
.def("QuestReward", (void(Lua_Client::*)(Lua_Mob, uint32))&Lua_Client::QuestReward)
.def("QuestReward", (void(Lua_Client::*)(Lua_Mob, uint32, uint32))&Lua_Client::QuestReward)
.def("QuestReward", (void(Lua_Client::*)(Lua_Mob, uint32, uint32, uint32))&Lua_Client::QuestReward)
.def("QuestReward", (void(Lua_Client::*)(Lua_Mob, uint32, uint32, uint32, uint32))&Lua_Client::QuestReward)
.def("QuestReward", (void(Lua_Client::*)(Lua_Mob, uint32, uint32, uint32, uint32, uint32))&Lua_Client::QuestReward)
.def("QuestReward", (void(Lua_Client::*)(Lua_Mob, uint32, uint32, uint32, uint32, uint32, uint32))&Lua_Client::QuestReward)
.def("QuestReward", (void(Lua_Client::*)(Lua_Mob, uint32, uint32, uint32, uint32, uint32, uint32, uint32, int32))&Lua_Client::QuestReward);
}
luabind::scope lua_register_inventory_where() {