mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-11 16:51:29 +00:00
* [Feature] Add Instance Version Support to Experience Modifiers. Allows Operators to set experience modifiers to be instance version specific so that you can have different versions of the same zone have different modifiers. If there is not one found, it defaults to zone_id 0 for global and instance_veresion -1 for global. * Update zonedb.cpp * Typo.
2861 lines
102 KiB
C++
2861 lines
102 KiB
C++
#include "../common/features.h"
|
|
|
|
#ifdef EMBPERL_XS_CLASSES
|
|
|
|
#include "../common/global_define.h"
|
|
#include "embperl.h"
|
|
#include "client.h"
|
|
#include "expedition.h"
|
|
#include "titles.h"
|
|
#include "dialogue_window.h"
|
|
|
|
void Perl_Client_SendSound(Client* self) // @categories Script Utility
|
|
{
|
|
self->SendSound();
|
|
}
|
|
|
|
bool Perl_Client_Save(Client* self, uint8 commit_now) // @categories Script Utility
|
|
{
|
|
return self->Save(commit_now);
|
|
}
|
|
|
|
void Perl_Client_SaveBackup(Client* self) // @categories Script Utility
|
|
{
|
|
self->SaveBackup();
|
|
}
|
|
|
|
bool Perl_Client_Connected(Client* self) // @categories Script Utility
|
|
{
|
|
return self->Connected();
|
|
}
|
|
|
|
bool Perl_Client_InZone(Client* self) // @categories Script Utility
|
|
{
|
|
return self->InZone();
|
|
}
|
|
|
|
void Perl_Client_Kick(Client* self) // @categories Script Utility
|
|
{
|
|
self->Kick("Perl Quest");
|
|
}
|
|
|
|
void Perl_Client_Disconnect(Client* self) // @categories Script Utility
|
|
{
|
|
self->Disconnect();
|
|
}
|
|
|
|
bool Perl_Client_IsLD(Client* self) // @categories Account and Character
|
|
{
|
|
return self->IsLD();
|
|
}
|
|
|
|
void Perl_Client_WorldKick(Client* self) // @categories Script Utility
|
|
{
|
|
self->WorldKick();
|
|
}
|
|
|
|
void Perl_Client_SendToGuildHall(Client* self) // @categories Script Utility, Guild
|
|
{
|
|
self->SendToGuildHall();
|
|
}
|
|
|
|
int Perl_Client_GetAnon(Client* self) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
return self->GetAnon();
|
|
}
|
|
|
|
void Perl_Client_SetAnon(Client* self, uint8 anon_flag) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetAnon(anon_flag);
|
|
}
|
|
|
|
int Perl_Client_GetAFK(Client* self) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
return self->GetAFK();
|
|
}
|
|
|
|
void Perl_Client_SetAFK(Client* self, uint8 afk_flag) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetAFK(afk_flag);
|
|
}
|
|
|
|
void Perl_Client_Duck(Client* self) // @categories Account and Character
|
|
{
|
|
self->Duck();
|
|
}
|
|
|
|
void Perl_Client_DyeArmorBySlot(Client* self, uint8 slot, uint8 red, uint8 green, uint8 blue) // @categories Account and Character, Inventory and Items
|
|
{
|
|
self->DyeArmorBySlot(slot, red, green, blue);
|
|
}
|
|
|
|
void Perl_Client_DyeArmorBySlot(Client* self, uint8 slot, uint8 red, uint8 green, uint8 blue, uint8 use_tint) // @categories Account and Character, Inventory and Items
|
|
{
|
|
self->DyeArmorBySlot(slot, red, green, blue, use_tint);
|
|
}
|
|
|
|
void Perl_Client_Stand(Client* self) // @categories Script Utility
|
|
{
|
|
self->Stand();
|
|
}
|
|
|
|
void Perl_Client_SetGM(Client* self, bool on) // @categories Account and Character
|
|
{
|
|
self->SetGM(on);
|
|
}
|
|
|
|
void Perl_Client_SetPVP(Client* self, bool on) // @categories Account and Character
|
|
{
|
|
self->SetPVP(on);
|
|
}
|
|
|
|
bool Perl_Client_GetPVP(Client* self) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
return self->GetPVP();
|
|
}
|
|
|
|
bool Perl_Client_GetGM(Client* self) // @categories Account and Character
|
|
{
|
|
return self->GetGM();
|
|
}
|
|
|
|
void Perl_Client_SetBaseClass(Client* self, uint32 class_id) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetBaseClass(class_id);
|
|
}
|
|
|
|
void Perl_Client_SetBaseRace(Client* self, uint32 race_id) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetBaseRace(race_id);
|
|
}
|
|
|
|
void Perl_Client_SetBaseGender(Client* self, uint32 gender_id) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetBaseGender(gender_id);
|
|
}
|
|
|
|
int Perl_Client_GetBaseFace(Client* self) // @categories Stats and Attributes
|
|
{
|
|
return self->GetBaseFace();
|
|
}
|
|
|
|
int Perl_Client_GetLanguageSkill(Client* self, uint16 lanuage_id) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
return self->GetLanguageSkill(lanuage_id);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetLDoNPointsTheme(Client* self, int theme) // @categories Currency and Points
|
|
{
|
|
return self->GetLDoNPointsTheme(theme);
|
|
}
|
|
|
|
int Perl_Client_GetBaseSTR(Client* self) // @categories Stats and Attributes
|
|
{
|
|
return self->GetBaseSTR();
|
|
}
|
|
|
|
int Perl_Client_GetBaseSTA(Client* self) // @categories Stats and Attributes
|
|
{
|
|
return self->GetBaseSTA();
|
|
}
|
|
|
|
int Perl_Client_GetBaseCHA(Client* self) // @categories Stats and Attributes
|
|
{
|
|
return self->GetBaseCHA();
|
|
}
|
|
|
|
int Perl_Client_GetBaseDEX(Client* self) // @categories Stats and Attributes
|
|
{
|
|
return self->GetBaseDEX();
|
|
}
|
|
|
|
int Perl_Client_GetBaseINT(Client* self) // @categories Stats and Attributes
|
|
{
|
|
return self->GetBaseINT();
|
|
}
|
|
|
|
int Perl_Client_GetBaseAGI(Client* self) // @categories Stats and Attributes
|
|
{
|
|
return self->GetBaseAGI();
|
|
}
|
|
|
|
int Perl_Client_GetBaseWIS(Client* self) // @categories Stats and Attributes
|
|
{
|
|
return self->GetBaseWIS();
|
|
}
|
|
|
|
int Perl_Client_GetWeight(Client* self) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
return self->GetWeight();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetEXP(Client* self) // @categories Experience and Level
|
|
{
|
|
return self->GetEXP();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetAAExp(Client* self) // @categories Alternative Advancement, Experience and Level
|
|
{
|
|
return self->GetAAXP();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetAAPercent(Client* self) // @categories Alternative Advancement, Experience and Level
|
|
{
|
|
return self->GetAAPercent();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetTotalSecondsPlayed(Client* self) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
return self->GetTotalSecondsPlayed();
|
|
}
|
|
|
|
bool Perl_Client_UpdateLDoNPoints(Client* self, uint32 theme_id, int points) // @categories Currency and Points
|
|
{
|
|
return self->UpdateLDoNPoints(theme_id, points);
|
|
}
|
|
|
|
void Perl_Client_SetDeity(Client* self, uint32 deity_id) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetDeity(deity_id);
|
|
}
|
|
|
|
void Perl_Client_AddEXP(Client* self, uint32 add_exp) // @categories Experience and Level
|
|
{
|
|
self->AddEXP(add_exp);
|
|
}
|
|
|
|
void Perl_Client_AddEXP(Client* self, uint32 add_exp, uint8 conlevel) // @categories Experience and Level
|
|
{
|
|
self->AddEXP(add_exp, conlevel);
|
|
}
|
|
|
|
void Perl_Client_AddEXP(Client* self, uint32 add_exp, uint8 conlevel, bool resexp) // @categories Experience and Level
|
|
{
|
|
self->AddEXP(add_exp, conlevel, resexp);
|
|
}
|
|
|
|
void Perl_Client_SetEXP(Client* self, uint32 set_exp, uint32 set_aaxp) // @categories Experience and Level
|
|
{
|
|
self->SetEXP(set_exp, set_aaxp);
|
|
}
|
|
|
|
void Perl_Client_SetEXP(Client* self, uint32 set_exp, uint32 set_aaxp, bool resexp) // @categories Experience and Level
|
|
{
|
|
self->SetEXP(set_exp, set_aaxp, resexp);
|
|
}
|
|
|
|
void Perl_Client_SetBindPoint(Client* self) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetBindPoint2(0);
|
|
}
|
|
|
|
void Perl_Client_SetBindPoint(Client* self, int to_zone) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetBindPoint2(0, to_zone);
|
|
}
|
|
|
|
void Perl_Client_SetBindPoint(Client* self, int to_zone, int to_instance) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetBindPoint2(0, to_zone, to_instance);
|
|
}
|
|
|
|
void Perl_Client_SetBindPoint(Client* self, int to_zone, int to_instance, float new_x) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetBindPoint2(0, to_zone, to_instance, glm::vec4(new_x, 0.0f, 0.0f, 0.0f));
|
|
}
|
|
|
|
void Perl_Client_SetBindPoint(Client* self, int to_zone, int to_instance, float new_x, float new_y) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetBindPoint2(0, to_zone, to_instance, glm::vec4(new_x, new_y, 0.0f, 0.0f));
|
|
}
|
|
|
|
void Perl_Client_SetBindPoint(Client* self, int to_zone, int to_instance, float new_x, float new_y, float new_z) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetBindPoint2(0, to_zone, to_instance, glm::vec4(new_x, new_y, new_z, 0.0f));
|
|
}
|
|
|
|
void Perl_Client_SetBindPoint(Client* self, int to_zone, int to_instance, float new_x, float new_y, float new_z, float new_heading) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetBindPoint2(0, to_zone, to_instance, glm::vec4(new_x, new_y, new_z, new_heading));
|
|
}
|
|
|
|
float Perl_Client_GetBindX(Client* self) // @categories Account and Character
|
|
{
|
|
return self->GetBindX();
|
|
}
|
|
|
|
float Perl_Client_GetBindX(Client* self, int index) // @categories Account and Character
|
|
{
|
|
return self->GetBindX(index);
|
|
}
|
|
|
|
float Perl_Client_GetBindY(Client* self) // @categories Account and Character
|
|
{
|
|
return self->GetBindY();
|
|
}
|
|
|
|
float Perl_Client_GetBindY(Client* self, int index) // @categories Account and Character
|
|
{
|
|
return self->GetBindY(index);
|
|
}
|
|
|
|
float Perl_Client_GetBindZ(Client* self) // @categories Account and Character
|
|
{
|
|
return self->GetBindZ();
|
|
}
|
|
|
|
float Perl_Client_GetBindZ(Client* self, int index) // @categories Account and Character
|
|
{
|
|
return self->GetBindZ(index);
|
|
}
|
|
|
|
float Perl_Client_GetBindHeading(Client* self) // @categories Account and Character
|
|
{
|
|
return self->GetBindHeading();
|
|
}
|
|
|
|
float Perl_Client_GetBindHeading(Client* self, int index) // @categories Account and Character
|
|
{
|
|
return self->GetBindHeading(index);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetBindZoneID(Client* self) // @categories Account and Character
|
|
{
|
|
return self->GetBindZoneID();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetBindZoneID(Client* self, int index) // @categories Account and Character
|
|
{
|
|
return self->GetBindZoneID(index);
|
|
}
|
|
|
|
void Perl_Client_MovePC(Client* self, uint32 zone_id, float x, float y, float z, float heading) // @categories Script Utility
|
|
{
|
|
self->MovePC(zone_id, x, y, z, heading);
|
|
}
|
|
|
|
void Perl_Client_MovePCInstance(Client* self, uint32 zone_id, uint32 instance_id, float x, float y, float z, float heading) // @categories Adventures and Expeditions, Script Utility
|
|
{
|
|
self->MovePC(zone_id, instance_id, x, y, z, heading);
|
|
}
|
|
|
|
void Perl_Client_MoveZone(Client* self, const char* zone_short_name) // @categories Script Utility
|
|
{
|
|
self->MoveZone(zone_short_name);
|
|
}
|
|
|
|
void Perl_Client_MoveZoneGroup(Client* self, const char* zone_short_name) // @categories Script Utility, Group
|
|
{
|
|
self->MoveZoneGroup(zone_short_name);
|
|
}
|
|
|
|
void Perl_Client_MoveZoneRaid(Client* self, const char* zone_short_name) // @categories Script Utility, Raid
|
|
{
|
|
self->MoveZoneRaid(zone_short_name);
|
|
}
|
|
|
|
void Perl_Client_MoveZoneInstance(Client* self, uint16 instance_id) // @categories Adventures and Expeditions, Script Utility
|
|
{
|
|
self->MoveZoneInstance(instance_id);
|
|
}
|
|
|
|
void Perl_Client_MoveZoneInstanceGroup(Client* self, uint16 instance_id) // @categories Adventures and Expeditions, Script Utility, Group
|
|
{
|
|
self->MoveZoneInstanceGroup(instance_id);
|
|
}
|
|
|
|
void Perl_Client_MoveZoneInstanceRaid(Client* self, uint16 instance_id) // @categories Adventures and Expeditions, Script Utility, Raid
|
|
{
|
|
self->MoveZoneInstanceRaid(instance_id);
|
|
}
|
|
|
|
void Perl_Client_ChangeLastName(Client* self, std::string last_name) // @categories Account and Character
|
|
{
|
|
self->ChangeLastName(last_name);
|
|
}
|
|
|
|
int Perl_Client_GetFactionLevel(Client* self, uint32 char_id, uint32 npc_id, uint32 race_id, uint32 class_id, uint32 deity_id, uint32 faction_id, Mob* tnpc) // @categories Faction
|
|
{
|
|
return self->GetFactionLevel(char_id, npc_id, race_id, class_id, deity_id, faction_id, tnpc);
|
|
}
|
|
|
|
void Perl_Client_SetFactionLevel(Client* self, uint32 char_id, uint32 npc_id, uint8 char_class, uint8 char_race, uint8 char_deity) // @categories Faction
|
|
{
|
|
self->SetFactionLevel(char_id, npc_id, char_class, char_race, char_deity);
|
|
}
|
|
|
|
void Perl_Client_SetFactionLevel2(Client* self, uint32 char_id, int32 faction_id, uint8 char_class, uint8 char_race, uint8 char_deity, int32 value) // @categories Faction
|
|
{
|
|
self->SetFactionLevel2(char_id, faction_id, char_class, char_race, char_deity, value, 0);
|
|
}
|
|
|
|
void Perl_Client_SetFactionLevel2(Client* self, uint32 char_id, int32 faction_id, uint8 char_class, uint8 char_race, uint8 char_deity, int32 value, uint8 temp) // @categories Faction
|
|
{
|
|
self->SetFactionLevel2(char_id, faction_id, char_class, char_race, char_deity, value, temp);
|
|
}
|
|
|
|
int Perl_Client_GetRawItemAC(Client* self) // @categories Inventory and Items
|
|
{
|
|
return self->GetRawItemAC();
|
|
}
|
|
|
|
uint32_t Perl_Client_AccountID(Client* self) // @categories Account and Character
|
|
{
|
|
return self->AccountID();
|
|
}
|
|
|
|
std::string Perl_Client_AccountName(Client* self) // @categories Account and Character
|
|
{
|
|
return self->AccountName();
|
|
}
|
|
|
|
int Perl_Client_Admin(Client* self) // @categories Account and Character
|
|
{
|
|
return self->Admin();
|
|
}
|
|
|
|
uint32_t Perl_Client_CharacterID(Client* self) // @categories Account and Character
|
|
{
|
|
return self->CharacterID();
|
|
}
|
|
|
|
void Perl_Client_UpdateAdmin(Client* self) // @categories Account and Character
|
|
{
|
|
self->UpdateAdmin();
|
|
}
|
|
|
|
void Perl_Client_UpdateAdmin(Client* self, bool from_db) // @categories Account and Character
|
|
{
|
|
self->UpdateAdmin(from_db);
|
|
}
|
|
|
|
void Perl_Client_UpdateWho(Client* self) // @categories Script Utility
|
|
{
|
|
self->UpdateWho();
|
|
}
|
|
|
|
void Perl_Client_UpdateWho(Client* self, uint8 remove) // @categories Script Utility
|
|
{
|
|
self->UpdateWho(remove);
|
|
}
|
|
|
|
int Perl_Client_GuildRank(Client* self) // @categories Account and Character, Guild
|
|
{
|
|
return self->GuildRank();
|
|
}
|
|
|
|
uint32_t Perl_Client_GuildID(Client* self) // @categories Account and Character, Guild
|
|
{
|
|
return self->GuildID();
|
|
}
|
|
|
|
int Perl_Client_GetFace(Client* self) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
return self->GetFace();
|
|
}
|
|
|
|
bool Perl_Client_TakeMoneyFromPP(Client* self, uint64 copper) // @categories Currency and Points
|
|
{
|
|
return self->TakeMoneyFromPP(copper);
|
|
}
|
|
|
|
bool Perl_Client_TakeMoneyFromPP(Client* self, uint64 copper, bool update_client) // @categories Currency and Points
|
|
{
|
|
return self->TakeMoneyFromPP(copper, update_client);
|
|
}
|
|
|
|
void Perl_Client_AddMoneyToPP(Client* self, uint32 copper, uint32 silver, uint32 gold, uint32 platinum) // @categories Currency and Points
|
|
{
|
|
self->AddMoneyToPP(copper, silver, gold, platinum);
|
|
}
|
|
|
|
void Perl_Client_AddMoneyToPP(Client* self, uint32 copper, uint32 silver, uint32 gold, uint32 platinum, bool update_client) // @categories Currency and Points
|
|
{
|
|
self->AddMoneyToPP(copper, silver, gold, platinum, update_client);
|
|
}
|
|
|
|
bool Perl_Client_TGB(Client* self) // @categories Spells and Disciplines
|
|
{
|
|
return self->TGB();
|
|
}
|
|
|
|
int Perl_Client_GetSkillPoints(Client* self) // @categories Skills and Recipes
|
|
{
|
|
return self->GetSkillPoints();
|
|
}
|
|
|
|
void Perl_Client_SetSkillPoints(Client* self, int points) // @categories Skills and Recipes
|
|
{
|
|
self->SetSkillPoints(points);
|
|
}
|
|
|
|
void Perl_Client_IncreaseSkill(Client* self, int skill_id) // @categories Skills and Recipes
|
|
{
|
|
self->IncreaseSkill(skill_id);
|
|
}
|
|
|
|
void Perl_Client_IncreaseSkill(Client* self, int skill_id, int value) // @categories Skills and Recipes
|
|
{
|
|
self->IncreaseSkill(skill_id, value);
|
|
}
|
|
|
|
void Perl_Client_IncreaseLanguageSkill(Client* self, int skill_id) // @categories Skills and Recipes
|
|
{
|
|
self->IncreaseLanguageSkill(skill_id);
|
|
}
|
|
|
|
void Perl_Client_IncreaseLanguageSkill(Client* self, int skill_id, int value) // @categories Skills and Recipes
|
|
{
|
|
self->IncreaseLanguageSkill(skill_id, value);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetRawSkill(Client* self, int skill_id) // @categories Skills and Recipes
|
|
{
|
|
return self->GetRawSkill(static_cast<EQ::skills::SkillType>(skill_id));
|
|
}
|
|
|
|
bool Perl_Client_HasSkill(Client* self, int skill_id) // @categories Skills and Recipes
|
|
{
|
|
return self->HasSkill(static_cast<EQ::skills::SkillType>(skill_id));
|
|
}
|
|
|
|
bool Perl_Client_CanHaveSkill(Client* self, int skill_id) // @categories Skills and Recipes
|
|
{
|
|
return self->CanHaveSkill(static_cast<EQ::skills::SkillType>(skill_id));
|
|
}
|
|
|
|
void Perl_Client_SetSkill(Client* self, int skill_id, uint16 value) // @categories Skills and Recipes
|
|
{
|
|
self->SetSkill(static_cast<EQ::skills::SkillType>(skill_id), value);
|
|
}
|
|
|
|
void Perl_Client_AddSkill(Client* self, int skill_id, uint16 value) // @categories Skills and Recipes
|
|
{
|
|
self->AddSkill(static_cast<EQ::skills::SkillType>(skill_id), value);
|
|
}
|
|
|
|
void Perl_Client_CheckSpecializeIncrease(Client* self, uint16 spell_id) // @categories Spells and Disciplines
|
|
{
|
|
self->CheckSpecializeIncrease(spell_id);
|
|
}
|
|
|
|
bool Perl_Client_CheckIncreaseSkill(Client* self, int skill_id) // @categories Skills and Recipes
|
|
{
|
|
return self->CheckIncreaseSkill(static_cast<EQ::skills::SkillType>(skill_id), nullptr);
|
|
}
|
|
|
|
bool Perl_Client_CheckIncreaseSkill(Client* self, int skill_id, int chance_modifier) // @categories Skills and Recipes
|
|
{
|
|
return self->CheckIncreaseSkill(static_cast<EQ::skills::SkillType>(skill_id), nullptr, chance_modifier);
|
|
}
|
|
|
|
void Perl_Client_SetLanguageSkill(Client* self, int language_id, int value) // @categories Account and Character, Skills and Recipes, Stats and Attributes
|
|
{
|
|
self->SetLanguageSkill(language_id, value);
|
|
}
|
|
|
|
int Perl_Client_MaxSkill(Client* self, uint16 skill_id) // @categories Skills and Recipes
|
|
{
|
|
return self->MaxSkill(static_cast<EQ::skills::SkillType>(skill_id), self->GetClass(), self->GetLevel());
|
|
}
|
|
|
|
int Perl_Client_MaxSkill(Client* self, uint16 skill_id, uint16 class_id) // @categories Skills and Recipes
|
|
{
|
|
return self->MaxSkill(static_cast<EQ::skills::SkillType>(skill_id), class_id, self->GetLevel());
|
|
}
|
|
|
|
int Perl_Client_MaxSkill(Client* self, uint16 skill_id, uint16 class_id, uint16 level) // @categories Skills and Recipes
|
|
{
|
|
return self->MaxSkill(static_cast<EQ::skills::SkillType>(skill_id), class_id, level);
|
|
}
|
|
|
|
void Perl_Client_GMKill(Client* self) // @categories Script Utility
|
|
{
|
|
self->GMKill();
|
|
}
|
|
|
|
bool Perl_Client_IsMedding(Client* self) // @categories Account and Character
|
|
{
|
|
return self->IsMedding();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetDuelTarget(Client* self) // @categories Account and Character, Script Utility
|
|
{
|
|
return self->GetDuelTarget();
|
|
}
|
|
|
|
bool Perl_Client_IsDueling(Client* self) // @categories Account and Character
|
|
{
|
|
return self->IsDueling();
|
|
}
|
|
|
|
void Perl_Client_SetDuelTarget(Client* self, uint32_t set_id) // @categories Account and Character
|
|
{
|
|
self->SetDuelTarget(set_id);
|
|
}
|
|
|
|
void Perl_Client_SetDueling(Client* self, bool duel) // @categories Account and Character, Script Utility
|
|
{
|
|
self->SetDueling(duel);
|
|
}
|
|
|
|
void Perl_Client_ResetAA(Client* self) // @categories Alternative Advancement
|
|
{
|
|
self->ResetAA();
|
|
}
|
|
|
|
void Perl_Client_MemSpell(Client* self, uint16 spell_id, int slot) // @categories Spells and Disciplines
|
|
{
|
|
self->MemSpell(spell_id, slot);
|
|
}
|
|
|
|
void Perl_Client_MemSpell(Client* self, uint16 spell_id, int slot, bool update_client) // @categories Spells and Disciplines
|
|
{
|
|
self->MemSpell(spell_id, slot, update_client);
|
|
}
|
|
|
|
void Perl_Client_UnmemSpell(Client* self, int slot) // @categories Spells and Disciplines
|
|
{
|
|
self->UnmemSpell(slot);
|
|
}
|
|
|
|
void Perl_Client_UnmemSpell(Client* self, int slot, bool update_client) // @categories Spells and Disciplines
|
|
{
|
|
self->UnmemSpell(slot, update_client);
|
|
}
|
|
|
|
void Perl_Client_UnmemSpellBySpellID(Client* self, int spell_id) // @categories Spells and Disciplines
|
|
{
|
|
self->UnmemSpellBySpellID(spell_id);
|
|
}
|
|
|
|
void Perl_Client_UnmemSpellAll(Client* self) // @categories Spells and Disciplines
|
|
{
|
|
self->UnmemSpellAll();
|
|
}
|
|
|
|
void Perl_Client_UnmemSpellAll(Client* self, bool update_client) // @categories Spells and Disciplines
|
|
{
|
|
self->UnmemSpellAll(update_client);
|
|
}
|
|
|
|
int Perl_Client_FindEmptyMemSlot(Client* self) // @categories Account and Character, Spells and Disciplines
|
|
{
|
|
return self->FindEmptyMemSlot();
|
|
}
|
|
|
|
int Perl_Client_FindMemmedSpellBySlot(Client* self, int slot) // @categories Account and Character, Spells and Disciplines
|
|
{
|
|
return self->FindMemmedSpellBySlot(slot);
|
|
}
|
|
|
|
int Perl_Client_FindMemmedSpellBySpellID(Client* self, uint16 spell_id) // @categories Account and Character, Spells and Disciplines
|
|
{
|
|
return self->FindMemmedSpellBySpellID(spell_id);
|
|
}
|
|
|
|
int Perl_Client_MemmedCount(Client* self) // @categories Spells and Disciplines
|
|
{
|
|
return self->MemmedCount();
|
|
}
|
|
|
|
void Perl_Client_ScribeSpell(Client* self, uint16 spell_id, int slot) // @categories Spells and Disciplines
|
|
{
|
|
self->ScribeSpell(spell_id, slot);
|
|
}
|
|
|
|
void Perl_Client_ScribeSpell(Client* self, uint16 spell_id, int slot, bool update_client) // @categories Spells and Disciplines
|
|
{
|
|
self->ScribeSpell(spell_id, slot, update_client);
|
|
}
|
|
|
|
void Perl_Client_UnscribeSpell(Client* self, int slot) // @categories Spells and Disciplines
|
|
{
|
|
self->UnscribeSpell(slot);
|
|
}
|
|
|
|
void Perl_Client_UnscribeSpell(Client* self, int slot, bool update_client) // @categories Spells and Disciplines
|
|
{
|
|
self->UnscribeSpell(slot, update_client);
|
|
}
|
|
|
|
void Perl_Client_UnscribeSpellAll(Client* self)
|
|
{
|
|
self->UnscribeSpellAll();
|
|
}
|
|
|
|
void Perl_Client_UnscribeSpellAll(Client* self, bool update_client)
|
|
{
|
|
self->UnscribeSpellAll(update_client);
|
|
}
|
|
|
|
void Perl_Client_TrainDiscBySpellID(Client* self, int spell_id) // @categories Spells and Disciplines
|
|
{
|
|
self->TrainDiscBySpellID(spell_id);
|
|
}
|
|
|
|
int Perl_Client_GetDiscSlotBySpellID(Client* self, int spell_id) // @categories Spells and Disciplines
|
|
{
|
|
return self->GetDiscSlotBySpellID(spell_id);
|
|
}
|
|
|
|
void Perl_Client_UntrainDisc(Client* self, int slot) // @categories Spells and Disciplines
|
|
{
|
|
self->UntrainDisc(slot);
|
|
}
|
|
|
|
void Perl_Client_UntrainDisc(Client* self, int slot, bool update_client) // @categories Spells and Disciplines
|
|
{
|
|
self->UntrainDisc(slot, update_client);
|
|
}
|
|
|
|
void Perl_Client_UntrainDiscAll(Client* self) // @categories Spells and Disciplines
|
|
{
|
|
self->UntrainDiscAll();
|
|
}
|
|
|
|
void Perl_Client_UntrainDiscAll(Client* self, bool update_client) // @categories Spells and Disciplines
|
|
{
|
|
self->UntrainDiscAll(update_client);
|
|
}
|
|
|
|
bool Perl_Client_IsStanding(Client* self) // @categories Account and Character
|
|
{
|
|
return self->IsStanding();
|
|
}
|
|
|
|
void Perl_Client_Sit(Client* self)
|
|
{
|
|
self->Sit();
|
|
}
|
|
|
|
bool Perl_Client_IsSitting(Client* self) // @categories Account and Character
|
|
{
|
|
return self->IsSitting();
|
|
}
|
|
|
|
bool Perl_Client_IsCrouching(Client* self) // @categories Account and Character
|
|
{
|
|
return self->IsCrouching();
|
|
}
|
|
|
|
bool Perl_Client_IsBecomeNPC(Client* self) // @categories Account and Character
|
|
{
|
|
return self->IsBecomeNPC();
|
|
}
|
|
|
|
int Perl_Client_GetBecomeNPCLevel(Client* self) // @categories Experience and Level
|
|
{
|
|
return self->GetBecomeNPCLevel();
|
|
}
|
|
|
|
void Perl_Client_SetBecomeNPC(Client* self, bool flag) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetBecomeNPC(flag);
|
|
}
|
|
|
|
void Perl_Client_SetBecomeNPCLevel(Client* self, uint8 level) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetBecomeNPCLevel(level);
|
|
}
|
|
|
|
void Perl_Client_SetFeigned(Client* self, bool feigned) // @categories Script Utility
|
|
{
|
|
self->SetFeigned(feigned);
|
|
}
|
|
|
|
bool Perl_Client_GetFeigned(Client* self) // @categories Script Utility
|
|
{
|
|
return self->GetFeigned();
|
|
}
|
|
|
|
bool Perl_Client_AutoSplitEnabled(Client* self) // @categories Currency and Points
|
|
{
|
|
return self->AutoSplitEnabled();
|
|
}
|
|
|
|
void Perl_Client_SetHorseId(Client* self, uint16_t horseid) // @categories Script Utility
|
|
{
|
|
self->SetHorseId(horseid);
|
|
}
|
|
|
|
int Perl_Client_GetHorseId(Client* self) // @categories Account and Character, Script Utility
|
|
{
|
|
return self->GetHorseId();
|
|
}
|
|
|
|
uint32 Perl_Client_NukeItem(Client* self, uint32 item_id) // @categories Inventory and Items
|
|
{
|
|
return self->NukeItem(item_id, 0xFF);
|
|
}
|
|
|
|
uint32 Perl_Client_NukeItem(Client* self, uint32 item_id, uint8 slot_to_check) // @categories Inventory and Items
|
|
{
|
|
return self->NukeItem(item_id, slot_to_check);
|
|
}
|
|
|
|
void Perl_Client_SetTint(Client* self, int16 slot_id, uint32 color) // @categories Inventory and Items
|
|
{
|
|
self->SetTint(slot_id, color);
|
|
}
|
|
|
|
void Perl_Client_SetMaterial(Client* self, int16 slot_id, uint32 item_id) // @categories Inventory and Items
|
|
{
|
|
self->SetMaterial(slot_id, item_id);
|
|
}
|
|
|
|
void Perl_Client_Undye(Client* self) // @categories Script Utility
|
|
{
|
|
self->Undye();
|
|
}
|
|
|
|
int Perl_Client_GetItemIDAt(Client* self, int16 slot_id) // @categories Inventory and Items
|
|
{
|
|
return self->GetItemIDAt(slot_id);
|
|
}
|
|
|
|
int Perl_Client_GetAugmentIDAt(Client* self, int16 slot_id, uint8 aug_slot) // @categories Inventory and Items
|
|
{
|
|
return self->GetAugmentIDAt(slot_id, aug_slot);
|
|
}
|
|
|
|
void Perl_Client_DeleteItemInInventory(Client* self, int16 slot_id) // @categories Inventory and Items
|
|
{
|
|
self->DeleteItemInInventory(slot_id);
|
|
}
|
|
|
|
void Perl_Client_DeleteItemInInventory(Client* self, int16 slot_id, int16 quantity) // @categories Inventory and Items
|
|
{
|
|
self->DeleteItemInInventory(slot_id, quantity);
|
|
}
|
|
|
|
void Perl_Client_DeleteItemInInventory(Client* self, int16 slot_id, int16 quantity, bool client_update) // @categories Inventory and Items
|
|
{
|
|
self->DeleteItemInInventory(slot_id, quantity, client_update);
|
|
}
|
|
|
|
void Perl_Client_SummonItem(Client* self, uint32 item_id) // @categories Inventory and Items, Script Utility
|
|
{
|
|
self->SummonItem(item_id);
|
|
}
|
|
|
|
void Perl_Client_SummonItem(Client* self, uint32 item_id, int16 charges) // @categories Inventory and Items, Script Utility
|
|
{
|
|
self->SummonItem(item_id, charges);
|
|
}
|
|
|
|
void Perl_Client_SummonItem(Client* self, uint32 item_id, int16 charges, bool attune) // @categories Inventory and Items, Script Utility
|
|
{
|
|
self->SummonItem(item_id, charges, 0, 0, 0, 0, 0, 0, attune);
|
|
}
|
|
|
|
void Perl_Client_SummonItem(Client* self, uint32 item_id, int16 charges, bool attune, uint32 aug1) // @categories Inventory and Items, Script Utility
|
|
{
|
|
self->SummonItem(item_id, charges, aug1, 0, 0, 0, 0, 0, attune);
|
|
}
|
|
|
|
void Perl_Client_SummonItem(Client* self, uint32 item_id, int16 charges, bool attune, uint32 aug1, uint32 aug2) // @categories Inventory and Items, Script Utility
|
|
{
|
|
self->SummonItem(item_id, charges, aug1, aug2, 0, 0, 0, 0, attune);
|
|
}
|
|
|
|
void Perl_Client_SummonItem(Client* self, uint32 item_id, int16 charges, bool attune, uint32 aug1, uint32 aug2, uint32 aug3) // @categories Inventory and Items, Script Utility
|
|
{
|
|
self->SummonItem(item_id, charges, aug1, aug2, aug3, 0, 0, 0, attune);
|
|
}
|
|
|
|
void Perl_Client_SummonItem(Client* self, uint32 item_id, int16 charges, bool attune, uint32 aug1, uint32 aug2, uint32 aug3, uint32 aug4) // @categories Inventory and Items, Script Utility
|
|
{
|
|
self->SummonItem(item_id, charges, aug1, aug2, aug3, aug4, 0, 0, attune);
|
|
}
|
|
|
|
void Perl_Client_SummonItem(Client* self, uint32 item_id, int16 charges, bool attune, uint32 aug1, uint32 aug2, uint32 aug3, uint32 aug4, uint32 aug5) // @categories Inventory and Items, Script Utility
|
|
{
|
|
self->SummonItem(item_id, charges, aug1, aug2, aug3, aug4, aug5, 0, attune);
|
|
}
|
|
|
|
void Perl_Client_SummonItem(Client* self, uint32 item_id, int16 charges, bool attune, uint32 aug1, uint32 aug2, uint32 aug3, uint32 aug4, uint32 aug5, uint16 slot_id) // @categories Inventory and Items, Script Utility
|
|
{
|
|
self->SummonItem(item_id, charges, aug1, aug2, aug3, aug4, aug5, 0, attune, slot_id);
|
|
}
|
|
|
|
void Perl_Client_SetStats(Client* self, uint8 type, uint16 increase_val) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetStats(type, increase_val);
|
|
}
|
|
|
|
void Perl_Client_IncStats(Client* self, uint8 type, uint16 increase_val) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->IncStats(type, increase_val);
|
|
}
|
|
|
|
void Perl_Client_DropItem(Client* self, int16 slot_id) // @categories Inventory and Items
|
|
{
|
|
self->DropItem(slot_id);
|
|
}
|
|
|
|
void Perl_Client_BreakInvis(Client* self) // @categories Spells and Disciplines, Script Utility
|
|
{
|
|
self->BreakInvis();
|
|
}
|
|
|
|
Group* Perl_Client_GetGroup(Client* self) // @categories Account and Character, Group
|
|
{
|
|
return self->GetGroup();
|
|
}
|
|
|
|
void Perl_Client_LeaveGroup(Client* self) // @categories Account and Character, Group
|
|
{
|
|
self->LeaveGroup();
|
|
}
|
|
|
|
Raid* Perl_Client_GetRaid(Client* self) // @categories Account and Character, Raid
|
|
{
|
|
return self->GetRaid();
|
|
}
|
|
|
|
bool Perl_Client_IsGrouped(Client* self) // @categories Account and Character, Group
|
|
{
|
|
return self->IsGrouped();
|
|
}
|
|
|
|
bool Perl_Client_IsRaidGrouped(Client* self) // @categories Account and Character, Group, Raid
|
|
{
|
|
return self->IsRaidGrouped();
|
|
}
|
|
|
|
bool Perl_Client_Hungry(Client* self) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
return self->Hungry();
|
|
}
|
|
|
|
bool Perl_Client_Thirsty(Client* self) // @categories Script Utility
|
|
{
|
|
return self->Thirsty();
|
|
}
|
|
|
|
int Perl_Client_GetInstrumentMod(Client* self, uint16 spell_id) // @categories Spells and Disciplines
|
|
{
|
|
return self->GetInstrumentMod(spell_id);
|
|
}
|
|
|
|
bool Perl_Client_DecreaseByID(Client* self, uint32 type, int16 quantity) // @categories Script Utility
|
|
{
|
|
return self->DecreaseByID(type, quantity);
|
|
}
|
|
|
|
int Perl_Client_SlotConvert2(Client* self, uint8 slot) // @categories Inventory and Items
|
|
{
|
|
return self->SlotConvert2(slot);
|
|
}
|
|
|
|
void Perl_Client_Escape(Client* self) // @categories Account and Character, Skills and Recipes
|
|
{
|
|
self->Escape();
|
|
}
|
|
|
|
void Perl_Client_RemoveNoRent(Client* self) // @categories Inventory and Items
|
|
{
|
|
self->RemoveNoRent();
|
|
}
|
|
|
|
void Perl_Client_GoFish(Client* self) // @categories Skills and Recipes
|
|
{
|
|
self->GoFish();
|
|
}
|
|
|
|
void Perl_Client_ForageItem(Client* self) // @categories Skills and Recipes
|
|
{
|
|
self->ForageItem();
|
|
}
|
|
|
|
float Perl_Client_CalcPriceMod(Client* self) // @categories Currency and Points
|
|
{
|
|
return self->CalcPriceMod();
|
|
}
|
|
|
|
float Perl_Client_CalcPriceMod(Client* self, Mob* other) // @categories Currency and Points
|
|
{
|
|
return self->CalcPriceMod(other);
|
|
}
|
|
|
|
float Perl_Client_CalcPriceMod(Client* self, Mob* other, bool reverse) // @categories Currency and Points
|
|
{
|
|
return self->CalcPriceMod(other, reverse);
|
|
}
|
|
|
|
void Perl_Client_ResetTrade(Client* self) // @categories Script Utility
|
|
{
|
|
self->ResetTrade();
|
|
}
|
|
|
|
bool Perl_Client_UseDiscipline(Client* self, uint32 spell_id, uint32 target) // @categories Spells and Disciplines
|
|
{
|
|
return self->UseDiscipline(spell_id, target);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetDisciplineTimer(Client* self, uint32 timer_id) // @categories Spells and Disciplines
|
|
{
|
|
return self->GetDisciplineTimer(timer_id);
|
|
}
|
|
|
|
void Perl_Client_ResetDisciplineTimer(Client* self, uint32_t timer_id) // @categories Spells and Disciplines
|
|
{
|
|
self->ResetDisciplineTimer(timer_id);
|
|
}
|
|
|
|
int Perl_Client_GetCharacterFactionLevel(Client* self, int faction_id) // @categories Faction
|
|
{
|
|
return self->GetCharacterFactionLevel(faction_id);
|
|
}
|
|
|
|
void Perl_Client_SetZoneFlag(Client* self, uint32 zone_id) // @categories Account and Character, Zones
|
|
{
|
|
self->SetZoneFlag(zone_id);
|
|
}
|
|
|
|
void Perl_Client_ClearZoneFlag(Client* self, uint32 zone_id) // @categories Script Utility
|
|
{
|
|
self->ClearZoneFlag(zone_id);
|
|
}
|
|
|
|
bool Perl_Client_HasZoneFlag(Client* self, uint32 zone_id) // @categories Account and Character
|
|
{
|
|
return self->HasZoneFlag(zone_id);
|
|
}
|
|
|
|
void Perl_Client_SendZoneFlagInfo(Client* self, Client* to) // @categories Account and Character, Zones
|
|
{
|
|
self->SendZoneFlagInfo(to);
|
|
}
|
|
|
|
void Perl_Client_LoadZoneFlags(Client* self) // @categories Zones
|
|
{
|
|
self->LoadZoneFlags();
|
|
}
|
|
|
|
void Perl_Client_SetAATitle(Client* self, std::string title) // @categories Alternative Advancement
|
|
{
|
|
if (title.size() > 31)
|
|
{
|
|
throw std::runtime_error("Title must be 31 characters or less.");
|
|
}
|
|
|
|
self->SetAATitle(title);
|
|
}
|
|
|
|
void Perl_Client_SetAATitle(Client* self, std::string title, bool save) // @categories Alternative Advancement
|
|
{
|
|
if (title.size() > 31)
|
|
{
|
|
throw std::runtime_error("Title must be 31 characters or less.");
|
|
}
|
|
|
|
if (!save) {
|
|
self->SetAATitle(title);
|
|
} else {
|
|
title_manager.CreateNewPlayerTitle(self, title);
|
|
}
|
|
}
|
|
|
|
uint32_t Perl_Client_GetClientVersion(Client* self) // @categories Script Utility
|
|
{
|
|
return static_cast<uint32_t>(self->ClientVersion());
|
|
}
|
|
|
|
uint32_t Perl_Client_GetClientVersionBit(Client* self) // @categories Script Utility
|
|
{
|
|
return self->ClientVersionBit();
|
|
}
|
|
|
|
void Perl_Client_SetTitleSuffix(Client* self, std::string suffix) // @categories Account and Character
|
|
{
|
|
if (suffix.size() > 31)
|
|
{
|
|
throw std::runtime_error("Suffix must be 31 characters or less.");
|
|
}
|
|
|
|
self->SetTitleSuffix(suffix);
|
|
}
|
|
|
|
void Perl_Client_SetTitleSuffix(Client* self, std::string suffix, bool save) // @categories Account and Character
|
|
{
|
|
if (suffix.size() > 31)
|
|
{
|
|
throw std::runtime_error("Suffix must be 31 characters or less.");
|
|
}
|
|
|
|
if (!save) {
|
|
self->SetTitleSuffix(suffix);
|
|
} else {
|
|
title_manager.CreateNewPlayerSuffix(self, suffix);
|
|
}
|
|
}
|
|
|
|
void Perl_Client_SetAAPoints(Client* self, uint32 points) // @categories Alternative Advancement
|
|
{
|
|
return self->SetAAPoints(points);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetAAPoints(Client* self) // @categories Alternative Advancement, Experience and Level
|
|
{
|
|
return self->GetAAPoints();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetSpentAA(Client* self) // @categories Alternative Advancement
|
|
{
|
|
return self->GetSpentAA();
|
|
}
|
|
|
|
void Perl_Client_AddAAPoints(Client* self, uint32 points) // @categories Alternative Advancement
|
|
{
|
|
self->AddAAPoints(points);
|
|
}
|
|
|
|
void Perl_Client_RefundAA(Client* self) // @categories Alternative Advancement
|
|
{
|
|
self->RefundAA();
|
|
}
|
|
|
|
int Perl_Client_GetModCharacterFactionLevel(Client* self, int faction_id) // @categories Faction
|
|
{
|
|
return self->GetModCharacterFactionLevel(faction_id);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetLDoNWins(Client* self) // @categories Currency and Points
|
|
{
|
|
return self->GetLDoNWins();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetLDoNLosses(Client* self) // @categories Currency and Points
|
|
{
|
|
return self->GetLDoNLosses();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetLDoNWinsTheme(Client* self, uint32_t theme) // @categories Currency and Points
|
|
{
|
|
return self->GetLDoNWinsTheme(theme);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetLDoNLossesTheme(Client* self, uint32_t theme) // @categories Currency and Points
|
|
{
|
|
return self->GetLDoNLossesTheme(theme);
|
|
}
|
|
|
|
EQ::ItemInstance* Perl_Client_GetItemAt(Client* self, uint32 slot) // @categories Inventory and Items
|
|
{
|
|
return self->GetInv().GetItem(slot);
|
|
}
|
|
|
|
EQ::ItemInstance* Perl_Client_GetAugmentAt(Client* self, uint32 slot, uint32 aug_slot) // @categories Inventory and Items
|
|
{
|
|
EQ::ItemInstance* inst = self->GetInv().GetItem(slot);
|
|
if (inst)
|
|
{
|
|
return inst->GetAugment(aug_slot);
|
|
}
|
|
return nullptr;
|
|
}
|
|
|
|
uint32_t Perl_Client_GetStartZone(Client* self) // @categories Account and Character
|
|
{
|
|
return self->GetStartZone();
|
|
}
|
|
|
|
void Perl_Client_SetStartZone(Client* self, uint32 zone_id)
|
|
{
|
|
self->SetStartZone(zone_id);
|
|
}
|
|
|
|
void Perl_Client_SetStartZone(Client* self, uint32 zone_id, float x, float y, float z)
|
|
{
|
|
self->SetStartZone(zone_id, x, y, z);
|
|
}
|
|
|
|
void Perl_Client_SetStartZone(Client* self, uint32 zone_id, float x, float y, float z, float heading)
|
|
{
|
|
self->SetStartZone(zone_id, x, y, z, heading);
|
|
}
|
|
|
|
void Perl_Client_KeyRingAdd(Client* self, uint32 item_id) // @categories Account and Character, Inventory and Items
|
|
{
|
|
self->KeyRingAdd(item_id);;
|
|
}
|
|
|
|
bool Perl_Client_KeyRingCheck(Client* self, uint32 item_id) // @categories Account and Character, Inventory and Items
|
|
{
|
|
return self->KeyRingCheck(item_id);
|
|
}
|
|
|
|
void Perl_Client_AddPVPPoints(Client* self, uint32 points) // @categories Currency and Points
|
|
{
|
|
self->AddPVPPoints(points);;
|
|
}
|
|
|
|
void Perl_Client_AddCrystals(Client* self, uint32 radiant_count, uint32 ebon_count) // @categories Currency and Points
|
|
{
|
|
self->AddCrystals(radiant_count, ebon_count);
|
|
}
|
|
|
|
void Perl_Client_SetEbonCrystals(Client* self, uint32 value)
|
|
{
|
|
self->SetEbonCrystals(value);
|
|
}
|
|
|
|
void Perl_Client_SetRadiantCrystals(Client* self, uint32 value)
|
|
{
|
|
self->SetRadiantCrystals(value);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetPVPPoints(Client* self) // @categories Currency and Points
|
|
{
|
|
return self->GetPVPPoints();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetRadiantCrystals(Client* self) // @categories Currency and Points
|
|
{
|
|
return self->GetRadiantCrystals();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetEbonCrystals(Client* self) // @categories Currency and Points
|
|
{
|
|
return self->GetEbonCrystals();
|
|
}
|
|
|
|
void Perl_Client_ReadBook(Client* self, const char* book_text, uint8 type) // @categories Script Utility
|
|
{
|
|
self->QuestReadBook(book_text, type);
|
|
}
|
|
|
|
void Perl_Client_SetGMStatus(Client* self, int new_status) // @categories Script Utility
|
|
{
|
|
self->SetGMStatus(new_status);
|
|
self->UpdateAdmin(true);
|
|
}
|
|
|
|
void Perl_Client_UpdateGroupAAs(Client* self, int points, uint32 type) // @categories Alternative Advancement, Group
|
|
{
|
|
self->UpdateGroupAAs(points, type);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetGroupPoints(Client* self) // @categories Account and Character, Group
|
|
{
|
|
return self->GetGroupPoints();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetRaidPoints(Client* self) // @categories Account and Character, Raid
|
|
{
|
|
return self->GetRaidPoints();
|
|
}
|
|
|
|
void Perl_Client_LearnRecipe(Client* self, uint32 recipe_id) // @categories Skills and Recipes
|
|
{
|
|
self->LearnRecipe(recipe_id);
|
|
}
|
|
|
|
int64_t Perl_Client_GetEndurance(Client* self) // @categories Stats and Attributes
|
|
{
|
|
return self->GetEndurance();
|
|
}
|
|
|
|
int64_t Perl_Client_GetMaxEndurance(Client* self) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
return self->GetMaxEndurance();
|
|
}
|
|
|
|
int Perl_Client_GetEnduranceRatio(Client* self) // @categories Stats and Attributes
|
|
{
|
|
return self->GetEndurancePercent();
|
|
}
|
|
|
|
void Perl_Client_SetEndurance(Client* self, int endurance) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetEndurance(endurance);
|
|
}
|
|
|
|
void Perl_Client_SendOPTranslocateConfirm(Client* self, Mob* caster, uint16 spell_id) // @categories Script Utility
|
|
{
|
|
self->SendOPTranslocateConfirm(caster, spell_id);
|
|
}
|
|
|
|
void Perl_Client_NPCSpawn(Client* self, NPC* target_npc, const char* option) // @categories Script Utility, Spawns
|
|
{
|
|
return self->NPCSpawn(target_npc, option, 1200);
|
|
}
|
|
|
|
void Perl_Client_NPCSpawn(Client* self, NPC* target_npc, const char* option, uint32 respawn_time) // @categories Script Utility, Spawns
|
|
{
|
|
return self->NPCSpawn(target_npc, option, respawn_time);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetIP(Client* self) // @categories Script Utility
|
|
{
|
|
return self->GetIP();
|
|
}
|
|
|
|
void Perl_Client_AddLevelBasedExp(Client* self, uint8 exp_percentage) // @categories Experience and Level
|
|
{
|
|
self->AddLevelBasedExp(exp_percentage);
|
|
}
|
|
|
|
void Perl_Client_AddLevelBasedExp(Client* self, uint8 exp_percentage, uint8 max_level) // @categories Experience and Level
|
|
{
|
|
self->AddLevelBasedExp(exp_percentage, max_level);
|
|
}
|
|
|
|
void Perl_Client_AddLevelBasedExp(Client* self, uint8 exp_percentage, uint8 max_level, bool ignore_mods) // @categories Experience and Level
|
|
{
|
|
self->AddLevelBasedExp(exp_percentage, max_level, ignore_mods);
|
|
}
|
|
|
|
void Perl_Client_IncrementAA(Client* self, uint32 aa_skill_id) // @categories Alternative Advancement
|
|
{
|
|
self->IncrementAlternateAdvancementRank(aa_skill_id);
|
|
}
|
|
|
|
bool Perl_Client_GrantAlternateAdvancementAbility(Client* self, int aa_id, int points) // @categories Alternative Advancement
|
|
{
|
|
return self->GrantAlternateAdvancementAbility(aa_id, points);
|
|
}
|
|
|
|
bool Perl_Client_GrantAlternateAdvancementAbility(Client* self, int aa_id, int points, bool ignore_cost) // @categories Alternative Advancement
|
|
{
|
|
return self->GrantAlternateAdvancementAbility(aa_id, points, ignore_cost);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetAALevel(Client* self, uint32 aa_skill_id) // @categories Alternative Advancement, Experience and Level
|
|
{
|
|
return self->GetAA(aa_skill_id);
|
|
}
|
|
|
|
void Perl_Client_MarkCompassLoc(Client* self, float x, float y, float z) // @categories Adventures and Expeditions
|
|
{
|
|
self->MarkSingleCompassLoc(x, y, z);
|
|
}
|
|
|
|
void Perl_Client_ClearCompassMark(Client* self) // @categories Adventures and Expeditions
|
|
{
|
|
self->MarkSingleCompassLoc(0, 0, 0, 0);
|
|
}
|
|
|
|
int Perl_Client_GetFreeSpellBookSlot(Client* self) // @categories Spells and Disciplines
|
|
{
|
|
return self->GetNextAvailableSpellBookSlot();
|
|
}
|
|
|
|
int Perl_Client_GetFreeSpellBookSlot(Client* self, uint32 start_slot) // @categories Spells and Disciplines
|
|
{
|
|
return self->GetNextAvailableSpellBookSlot(start_slot);
|
|
}
|
|
|
|
int Perl_Client_GetSpellBookSlotBySpellID(Client* self, uint32 spell_id) // @categories Spells and Disciplines
|
|
{
|
|
return self->FindSpellBookSlotBySpellID(spell_id);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetSpellIDByBookSlot(Client* self, int slot_id)
|
|
{
|
|
return self->GetSpellIDByBookSlot(slot_id);
|
|
}
|
|
|
|
void Perl_Client_UpdateTaskActivity(Client* self, int task_id, int activity_id, int count) // @categories Tasks and Activities
|
|
{
|
|
self->UpdateTaskActivity(task_id, activity_id, count);
|
|
}
|
|
|
|
void Perl_Client_UpdateTaskActivity(Client* self, int task_id, int activity_id, int count, bool ignore_quest_update) // @categories Tasks and Activities
|
|
{
|
|
self->UpdateTaskActivity(task_id, activity_id, count, ignore_quest_update);
|
|
}
|
|
|
|
int Perl_Client_GetTaskActivityDoneCount(Client* self, int task_id, int activity_id) // @categories Tasks and Activities
|
|
{
|
|
return self->GetTaskActivityDoneCountFromTaskID(task_id, activity_id);
|
|
}
|
|
|
|
void Perl_Client_AssignTask(Client* self, int task_id) // @categories Tasks and Activities
|
|
{
|
|
self->AssignTask(task_id);
|
|
}
|
|
|
|
void Perl_Client_AssignTask(Client* self, int task_id, int npc_id) // @categories Tasks and Activities
|
|
{
|
|
self->AssignTask(task_id, npc_id);
|
|
}
|
|
|
|
void Perl_Client_AssignTask(Client* self, int task_id, int npc_id, bool enforce_level_requirement) // @categories Tasks and Activities
|
|
{
|
|
self->AssignTask(task_id, npc_id, enforce_level_requirement);
|
|
}
|
|
|
|
void Perl_Client_FailTask(Client* self, int task_id) // @categories Tasks and Activities
|
|
{
|
|
self->FailTask(task_id);
|
|
}
|
|
|
|
bool Perl_Client_IsTaskCompleted(Client* self, int task_id) // @categories Tasks and Activities
|
|
{
|
|
return self->IsTaskCompleted(task_id);
|
|
}
|
|
|
|
bool Perl_Client_IsTaskActive(Client* self, int task_id) // @categories Tasks and Activities
|
|
{
|
|
return self->IsTaskActive(task_id);
|
|
}
|
|
|
|
bool Perl_Client_IsTaskActivityActive(Client* self, int task_id, int activity_id) // @categories Tasks and Activities
|
|
{
|
|
return self->IsTaskActivityActive(task_id, activity_id);
|
|
}
|
|
|
|
void Perl_Client_LockSharedTask(Client* self, bool lock)
|
|
{
|
|
return self->LockSharedTask(lock);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetCorpseCount(Client* self) // @categories Account and Character, Corpse
|
|
{
|
|
return self->GetCorpseCount();
|
|
}
|
|
|
|
uint32_t Perl_Client_GetCorpseID(Client* self, uint8 corpse) // @categories Account and Character, Corpse
|
|
{
|
|
return self->GetCorpseID(corpse);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetCorpseItemAt(Client* self, uint32 corpse_id, uint16 slot_id) // @categories Inventory and Items, Corpse
|
|
{
|
|
return self->GetCorpseItemAt(corpse_id, slot_id);
|
|
}
|
|
|
|
void Perl_Client_AssignToInstance(Client* self, uint16 instance_id) // @categories Adventures and Expeditions
|
|
{
|
|
self->AssignToInstance(instance_id);
|
|
}
|
|
|
|
void Perl_Client_RemoveFromInstance(Client* self, uint16 instance_id) // @categories Adventures and Expeditions
|
|
{
|
|
self->RemoveFromInstance(instance_id);
|
|
}
|
|
|
|
void Perl_Client_Freeze(Client* self)
|
|
{
|
|
self->SendAppearancePacket(AT_Anim, ANIM_FREEZE);
|
|
}
|
|
|
|
void Perl_Client_UnFreeze(Client* self)
|
|
{
|
|
self->SendAppearancePacket(AT_Anim, ANIM_STAND);
|
|
}
|
|
|
|
int Perl_Client_GetAggroCount(Client* self) // @categories Script Utility, Hate and Aggro
|
|
{
|
|
return self->GetAggroCount();
|
|
}
|
|
|
|
uint64_t Perl_Client_GetCarriedMoney(Client* self) // @categories Currency and Points
|
|
{
|
|
return self->GetCarriedMoney();
|
|
}
|
|
|
|
uint64_t Perl_Client_GetAllMoney(Client* self) // @categories Currency and Points
|
|
{
|
|
return self->GetAllMoney();
|
|
}
|
|
|
|
EQ::ItemInstance* Perl_Client_GetItemInInventory(Client* self, int16 slot_id) // @categories Inventory and Items
|
|
{
|
|
return self->GetInv().GetItem(slot_id);
|
|
}
|
|
|
|
void Perl_Client_SetCustomItemData(Client* self, int16 slot_id, std::string identifier, std::string value) // @categories Inventory and Items
|
|
{
|
|
self->GetInv().SetCustomItemData(self->CharacterID(), slot_id, identifier, value);
|
|
}
|
|
|
|
std::string Perl_Client_GetCustomItemData(Client* self, int16 slot_id, std::string identifier) // @categories Inventory and Items, Corpse
|
|
{
|
|
return self->GetInv().GetCustomItemData(slot_id, identifier);
|
|
}
|
|
|
|
void Perl_Client_OpenLFGuildWindow(Client* self) // @categories Script Utility, Guild
|
|
{
|
|
self->OpenLFGuildWindow();
|
|
}
|
|
|
|
void Perl_Client_NotifyNewTitlesAvailable(Client* self) // @categories Account and Character
|
|
{
|
|
self->NotifyNewTitlesAvailable();
|
|
}
|
|
|
|
void Perl_Client_AddAlternateCurrencyValue(Client* self, uint32 currency_id, int32 amount) // @categories Currency and Points
|
|
{
|
|
self->AddAlternateCurrencyValue(currency_id, amount);
|
|
}
|
|
|
|
void Perl_Client_SetAlternateCurrencyValue(Client* self, uint32 currency_id, int32 amount) // @categories Currency and Points
|
|
{
|
|
self->SetAlternateCurrencyValue(currency_id, amount);
|
|
}
|
|
|
|
uint32 Perl_Client_GetAlternateCurrencyValue(Client* self, uint32_t currency_id) // @categories Currency and Points
|
|
{
|
|
return self->GetAlternateCurrencyValue(currency_id);
|
|
}
|
|
|
|
void Perl_Client_SendWebLink(Client* self, const char* url) // @categories Script Utility
|
|
{
|
|
self->SendWebLink(url);
|
|
}
|
|
|
|
int Perl_Client_GetInstanceID(Client* self) // @categories Adventures and Expeditions
|
|
{
|
|
return self->GetInstanceID();
|
|
}
|
|
|
|
bool Perl_Client_HasSpellScribed(Client* self, int spell_id) // @categories Spells and Disciplines
|
|
{
|
|
return self->HasSpellScribed(spell_id);
|
|
}
|
|
|
|
void Perl_Client_SetAccountFlag(Client* self, std::string flag, std::string value) // @categories Account and Character
|
|
{
|
|
self->SetAccountFlag(flag, value);
|
|
}
|
|
|
|
std::string Perl_Client_GetAccountFlag(Client* self, std::string flag) // @categories Account and Character
|
|
{
|
|
return self->GetAccountFlag(flag);
|
|
}
|
|
|
|
int Perl_Client_GetHunger(Client* self) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
return self->GetHunger();
|
|
}
|
|
|
|
int Perl_Client_GetThirst(Client* self) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
return self->GetThirst();
|
|
}
|
|
|
|
void Perl_Client_SetHunger(Client* self, int in_hunger) // @categories Script Utility, Stats and Attributes
|
|
{
|
|
self->SetHunger(in_hunger);
|
|
}
|
|
|
|
void Perl_Client_SetThirst(Client* self, int in_thirst) // @categories Account and Character, Stats and Attributes
|
|
{
|
|
self->SetThirst(in_thirst);
|
|
}
|
|
|
|
void Perl_Client_SendTargetCommand(Client* self, uint32 entity_id) // @categories Script Utility
|
|
{
|
|
self->SendTargetCommand(entity_id);
|
|
}
|
|
|
|
void Perl_Client_SetConsumption(Client* self, int hunger_amount, int thirst_amount) // @categories Script Utility, Stats and Attributes
|
|
{
|
|
self->SetConsumption(hunger_amount, thirst_amount);
|
|
}
|
|
|
|
void Perl_Client_SilentMessage(Client* self, const char* message) // @categories Script Utility
|
|
{
|
|
if (self->GetTarget() != NULL) {
|
|
if (self->GetTarget()->IsNPC()) {
|
|
if (DistanceSquaredNoZ(self->GetPosition(), self->GetTarget()->GetPosition()) <= 200) {
|
|
if (self->GetTarget()->CastToNPC()->IsMoving() &&
|
|
!self->GetTarget()->CastToNPC()->IsOnHatelist(self->GetTarget()))
|
|
self->GetTarget()->CastToNPC()->PauseWandering(RuleI(NPC, SayPauseTimeInSec));
|
|
self->ChannelMessageReceived(8, 0, 100, message);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
void Perl_Client_PlayMP3(Client* self, const char* file) // @categories Script Utility
|
|
{
|
|
self->PlayMP3(file);
|
|
}
|
|
|
|
// todo: this is some legacy api for 'cust_inst_players' and can possibly be removed (not related to current expeditions)
|
|
void Perl_Client_ExpeditionMessage(Client* self, int expedition_id, const char* message) // @categories Adventures and Expeditions
|
|
{
|
|
self->ExpeditionSay(message, expedition_id);
|
|
}
|
|
|
|
void Perl_Client_SendMarqueeMessage(Client* self, uint32 type, uint32 priority, uint32 fade_in, uint32 fade_out, uint32 duration, std::string msg) // @categories Script Utility
|
|
{
|
|
self->SendMarqueeMessage(type, priority, fade_in, fade_out, duration, std::move(msg));
|
|
}
|
|
|
|
void Perl_Client_SendColoredText(Client* self, uint32 color, std::string msg) // @categories Script Utility
|
|
{
|
|
self->SendColoredText(color, std::move(msg));
|
|
}
|
|
|
|
void Perl_Client_SendSpellAnim(Client* self, uint16 targetid, uint16 spell_id)
|
|
{
|
|
self->SendSpellAnim(targetid, spell_id);
|
|
}
|
|
|
|
float Perl_Client_GetTargetRingX(Client* self) // @categories Script Utility
|
|
{
|
|
return self->GetTargetRingX();
|
|
}
|
|
|
|
float Perl_Client_GetTargetRingY(Client* self) // @categories Script Utility
|
|
{
|
|
return self->GetTargetRingY();
|
|
}
|
|
|
|
float Perl_Client_GetTargetRingZ(Client* self) // @categories Script Utility
|
|
{
|
|
return self->GetTargetRingZ();
|
|
}
|
|
|
|
uint32_t Perl_Client_CalcEXP(Client* self, uint8 conlevel)
|
|
{
|
|
return self->CalcEXP(conlevel);
|
|
}
|
|
|
|
void Perl_Client_QuestReward(Client* self, Mob* mob) // @categories Currency and Points, Experience and Level, Inventory and Items, Faction
|
|
{
|
|
self->QuestReward(mob);
|
|
}
|
|
|
|
void Perl_Client_QuestReward(Client* self, Mob* mob, uint32 copper) // @categories Currency and Points, Experience and Level, Inventory and Items, Faction
|
|
{
|
|
self->QuestReward(mob, copper);
|
|
}
|
|
|
|
void Perl_Client_QuestReward(Client* self, Mob* mob, uint32 copper, uint32 silver) // @categories Currency and Points, Experience and Level, Inventory and Items, Faction
|
|
{
|
|
self->QuestReward(mob, copper, silver);
|
|
}
|
|
|
|
void Perl_Client_QuestReward(Client* self, Mob* mob, uint32 copper, uint32 silver, uint32 gold) // @categories Currency and Points, Experience and Level, Inventory and Items, Faction
|
|
{
|
|
self->QuestReward(mob, copper, silver, gold);
|
|
}
|
|
|
|
void Perl_Client_QuestReward(Client* self, Mob* mob, uint32 copper, uint32 silver, uint32 gold, uint32 platinum) // @categories Currency and Points, Experience and Level, Inventory and Items, Faction
|
|
{
|
|
self->QuestReward(mob, copper, silver, gold, platinum);
|
|
}
|
|
|
|
void Perl_Client_QuestReward(Client* self, Mob* mob, uint32 copper, uint32 silver, uint32 gold, uint32 platinum, uint32 item_id) // @categories Currency and Points, Experience and Level, Inventory and Items, Faction
|
|
{
|
|
self->QuestReward(mob, copper, silver, gold, platinum, item_id);
|
|
}
|
|
|
|
void Perl_Client_QuestReward(Client* self, Mob* mob, uint32 copper, uint32 silver, uint32 gold, uint32 platinum, uint32 item_id, uint32 exp) // @categories Currency and Points, Experience and Level, Inventory and Items, Faction
|
|
{
|
|
self->QuestReward(mob, copper, silver, gold, platinum, item_id, exp);
|
|
}
|
|
|
|
void Perl_Client_QuestReward(Client* self, Mob* mob, uint32 copper, uint32 silver, uint32 gold, uint32 platinum, uint32 item_id, uint32 exp, bool faction) // @categories Currency and Points, Experience and Level, Inventory and Items, Faction
|
|
{
|
|
self->QuestReward(mob, copper, silver, gold, platinum, item_id, exp, faction);
|
|
}
|
|
|
|
void Perl_Client_CashReward(Client* self, uint32 copper, uint32 silver, uint32 gold, uint32 platinum)
|
|
{
|
|
self->CashReward(copper, silver, gold, platinum);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetMoney(Client* self, int8 type, int8 subtype)
|
|
{
|
|
return self->GetMoney(type, subtype);
|
|
}
|
|
|
|
int Perl_Client_GetAccountAge(Client* self)
|
|
{
|
|
return self->GetAccountAge();
|
|
}
|
|
|
|
void Perl_Client_Popup2(Client* self, const char* title, const char* text) // @categories Script Utility
|
|
{
|
|
self->SendFullPopup(title, text);
|
|
}
|
|
|
|
void Perl_Client_Popup2(Client* self, const char* title, const char* text, uint32 popup_id) // @categories Script Utility
|
|
{
|
|
self->SendFullPopup(title, text, popup_id);
|
|
}
|
|
|
|
void Perl_Client_Popup2(Client* self, const char* title, const char* text, uint32 popup_id, uint32 negative_id) // @categories Script Utility
|
|
{
|
|
self->SendFullPopup(title, text, popup_id, negative_id);
|
|
}
|
|
|
|
void Perl_Client_Popup2(Client* self, const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 buttons) // @categories Script Utility
|
|
{
|
|
self->SendFullPopup(title, text, popup_id, negative_id, buttons);
|
|
}
|
|
|
|
void Perl_Client_Popup2(Client* self, const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 buttons, uint32 duration) // @categories Script Utility
|
|
{
|
|
self->SendFullPopup(title, text, popup_id, negative_id, buttons, duration);
|
|
}
|
|
|
|
void Perl_Client_Popup2(Client* self, const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 buttons, uint32 duration, const char* button_name_0) // @categories Script Utility
|
|
{
|
|
self->SendFullPopup(title, text, popup_id, negative_id, buttons, duration, button_name_0);
|
|
}
|
|
|
|
void Perl_Client_Popup2(Client* self, const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 buttons, uint32 duration, const char* button_name_0, const char* button_name_1) // @categories Script Utility
|
|
{
|
|
self->SendFullPopup(title, text, popup_id, negative_id, buttons, duration, button_name_0, button_name_1);
|
|
}
|
|
|
|
void Perl_Client_Popup2(Client* self, const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 buttons, uint32 duration, const char* button_name_0, const char* button_name_1, uint32 sound_controls) // @categories Script Utility
|
|
{
|
|
self->SendFullPopup(title, text, popup_id, negative_id, buttons, duration, button_name_0, button_name_1, sound_controls);
|
|
}
|
|
|
|
void Perl_Client_SetPrimaryWeaponOrnamentation(Client* self, int model_id) // @categories Account and Character, Inventory and Items
|
|
{
|
|
self->SetPrimaryWeaponOrnamentation(model_id);
|
|
}
|
|
|
|
void Perl_Client_SetSecondaryWeaponOrnamentation(Client* self, int model_id) // @categories Account and Character, Inventory and Items
|
|
{
|
|
self->SetSecondaryWeaponOrnamentation(model_id);
|
|
}
|
|
|
|
void Perl_Client_SetClientMaxLevel(Client* self, uint8 max_level)
|
|
{
|
|
self->SetClientMaxLevel(max_level);
|
|
}
|
|
|
|
int Perl_Client_GetClientMaxLevel(Client* self)
|
|
{
|
|
return self->GetClientMaxLevel();
|
|
}
|
|
|
|
DynamicZoneLocation GetDynamicZoneLocationFromHash(perl::hash table)
|
|
{
|
|
// dynamic zone helper method, defaults invalid/missing keys to 0
|
|
perl::scalar zone = table["zone"];
|
|
uint32_t zone_id = zone.is_string() ? ZoneID(zone.c_str()) : zone.as<uint32_t>();
|
|
|
|
float x = table.exists("x") ? table["x"] : 0.0f;
|
|
float y = table.exists("y") ? table["y"] : 0.0f;
|
|
float z = table.exists("z") ? table["z"] : 0.0f;
|
|
float h = table.exists("h") ? table["h"] : 0.0f;
|
|
|
|
return { zone_id, x, y, z, h };
|
|
}
|
|
|
|
Expedition* Perl_Client_CreateExpedition(Client* self, perl::reference table_ref)
|
|
{
|
|
perl::hash table = table_ref;
|
|
perl::hash expedition = table["expedition"];
|
|
perl::hash instance = table["instance"];
|
|
|
|
perl::scalar zone = instance["zone"];
|
|
uint32_t version = instance["version"];
|
|
uint32_t duration = instance["duration"];
|
|
uint32_t zone_id = zone.is_string() ? ZoneID(zone.c_str()) : zone.as<uint32_t>();
|
|
|
|
DynamicZone dz{ zone_id, version, duration, DynamicZoneType::Expedition };
|
|
dz.SetName(expedition["name"]);
|
|
dz.SetMinPlayers(expedition["min_players"]);
|
|
dz.SetMaxPlayers(expedition["max_players"]);
|
|
|
|
if (table.exists("compass"))
|
|
{
|
|
auto compass = GetDynamicZoneLocationFromHash(table["compass"]);
|
|
dz.SetCompass(compass);
|
|
}
|
|
|
|
if (table.exists("safereturn"))
|
|
{
|
|
auto safereturn = GetDynamicZoneLocationFromHash(table["safereturn"]);
|
|
dz.SetSafeReturn(safereturn);
|
|
}
|
|
|
|
if (table.exists("zonein"))
|
|
{
|
|
auto zonein = GetDynamicZoneLocationFromHash(table["zonein"]);
|
|
dz.SetZoneInLocation(zonein);
|
|
}
|
|
|
|
if (table.exists("switchid"))
|
|
{
|
|
dz.SetSwitchID(table["switchid"].as<int>());
|
|
}
|
|
|
|
if (expedition.exists("disable_messages"))
|
|
{
|
|
return self->CreateExpedition(dz, expedition["disable_messages"].as<bool>());
|
|
}
|
|
|
|
return self->CreateExpedition(dz);
|
|
}
|
|
|
|
Expedition* Perl_Client_CreateExpedition(Client* self, std::string zone_name, uint32 version, uint32 duration, std::string expedition_name, uint32 min_players, uint32 max_players)
|
|
{
|
|
return self->CreateExpedition(zone_name, version, duration, expedition_name, min_players, max_players);
|
|
}
|
|
|
|
Expedition* Perl_Client_CreateExpedition(Client* self, std::string zone_name, uint32 version, uint32 duration, std::string expedition_name, uint32 min_players, uint32 max_players, bool disable_messages)
|
|
{
|
|
return self->CreateExpedition(zone_name, version, duration, expedition_name, min_players, max_players, disable_messages);
|
|
}
|
|
|
|
Expedition* Perl_Client_CreateExpeditionFromTemplate(Client* self, uint32_t dz_template_id)
|
|
{
|
|
return self->CreateExpeditionFromTemplate(dz_template_id);
|
|
}
|
|
|
|
void Perl_Client_CreateTaskDynamicZone(Client* self, int task_id, perl::reference table_ref)
|
|
{
|
|
perl::hash table = table_ref;
|
|
perl::hash instance = table["instance"];
|
|
|
|
perl::scalar zone = instance["zone"];
|
|
uint32_t version = instance["version"];
|
|
uint32_t zone_id = zone.is_string() ? ZoneID(zone.c_str()) : zone.as<uint32_t>();
|
|
|
|
// tasks override dz duration so duration is ignored here
|
|
DynamicZone dz{ zone_id, version, 0, DynamicZoneType::None };
|
|
|
|
if (table.exists("compass"))
|
|
{
|
|
auto compass = GetDynamicZoneLocationFromHash(table["compass"]);
|
|
dz.SetCompass(compass);
|
|
}
|
|
|
|
if (table.exists("safereturn"))
|
|
{
|
|
auto safereturn = GetDynamicZoneLocationFromHash(table["safereturn"]);
|
|
dz.SetSafeReturn(safereturn);
|
|
}
|
|
|
|
if (table.exists("zonein"))
|
|
{
|
|
auto zonein = GetDynamicZoneLocationFromHash(table["zonein"]);
|
|
dz.SetZoneInLocation(zonein);
|
|
}
|
|
|
|
if (table.exists("switchid"))
|
|
{
|
|
dz.SetSwitchID(table["switchid"].as<int>());
|
|
}
|
|
|
|
self->CreateTaskDynamicZone(task_id, dz);
|
|
}
|
|
|
|
Expedition* Perl_Client_GetExpedition(Client* self)
|
|
{
|
|
return self->GetExpedition();
|
|
}
|
|
|
|
perl::reference Perl_Client_GetExpeditionLockouts(Client* self)
|
|
{
|
|
perl::hash lockout_hash;
|
|
|
|
auto lockouts = self->GetExpeditionLockouts();
|
|
for (const auto& lockout : lockouts)
|
|
{
|
|
if (!lockout_hash.exists(lockout.GetExpeditionName()))
|
|
{
|
|
lockout_hash[lockout.GetExpeditionName()] = perl::reference(perl::hash());
|
|
}
|
|
perl::hash events = lockout_hash[lockout.GetExpeditionName()]; // nested
|
|
events[lockout.GetEventName()] = lockout.GetSecondsRemaining();
|
|
}
|
|
|
|
return perl::reference(lockout_hash);
|
|
}
|
|
|
|
perl::reference Perl_Client_GetExpeditionLockouts(Client* self, std::string expedition_name)
|
|
{
|
|
perl::hash event_hash;
|
|
|
|
auto lockouts = self->GetExpeditionLockouts(expedition_name);
|
|
for (const auto& lockout : lockouts)
|
|
{
|
|
event_hash[lockout.GetEventName()] = lockout.GetSecondsRemaining();
|
|
}
|
|
|
|
return perl::reference(event_hash);
|
|
}
|
|
|
|
std::string Perl_Client_GetLockoutExpeditionUUID(Client* self, std::string expedition_name, std::string event_name)
|
|
{
|
|
auto lockout = self->GetExpeditionLockout(expedition_name, event_name);
|
|
return lockout ? lockout->GetExpeditionUUID() : std::string{};
|
|
}
|
|
|
|
void Perl_Client_AddExpeditionLockout(Client* self, std::string expedition_name, std::string event_name, uint32 seconds)
|
|
{
|
|
self->AddNewExpeditionLockout(expedition_name, event_name, seconds);
|
|
}
|
|
|
|
void Perl_Client_AddExpeditionLockout(Client* self, std::string expedition_name, std::string event_name, uint32 seconds, std::string uuid)
|
|
{
|
|
self->AddNewExpeditionLockout(expedition_name, event_name, seconds, uuid);
|
|
}
|
|
|
|
void Perl_Client_AddExpeditionLockoutDuration(Client* self, std::string expedition_name, std::string event_name, int seconds)
|
|
{
|
|
self->AddExpeditionLockoutDuration(expedition_name, event_name, seconds, {}, true);
|
|
}
|
|
|
|
void Perl_Client_AddExpeditionLockoutDuration(Client* self, std::string expedition_name, std::string event_name, int seconds, std::string uuid)
|
|
{
|
|
self->AddExpeditionLockoutDuration(expedition_name, event_name, seconds, uuid, true);
|
|
}
|
|
|
|
void Perl_Client_RemoveAllExpeditionLockouts(Client* self)
|
|
{
|
|
self->RemoveAllExpeditionLockouts({}, true);
|
|
}
|
|
|
|
void Perl_Client_RemoveAllExpeditionLockouts(Client* self, std::string expedition_name)
|
|
{
|
|
self->RemoveAllExpeditionLockouts(expedition_name, true);
|
|
}
|
|
|
|
void Perl_Client_RemoveExpeditionLockout(Client* self, std::string expedition_name, std::string event_name)
|
|
{
|
|
self->RemoveExpeditionLockout(expedition_name, event_name, true);
|
|
}
|
|
|
|
bool Perl_Client_HasExpeditionLockout(Client* self, std::string expedition_name, std::string event_name)
|
|
{
|
|
return self->HasExpeditionLockout(expedition_name, event_name);
|
|
}
|
|
|
|
void Perl_Client_MovePCDynamicZone(Client* self, perl::scalar zone)
|
|
{
|
|
uint32_t zone_id = zone.is_string() ? ZoneID(zone.c_str()) : zone.as<uint32_t>();
|
|
self->MovePCDynamicZone(zone_id);
|
|
}
|
|
|
|
void Perl_Client_MovePCDynamicZone(Client* self, perl::scalar zone, int zone_version)
|
|
{
|
|
uint32_t zone_id = zone.is_string() ? ZoneID(zone.c_str()) : zone.as<uint32_t>();
|
|
self->MovePCDynamicZone(zone_id, zone_version);
|
|
}
|
|
|
|
void Perl_Client_MovePCDynamicZone(Client* self, perl::scalar zone, int zone_version, bool msg_if_invalid)
|
|
{
|
|
uint32_t zone_id = zone.is_string() ? ZoneID(zone.c_str()) : zone.as<uint32_t>();
|
|
self->MovePCDynamicZone(zone_id, zone_version, msg_if_invalid);
|
|
}
|
|
|
|
void Perl_Client_Fling(Client* self, float value, float target_x, float target_y, float target_z)
|
|
{
|
|
self->Fling(value, target_x, target_y, target_z);
|
|
}
|
|
|
|
void Perl_Client_Fling(Client* self, float value, float target_x, float target_y, float target_z, bool ignore_los)
|
|
{
|
|
self->Fling(value, target_x, target_y, target_z, ignore_los);
|
|
}
|
|
|
|
void Perl_Client_Fling(Client* self, float value, float target_x, float target_y, float target_z, bool ignore_los, bool clipping)
|
|
{
|
|
self->Fling(value, target_x, target_y, target_z, ignore_los, clipping);
|
|
}
|
|
|
|
bool Perl_Client_HasDisciplineLearned(Client* self, uint16 spell_id)
|
|
{
|
|
return self->HasDisciplineLearned(spell_id);
|
|
}
|
|
|
|
uint32_t Perl_Client_GetClassBitmask(Client* self)
|
|
{
|
|
return GetPlayerClassBit(self->GetClass());
|
|
}
|
|
|
|
uint32_t Perl_Client_GetRaceBitmask(Client* self) // @categories Stats and Attributes
|
|
{
|
|
return GetPlayerRaceBit(self->GetBaseRace());
|
|
}
|
|
|
|
perl::array Perl_Client_GetLearnableDisciplines(Client* self)
|
|
{
|
|
perl::array result;
|
|
auto learnable_disciplines = self->GetLearnableDisciplines();
|
|
for (int i = 0; i < learnable_disciplines.size(); ++i)
|
|
{
|
|
result.push_back(learnable_disciplines[i]);
|
|
}
|
|
return result;
|
|
}
|
|
|
|
perl::array Perl_Client_GetLearnableDisciplines(Client* self, uint8 min_level)
|
|
{
|
|
perl::array result;
|
|
auto learnable_disciplines = self->GetLearnableDisciplines(min_level);
|
|
for (int i = 0; i < learnable_disciplines.size(); ++i)
|
|
{
|
|
result.push_back(learnable_disciplines[i]);
|
|
}
|
|
return result;
|
|
}
|
|
|
|
perl::array Perl_Client_GetLearnableDisciplines(Client* self, uint8 min_level, uint8 max_level)
|
|
{
|
|
perl::array result;
|
|
auto learnable_disciplines = self->GetLearnableDisciplines(min_level, max_level);
|
|
for (int i = 0; i < learnable_disciplines.size(); ++i)
|
|
{
|
|
result.push_back(learnable_disciplines[i]);
|
|
}
|
|
return result;
|
|
}
|
|
|
|
perl::array Perl_Client_GetLearnedDisciplines(Client* self)
|
|
{
|
|
perl::array result;
|
|
auto learned_disciplines = self->GetLearnedDisciplines();
|
|
for (int i = 0; i < learned_disciplines.size(); ++i)
|
|
{
|
|
result.push_back(learned_disciplines[i]);
|
|
}
|
|
return result;
|
|
}
|
|
|
|
perl::array Perl_Client_GetMemmedSpells(Client* self)
|
|
{
|
|
perl::array result;
|
|
auto memmed_spells = self->GetMemmedSpells();
|
|
for (int i = 0; i < memmed_spells.size(); ++i)
|
|
{
|
|
result.push_back(memmed_spells[i]);
|
|
}
|
|
return result;
|
|
}
|
|
|
|
perl::array Perl_Client_GetScribeableSpells(Client* self)
|
|
{
|
|
perl::array result;
|
|
auto scribeable_spells = self->GetScribeableSpells();
|
|
for (int i = 0; i < scribeable_spells.size(); ++i)
|
|
{
|
|
result.push_back(scribeable_spells[i]);
|
|
}
|
|
return result;
|
|
}
|
|
|
|
perl::array Perl_Client_GetScribeableSpells(Client* self, uint8 min_level)
|
|
{
|
|
perl::array result;
|
|
auto scribeable_spells = self->GetScribeableSpells(min_level);
|
|
for (int i = 0; i < scribeable_spells.size(); ++i)
|
|
{
|
|
result.push_back(scribeable_spells[i]);
|
|
}
|
|
return result;
|
|
}
|
|
|
|
perl::array Perl_Client_GetScribeableSpells(Client* self, uint8 min_level, uint8 max_level)
|
|
{
|
|
perl::array result;
|
|
auto scribeable_spells = self->GetScribeableSpells(min_level, max_level);
|
|
for (int i = 0; i < scribeable_spells.size(); ++i)
|
|
{
|
|
result.push_back(scribeable_spells[i]);
|
|
}
|
|
return result;
|
|
}
|
|
|
|
perl::array Perl_Client_GetScribedSpells(Client* self)
|
|
{
|
|
perl::array result;
|
|
auto scribed_spells = self->GetScribedSpells();
|
|
for (int i = 0; i < scribed_spells.size(); ++i)
|
|
{
|
|
result.push_back(scribed_spells[i]);
|
|
}
|
|
return result;
|
|
}
|
|
|
|
EQ::InventoryProfile* Perl_Client_GetInventory(Client* self)
|
|
{
|
|
return &self->GetInv();
|
|
}
|
|
|
|
double Perl_Client_GetAAEXPModifier(Client* self, uint32 zone_id)
|
|
{
|
|
return self->GetAAEXPModifier(zone_id);
|
|
}
|
|
|
|
double Perl_Client_GetAAEXPModifier(Client* self, uint32 zone_id, int16 instance_version)
|
|
{
|
|
return self->GetAAEXPModifier(zone_id, instance_version);
|
|
}
|
|
|
|
double Perl_Client_GetEXPModifier(Client* self, uint32 zone_id)
|
|
{
|
|
return self->GetEXPModifier(zone_id);
|
|
}
|
|
|
|
double Perl_Client_GetEXPModifier(Client* self, uint32 zone_id, int16 instance_version)
|
|
{
|
|
return self->GetEXPModifier(zone_id, instance_version);
|
|
}
|
|
|
|
void Perl_Client_SetAAEXPModifier(Client* self, uint32 zone_id, double aa_modifier)
|
|
{
|
|
self->SetAAEXPModifier(zone_id, aa_modifier);
|
|
}
|
|
|
|
void Perl_Client_SetAAEXPModifier(Client* self, uint32 zone_id, double aa_modifier, int16 instance_version)
|
|
{
|
|
self->SetAAEXPModifier(zone_id, aa_modifier, instance_version);
|
|
}
|
|
|
|
void Perl_Client_SetEXPModifier(Client* self, uint32 zone_id, double exp_modifier)
|
|
{
|
|
self->SetEXPModifier(zone_id, exp_modifier);
|
|
}
|
|
|
|
void Perl_Client_SetEXPModifier(Client* self, uint32 zone_id, double exp_modifier, int16 instance_version)
|
|
{
|
|
self->SetEXPModifier(zone_id, exp_modifier, instance_version);
|
|
}
|
|
|
|
void Perl_Client_AddLDoNLoss(Client* self, uint32 theme_id)
|
|
{
|
|
self->UpdateLDoNWinLoss(theme_id);
|
|
}
|
|
|
|
void Perl_Client_AddLDoNWin(Client* self, uint32 theme_id)
|
|
{
|
|
self->UpdateLDoNWinLoss(theme_id, true);
|
|
}
|
|
|
|
void Perl_Client_SetHideMe(Client* self, bool hide_me_state)
|
|
{
|
|
self->SetHideMe(hide_me_state);
|
|
}
|
|
|
|
void Perl_Client_ResetAllDisciplineTimers(Client* self) // @categories Spells and Disciplines
|
|
{
|
|
self->ResetAllDisciplineTimers();
|
|
}
|
|
|
|
void Perl_Client_SendToInstance(Client* self, std::string instance_type, std::string zone_short_name, uint32 instance_version, float x, float y, float z, float heading, std::string instance_identifier, uint32 duration)
|
|
{
|
|
self->SendToInstance(instance_type, zone_short_name, instance_version, x, y, z, heading, instance_identifier, duration);
|
|
}
|
|
|
|
int Perl_Client_CountItem(Client* self, uint32 item_id)
|
|
{
|
|
return self->CountItem(item_id);
|
|
}
|
|
|
|
void Perl_Client_RemoveItem(Client* self, uint32 item_id) // @categories Spells and Disciplines
|
|
{
|
|
self->RemoveItem(item_id);
|
|
}
|
|
|
|
void Perl_Client_RemoveItem(Client* self, uint32 item_id, uint32 quantity) // @categories Spells and Disciplines
|
|
{
|
|
self->RemoveItem(item_id, quantity);
|
|
}
|
|
|
|
void Perl_Client_DialogueWindow(Client* self, std::string window_markdown) // @categories Script Utility
|
|
{
|
|
DialogueWindow::Render(self, std::move(window_markdown));
|
|
}
|
|
|
|
void Perl_Client_DiaWind(Client* self, std::string window_markdown) // @categories Script Utility
|
|
{
|
|
DialogueWindow::Render(self, std::move(window_markdown));
|
|
}
|
|
|
|
int Perl_Client_GetIPExemption(Client* self) // @categories Account and Character
|
|
{
|
|
return self->GetIPExemption();
|
|
}
|
|
|
|
std::string Perl_Client_GetIPString(Client* self) // @categories Account and Character
|
|
{
|
|
return self->GetIPString();
|
|
}
|
|
|
|
void Perl_Client_SetIPExemption(Client* self, int exemption_amount) // @categories Account and Character
|
|
{
|
|
self->SetIPExemption(exemption_amount);
|
|
}
|
|
|
|
void Perl_Client_ReadBookByName(Client* self, std::string book_name, uint8 book_type) // @categories Script Utility
|
|
{
|
|
self->ReadBookByName(book_name, book_type);
|
|
}
|
|
|
|
void Perl_Client_UntrainDiscBySpellID(Client* self, uint16 spell_id) // @categories Spells and Disciplines
|
|
{
|
|
self->UntrainDiscBySpellID(spell_id);
|
|
}
|
|
|
|
void Perl_Client_UntrainDiscBySpellID(Client* self, uint16 spell_id, bool update_client) // @categories Spells and Disciplines
|
|
{
|
|
self->UntrainDiscBySpellID(spell_id, update_client);
|
|
}
|
|
|
|
void Perl_Client_SummonBaggedItems(Client* self, uint32 bag_item_id, perl::reference bag_items_ref) // @categories Inventory and Items, Script Utility
|
|
{
|
|
std::vector<ServerLootItem_Struct> bagged_items;
|
|
|
|
perl::array bag_items = bag_items_ref;
|
|
for (perl::hash bag_item : bag_items) // only works if all elements are hashrefs
|
|
{
|
|
if (bag_item.exists("item_id") && bag_item.exists("charges"))
|
|
{
|
|
ServerLootItem_Struct item{};
|
|
item.item_id = bag_item["item_id"];
|
|
item.charges = bag_item["charges"];
|
|
item.attuned = bag_item.exists("attuned") ? bag_item["attuned"] : 0;
|
|
item.aug_1 = bag_item.exists("augment_one") ? bag_item["augment_one"] : 0;
|
|
item.aug_2 = bag_item.exists("augment_two") ? bag_item["augment_two"] : 0;
|
|
item.aug_3 = bag_item.exists("augment_three") ? bag_item["augment_three"] : 0;
|
|
item.aug_4 = bag_item.exists("augment_four") ? bag_item["augment_four"] : 0;
|
|
item.aug_5 = bag_item.exists("augment_five") ? bag_item["augment_five"] : 0;
|
|
item.aug_6 = bag_item.exists("augment_six") ? bag_item["augment_six"] : 0;
|
|
bagged_items.emplace_back(item);
|
|
}
|
|
}
|
|
|
|
self->SummonBaggedItems(bag_item_id, bagged_items);
|
|
}
|
|
|
|
void Perl_Client_RemoveLDoNLoss(Client* self, uint32 theme_id)
|
|
{
|
|
self->UpdateLDoNWinLoss(theme_id, false, true);
|
|
}
|
|
|
|
void Perl_Client_RemoveLDoNWin(Client* self, uint32 theme_id)
|
|
{
|
|
self->UpdateLDoNWinLoss(theme_id, true, true);
|
|
}
|
|
|
|
int Perl_Client_GetFreeDisciplineSlot(Client* self) // @categories Spells and Disciplines
|
|
{
|
|
return self->GetNextAvailableDisciplineSlot();
|
|
}
|
|
|
|
int Perl_Client_GetFreeDisciplineSlot(Client* self, int starting_slot) // @categories Spells and Disciplines
|
|
{
|
|
return self->GetNextAvailableDisciplineSlot(starting_slot);
|
|
}
|
|
|
|
int Perl_Client_ScribeSpells(Client* self, uint8 min_level, uint8 max_level) // @categories Spells and Disciplines
|
|
{
|
|
return self->ScribeSpells(min_level, max_level);
|
|
}
|
|
|
|
int Perl_Client_LearnDisciplines(Client* self, uint8 min_level, uint8 max_level) // @categories Spells and Disciplines
|
|
{
|
|
return self->LearnDisciplines(min_level, max_level);
|
|
}
|
|
|
|
void Perl_Client_ResetCastbarCooldownBySlot(Client* self, int slot)
|
|
{
|
|
self->ResetCastbarCooldownBySlot(slot);
|
|
}
|
|
|
|
void Perl_Client_ResetAllCastbarCooldowns(Client* self)
|
|
{
|
|
self->ResetAllCastbarCooldowns();
|
|
}
|
|
|
|
void Perl_Client_ResetCastbarCooldownBySpellID(Client* self, uint32 spell_id)
|
|
{
|
|
self->ResetCastbarCooldownBySpellID(spell_id);
|
|
}
|
|
|
|
void Perl_Client_UnscribeSpellBySpellID(Client* self, uint16 spell_id)
|
|
{
|
|
self->UnscribeSpellBySpellID(spell_id);
|
|
}
|
|
|
|
void Perl_Client_UnscribeSpellBySpellID(Client* self, uint16 spell_id, bool update_client)
|
|
{
|
|
self->UnscribeSpellBySpellID(spell_id, update_client);
|
|
}
|
|
|
|
int Perl_Client_GetEnvironmentDamageModifier(Client* self) // @categories Script Utility
|
|
{
|
|
return self->GetEnvironmentDamageModifier();
|
|
}
|
|
|
|
void Perl_Client_SetEnvironmentDamageModifier(Client* self, int modifier) // @categories Script Utility
|
|
{
|
|
self->SetEnvironmentDamageModifier(modifier);
|
|
}
|
|
|
|
bool Perl_Client_GetInvulnerableEnvironmentDamage(Client* self) // @categories Script Utility
|
|
{
|
|
return self->GetInvulnerableEnvironmentDamage();
|
|
}
|
|
|
|
void Perl_Client_SetInvulnerableEnvironmentDamage(Client* self, bool invul) // @categories Script Utility
|
|
{
|
|
self->SetInvulnerableEnvironmentDamage(invul);
|
|
}
|
|
|
|
void Perl_Client_AddItem(Client* self, perl::reference table_ref)
|
|
{
|
|
perl::hash table = table_ref;
|
|
if (!table.exists("item_id") || !table.exists("charges"))
|
|
{
|
|
return;
|
|
}
|
|
|
|
uint32 item_id = table["item_id"];
|
|
int16 charges = table["charges"];
|
|
uint32 augment_one = table.exists("augment_one") ? table["augment_one"] : 0;
|
|
uint32 augment_two = table.exists("augment_two") ? table["augment_two"] : 0;
|
|
uint32 augment_three = table.exists("augment_three") ? table["augment_three"] : 0;
|
|
uint32 augment_four = table.exists("augment_four") ? table["augment_four"] : 0;
|
|
uint32 augment_five = table.exists("augment_five") ? table["augment_five"] : 0;
|
|
uint32 augment_six = table.exists("augment_six") ? table["augment_six"] : 0;
|
|
bool attuned = table.exists("attuned") ? table["attuned"] : false;
|
|
uint16 slot_id = table.exists("slot_id") ? table["slot_id"] : EQ::invslot::slotCursor;
|
|
|
|
self->SummonItem(item_id, charges, augment_one, augment_two, augment_three,
|
|
augment_four, augment_five, augment_six, attuned, slot_id);
|
|
}
|
|
|
|
int Perl_Client_CountAugmentEquippedByID(Client* self, uint32 item_id)
|
|
{
|
|
return self->GetInv().CountAugmentEquippedByID(item_id);
|
|
}
|
|
|
|
bool Perl_Client_HasAugmentEquippedByID(Client* self, uint32 item_id)
|
|
{
|
|
return self->GetInv().HasAugmentEquippedByID(item_id);
|
|
}
|
|
|
|
int Perl_Client_CountItemEquippedByID(Client* self, uint32 item_id)
|
|
{
|
|
return self->GetInv().CountItemEquippedByID(item_id);
|
|
}
|
|
|
|
bool Perl_Client_HasItemEquippedByID(Client* self, uint32 item_id)
|
|
{
|
|
return self->GetInv().HasItemEquippedByID(item_id);
|
|
}
|
|
|
|
void Perl_Client_AddPlatinum(Client* self, uint32 platinum)
|
|
{
|
|
self->AddPlatinum(platinum);
|
|
}
|
|
|
|
void Perl_Client_AddPlatinum(Client* self, uint32 platinum, bool update_client)
|
|
{
|
|
self->AddPlatinum(platinum, update_client);
|
|
}
|
|
|
|
uint32 Perl_Client_GetCarriedPlatinum(Client* self)
|
|
{
|
|
return self->GetCarriedPlatinum();
|
|
}
|
|
|
|
bool Perl_Client_TakePlatinum(Client* self, uint32 platinum)
|
|
{
|
|
return self->TakePlatinum(platinum);
|
|
}
|
|
|
|
bool Perl_Client_TakePlatinum(Client* self, uint32 platinum, bool update_client)
|
|
{
|
|
return self->TakePlatinum(platinum, update_client);
|
|
}
|
|
|
|
void Perl_Client_ClearPEQZoneFlag(Client* self, uint32 zone_id)
|
|
{
|
|
self->ClearPEQZoneFlag(zone_id);
|
|
}
|
|
|
|
bool Perl_Client_HasPEQZoneFlag(Client* self, uint32 zone_id)
|
|
{
|
|
return self->HasPEQZoneFlag(zone_id);
|
|
}
|
|
|
|
void Perl_Client_LoadPEQZoneFlags(Client* self)
|
|
{
|
|
self->LoadPEQZoneFlags();
|
|
}
|
|
|
|
void Perl_Client_SendPEQZoneFlagInfo(Client* self, Client* to)
|
|
{
|
|
self->SendPEQZoneFlagInfo(to);
|
|
}
|
|
|
|
void Perl_Client_SetPEQZoneFlag(Client* self, uint32 zone_id)
|
|
{
|
|
self->SetPEQZoneFlag(zone_id);
|
|
}
|
|
|
|
int Perl_Client_GetHealAmount(Client* self)
|
|
{
|
|
return self->GetHealAmt();
|
|
}
|
|
|
|
int Perl_Client_GetSpellDamage(Client* self)
|
|
{
|
|
return self->GetSpellDmg();
|
|
}
|
|
|
|
void Perl_Client_TaskSelector(Client* self, perl::array task_ids)
|
|
{
|
|
int tasks[MAXCHOOSERENTRIES] = { 0 };
|
|
int task_count = 0;
|
|
|
|
for (int i = 0; i < task_ids.size() && i < MAXCHOOSERENTRIES; ++i)
|
|
{
|
|
tasks[i] = task_ids[i];
|
|
++task_count;
|
|
}
|
|
|
|
self->TaskQuestSetSelector(self, task_count, tasks);
|
|
}
|
|
|
|
void perl_register_client()
|
|
{
|
|
perl::interpreter perl(PERL_GET_THX);
|
|
|
|
auto package = perl.new_class<Client>("Client");
|
|
package.add_base_class("Mob");
|
|
package.add("AccountID", &Perl_Client_AccountID);
|
|
package.add("AccountName", &Perl_Client_AccountName);
|
|
package.add("AddAAPoints", &Perl_Client_AddAAPoints);
|
|
package.add("AddAlternateCurrencyValue", &Perl_Client_AddAlternateCurrencyValue);
|
|
package.add("AddCrystals", &Perl_Client_AddCrystals);
|
|
package.add("AddEXP", (void(*)(Client*, uint32))&Perl_Client_AddEXP);
|
|
package.add("AddEXP", (void(*)(Client*, uint32, uint8))&Perl_Client_AddEXP);
|
|
package.add("AddEXP", (void(*)(Client*, uint32, uint8, bool))&Perl_Client_AddEXP);
|
|
package.add("AddExpeditionLockout", (void(*)(Client*, std::string, std::string, uint32))&Perl_Client_AddExpeditionLockout);
|
|
package.add("AddExpeditionLockout", (void(*)(Client*, std::string, std::string, uint32, std::string))&Perl_Client_AddExpeditionLockout);
|
|
package.add("AddExpeditionLockoutDuration", (void(*)(Client*, std::string, std::string, int))&Perl_Client_AddExpeditionLockoutDuration);
|
|
package.add("AddExpeditionLockoutDuration", (void(*)(Client*, std::string, std::string, int, std::string))&Perl_Client_AddExpeditionLockoutDuration);
|
|
package.add("AddItem", &Perl_Client_AddItem);
|
|
package.add("AddLDoNLoss", &Perl_Client_AddLDoNLoss);
|
|
package.add("AddLDoNWin", &Perl_Client_AddLDoNWin);
|
|
package.add("AddLevelBasedExp", (void(*)(Client*, uint8))&Perl_Client_AddLevelBasedExp);
|
|
package.add("AddLevelBasedExp", (void(*)(Client*, uint8, uint8))&Perl_Client_AddLevelBasedExp);
|
|
package.add("AddLevelBasedExp", (void(*)(Client*, uint8, uint8, bool))&Perl_Client_AddLevelBasedExp);
|
|
package.add("AddMoneyToPP", (void(*)(Client*, uint32, uint32, uint32, uint32))&Perl_Client_AddMoneyToPP);
|
|
package.add("AddMoneyToPP", (void(*)(Client*, uint32, uint32, uint32, uint32, bool))&Perl_Client_AddMoneyToPP);
|
|
package.add("AddPlatinum", (void(*)(Client*, uint32))&Perl_Client_AddPlatinum);
|
|
package.add("AddPlatinum", (void(*)(Client*, uint32, bool))&Perl_Client_AddPlatinum);
|
|
package.add("AddPVPPoints", &Perl_Client_AddPVPPoints);
|
|
package.add("AddSkill", &Perl_Client_AddSkill);
|
|
package.add("Admin", &Perl_Client_Admin);
|
|
package.add("AssignTask", (void(*)(Client*, int))&Perl_Client_AssignTask);
|
|
package.add("AssignTask", (void(*)(Client*, int, int))&Perl_Client_AssignTask);
|
|
package.add("AssignTask", (void(*)(Client*, int, int, bool))&Perl_Client_AssignTask);
|
|
package.add("AssignToInstance", &Perl_Client_AssignToInstance);
|
|
package.add("AutoSplitEnabled", &Perl_Client_AutoSplitEnabled);
|
|
package.add("BreakInvis", &Perl_Client_BreakInvis);
|
|
package.add("CalcEXP", &Perl_Client_CalcEXP);
|
|
package.add("CalcPriceMod", (float(*)(Client*))&Perl_Client_CalcPriceMod);
|
|
package.add("CalcPriceMod", (float(*)(Client*, Mob*))&Perl_Client_CalcPriceMod);
|
|
package.add("CalcPriceMod", (float(*)(Client*, Mob*, bool))&Perl_Client_CalcPriceMod);
|
|
package.add("CanHaveSkill", &Perl_Client_CanHaveSkill);
|
|
package.add("CashReward", &Perl_Client_CashReward);
|
|
package.add("ChangeLastName", &Perl_Client_ChangeLastName);
|
|
package.add("CharacterID", &Perl_Client_CharacterID);
|
|
package.add("CheckIncreaseSkill", (bool(*)(Client*, int))&Perl_Client_CheckIncreaseSkill);
|
|
package.add("CheckIncreaseSkill", (bool(*)(Client*, int, int))&Perl_Client_CheckIncreaseSkill);
|
|
package.add("CheckSpecializeIncrease", &Perl_Client_CheckSpecializeIncrease);
|
|
package.add("ClearCompassMark", &Perl_Client_ClearCompassMark);
|
|
package.add("ClearPEQZoneFlag", &Perl_Client_ClearPEQZoneFlag);
|
|
package.add("ClearZoneFlag", &Perl_Client_ClearZoneFlag);
|
|
package.add("Connected", &Perl_Client_Connected);
|
|
package.add("CountAugmentEquippedByID", &Perl_Client_CountAugmentEquippedByID);
|
|
package.add("CountItem", &Perl_Client_CountItem);
|
|
package.add("CountItemEquippedByID", &Perl_Client_CountItemEquippedByID);
|
|
package.add("CreateExpedition", (Expedition*(*)(Client*, perl::reference))&Perl_Client_CreateExpedition);
|
|
package.add("CreateExpedition", (Expedition*(*)(Client*, std::string, uint32, uint32, std::string, uint32, uint32))&Perl_Client_CreateExpedition);
|
|
package.add("CreateExpedition", (Expedition*(*)(Client*, std::string, uint32, uint32, std::string, uint32, uint32, bool))&Perl_Client_CreateExpedition);
|
|
package.add("CreateExpeditionFromTemplate", &Perl_Client_CreateExpeditionFromTemplate);
|
|
package.add("CreateTaskDynamicZone", &Perl_Client_CreateTaskDynamicZone);
|
|
package.add("DecreaseByID", &Perl_Client_DecreaseByID);
|
|
package.add("DeleteItemInInventory", (void(*)(Client*, int16))&Perl_Client_DeleteItemInInventory);
|
|
package.add("DeleteItemInInventory", (void(*)(Client*, int16, int16))&Perl_Client_DeleteItemInInventory);
|
|
package.add("DeleteItemInInventory", (void(*)(Client*, int16, int16, bool))&Perl_Client_DeleteItemInInventory);
|
|
package.add("DiaWind", &Perl_Client_DiaWind);
|
|
package.add("DialogueWindow", &Perl_Client_DialogueWindow);
|
|
package.add("Disconnect", &Perl_Client_Disconnect);
|
|
package.add("DropItem", &Perl_Client_DropItem);
|
|
package.add("Duck", &Perl_Client_Duck);
|
|
package.add("DyeArmorBySlot", (void(*)(Client*, uint8, uint8, uint8, uint8))&Perl_Client_DyeArmorBySlot);
|
|
package.add("DyeArmorBySlot", (void(*)(Client*, uint8, uint8, uint8, uint8, uint8))&Perl_Client_DyeArmorBySlot);
|
|
package.add("Escape", &Perl_Client_Escape);
|
|
package.add("ExpeditionMessage", &Perl_Client_ExpeditionMessage);
|
|
package.add("FailTask", &Perl_Client_FailTask);
|
|
package.add("FindEmptyMemSlot", &Perl_Client_FindEmptyMemSlot);
|
|
package.add("FindMemmedSpellBySlot", &Perl_Client_FindMemmedSpellBySlot);
|
|
package.add("FindMemmedSpellBySpellID", &Perl_Client_FindMemmedSpellBySpellID);
|
|
package.add("Fling", (void(*)(Client*, float, float, float, float))&Perl_Client_Fling);
|
|
package.add("Fling", (void(*)(Client*, float, float, float, float, bool))&Perl_Client_Fling);
|
|
package.add("Fling", (void(*)(Client*, float, float, float, float, bool, bool))&Perl_Client_Fling);
|
|
package.add("ForageItem", &Perl_Client_ForageItem);
|
|
package.add("Freeze", &Perl_Client_Freeze);
|
|
package.add("GMKill", &Perl_Client_GMKill);
|
|
package.add("GetAAEXPModifier", (double(*)(Client*, uint32))&Perl_Client_GetAAEXPModifier);
|
|
package.add("GetAAEXPModifier", (double(*)(Client*, uint32, int16))&Perl_Client_GetAAEXPModifier);
|
|
package.add("GetAAExp", &Perl_Client_GetAAExp);
|
|
package.add("GetAALevel", &Perl_Client_GetAALevel);
|
|
package.add("GetAAPercent", &Perl_Client_GetAAPercent);
|
|
package.add("GetAAPoints", &Perl_Client_GetAAPoints);
|
|
package.add("GetAFK", &Perl_Client_GetAFK);
|
|
package.add("GetAccountAge", &Perl_Client_GetAccountAge);
|
|
package.add("GetAccountFlag", &Perl_Client_GetAccountFlag);
|
|
package.add("GetAggroCount", &Perl_Client_GetAggroCount);
|
|
package.add("GetAllMoney", &Perl_Client_GetAllMoney);
|
|
package.add("GetAlternateCurrencyValue", &Perl_Client_GetAlternateCurrencyValue);
|
|
package.add("GetAnon", &Perl_Client_GetAnon);
|
|
package.add("GetAugmentAt", &Perl_Client_GetAugmentAt);
|
|
package.add("GetAugmentIDAt", &Perl_Client_GetAugmentIDAt);
|
|
package.add("GetBaseAGI", &Perl_Client_GetBaseAGI);
|
|
package.add("GetBaseCHA", &Perl_Client_GetBaseCHA);
|
|
package.add("GetBaseDEX", &Perl_Client_GetBaseDEX);
|
|
package.add("GetBaseFace", &Perl_Client_GetBaseFace);
|
|
package.add("GetBaseINT", &Perl_Client_GetBaseINT);
|
|
package.add("GetBaseSTA", &Perl_Client_GetBaseSTA);
|
|
package.add("GetBaseSTR", &Perl_Client_GetBaseSTR);
|
|
package.add("GetBaseWIS", &Perl_Client_GetBaseWIS);
|
|
package.add("GetBecomeNPCLevel", &Perl_Client_GetBecomeNPCLevel);
|
|
package.add("GetBindHeading", (float(*)(Client*))&Perl_Client_GetBindHeading);
|
|
package.add("GetBindHeading", (float(*)(Client*, int))&Perl_Client_GetBindHeading);
|
|
package.add("GetBindX", (float(*)(Client*))&Perl_Client_GetBindX);
|
|
package.add("GetBindX", (float(*)(Client*, int))&Perl_Client_GetBindX);
|
|
package.add("GetBindY", (float(*)(Client*))&Perl_Client_GetBindY);
|
|
package.add("GetBindY", (float(*)(Client*, int))&Perl_Client_GetBindY);
|
|
package.add("GetBindZ", (float(*)(Client*))&Perl_Client_GetBindZ);
|
|
package.add("GetBindZ", (float(*)(Client*, int))&Perl_Client_GetBindZ);
|
|
package.add("GetBindZoneID", (uint32_t(*)(Client*))&Perl_Client_GetBindZoneID);
|
|
package.add("GetBindZoneID", (uint32_t(*)(Client*, int))&Perl_Client_GetBindZoneID);
|
|
package.add("GetCarriedMoney", &Perl_Client_GetCarriedMoney);
|
|
package.add("GetCarriedPlatinum", &Perl_Client_GetCarriedPlatinum);
|
|
package.add("GetCharacterFactionLevel", &Perl_Client_GetCharacterFactionLevel);
|
|
package.add("GetClassBitmask", &Perl_Client_GetClassBitmask);
|
|
package.add("GetClientMaxLevel", &Perl_Client_GetClientMaxLevel);
|
|
package.add("GetClientVersion", &Perl_Client_GetClientVersion);
|
|
package.add("GetClientVersionBit", &Perl_Client_GetClientVersionBit);
|
|
package.add("GetCorpseCount", &Perl_Client_GetCorpseCount);
|
|
package.add("GetCorpseID", &Perl_Client_GetCorpseID);
|
|
package.add("GetCorpseItemAt", &Perl_Client_GetCorpseItemAt);
|
|
package.add("GetCustomItemData", &Perl_Client_GetCustomItemData);
|
|
package.add("GetDiscSlotBySpellID", &Perl_Client_GetDiscSlotBySpellID);
|
|
package.add("GetDisciplineTimer", &Perl_Client_GetDisciplineTimer);
|
|
package.add("GetDuelTarget", &Perl_Client_GetDuelTarget);
|
|
package.add("GetEnvironmentDamageModifier", &Perl_Client_GetEnvironmentDamageModifier);
|
|
package.add("GetEXP", &Perl_Client_GetEXP);
|
|
package.add("GetEXPModifier", (double(*)(Client*, uint32))&Perl_Client_GetEXPModifier);
|
|
package.add("GetEXPModifier", (double(*)(Client*, uint32, int16))&Perl_Client_GetEXPModifier);
|
|
package.add("GetEbonCrystals", &Perl_Client_GetEbonCrystals);
|
|
package.add("GetEndurance", &Perl_Client_GetEndurance);
|
|
package.add("GetEnduranceRatio", &Perl_Client_GetEnduranceRatio);
|
|
package.add("GetExpedition", &Perl_Client_GetExpedition);
|
|
package.add("GetExpeditionLockouts", (perl::reference(*)(Client*))&Perl_Client_GetExpeditionLockouts);
|
|
package.add("GetExpeditionLockouts", (perl::reference(*)(Client*, std::string))&Perl_Client_GetExpeditionLockouts);
|
|
package.add("GetFace", &Perl_Client_GetFace);
|
|
package.add("GetFactionLevel", &Perl_Client_GetFactionLevel);
|
|
package.add("GetFeigned", &Perl_Client_GetFeigned);
|
|
package.add("GetFreeDisciplineSlot", (int(*)(Client*))&Perl_Client_GetFreeDisciplineSlot);
|
|
package.add("GetFreeDisciplineSlot", (int(*)(Client*, int))&Perl_Client_GetFreeDisciplineSlot);
|
|
package.add("GetFreeSpellBookSlot", (int(*)(Client*))&Perl_Client_GetFreeSpellBookSlot);
|
|
package.add("GetFreeSpellBookSlot", (int(*)(Client*, uint32))&Perl_Client_GetFreeSpellBookSlot);
|
|
package.add("GetGM", &Perl_Client_GetGM);
|
|
package.add("GetGroup", &Perl_Client_GetGroup);
|
|
package.add("GetGroupPoints", &Perl_Client_GetGroupPoints);
|
|
package.add("GetHorseId", &Perl_Client_GetHorseId);
|
|
package.add("GetHealAmount", &Perl_Client_GetHealAmount);
|
|
package.add("GetHunger", &Perl_Client_GetHunger);
|
|
package.add("GetIP", &Perl_Client_GetIP);
|
|
package.add("GetIPExemption", &Perl_Client_GetIPExemption);
|
|
package.add("GetIPString", &Perl_Client_GetIPString);
|
|
package.add("GetInstanceID", &Perl_Client_GetInstanceID);
|
|
package.add("GetInstrumentMod", &Perl_Client_GetInstrumentMod);
|
|
package.add("GetInventory", &Perl_Client_GetInventory);
|
|
package.add("GetInvulnerableEnvironmentDamage", &Perl_Client_GetInvulnerableEnvironmentDamage);
|
|
package.add("GetItemAt", &Perl_Client_GetItemAt);
|
|
package.add("GetItemIDAt", &Perl_Client_GetItemIDAt);
|
|
package.add("GetItemInInventory", &Perl_Client_GetItemInInventory);
|
|
package.add("GetLDoNLosses", &Perl_Client_GetLDoNLosses);
|
|
package.add("GetLDoNLossesTheme", &Perl_Client_GetLDoNLossesTheme);
|
|
package.add("GetLDoNPointsTheme", &Perl_Client_GetLDoNPointsTheme);
|
|
package.add("GetLDoNWins", &Perl_Client_GetLDoNWins);
|
|
package.add("GetLDoNWinsTheme", &Perl_Client_GetLDoNWinsTheme);
|
|
package.add("GetLanguageSkill", &Perl_Client_GetLanguageSkill);
|
|
package.add("GetLearnableDisciplines", (perl::array(*)(Client*))&Perl_Client_GetLearnableDisciplines);
|
|
package.add("GetLearnableDisciplines", (perl::array(*)(Client*, uint8))&Perl_Client_GetLearnableDisciplines);
|
|
package.add("GetLearnableDisciplines", (perl::array(*)(Client*, uint8, uint8))&Perl_Client_GetLearnableDisciplines);
|
|
package.add("GetLearnedDisciplines", &Perl_Client_GetLearnedDisciplines);
|
|
package.add("GetLockoutExpeditionUUID", &Perl_Client_GetLockoutExpeditionUUID);
|
|
package.add("GetMaxEndurance", &Perl_Client_GetMaxEndurance);
|
|
package.add("GetMemmedSpells", &Perl_Client_GetMemmedSpells);
|
|
package.add("GetModCharacterFactionLevel", &Perl_Client_GetModCharacterFactionLevel);
|
|
package.add("GetMoney", &Perl_Client_GetMoney);
|
|
package.add("GetPVP", &Perl_Client_GetPVP);
|
|
package.add("GetPVPPoints", &Perl_Client_GetPVPPoints);
|
|
package.add("GetRaceBitmask", &Perl_Client_GetRaceBitmask);
|
|
package.add("GetRadiantCrystals", &Perl_Client_GetRadiantCrystals);
|
|
package.add("GetRaid", &Perl_Client_GetRaid);
|
|
package.add("GetRaidPoints", &Perl_Client_GetRaidPoints);
|
|
package.add("GetRawItemAC", &Perl_Client_GetRawItemAC);
|
|
package.add("GetRawSkill", &Perl_Client_GetRawSkill);
|
|
package.add("GetScribeableSpells", (perl::array(*)(Client*))&Perl_Client_GetScribeableSpells);
|
|
package.add("GetScribeableSpells", (perl::array(*)(Client*, uint8))&Perl_Client_GetScribeableSpells);
|
|
package.add("GetScribeableSpells", (perl::array(*)(Client*, uint8, uint8))&Perl_Client_GetScribeableSpells);
|
|
package.add("GetScribedSpells", &Perl_Client_GetScribedSpells);
|
|
package.add("GetSkillPoints", &Perl_Client_GetSkillPoints);
|
|
package.add("GetSpellDamage", &Perl_Client_GetSpellDamage);
|
|
package.add("GetSpellBookSlotBySpellID", &Perl_Client_GetSpellBookSlotBySpellID);
|
|
package.add("GetSpellIDByBookSlot", &Perl_Client_GetSpellIDByBookSlot);
|
|
package.add("GetSpentAA", &Perl_Client_GetSpentAA);
|
|
package.add("GetStartZone", &Perl_Client_GetStartZone);
|
|
package.add("GetTargetRingX", &Perl_Client_GetTargetRingX);
|
|
package.add("GetTargetRingY", &Perl_Client_GetTargetRingY);
|
|
package.add("GetTargetRingZ", &Perl_Client_GetTargetRingZ);
|
|
package.add("GetTaskActivityDoneCount", &Perl_Client_GetTaskActivityDoneCount);
|
|
package.add("GetThirst", &Perl_Client_GetThirst);
|
|
package.add("GetTotalSecondsPlayed", &Perl_Client_GetTotalSecondsPlayed);
|
|
package.add("GetWeight", &Perl_Client_GetWeight);
|
|
package.add("GoFish", &Perl_Client_GoFish);
|
|
package.add("GrantAlternateAdvancementAbility", (bool(*)(Client*, int, int))&Perl_Client_GrantAlternateAdvancementAbility);
|
|
package.add("GrantAlternateAdvancementAbility", (bool(*)(Client*, int, int, bool))&Perl_Client_GrantAlternateAdvancementAbility);
|
|
package.add("GuildID", &Perl_Client_GuildID);
|
|
package.add("GuildRank", &Perl_Client_GuildRank);
|
|
package.add("HasAugmentEquippedByID", &Perl_Client_HasAugmentEquippedByID);
|
|
package.add("HasDisciplineLearned", &Perl_Client_HasDisciplineLearned);
|
|
package.add("HasExpeditionLockout", &Perl_Client_HasExpeditionLockout);
|
|
package.add("HasItemEquippedByID", &Perl_Client_HasItemEquippedByID);
|
|
package.add("HasPEQZoneFlag", &Perl_Client_HasPEQZoneFlag);
|
|
package.add("HasSkill", &Perl_Client_HasSkill);
|
|
package.add("HasSpellScribed", &Perl_Client_HasSpellScribed);
|
|
package.add("HasZoneFlag", &Perl_Client_HasZoneFlag);
|
|
package.add("Hungry", &Perl_Client_Hungry);
|
|
package.add("InZone", &Perl_Client_InZone);
|
|
package.add("IncStats", &Perl_Client_IncStats);
|
|
package.add("IncreaseLanguageSkill", (void(*)(Client*, int))&Perl_Client_IncreaseLanguageSkill);
|
|
package.add("IncreaseLanguageSkill", (void(*)(Client*, int, int))&Perl_Client_IncreaseLanguageSkill);
|
|
package.add("IncreaseSkill", (void(*)(Client*, int))&Perl_Client_IncreaseSkill);
|
|
package.add("IncreaseSkill", (void(*)(Client*, int, int))&Perl_Client_IncreaseSkill);
|
|
package.add("IncrementAA", &Perl_Client_IncrementAA);
|
|
package.add("IsBecomeNPC", &Perl_Client_IsBecomeNPC);
|
|
package.add("IsCrouching", &Perl_Client_IsCrouching);
|
|
package.add("IsDueling", &Perl_Client_IsDueling);
|
|
package.add("IsGrouped", &Perl_Client_IsGrouped);
|
|
package.add("IsLD", &Perl_Client_IsLD);
|
|
package.add("IsMedding", &Perl_Client_IsMedding);
|
|
package.add("IsRaidGrouped", &Perl_Client_IsRaidGrouped);
|
|
package.add("IsSitting", &Perl_Client_IsSitting);
|
|
package.add("IsStanding", &Perl_Client_IsStanding);
|
|
package.add("IsTaskActive", &Perl_Client_IsTaskActive);
|
|
package.add("IsTaskActivityActive", &Perl_Client_IsTaskActivityActive);
|
|
package.add("IsTaskCompleted", &Perl_Client_IsTaskCompleted);
|
|
package.add("KeyRingAdd", &Perl_Client_KeyRingAdd);
|
|
package.add("KeyRingCheck", &Perl_Client_KeyRingCheck);
|
|
package.add("Kick", &Perl_Client_Kick);
|
|
package.add("LearnDisciplines", &Perl_Client_LearnDisciplines);
|
|
package.add("LearnRecipe", &Perl_Client_LearnRecipe);
|
|
package.add("LeaveGroup", &Perl_Client_LeaveGroup);
|
|
package.add("LoadPEQZoneFlags", &Perl_Client_LoadPEQZoneFlags);
|
|
package.add("LoadZoneFlags", &Perl_Client_LoadZoneFlags);
|
|
package.add("LockSharedTask", &Perl_Client_LockSharedTask);
|
|
package.add("MarkCompassLoc", &Perl_Client_MarkCompassLoc);
|
|
package.add("MaxSkill", (int(*)(Client*, uint16))&Perl_Client_MaxSkill);
|
|
package.add("MaxSkill", (int(*)(Client*, uint16, uint16))&Perl_Client_MaxSkill);
|
|
package.add("MaxSkill", (int(*)(Client*, uint16, uint16, uint16))&Perl_Client_MaxSkill);
|
|
package.add("MemSpell", (void(*)(Client*, uint16, int))&Perl_Client_MemSpell);
|
|
package.add("MemSpell", (void(*)(Client*, uint16, int, bool))&Perl_Client_MemSpell);
|
|
package.add("MemmedCount", &Perl_Client_MemmedCount);
|
|
package.add("MovePC", &Perl_Client_MovePC);
|
|
package.add("MovePCDynamicZone", (void(*)(Client*, perl::scalar))&Perl_Client_MovePCDynamicZone);
|
|
package.add("MovePCDynamicZone", (void(*)(Client*, perl::scalar, int))&Perl_Client_MovePCDynamicZone);
|
|
package.add("MovePCDynamicZone", (void(*)(Client*, perl::scalar, int, bool))&Perl_Client_MovePCDynamicZone);
|
|
package.add("MovePCInstance", &Perl_Client_MovePCInstance);
|
|
package.add("MoveZone", &Perl_Client_MoveZone);
|
|
package.add("MoveZoneGroup", &Perl_Client_MoveZoneGroup);
|
|
package.add("MoveZoneInstance", &Perl_Client_MoveZoneInstance);
|
|
package.add("MoveZoneInstanceGroup", &Perl_Client_MoveZoneInstanceGroup);
|
|
package.add("MoveZoneInstanceRaid", &Perl_Client_MoveZoneInstanceRaid);
|
|
package.add("MoveZoneRaid", &Perl_Client_MoveZoneRaid);
|
|
package.add("NPCSpawn", (void(*)(Client*, NPC*, const char*))&Perl_Client_NPCSpawn);
|
|
package.add("NPCSpawn", (void(*)(Client*, NPC*, const char*, uint32))&Perl_Client_NPCSpawn);
|
|
package.add("NotifyNewTitlesAvailable", &Perl_Client_NotifyNewTitlesAvailable);
|
|
package.add("NukeItem", (uint32_t(*)(Client*, uint32))&Perl_Client_NukeItem);
|
|
package.add("NukeItem", (uint32_t(*)(Client*, uint32, uint8))&Perl_Client_NukeItem);
|
|
package.add("OpenLFGuildWindow", &Perl_Client_OpenLFGuildWindow);
|
|
package.add("PlayMP3", &Perl_Client_PlayMP3);
|
|
package.add("Popup2", (void(*)(Client*, const char*, const char*))&Perl_Client_Popup2);
|
|
package.add("Popup2", (void(*)(Client*, const char*, const char*, uint32))&Perl_Client_Popup2);
|
|
package.add("Popup2", (void(*)(Client*, const char*, const char*, uint32, uint32))&Perl_Client_Popup2);
|
|
package.add("Popup2", (void(*)(Client*, const char*, const char*, uint32, uint32, uint32))&Perl_Client_Popup2);
|
|
package.add("Popup2", (void(*)(Client*, const char*, const char*, uint32, uint32, uint32, uint32))&Perl_Client_Popup2);
|
|
package.add("Popup2", (void(*)(Client*, const char*, const char*, uint32, uint32, uint32, uint32, const char*))&Perl_Client_Popup2);
|
|
package.add("Popup2", (void(*)(Client*, const char*, const char*, uint32, uint32, uint32, uint32, const char*, const char*))&Perl_Client_Popup2);
|
|
package.add("Popup2", (void(*)(Client*, const char*, const char*, uint32, uint32, uint32, uint32, const char*, const char*, uint32))&Perl_Client_Popup2);
|
|
package.add("QuestReward", (void(*)(Client*, Mob*))&Perl_Client_QuestReward);
|
|
package.add("QuestReward", (void(*)(Client*, Mob*, uint32))&Perl_Client_QuestReward);
|
|
package.add("QuestReward", (void(*)(Client*, Mob*, uint32, uint32))&Perl_Client_QuestReward);
|
|
package.add("QuestReward", (void(*)(Client*, Mob*, uint32, uint32, uint32))&Perl_Client_QuestReward);
|
|
package.add("QuestReward", (void(*)(Client*, Mob*, uint32, uint32, uint32, uint32))&Perl_Client_QuestReward);
|
|
package.add("QuestReward", (void(*)(Client*, Mob*, uint32, uint32, uint32, uint32, uint32))&Perl_Client_QuestReward);
|
|
package.add("QuestReward", (void(*)(Client*, Mob*, uint32, uint32, uint32, uint32, uint32, uint32))&Perl_Client_QuestReward);
|
|
package.add("QuestReward", (void(*)(Client*, Mob*, uint32, uint32, uint32, uint32, uint32, uint32, bool))&Perl_Client_QuestReward);
|
|
package.add("ReadBook", &Perl_Client_ReadBook);
|
|
package.add("ReadBookByName", &Perl_Client_ReadBookByName);
|
|
package.add("RefundAA", &Perl_Client_RefundAA);
|
|
package.add("RemoveAllExpeditionLockouts", (void(*)(Client*))&Perl_Client_RemoveAllExpeditionLockouts);
|
|
package.add("RemoveAllExpeditionLockouts", (void(*)(Client*, std::string))&Perl_Client_RemoveAllExpeditionLockouts);
|
|
package.add("RemoveExpeditionLockout", &Perl_Client_RemoveExpeditionLockout);
|
|
package.add("RemoveFromInstance", &Perl_Client_RemoveFromInstance);
|
|
package.add("RemoveItem", (void(*)(Client*, uint32))&Perl_Client_RemoveItem);
|
|
package.add("RemoveItem", (void(*)(Client*, uint32, uint32))&Perl_Client_RemoveItem);
|
|
package.add("RemoveLDoNLoss", &Perl_Client_RemoveLDoNLoss);
|
|
package.add("RemoveLDoNWin", &Perl_Client_RemoveLDoNWin);
|
|
package.add("RemoveNoRent", &Perl_Client_RemoveNoRent);
|
|
package.add("ResetAA", &Perl_Client_ResetAA);
|
|
package.add("ResetAllDisciplineTimers", &Perl_Client_ResetAllDisciplineTimers);
|
|
package.add("ResetAllCastbarCooldowns", &Perl_Client_ResetAllCastbarCooldowns);
|
|
package.add("ResetCastbarCooldownBySlot", &Perl_Client_ResetCastbarCooldownBySlot);
|
|
package.add("ResetCastbarCooldownBySpellID", &Perl_Client_ResetCastbarCooldownBySpellID);
|
|
package.add("ResetDisciplineTimer", &Perl_Client_ResetDisciplineTimer);
|
|
package.add("ResetTrade", &Perl_Client_ResetTrade);
|
|
package.add("Save", &Perl_Client_Save);
|
|
package.add("SaveBackup", &Perl_Client_SaveBackup);
|
|
package.add("ScribeSpell", (void(*)(Client*, uint16, int))&Perl_Client_ScribeSpell);
|
|
package.add("ScribeSpell", (void(*)(Client*, uint16, int, bool))&Perl_Client_ScribeSpell);
|
|
package.add("ScribeSpells", &Perl_Client_ScribeSpells);
|
|
package.add("SendColoredText", &Perl_Client_SendColoredText);
|
|
package.add("SendMarqueeMessage", &Perl_Client_SendMarqueeMessage);
|
|
package.add("SendOPTranslocateConfirm", &Perl_Client_SendOPTranslocateConfirm);
|
|
package.add("SendPEQZoneFlagInfo", &Perl_Client_SendPEQZoneFlagInfo);
|
|
package.add("SendSound", &Perl_Client_SendSound);
|
|
package.add("SendSpellAnim", &Perl_Client_SendSpellAnim);
|
|
package.add("SendTargetCommand", &Perl_Client_SendTargetCommand);
|
|
package.add("SendToGuildHall", &Perl_Client_SendToGuildHall);
|
|
package.add("SendToInstance", &Perl_Client_SendToInstance);
|
|
package.add("SendWebLink", &Perl_Client_SendWebLink);
|
|
package.add("SendZoneFlagInfo", &Perl_Client_SendZoneFlagInfo);
|
|
package.add("SetAAEXPModifier", (void(*)(Client*, uint32, double))&Perl_Client_SetAAEXPModifier);
|
|
package.add("SetAAEXPModifier", (void(*)(Client*, uint32, double, int16))&Perl_Client_SetAAEXPModifier);
|
|
package.add("SetAAPoints", &Perl_Client_SetAAPoints);
|
|
package.add("SetAATitle", (void(*)(Client*, std::string))&Perl_Client_SetAATitle);
|
|
package.add("SetAATitle", (void(*)(Client*, std::string, bool))&Perl_Client_SetAATitle);
|
|
package.add("SetAFK", &Perl_Client_SetAFK);
|
|
package.add("SetAccountFlag", &Perl_Client_SetAccountFlag);
|
|
package.add("SetAlternateCurrencyValue", &Perl_Client_SetAlternateCurrencyValue);
|
|
package.add("SetAnon", &Perl_Client_SetAnon);
|
|
package.add("SetBaseClass", &Perl_Client_SetBaseClass);
|
|
package.add("SetBaseGender", &Perl_Client_SetBaseGender);
|
|
package.add("SetBaseRace", &Perl_Client_SetBaseRace);
|
|
package.add("SetBecomeNPC", &Perl_Client_SetBecomeNPC);
|
|
package.add("SetBecomeNPCLevel", &Perl_Client_SetBecomeNPCLevel);
|
|
package.add("SetBindPoint", (void(*)(Client*))&Perl_Client_SetBindPoint);
|
|
package.add("SetBindPoint", (void(*)(Client*, int))&Perl_Client_SetBindPoint);
|
|
package.add("SetBindPoint", (void(*)(Client*, int, int))&Perl_Client_SetBindPoint);
|
|
package.add("SetBindPoint", (void(*)(Client*, int, int, float))&Perl_Client_SetBindPoint);
|
|
package.add("SetBindPoint", (void(*)(Client*, int, int, float, float))&Perl_Client_SetBindPoint);
|
|
package.add("SetBindPoint", (void(*)(Client*, int, int, float, float, float))&Perl_Client_SetBindPoint);
|
|
package.add("SetBindPoint", (void(*)(Client*, int, int, float, float, float, float))&Perl_Client_SetBindPoint);
|
|
package.add("SetClientMaxLevel", &Perl_Client_SetClientMaxLevel);
|
|
package.add("SetConsumption", &Perl_Client_SetConsumption);
|
|
package.add("SetCustomItemData", &Perl_Client_SetCustomItemData);
|
|
package.add("SetDeity", &Perl_Client_SetDeity);
|
|
package.add("SetDuelTarget", &Perl_Client_SetDuelTarget);
|
|
package.add("SetDueling", &Perl_Client_SetDueling);
|
|
package.add("SetEXP", (void(*)(Client*, uint32, uint32))&Perl_Client_SetEXP);
|
|
package.add("SetEXP", (void(*)(Client*, uint32, uint32, bool))&Perl_Client_SetEXP);
|
|
package.add("SetEXPModifier", (void(*)(Client*, uint32, double))&Perl_Client_SetEXPModifier);
|
|
package.add("SetEXPModifier", (void(*)(Client*, uint32, double, int16))&Perl_Client_SetEXPModifier);
|
|
package.add("SetEbonCrystals", &Perl_Client_SetEbonCrystals);
|
|
package.add("SetEndurance", &Perl_Client_SetEndurance);
|
|
package.add("SetEnvironmentDamageModifier", &Perl_Client_SetEnvironmentDamageModifier);
|
|
package.add("SetFactionLevel", &Perl_Client_SetFactionLevel);
|
|
package.add("SetFactionLevel2", (void(*)(Client*, uint32, int32, uint8, uint8, uint8, int32))&Perl_Client_SetFactionLevel2);
|
|
package.add("SetFactionLevel2", (void(*)(Client*, uint32, int32, uint8, uint8, uint8, int32, uint8))&Perl_Client_SetFactionLevel2);
|
|
package.add("SetFeigned", &Perl_Client_SetFeigned);
|
|
package.add("SetGM", &Perl_Client_SetGM);
|
|
package.add("SetGMStatus", &Perl_Client_SetGMStatus);
|
|
package.add("SetHideMe", &Perl_Client_SetHideMe);
|
|
package.add("SetHorseId", &Perl_Client_SetHorseId);
|
|
package.add("SetHunger", &Perl_Client_SetHunger);
|
|
package.add("SetIPExemption", &Perl_Client_SetIPExemption);
|
|
package.add("SetInvulnerableEnvironmentDamage", &Perl_Client_SetInvulnerableEnvironmentDamage);
|
|
package.add("SetLanguageSkill", &Perl_Client_SetLanguageSkill);
|
|
package.add("SetMaterial", &Perl_Client_SetMaterial);
|
|
package.add("SetPEQZoneFlag", &Perl_Client_SetPEQZoneFlag);
|
|
package.add("SetPVP", &Perl_Client_SetPVP);
|
|
package.add("SetPrimaryWeaponOrnamentation", &Perl_Client_SetPrimaryWeaponOrnamentation);
|
|
package.add("SetRadiantCrystals", &Perl_Client_SetRadiantCrystals);
|
|
package.add("SetSecondaryWeaponOrnamentation", &Perl_Client_SetSecondaryWeaponOrnamentation);
|
|
package.add("SetSkill", &Perl_Client_SetSkill);
|
|
package.add("SetSkillPoints", &Perl_Client_SetSkillPoints);
|
|
package.add("SetStartZone", (void(*)(Client*, uint32))&Perl_Client_SetStartZone);
|
|
package.add("SetStartZone", (void(*)(Client*, uint32, float, float, float))&Perl_Client_SetStartZone);
|
|
package.add("SetStartZone", (void(*)(Client*, uint32, float, float, float, float))&Perl_Client_SetStartZone);
|
|
package.add("SetStats", &Perl_Client_SetStats);
|
|
package.add("SetThirst", &Perl_Client_SetThirst);
|
|
package.add("SetTint", &Perl_Client_SetTint);
|
|
package.add("SetTitleSuffix", (void(*)(Client*, std::string))&Perl_Client_SetTitleSuffix);
|
|
package.add("SetTitleSuffix", (void(*)(Client*, std::string, bool))&Perl_Client_SetTitleSuffix);
|
|
package.add("SetZoneFlag", &Perl_Client_SetZoneFlag);
|
|
package.add("SilentMessage", &Perl_Client_SilentMessage);
|
|
package.add("Sit", &Perl_Client_Sit);
|
|
package.add("SlotConvert2", &Perl_Client_SlotConvert2);
|
|
package.add("Stand", &Perl_Client_Stand);
|
|
package.add("SummonBaggedItems", &Perl_Client_SummonBaggedItems);
|
|
package.add("SummonItem", (void(*)(Client*, uint32))&Perl_Client_SummonItem);
|
|
package.add("SummonItem", (void(*)(Client*, uint32, int16))&Perl_Client_SummonItem);
|
|
package.add("SummonItem", (void(*)(Client*, uint32, int16, bool))&Perl_Client_SummonItem);
|
|
package.add("SummonItem", (void(*)(Client*, uint32, int16, bool, uint32))&Perl_Client_SummonItem);
|
|
package.add("SummonItem", (void(*)(Client*, uint32, int16, bool, uint32, uint32))&Perl_Client_SummonItem);
|
|
package.add("SummonItem", (void(*)(Client*, uint32, int16, bool, uint32, uint32, uint32))&Perl_Client_SummonItem);
|
|
package.add("SummonItem", (void(*)(Client*, uint32, int16, bool, uint32, uint32, uint32, uint32))&Perl_Client_SummonItem);
|
|
package.add("SummonItem", (void(*)(Client*, uint32, int16, bool, uint32, uint32, uint32, uint32, uint32))&Perl_Client_SummonItem);
|
|
package.add("SummonItem", (void(*)(Client*, uint32, int16, bool, uint32, uint32, uint32, uint32, uint32, uint16))&Perl_Client_SummonItem);
|
|
package.add("TGB", &Perl_Client_TGB);
|
|
package.add("TakeMoneyFromPP", (bool(*)(Client*, uint64_t))&Perl_Client_TakeMoneyFromPP);
|
|
package.add("TakeMoneyFromPP", (bool(*)(Client*, uint64_t, bool))&Perl_Client_TakeMoneyFromPP);
|
|
package.add("TakePlatinum", (bool(*)(Client*, uint32))&Perl_Client_TakePlatinum);
|
|
package.add("TakePlatinum", (bool(*)(Client*, uint32, bool))&Perl_Client_TakePlatinum);
|
|
package.add("TaskSelector", &Perl_Client_TaskSelector);
|
|
package.add("Thirsty", &Perl_Client_Thirsty);
|
|
package.add("TrainDiscBySpellID", &Perl_Client_TrainDiscBySpellID);
|
|
package.add("UnFreeze", &Perl_Client_UnFreeze);
|
|
package.add("Undye", &Perl_Client_Undye);
|
|
package.add("UnmemSpell", (void(*)(Client*, int))&Perl_Client_UnmemSpell);
|
|
package.add("UnmemSpell", (void(*)(Client*, int, bool))&Perl_Client_UnmemSpell);
|
|
package.add("UnmemSpellAll", (void(*)(Client*))&Perl_Client_UnmemSpellAll);
|
|
package.add("UnmemSpellAll", (void(*)(Client*, bool))&Perl_Client_UnmemSpellAll);
|
|
package.add("UnmemSpellBySpellID", &Perl_Client_UnmemSpellBySpellID);
|
|
package.add("UnscribeSpell", (void(*)(Client*, int))&Perl_Client_UnscribeSpell);
|
|
package.add("UnscribeSpell", (void(*)(Client*, int, bool))&Perl_Client_UnscribeSpell);
|
|
package.add("UnscribeSpellAll", (void(*)(Client*))&Perl_Client_UnscribeSpellAll);
|
|
package.add("UnscribeSpellAll", (void(*)(Client*, bool))&Perl_Client_UnscribeSpellAll);
|
|
package.add("UnscribeSpellBySpellID", (void(*)(Client*, uint16))&Perl_Client_UnscribeSpellBySpellID);
|
|
package.add("UnscribeSpellBySpellID", (void(*)(Client*, uint16, bool))&Perl_Client_UnscribeSpellBySpellID);
|
|
package.add("UntrainDisc", (void(*)(Client*, int))&Perl_Client_UntrainDisc);
|
|
package.add("UntrainDisc", (void(*)(Client*, int, bool))&Perl_Client_UntrainDisc);
|
|
package.add("UntrainDiscAll", (void(*)(Client*))&Perl_Client_UntrainDiscAll);
|
|
package.add("UntrainDiscAll", (void(*)(Client*, bool))&Perl_Client_UntrainDiscAll);
|
|
package.add("UntrainDiscBySpellID", (void(*)(Client*, uint16))&Perl_Client_UntrainDiscBySpellID);
|
|
package.add("UntrainDiscBySpellID", (void(*)(Client*, uint16, bool))&Perl_Client_UntrainDiscBySpellID);
|
|
package.add("UpdateAdmin", (void(*)(Client*))&Perl_Client_UpdateAdmin);
|
|
package.add("UpdateAdmin", (void(*)(Client*, bool))&Perl_Client_UpdateAdmin);
|
|
package.add("UpdateGroupAAs", &Perl_Client_UpdateGroupAAs);
|
|
package.add("UpdateLDoNPoints", &Perl_Client_UpdateLDoNPoints);
|
|
package.add("UpdateTaskActivity", (void(*)(Client*, int, int, int))&Perl_Client_UpdateTaskActivity);
|
|
package.add("UpdateTaskActivity", (void(*)(Client*, int, int, int, bool))&Perl_Client_UpdateTaskActivity);
|
|
package.add("UpdateWho", (void(*)(Client*))&Perl_Client_UpdateWho);
|
|
package.add("UpdateWho", (void(*)(Client*, uint8))&Perl_Client_UpdateWho);
|
|
package.add("UseDiscipline", &Perl_Client_UseDiscipline);
|
|
package.add("WorldKick", &Perl_Client_WorldKick);
|
|
}
|
|
|
|
#endif //EMBPERL_XS_CLASSES
|