Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug Fix] Resolve subroutine redefinition due to bot methods. #2117

Merged
merged 2 commits into from May 7, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
8 changes: 4 additions & 4 deletions zone/bot.cpp
Expand Up @@ -4172,7 +4172,7 @@ void Bot::BotTradeAddItem(const EQ::ItemInstance* inst, uint16 slot_id, std::str
BotAddEquipItem(slot_id, item_id);
}

void Bot::AddItem(
void Bot::AddBotItem(
uint16 slot_id,
uint32 item_id,
int16 charges,
Expand Down Expand Up @@ -4222,7 +4222,7 @@ void Bot::AddItem(
BotAddEquipItem(slot_id, item_id);
}

uint32 Bot::CountItem(uint32 item_id) {
uint32 Bot::CountBotItem(uint32 item_id) {
uint32 item_count = 0;
EQ::ItemInstance *inst = nullptr;

Expand All @@ -4240,7 +4240,7 @@ uint32 Bot::CountItem(uint32 item_id) {
return item_count;
}

bool Bot::HasItem(uint32 item_id) {
bool Bot::HasBotItem(uint32 item_id) {
bool has_item = false;
EQ::ItemInstance *inst = nullptr;

Expand All @@ -4259,7 +4259,7 @@ bool Bot::HasItem(uint32 item_id) {
return has_item;
}

void Bot::RemoveItem(uint32 item_id) {
void Bot::RemoveBotItem(uint32 item_id) {
EQ::ItemInstance *inst = nullptr;

for (uint16 slot_id = EQ::invslot::EQUIPMENT_BEGIN; slot_id <= EQ::invslot::EQUIPMENT_END; ++slot_id) {
Expand Down
8 changes: 4 additions & 4 deletions zone/bot.h
Expand Up @@ -573,7 +573,7 @@ class Bot : public NPC {
static NPCType *FillNPCTypeStruct(uint32 botSpellsID, std::string botName, std::string botLastName, uint8 botLevel, uint16 botRace, uint8 botClass, uint8 gender, float size, uint32 face, uint32 hairStyle, uint32 hairColor, uint32 eyeColor, uint32 eyeColor2, uint32 beardColor, uint32 beard, uint32 drakkinHeritage, uint32 drakkinTattoo, uint32 drakkinDetails, int32 hp, int32 mana, int32 mr, int32 cr, int32 dr, int32 fr, int32 pr, int32 corrup, int32 ac, uint32 str, uint32 sta, uint32 dex, uint32 agi, uint32 _int, uint32 wis, uint32 cha, uint32 attack);
void BotRemoveEquipItem(uint16 slot_id);
void RemoveBotItemBySlot(uint16 slot_id, std::string* error_message);
void AddItem(
void AddBotItem(
uint16 slot_id,
uint32 item_id,
int16 charges = -1,
Expand All @@ -585,9 +585,9 @@ class Bot : public NPC {
uint32 augment_five = 0,
uint32 augment_six = 0
);
uint32 CountItem(uint32 item_id);
bool HasItem(uint32 item_id);
void RemoveItem(uint32 item_id);
uint32 CountBotItem(uint32 item_id);
bool HasBotItem(uint32 item_id);
void RemoveBotItem(uint32 item_id);
uint32 GetTotalPlayTime();

// New accessors for BotDatabase access
Expand Down
72 changes: 36 additions & 36 deletions zone/lua_bot.cpp
Expand Up @@ -8,87 +8,87 @@
#include "lua_bot.h"
#include "lua_mob.h"

void Lua_Bot::AddItem(uint16 slot_id, uint32 item_id) {
void Lua_Bot::AddBotItem(uint16 slot_id, uint32 item_id) {
Lua_Safe_Call_Void();
self->AddItem(slot_id, item_id);
self->AddBotItem(slot_id, item_id);
}

void Lua_Bot::AddItem(uint16 slot_id, uint32 item_id, int16 charges) {
void Lua_Bot::AddBotItem(uint16 slot_id, uint32 item_id, int16 charges) {
Lua_Safe_Call_Void();
self->AddItem(slot_id, item_id, charges);
self->AddBotItem(slot_id, item_id, charges);
}

void Lua_Bot::AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned) {
void Lua_Bot::AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned) {
Lua_Safe_Call_Void();
self->AddItem(slot_id, item_id, charges, attuned);
self->AddBotItem(slot_id, item_id, charges, attuned);
}

void Lua_Bot::AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one) {
void Lua_Bot::AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one) {
Lua_Safe_Call_Void();
self->AddItem(slot_id, item_id, charges, attuned, augment_one);
self->AddBotItem(slot_id, item_id, charges, attuned, augment_one);
}

void Lua_Bot::AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two) {
void Lua_Bot::AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two) {
Lua_Safe_Call_Void();
self->AddItem(slot_id, item_id, charges, attuned, augment_one, augment_two);
self->AddBotItem(slot_id, item_id, charges, attuned, augment_one, augment_two);
}

void Lua_Bot::AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three) {
void Lua_Bot::AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three) {
Lua_Safe_Call_Void();
self->AddItem(slot_id, item_id, charges, attuned, augment_one, augment_two, augment_three);
self->AddBotItem(slot_id, item_id, charges, attuned, augment_one, augment_two, augment_three);
}

void Lua_Bot::AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three, uint32 augment_four) {
void Lua_Bot::AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three, uint32 augment_four) {
Lua_Safe_Call_Void();
self->AddItem(slot_id, item_id, charges, attuned, augment_one, augment_two, augment_three, augment_four);
self->AddBotItem(slot_id, item_id, charges, attuned, augment_one, augment_two, augment_three, augment_four);
}

void Lua_Bot::AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three, uint32 augment_four, uint32 augment_five) {
void Lua_Bot::AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three, uint32 augment_four, uint32 augment_five) {
Lua_Safe_Call_Void();
self->AddItem(slot_id, item_id, charges, attuned, augment_one, augment_two, augment_three, augment_four, augment_five);
self->AddBotItem(slot_id, item_id, charges, attuned, augment_one, augment_two, augment_three, augment_four, augment_five);
}

void Lua_Bot::AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three, uint32 augment_four, uint32 augment_five, uint32 augment_six) {
void Lua_Bot::AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three, uint32 augment_four, uint32 augment_five, uint32 augment_six) {
Lua_Safe_Call_Void();
self->AddItem(slot_id, item_id, charges, attuned, augment_one, augment_two, augment_three, augment_four, augment_five, augment_six);
self->AddBotItem(slot_id, item_id, charges, attuned, augment_one, augment_two, augment_three, augment_four, augment_five, augment_six);
}

uint32 Lua_Bot::CountItem(uint32 item_id) {
uint32 Lua_Bot::CountBotItem(uint32 item_id) {
Lua_Safe_Call_Int();
return self->CountItem(item_id);
return self->CountBotItem(item_id);
}

Lua_Mob Lua_Bot::GetOwner() {
Lua_Safe_Call_Class(Lua_Mob);
return Lua_Mob(self->GetOwner());
}

bool Lua_Bot::HasItem(uint32 item_id) {
bool Lua_Bot::HasBotItem(uint32 item_id) {
Lua_Safe_Call_Bool();
return self->HasItem(item_id);
return self->HasBotItem(item_id);
}

void Lua_Bot::RemoveItem(uint32 item_id) {
void Lua_Bot::RemoveBotItem(uint32 item_id) {
Lua_Safe_Call_Void();
self->RemoveItem(item_id);
self->RemoveBotItem(item_id);
}

luabind::scope lua_register_bot() {
return luabind::class_<Lua_Bot, Lua_Mob>("Bot")
.def(luabind::constructor<>())
.def("AddItem", (void(Lua_Bot::*)(uint16,uint32))&Lua_Bot::AddItem)
.def("AddItem", (void(Lua_Bot::*)(uint16,uint32,int16))&Lua_Bot::AddItem)
.def("AddItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool))&Lua_Bot::AddItem)
.def("AddItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool,uint32))&Lua_Bot::AddItem)
.def("AddItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool,uint32,uint32))&Lua_Bot::AddItem)
.def("AddItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool,uint32,uint32,uint32))&Lua_Bot::AddItem)
.def("AddItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool,uint32,uint32,uint32,uint32))&Lua_Bot::AddItem)
.def("AddItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool,uint32,uint32,uint32,uint32,uint32))&Lua_Bot::AddItem)
.def("AddItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool,uint32,uint32,uint32,uint32,uint32,uint32))&Lua_Bot::AddItem)
.def("CountItem", (uint32(Lua_Bot::*)(uint32))&Lua_Bot::CountItem)
.def("AddBotItem", (void(Lua_Bot::*)(uint16,uint32))&Lua_Bot::AddBotItem)
.def("AddBotItem", (void(Lua_Bot::*)(uint16,uint32,int16))&Lua_Bot::AddBotItem)
.def("AddBotItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool))&Lua_Bot::AddBotItem)
.def("AddBotItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool,uint32))&Lua_Bot::AddBotItem)
.def("AddBotItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool,uint32,uint32))&Lua_Bot::AddBotItem)
.def("AddBotItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool,uint32,uint32,uint32))&Lua_Bot::AddBotItem)
.def("AddBotItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool,uint32,uint32,uint32,uint32))&Lua_Bot::AddBotItem)
.def("AddBotItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool,uint32,uint32,uint32,uint32,uint32))&Lua_Bot::AddBotItem)
.def("AddBotItem", (void(Lua_Bot::*)(uint16,uint32,int16,bool,uint32,uint32,uint32,uint32,uint32,uint32))&Lua_Bot::AddBotItem)
.def("CountBotItem", (uint32(Lua_Bot::*)(uint32))&Lua_Bot::CountBotItem)
.def("GetOwner", (Lua_Mob(Lua_Bot::*)(void))&Lua_Bot::GetOwner)
.def("HasItem", (bool(Lua_Bot::*)(uint32))&Lua_Bot::HasItem)
.def("RemoveItem", (void(Lua_Bot::*)(uint32))&Lua_Bot::RemoveItem);
.def("HasBotItem", (bool(Lua_Bot::*)(uint32))&Lua_Bot::HasBotItem)
.def("RemoveBotItem", (void(Lua_Bot::*)(uint32))&Lua_Bot::RemoveBotItem);
}

#endif
Expand Down
24 changes: 12 additions & 12 deletions zone/lua_bot.h
Expand Up @@ -27,19 +27,19 @@ class Lua_Bot : public Lua_Mob
return reinterpret_cast<Bot*>(GetLuaPtrData());
}

void AddItem(uint16 slot_id, uint32 item_id);
void AddItem(uint16 slot_id, uint32 item_id, int16 charges);
void AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned);
void AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one);
void AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two);
void AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three);
void AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three, uint32 augment_four);
void AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three, uint32 augment_four, uint32 augment_five);
void AddItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three, uint32 augment_four, uint32 augment_five, uint32 augment_six);
uint32 CountItem(uint32 item_id);
void AddBotItem(uint16 slot_id, uint32 item_id);
void AddBotItem(uint16 slot_id, uint32 item_id, int16 charges);
void AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned);
void AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one);
void AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two);
void AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three);
void AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three, uint32 augment_four);
void AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three, uint32 augment_four, uint32 augment_five);
void AddBotItem(uint16 slot_id, uint32 item_id, int16 charges, bool attuned, uint32 augment_one, uint32 augment_two, uint32 augment_three, uint32 augment_four, uint32 augment_five, uint32 augment_six);
uint32 CountBotItem(uint32 item_id);
Lua_Mob GetOwner();
bool HasItem(uint32 item_id);
void RemoveItem(uint32 item_id);
bool HasBotItem(uint32 item_id);
void RemoveBotItem(uint32 item_id);
};

#endif
Expand Down
40 changes: 20 additions & 20 deletions zone/perl_bot.cpp
Expand Up @@ -44,11 +44,11 @@ XS(XS_Bot_GetOwner)
XSRETURN(1);
}

XS(XS_Bot_AddItem); /* prototype to pass -Wmissing-prototypes */
XS(XS_Bot_AddItem) {
XS(XS_Bot_AddBotItem); /* prototype to pass -Wmissing-prototypes */
XS(XS_Bot_AddBotItem) {
dXSARGS;
if (items < 3 || items > 11)
Perl_croak(aTHX_ "Usage: Bot::AddItem(THIS, uint16 slot_id, uint32 item_id, [int16 charges = -1], [bool attuned = false], [uint32 augment_one = 0], [uint32 augment_two = 0], [uint32 augment_three = 0], [uint32 augment_four = 0], [uint32 augment_five = 0], [uint32 augment_six = 0])"); // @categories Inventory and Items, Script Utility
Perl_croak(aTHX_ "Usage: Bot::AddBotItem(THIS, uint16 slot_id, uint32 item_id, [int16 charges = -1], [bool attuned = false], [uint32 augment_one = 0], [uint32 augment_two = 0], [uint32 augment_three = 0], [uint32 augment_four = 0], [uint32 augment_five = 0], [uint32 augment_six = 0])"); // @categories Inventory and Items, Script Utility
{
Bot* THIS;
uint16 slot_id = (uint16) SvUV(ST(1));
Expand Down Expand Up @@ -95,56 +95,56 @@ XS(XS_Bot_AddItem) {
augment_six = (uint32) SvUV(ST(10));
}

THIS->AddItem(slot_id, item_id, charges, attuned, augment_one, augment_two, augment_three, augment_four, augment_five, augment_six);
THIS->AddBotItem(slot_id, item_id, charges, attuned, augment_one, augment_two, augment_three, augment_four, augment_five, augment_six);
}
XSRETURN_EMPTY;
}

XS(XS_Bot_CountItem);
XS(XS_Bot_CountItem) {
XS(XS_Bot_CountBotItem);
XS(XS_Bot_CountBotItem) {
dXSARGS;
if (items != 2)
Perl_croak(aTHX_ "Usage: Bot::CountItem(THIS, uint32 item_id)");
Perl_croak(aTHX_ "Usage: Bot::CountBotItem(THIS, uint32 item_id)");
{
Bot* THIS;
int item_count = 0;
uint32 item_id = (uint32) SvUV(ST(1));
dXSTARG;
VALIDATE_THIS_IS_BOT;
item_count = THIS->CountItem(item_id);
item_count = THIS->CountBotItem(item_id);
XSprePUSH;
PUSHu((UV) item_count);
}
XSRETURN(1);
}

XS(XS_Bot_HasItem);
XS(XS_Bot_HasItem) {
XS(XS_Bot_HasBotItem);
XS(XS_Bot_HasBotItem) {
dXSARGS;
if (items != 2)
Perl_croak(aTHX_ "Usage: Bot:HasItem(THIS, uint32 item_id)");
Perl_croak(aTHX_ "Usage: Bot:HasBotItem(THIS, uint32 item_id)");
{
Bot* THIS;
bool has_item = false;
uint32 item_id = (uint32) SvUV(ST(1));
VALIDATE_THIS_IS_BOT;
has_item = THIS->HasItem(item_id);
has_item = THIS->HasBotItem(item_id);
ST(0) = boolSV(has_item);
sv_2mortal(ST(0));
}
XSRETURN(1);
}

XS(XS_Bot_RemoveItem);
XS(XS_Bot_RemoveItem) {
XS(XS_Bot_RemoveBotItem);
XS(XS_Bot_RemoveBotItem) {
dXSARGS;
if (items != 2)
Perl_croak(aTHX_ "Usage: Bot::RemoveItem(THIS, uint32 item_id)"); // @categories Spells and Disciplines
Perl_croak(aTHX_ "Usage: Bot::RemoveBotItem(THIS, uint32 item_id)"); // @categories Spells and Disciplines
{
Bot* THIS;
uint32 item_id = (uint32) SvUV(ST(1));
VALIDATE_THIS_IS_BOT;
THIS->RemoveItem(item_id);
THIS->RemoveBotItem(item_id);
}
XSRETURN_EMPTY;
}
Expand All @@ -167,11 +167,11 @@ XS(boot_Bot)
char buf[128];

XS_VERSION_BOOTCHECK;
newXSproto(strcpy(buf, "AddItem"), XS_Bot_AddItem, file, "$$$;$$$$$$$$");
newXSproto(strcpy(buf, "CountItem"), XS_Bot_CountItem, file, "$$");
newXSproto(strcpy(buf, "AddBotItem"), XS_Bot_AddBotItem, file, "$$$;$$$$$$$$");
newXSproto(strcpy(buf, "CountBotItem"), XS_Bot_CountBotItem, file, "$$");
newXSproto(strcpy(buf, "GetOwner"), XS_Bot_GetOwner, file, "$");
newXSproto(strcpy(buf, "HasItem"), XS_Bot_HasItem, file, "$$");
newXSproto(strcpy(buf, "RemoveItem"), XS_Bot_RemoveItem, file, "$$");
newXSproto(strcpy(buf, "HasBotItem"), XS_Bot_HasBotItem, file, "$$");
newXSproto(strcpy(buf, "RemoveBotItem"), XS_Bot_RemoveBotItem, file, "$$");
XSRETURN_YES;
}

Expand Down