[Quest API] Add GetRandomClient(), GetRandomMob() and GetRandomNPC() overloads to Perl/Lua. (#2541)

* [Quest API] Add GetRandomClient(), GetRandomMob() and GetRandomNPC() overloads to Perl/Lua.

# Perl
- Add `$entity_list->GetRandomClient()` to Perl.
- Add `$entity_list->GetRandomMob()` to Perl.
- Add `$entity_list->GetRandomNPC()` to Perl.

# Lua
- Add `eq.get_entity_list():GetRandomClient()` to Lua.
- Add `eq.get_entity_list():GetRandomMob()` to Lua.
- Add `eq.get_entity_list():GetRandomNPC()` to Lua.

# Notes
- We didn't have overloads before without XYZ, so was harder to do a zone-wide random.

* Update lua_entity_list.cpp
This commit is contained in:
Kinglykrab
2022-11-14 14:08:02 -05:00
committed by GitHub
parent df57138a61
commit e5ad9264d0
5 changed files with 71 additions and 8 deletions
+3
View File
@@ -108,10 +108,13 @@ public:
void RemoveFromHateLists(Lua_Mob who);
void RemoveFromHateLists(Lua_Mob who, bool set_to_one);
void MessageGroup(Lua_Mob who, bool skip_close, uint32 type, const char *message);
Lua_Client GetRandomClient();
Lua_Client GetRandomClient(float x, float y, float z, float distance);
Lua_Client GetRandomClient(float x, float y, float z, float distance, Lua_Client exclude_client);
Lua_Mob GetRandomMob();
Lua_Mob GetRandomMob(float x, float y, float z, float distance);
Lua_Mob GetRandomMob(float x, float y, float z, float distance, Lua_Mob exclude_mob);
Lua_NPC GetRandomNPC();
Lua_NPC GetRandomNPC(float x, float y, float z, float distance);
Lua_NPC GetRandomNPC(float x, float y, float z, float distance, Lua_NPC exclude_npc);
Lua_Mob_List GetMobList();