mirror of
https://github.com/EQEmu/Server.git
synced 2026-05-17 03:08:26 +00:00
[Quest API] Add XYZ/XYZH Overloads to Cross Zone Move Methods (#3581)
# Perl - Add `quest::crosszonemoveplayerbycharid(character_id, zone_short_name, x, y, z)`. - Add `quest::crosszonemoveplayerbycharid(character_id, zone_short_name, x, y, z, heading)`. - Add `quest::crosszonemoveplayerbygroupid(group_id, zone_short_name, x, y, z)`. - Add `quest::crosszonemoveplayerbygroupid(group_id, zone_short_name, x, y, z, heading)`. - Add `quest::crosszonemoveplayerbyraidid(raid_id, zone_short_name, x, y, z)`. - Add `quest::crosszonemoveplayerbyraidid(raid_id, zone_short_name, x, y, z, heading)`. - Add `quest::crosszonemoveplayerbyguildid(guild_id, zone_short_name, x, y, z)`. - Add `quest::crosszonemoveplayerbyguildid(guild_id, zone_short_name, x, y, z, heading)`. - Add `quest::crosszonemoveplayerbyexpeditionid(expedition_id, zone_short_name, x, y, z)`. - Add `quest::crosszonemoveplayerbyexpeditionid(expedition_id, zone_short_name, x, y, z, heading)`. - Add `quest::crosszonemoveplayerbyclientname(client_name, zone_short_name, x, y, z)`. - Add `quest::crosszonemoveplayerbyclientname(client_name, zone_short_name, x, y, z, heading)`. - Add `quest::crosszonemoveinstancebycharid(character_id, zone_short_name, x, y, z)`. - Add `quest::crosszonemoveinstancebycharid(character_id, zone_short_name, x, y, z, heading)`. - Add `quest::crosszonemoveinstancebygroupid(group_id, zone_short_name, x, y, z)`. - Add `quest::crosszonemoveinstancebygroupid(group_id, zone_short_name, x, y, z, heading)`. - Add `quest::crosszonemoveinstancebyraidid(raid_id, zone_short_name, x, y, z)`. - Add `quest::crosszonemoveinstancebyraidid(raid_id, zone_short_name, x, y, z, heading)`. - Add `quest::crosszonemoveinstancebyguildid(guild_id, zone_short_name, x, y, z)`. - Add `quest::crosszonemoveinstancebyguildid(guild_id, zone_short_name, x, y, z, heading)`. - Add `quest::crosszonemoveinstancebyexpeditionid(expedition_id, zone_short_name, x, y, z)`. - Add `quest::crosszonemoveinstancebyexpeditionid(expedition_id, zone_short_name, x, y, z, heading)`. - Add `quest::crosszonemoveinstancebyclientname(client_name, zone_short_name, x, y, z)`. - Add `quest::crosszonemoveinstancebyclientname(client_name, zone_short_name, x, y, z, heading)`. # Lua - Add `eq.cross_zone_move_player_by_char_id(character_id, zone_short_name, x, y, z)`. - Add `eq.cross_zone_move_player_by_char_id(character_id, zone_short_name, x, y, z, heading)`. - Add `eq.cross_zone_move_player_by_group_id(group_id, zone_short_name, x, y, z)`. - Add `eq.cross_zone_move_player_by_group_id(group_id, zone_short_name, x, y, z, heading)`. - Add `eq.cross_zone_move_player_by_raid_id(raid_id, zone_short_name, x, y, z)`. - Add `eq.cross_zone_move_player_by_raid_id(raid_id, zone_short_name, x, y, z, heading)`. - Add `eq.cross_zone_move_player_by_guild_id(guild_id, zone_short_name, x, y, z)`. - Add `eq.cross_zone_move_player_by_guild_id(guild_id, zone_short_name, x, y, z, heading)`. - Add `eq.cross_zone_move_player_by_expedition_id(expedition_id, zone_short_name, x, y, z)`. - Add `eq.cross_zone_move_player_by_expedition_id(expedition_id, zone_short_name, x, y, z, heading)`. - Add `eq.cross_zone_move_player_by_client_name(client_name, zone_short_name, x, y, z)`. - Add `eq.cross_zone_move_player_by_client_name(client_name, zone_short_name, x, y, z, heading)`. - Add `eq.cross_zone_move_instance_by_char_id(character_id, zone_short_name, x, y, z)`. - Add `eq.cross_zone_move_instance_by_char_id(character_id, zone_short_name, x, y, z, heading)`. - Add `eq.cross_zone_move_instance_by_group_id(group_id, zone_short_name, x, y, z)`. - Add `eq.cross_zone_move_instance_by_group_id(group_id, zone_short_name, x, y, z, heading)`. - Add `eq.cross_zone_move_instance_by_raid_id(raid_id, zone_short_name, x, y, z)`. - Add `eq.cross_zone_move_instance_by_raid_id(raid_id, zone_short_name, x, y, z, heading)`. - Add `eq.cross_zone_move_instance_by_guild_id(guild_id, zone_short_name, x, y, z)`. - Add `eq.cross_zone_move_instance_by_guild_id(guild_id, zone_short_name, x, y, z, heading)`. - Add `eq.cross_zone_move_instance_by_expedition_id(expedition_id, zone_short_name, x, y, z)`. - Add `eq.cross_zone_move_instance_by_expedition_id(expedition_id, zone_short_name, x, y, z, heading)`. - Add `eq.cross_zone_move_instance_by_client_name(client_name, zone_short_name, x, y, z)`. - Add `eq.cross_zone_move_instance_by_client_name(client_name, zone_short_name, x, y, z, heading)`. # Notes - Allows operators to send players to specific coordinates across zones instead of always sending to safe coordinates.
This commit is contained in:
+12
-7
@@ -1226,15 +1226,20 @@ void ConsoleCrossZoneMove(
|
||||
}
|
||||
|
||||
auto pack = new ServerPacket(ServerOP_CZMove, sizeof(CZMove_Struct));
|
||||
auto* CZM = (CZMove_Struct*) pack->pBuffer;
|
||||
auto m = (CZMove_Struct*) pack->pBuffer;
|
||||
|
||||
CZM->update_type = update_type;
|
||||
CZM->update_subtype = !instance_id ? CZMoveUpdateSubtype_MoveZone : CZMoveUpdateSubtype_MoveZoneInstance;
|
||||
CZM->update_identifier = update_identifier;
|
||||
CZM->instance_id = instance_id;
|
||||
if (!name.empty()) {
|
||||
m->client_name = name;
|
||||
}
|
||||
|
||||
strn0cpy(CZM->zone_short_name, zone_short_name.c_str(), sizeof(CZM->zone_short_name));
|
||||
strn0cpy(CZM->client_name, name.c_str(), sizeof(CZM->client_name));
|
||||
m->instance_id = instance_id;
|
||||
m->update_identifier = update_identifier;
|
||||
m->update_type = update_type;
|
||||
m->update_subtype = !instance_id ? CZMoveUpdateSubtype_MoveZone : CZMoveUpdateSubtype_MoveZoneInstance;
|
||||
|
||||
if (!zone_short_name.empty()) {
|
||||
m->zone_short_name = zone_short_name;
|
||||
}
|
||||
|
||||
zoneserver_list.SendPacket(pack);
|
||||
safe_delete(pack);
|
||||
|
||||
Reference in New Issue
Block a user