ToA Zonepoint Patch
PostPosted: Sat Aug 14, 2010 12:43 am
I work currently on ToA and have fixed the Zonepoints for correct work
Now port an Player to right Realm and back of DB entry Realm i have it testet on ML9 and Cetus !
Here my changes:
Greetings Elcotek (Schnitte)
Now port an Player to right Realm and back of DB entry Realm i have it testet on ML9 and Cetus !
Here my changes:
- Code: Select all
namespace DOL.GS.PacketHandler.Client.v168
{
[PacketHandler(PacketHandlerType.TCP, eClientPackets.PlayerRegionChangeRequest, ClientStatus.PlayerInGame)]
public class PlayerRegionChangeRequestHandler : IPacketHandler
{
/// <summary>
/// Defines a logger for this class.
/// </summary>
private static readonly ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
/// <summary>
/// Holds jump point types
/// </summary>
protected readonly Hashtable m_instanceByName = new Hashtable();
#region IPacketHandler Members
public int HandlePacket(GameClient client, GSPacketIn packet)
{
ushort jumpSpotID = packet.ReadShort();
eRealm targetRealm = client.Player.Realm;
if (client.Player.CurrentRegion.Expansion == (int)eClientExpansion.TrialsOfAtlantis)
{
//Fixed by Elcotek now jump to rigth Realm ID from Zone DB testet on ML9 // if we are in TrialsOfAtlantis then base the target jump on the current region realm instead of the players realm
targetRealm = client.Player.Realm; //targetRealm = client.Player.CurrentZone.GetRealm();
}
var zonePoint =
GameServer.Database.SelectObject<ZonePoint>("`Id` = '" + jumpSpotID + "' AND (`Realm` = '" + (byte)targetRealm +
"' OR `Realm` = '0' OR `Realm` = NULL)");
if (zonePoint == null)
{
client.Out.SendMessage("Invalid Jump : [" + jumpSpotID + "]", eChatType.CT_System, eChatLoc.CL_SystemWindow);
return 1;
}
Greetings Elcotek (Schnitte)