mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-11 12:41:30 +00:00
[Quest API] Add GetLeader() and GetLeaderName() to Perl/Lua. (#2701)
* [Quest API] Add $raid->GetLeader() and $raid->GetLeaderName() * Remove semicolon * Tweaks * Remove inline * Add LUA compatibility * Add GetLeaderName() to LUA * Cast leadername to string * Fix GetLeaderName return type * Tweak
This commit is contained in:
parent
a80a6de59f
commit
6e1c4b768f
@ -83,6 +83,16 @@ bool Lua_Raid::IsLeader(Lua_Client c) {
|
||||
return self->IsLeader(c);
|
||||
}
|
||||
|
||||
Lua_Client Lua_Raid::GetLeader() {
|
||||
Lua_Safe_Call_Class(Lua_Client);
|
||||
return self->GetLeader();
|
||||
}
|
||||
|
||||
std::string Lua_Raid::GetLeaderName() {
|
||||
Lua_Safe_Call_String();
|
||||
return self->GetLeaderName();
|
||||
}
|
||||
|
||||
bool Lua_Raid::IsGroupLeader(const char *name) {
|
||||
Lua_Safe_Call_Bool();
|
||||
return self->IsGroupLeader(name);
|
||||
@ -181,6 +191,8 @@ luabind::scope lua_register_raid() {
|
||||
.def("IsGroupLeader", (bool(Lua_Raid::*)(Lua_Client))&Lua_Raid::IsGroupLeader)
|
||||
.def("IsLeader", (bool(Lua_Raid::*)(const char*))&Lua_Raid::IsLeader)
|
||||
.def("IsLeader", (bool(Lua_Raid::*)(Lua_Client))&Lua_Raid::IsLeader)
|
||||
.def("GetLeader", (Lua_Client(Lua_Raid::*)(void))&Lua_Raid::GetLeader)
|
||||
.def("GetLeaderName", (std::string(Lua_Raid::*)(void)) & Lua_Raid::GetLeaderName)
|
||||
.def("IsRaidMember", (bool(Lua_Raid::*)(const char*))&Lua_Raid::IsRaidMember)
|
||||
.def("IsRaidMember", (bool(Lua_Raid::*)(Lua_Client))&Lua_Raid::IsRaidMember)
|
||||
.def("RaidCount", (int(Lua_Raid::*)(void))&Lua_Raid::RaidCount)
|
||||
|
||||
@ -40,6 +40,8 @@ public:
|
||||
void BalanceHP(int penalty, uint32 group_id);
|
||||
bool IsLeader(const char *c);
|
||||
bool IsLeader(Lua_Client c);
|
||||
Lua_Client GetLeader();
|
||||
std::string GetLeaderName();
|
||||
bool IsGroupLeader(const char *name);
|
||||
bool IsGroupLeader(Lua_Client c);
|
||||
int GetHighestLevel();
|
||||
|
||||
@ -78,6 +78,16 @@ bool Perl_Raid_IsLeader(Raid* self, Client* c) // @categories Raid
|
||||
return self->IsLeader(c);
|
||||
}
|
||||
|
||||
Client* Perl_Raid_GetLeader(Raid* self) // @categories Raid
|
||||
{
|
||||
return self->GetLeader();
|
||||
}
|
||||
|
||||
std::string Perl_Raid_GetLeaderName(Raid* self) // @categories Raid
|
||||
{
|
||||
return self->GetLeaderName();
|
||||
}
|
||||
|
||||
bool Perl_Raid_IsGroupLeader(Raid* self, const char* who) // @categories Group, Raid
|
||||
{
|
||||
return self->IsGroupLeader(who);
|
||||
@ -165,6 +175,8 @@ void perl_register_raid()
|
||||
package.add("GetID", &Perl_Raid_GetID);
|
||||
package.add("GetLowestLevel", &Perl_Raid_GetLowestLevel);
|
||||
package.add("GetMember", &Perl_Raid_GetMember);
|
||||
package.add("GetLeader", &Perl_Raid_GetLeader);
|
||||
package.add("GetLeaderName", &Perl_Raid_GetLeaderName);
|
||||
package.add("GetTotalRaidDamage", &Perl_Raid_GetTotalRaidDamage);
|
||||
package.add("GroupCount", &Perl_Raid_GroupCount);
|
||||
package.add("IsGroupLeader", (bool(*)(Raid*, const char*))&Perl_Raid_IsGroupLeader);
|
||||
|
||||
@ -104,6 +104,7 @@ public:
|
||||
|
||||
void SetLeader(Client* c) { leader = c; }
|
||||
Client* GetLeader() { return leader; }
|
||||
std::string GetLeaderName() { return leadername; }
|
||||
bool IsLeader(Client* c) { return c == leader; }
|
||||
bool IsLeader(const char* name) { return !strcmp(leadername, name); }
|
||||
void SetRaidLeader(const char *wasLead, const char *name);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user