mirror of
https://github.com/EQEmu/Server.git
synced 2026-01-08 03:03:52 +00:00
[Quest API] Add multiple inventory method short hands to client. (#2078)
- Allows you to just directly use Client instead of having to grab reference to inventory. - Add $client->CountAugmentEquippedByID(item_id) to Perl. - Add $client->HasAugmentEquippedByID(item_id) to Perl. - Add $client->CountItemEquippedByID(item_id) to Perl. - Add $client->HasItemEquippedByID(item_id) to Perl. - Add client:CountAugmentEquippedByID(item_id) to Lua. - Add client:HasAugmentEquippedByID(item_id) to Lua - Add client:CountItemEquippedByID(item_id) to Lua. - Add client:HasItemEquippedByID(item_id) to Lua.
This commit is contained in:
parent
9113508269
commit
c709a6aa8e
@ -2401,6 +2401,26 @@ void Lua_Client::AddItem(luabind::object item_table) {
|
||||
);
|
||||
}
|
||||
|
||||
int Lua_Client::CountAugmentEquippedByID(uint32 item_id) {
|
||||
Lua_Safe_Call_Int();
|
||||
return self->GetInv().CountAugmentEquippedByID(item_id);
|
||||
}
|
||||
|
||||
bool Lua_Client::HasAugmentEquippedByID(uint32 item_id) {
|
||||
Lua_Safe_Call_Bool();
|
||||
return self->GetInv().HasAugmentEquippedByID(item_id);
|
||||
}
|
||||
|
||||
int Lua_Client::CountItemEquippedByID(uint32 item_id) {
|
||||
Lua_Safe_Call_Int();
|
||||
return self->GetInv().CountItemEquippedByID(item_id);
|
||||
}
|
||||
|
||||
bool Lua_Client::HasItemEquippedByID(uint32 item_id) {
|
||||
Lua_Safe_Call_Bool();
|
||||
return self->GetInv().HasItemEquippedByID(item_id);
|
||||
}
|
||||
|
||||
void Lua_Client::AddPlatinum(uint32 platinum) {
|
||||
Lua_Safe_Call_Void();
|
||||
self->AddPlatinum(platinum);
|
||||
@ -2471,7 +2491,9 @@ luabind::scope lua_register_client() {
|
||||
.def("ClearCompassMark",(void(Lua_Client::*)(void))&Lua_Client::ClearCompassMark)
|
||||
.def("ClearZoneFlag", (void(Lua_Client::*)(int))&Lua_Client::ClearZoneFlag)
|
||||
.def("Connected", (bool(Lua_Client::*)(void))&Lua_Client::Connected)
|
||||
.def("CountAugmentEquippedByID", (int(Lua_Client::*)(uint32))&Lua_Client::CountAugmentEquippedByID)
|
||||
.def("CountItem", (int(Lua_Client::*)(uint32))&Lua_Client::CountItem)
|
||||
.def("CountItemEquippedByID", (int(Lua_Client::*)(uint32))&Lua_Client::CountItemEquippedByID)
|
||||
.def("CreateExpedition", (Lua_Expedition(Lua_Client::*)(luabind::object))&Lua_Client::CreateExpedition)
|
||||
.def("CreateExpedition", (Lua_Expedition(Lua_Client::*)(std::string, uint32, uint32, std::string, uint32, uint32))&Lua_Client::CreateExpedition)
|
||||
.def("CreateExpedition", (Lua_Expedition(Lua_Client::*)(std::string, uint32, uint32, std::string, uint32, uint32, bool))&Lua_Client::CreateExpedition)
|
||||
@ -2620,8 +2642,10 @@ luabind::scope lua_register_client() {
|
||||
.def("GrantAlternateAdvancementAbility", (bool(Lua_Client::*)(int, int, bool))&Lua_Client::GrantAlternateAdvancementAbility)
|
||||
.def("GuildID", (uint32(Lua_Client::*)(void))&Lua_Client::GuildID)
|
||||
.def("GuildRank", (int(Lua_Client::*)(void))&Lua_Client::GuildRank)
|
||||
.def("HasAugmentEquippedByID", (bool(Lua_Client::*)(uint32))&Lua_Client::HasAugmentEquippedByID)
|
||||
.def("HasDisciplineLearned", (bool(Lua_Client::*)(uint16))&Lua_Client::HasDisciplineLearned)
|
||||
.def("HasExpeditionLockout", (bool(Lua_Client::*)(std::string, std::string))&Lua_Client::HasExpeditionLockout)
|
||||
.def("HasItemEquippedByID", (bool(Lua_Client::*)(uint32))&Lua_Client::HasItemEquippedByID)
|
||||
.def("HasSkill", (bool(Lua_Client::*)(int))&Lua_Client::HasSkill)
|
||||
.def("HasSpellScribed", (bool(Lua_Client::*)(int))&Lua_Client::HasSpellScribed)
|
||||
.def("HasZoneFlag", (bool(Lua_Client::*)(int))&Lua_Client::HasZoneFlag)
|
||||
|
||||
@ -399,6 +399,10 @@ public:
|
||||
void RemoveItem(uint32 item_id, uint32 quantity);
|
||||
void SetGMStatus(uint32 newStatus);
|
||||
void AddItem(luabind::object item_table);
|
||||
int CountAugmentEquippedByID(uint32 item_id);
|
||||
int CountItemEquippedByID(uint32 item_id);
|
||||
bool HasAugmentEquippedByID(uint32 item_id);
|
||||
bool HasItemEquippedByID(uint32 item_id);
|
||||
|
||||
int GetEnvironmentDamageModifier();
|
||||
void SetEnvironmentDamageModifier(int value);
|
||||
|
||||
@ -6122,6 +6122,41 @@ XS(XS_Client_AddItem) {
|
||||
XSRETURN_EMPTY;
|
||||
}
|
||||
|
||||
XS(XS_Client_HasAugmentEquippedByID);
|
||||
XS(XS_Client_HasAugmentEquippedByID) {
|
||||
dXSARGS;
|
||||
if (items != 2)
|
||||
Perl_croak(aTHX_ "Usage: Client::HasAugmentEquippedByID(THIS, uint32 item_id)");
|
||||
{
|
||||
Client *THIS;
|
||||
bool has_equipped = false;
|
||||
uint32 item_id = (uint32) SvUV(ST(1));
|
||||
VALIDATE_THIS_IS_CLIENT;
|
||||
has_equipped = THIS->GetInv().HasAugmentEquippedByID(item_id);
|
||||
ST(0) = boolSV(has_equipped);
|
||||
sv_2mortal(ST(0));
|
||||
}
|
||||
XSRETURN(1);
|
||||
}
|
||||
|
||||
XS(XS_Client_CountAugmentEquippedByID);
|
||||
XS(XS_Client_CountAugmentEquippedByID) {
|
||||
dXSARGS;
|
||||
if (items != 2)
|
||||
Perl_croak(aTHX_ "Usage: Client::CountAugmentEquippedByID(THIS, uint32 item_id)");
|
||||
{
|
||||
Client *THIS;
|
||||
int quantity = 0;
|
||||
uint32 item_id = (uint32) SvUV(ST(1));
|
||||
dXSTARG;
|
||||
VALIDATE_THIS_IS_CLIENT;
|
||||
quantity = THIS->GetInv().CountAugmentEquippedByID(item_id);
|
||||
XSprePUSH;
|
||||
PUSHi((IV)quantity);
|
||||
}
|
||||
XSRETURN(1);
|
||||
}
|
||||
|
||||
XS(XS_Client_AddPlatinum); /* prototype to pass -Wmissing-prototypes */
|
||||
XS(XS_Client_AddPlatinum) {
|
||||
dXSARGS;
|
||||
@ -6159,6 +6194,41 @@ XS(XS_Client_GetCarriedPlatinum) {
|
||||
XSRETURN(1);
|
||||
}
|
||||
|
||||
XS(XS_Client_HasItemEquippedByID);
|
||||
XS(XS_Client_HasItemEquippedByID) {
|
||||
dXSARGS;
|
||||
if (items != 2)
|
||||
Perl_croak(aTHX_ "Usage: Client::HasItemEquippedByID(THIS, uint32 item_id)");
|
||||
{
|
||||
Client *THIS;
|
||||
bool has_equipped = false;
|
||||
uint32 item_id = (uint32) SvUV(ST(1));
|
||||
VALIDATE_THIS_IS_CLIENT;
|
||||
has_equipped = THIS->GetInv().HasItemEquippedByID(item_id);
|
||||
ST(0) = boolSV(has_equipped);
|
||||
sv_2mortal(ST(0));
|
||||
}
|
||||
XSRETURN(1);
|
||||
}
|
||||
|
||||
XS(XS_Client_CountItemEquippedByID);
|
||||
XS(XS_Client_CountItemEquippedByID) {
|
||||
dXSARGS;
|
||||
if (items != 2)
|
||||
Perl_croak(aTHX_ "Usage: Client::CountItemEquippedByID(THIS, uint32 item_id)");
|
||||
{
|
||||
Client *THIS;
|
||||
int quantity = 0;
|
||||
uint32 item_id = (uint32) SvUV(ST(1));
|
||||
dXSTARG;
|
||||
VALIDATE_THIS_IS_CLIENT;
|
||||
quantity = THIS->GetInv().CountItemEquippedByID(item_id);
|
||||
XSprePUSH;
|
||||
PUSHi((IV)quantity);
|
||||
}
|
||||
XSRETURN(1);
|
||||
}
|
||||
|
||||
XS(XS_Client_TakePlatinum); /* prototype to pass -Wmissing-prototypes */
|
||||
XS(XS_Client_TakePlatinum) {
|
||||
dXSARGS;
|
||||
@ -6230,7 +6300,9 @@ XS(boot_Client) {
|
||||
newXSproto(strcpy(buf, "ClearCompassMark"), XS_Client_ClearCompassMark, file, "$");
|
||||
newXSproto(strcpy(buf, "ClearZoneFlag"), XS_Client_ClearZoneFlag, file, "$$");
|
||||
newXSproto(strcpy(buf, "Connected"), XS_Client_Connected, file, "$");
|
||||
newXSproto(strcpy(buf, "CountAugmentEquippedByID"), XS_Client_CountAugmentEquippedByID, file, "$$");
|
||||
newXSproto(strcpy(buf, "CountItem"), XS_Client_CountItem, file, "$$");
|
||||
newXSproto(strcpy(buf, "CountItemEquippedByID"), XS_Client_CountItemEquippedByID, file, "$$");
|
||||
newXSproto(strcpy(buf, "CreateExpedition"), XS_Client_CreateExpedition, file, "$$$$$$$;$");
|
||||
newXSproto(strcpy(buf, "CreateTaskDynamicZone"), XS_Client_CreateTaskDynamicZone, file, "$$");
|
||||
newXSproto(strcpy(buf, "DecreaseByID"), XS_Client_DecreaseByID, file, "$$$");
|
||||
@ -6360,8 +6432,10 @@ XS(boot_Client) {
|
||||
newXSproto(strcpy(buf, "GrantAlternateAdvancementAbility"), XS_Client_GrantAlternateAdvancementAbility, file, "$$$;$");
|
||||
newXSproto(strcpy(buf, "GuildID"), XS_Client_GuildID, file, "$");
|
||||
newXSproto(strcpy(buf, "GuildRank"), XS_Client_GuildRank, file, "$");
|
||||
newXSproto(strcpy(buf, "HasAugmentEquippedByID"), XS_Client_HasAugmentEquippedByID, file, "$$");
|
||||
newXSproto(strcpy(buf, "HasDisciplineLearned"), XS_Client_HasDisciplineLearned, file, "$$");
|
||||
newXSproto(strcpy(buf, "HasExpeditionLockout"), XS_Client_HasExpeditionLockout, file, "$$$");
|
||||
newXSproto(strcpy(buf, "HasItemEquippedByID"), XS_Client_HasItemEquippedByID, file, "$$");
|
||||
newXSproto(strcpy(buf, "HasSkill"), XS_Client_HasSkill, file, "$$");
|
||||
newXSproto(strcpy(buf, "HasSpellScribed"), XS_Client_HasSkill, file, "$$");
|
||||
newXSproto(strcpy(buf, "HasZoneFlag"), XS_Client_HasZoneFlag, file, "$$");
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user