mirror of
https://github.com/EQEmu/Server.git
synced 2026-05-17 03:08:26 +00:00
Merge branch 'master' into movement_manager
This commit is contained in:
+49
-5
@@ -2870,6 +2870,20 @@ XS(XS__GetInstanceID) {
|
||||
XSRETURN_UV(id);
|
||||
}
|
||||
|
||||
XS(XS__GetInstanceIDByCharID);
|
||||
XS(XS__GetInstanceIDByCharID) {
|
||||
dXSARGS;
|
||||
if (items != 3)
|
||||
Perl_croak(aTHX_ "Usage: quest::GetInstanceIDByCharID(string zone_name, uint16 version, uint32 char_id)");
|
||||
|
||||
char *zone = (char *) SvPV_nolen(ST(0));
|
||||
uint16 version = (int) SvUV(ST(1));
|
||||
uint32 char_id = (int) SvUV(ST(2));
|
||||
uint16 id = quest_manager.GetInstanceIDByCharID(zone, version, char_id);
|
||||
|
||||
XSRETURN_UV(id);
|
||||
}
|
||||
|
||||
XS(XS__GetCharactersInInstance);
|
||||
XS(XS__GetCharactersInInstance) {
|
||||
dXSARGS;
|
||||
@@ -2921,6 +2935,19 @@ XS(XS__AssignToInstance) {
|
||||
XSRETURN_EMPTY;
|
||||
}
|
||||
|
||||
XS(XS__AssignToInstanceByCharID);
|
||||
XS(XS__AssignToInstanceByCharID) {
|
||||
dXSARGS;
|
||||
if (items != 2)
|
||||
Perl_croak(aTHX_ "Usage: quest::AssignToInstanceByCharID(uint16 instance_id, uint32 char_id)");
|
||||
|
||||
uint16 instance_id = (int) SvUV(ST(0));
|
||||
uint32 char_id = (int) SvUV(ST(1));
|
||||
quest_manager.AssignToInstanceByCharID(instance_id, char_id);
|
||||
|
||||
XSRETURN_EMPTY;
|
||||
}
|
||||
|
||||
XS(XS__AssignGroupToInstance);
|
||||
XS(XS__AssignGroupToInstance) {
|
||||
dXSARGS;
|
||||
@@ -2957,6 +2984,19 @@ XS(XS__RemoveFromInstance) {
|
||||
XSRETURN_EMPTY;
|
||||
}
|
||||
|
||||
XS(XS__RemoveFromInstanceByCharID);
|
||||
XS(XS__RemoveFromInstanceByCharID) {
|
||||
dXSARGS;
|
||||
if (items != 2)
|
||||
Perl_croak(aTHX_ "Usage: quest::RemoveFromInstanceByCharID(uint16 instance_id, uint32 char_id)");
|
||||
|
||||
uint16 instance_id = (int) SvUV(ST(0));
|
||||
uint32 char_id = (int) SvUV(ST(1));
|
||||
quest_manager.RemoveFromInstanceByCharID(instance_id, char_id);
|
||||
|
||||
XSRETURN_EMPTY;
|
||||
}
|
||||
|
||||
XS(XS__RemoveAllFromInstance);
|
||||
XS(XS__RemoveAllFromInstance) {
|
||||
dXSARGS;
|
||||
@@ -3025,10 +3065,10 @@ XS(XS__saylink) {
|
||||
Perl_croak(aTHX_ "Usage: quest::saylink(string message, [bool silent = false], [link_name = message])");
|
||||
dXSTARG;
|
||||
|
||||
Const_char *RETVAL;
|
||||
char message[250];
|
||||
char link_name[250];
|
||||
bool silent = false;
|
||||
std::string RETVAL;
|
||||
char message[250];
|
||||
char link_name[250];
|
||||
bool silent = false;
|
||||
strcpy(message, (char *) SvPV_nolen(ST(0)));
|
||||
if (items >= 2) {
|
||||
silent = ((int) SvIV(ST(1))) == 0 ? false : true;
|
||||
@@ -3039,7 +3079,8 @@ XS(XS__saylink) {
|
||||
strcpy(link_name, message);
|
||||
|
||||
RETVAL = quest_manager.saylink(message, silent, link_name);
|
||||
sv_setpv(TARG, RETVAL);
|
||||
|
||||
sv_setpv(TARG, RETVAL.c_str());
|
||||
XSprePUSH;
|
||||
PUSHTARG;
|
||||
XSRETURN(1);
|
||||
@@ -3675,6 +3716,7 @@ EXTERN_C XS(boot_quest) {
|
||||
newXS(strcpy(buf, "AssignGroupToInstance"), XS__AssignGroupToInstance, file);
|
||||
newXS(strcpy(buf, "AssignRaidToInstance"), XS__AssignRaidToInstance, file);
|
||||
newXS(strcpy(buf, "AssignToInstance"), XS__AssignToInstance, file);
|
||||
newXS(strcpy(buf, "AssignToInstanceByCharID"), XS__AssignToInstanceByCharID, file);
|
||||
newXS(strcpy(buf, "ChooseRandom"), XS__ChooseRandom, file);
|
||||
newXS(strcpy(buf, "CreateInstance"), XS__CreateInstance, file);
|
||||
newXS(strcpy(buf, "DestroyInstance"), XS__DestroyInstance, file);
|
||||
@@ -3686,6 +3728,7 @@ EXTERN_C XS(boot_quest) {
|
||||
newXS(strcpy(buf, "FlyMode"), XS__FlyMode, file);
|
||||
newXS(strcpy(buf, "GetCharactersInInstance"), XS__GetCharactersInInstance, file);
|
||||
newXS(strcpy(buf, "GetInstanceID"), XS__GetInstanceID, file);
|
||||
newXS(strcpy(buf, "GetInstanceIDByCharID"), XS__GetInstanceIDByCharID, file);
|
||||
newXS(strcpy(buf, "GetSpellResistType"), XS__GetSpellResistType, file);
|
||||
newXS(strcpy(buf, "GetSpellTargetType"), XS__GetSpellTargetType, file);
|
||||
newXS(strcpy(buf, "GetTimeSeconds"), XS__GetTimeSeconds, file);
|
||||
@@ -3704,6 +3747,7 @@ EXTERN_C XS(boot_quest) {
|
||||
newXS(strcpy(buf, "MovePCInstance"), XS__MovePCInstance, file);
|
||||
newXS(strcpy(buf, "RemoveAllFromInstance"), XS__RemoveAllFromInstance, file);
|
||||
newXS(strcpy(buf, "RemoveFromInstance"), XS__RemoveFromInstance, file);
|
||||
newXS(strcpy(buf, "RemoveFromInstanceByCharID"), XS__RemoveFromInstanceByCharID, file);
|
||||
newXS(strcpy(buf, "SendMail"), XS__SendMail, file);
|
||||
newXS(strcpy(buf, "SetRunning"), XS__SetRunning, file);
|
||||
newXS(strcpy(buf, "activespeakactivity"), XS__activespeakactivity, file);
|
||||
|
||||
Reference in New Issue
Block a user