Addition of teleToLocation method.
This commit is contained in:
@@ -48,7 +48,6 @@ import org.l2jmobius.gameserver.network.serverpackets.LeaveWorld;
|
|||||||
import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUser;
|
import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUser;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
|
import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.StatusUpdate;
|
import org.l2jmobius.gameserver.network.serverpackets.StatusUpdate;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.TeleportToLocation;
|
|
||||||
import org.l2jmobius.gameserver.templates.Npc;
|
import org.l2jmobius.gameserver.templates.Npc;
|
||||||
|
|
||||||
public class AdminCommands extends Thread
|
public class AdminCommands extends Thread
|
||||||
@@ -476,11 +475,7 @@ public class AdminCommands extends Thread
|
|||||||
final int y = Integer.parseInt(y1);
|
final int y = Integer.parseInt(y1);
|
||||||
final String z1 = st.nextToken();
|
final String z1 = st.nextToken();
|
||||||
final int z = Integer.parseInt(z1);
|
final int z = Integer.parseInt(z1);
|
||||||
final TeleportToLocation tele = new TeleportToLocation(activeChar, x, y, z);
|
activeChar.teleToLocation(x, y, z);
|
||||||
activeChar.sendPacket(tele);
|
|
||||||
activeChar.setX(x);
|
|
||||||
activeChar.setY(y);
|
|
||||||
activeChar.setZ(z);
|
|
||||||
activeChar.sendMessage("You have been teleported to " + coords);
|
activeChar.sendMessage("You have been teleported to " + coords);
|
||||||
showMainPage(client);
|
showMainPage(client);
|
||||||
}
|
}
|
||||||
@@ -869,11 +864,7 @@ public class AdminCommands extends Thread
|
|||||||
final String z1 = st.nextToken();
|
final String z1 = st.nextToken();
|
||||||
final int z = Integer.parseInt(z1);
|
final int z = Integer.parseInt(z1);
|
||||||
player.sendMessage("Admin is teleporting you.");
|
player.sendMessage("Admin is teleporting you.");
|
||||||
final TeleportToLocation tele = new TeleportToLocation(player, x, y, z);
|
player.teleToLocation(x, y, z);
|
||||||
player.sendPacket(tele);
|
|
||||||
player.setX(x);
|
|
||||||
player.setY(y);
|
|
||||||
player.setZ(z);
|
|
||||||
activeChar.sendMessage("Character " + player.getName() + " teleported to " + x + " " + y + " " + z);
|
activeChar.sendMessage("Character " + player.getName() + " teleported to " + x + " " + y + " " + z);
|
||||||
}
|
}
|
||||||
showMainPage(client);
|
showMainPage(client);
|
||||||
@@ -889,14 +880,7 @@ public class AdminCommands extends Thread
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
final int x = player.getX();
|
player.teleToLocation(player.getX(), player.getY(), player.getZ());
|
||||||
final int y = player.getY();
|
|
||||||
final int z = player.getZ();
|
|
||||||
final TeleportToLocation tele = new TeleportToLocation(activeChar, x, y, z);
|
|
||||||
activeChar.sendPacket(tele);
|
|
||||||
activeChar.setX(x);
|
|
||||||
activeChar.setY(y);
|
|
||||||
activeChar.setZ(z);
|
|
||||||
activeChar.sendMessage("You have teleported to character " + player.getName() + ".");
|
activeChar.sendMessage("You have teleported to character " + player.getName() + ".");
|
||||||
}
|
}
|
||||||
showMainPage(client);
|
showMainPage(client);
|
||||||
|
@@ -21,14 +21,12 @@ import org.l2jmobius.gameserver.data.MapRegionTable;
|
|||||||
import org.l2jmobius.gameserver.data.SkillTable;
|
import org.l2jmobius.gameserver.data.SkillTable;
|
||||||
import org.l2jmobius.gameserver.handler.IItemHandler;
|
import org.l2jmobius.gameserver.handler.IItemHandler;
|
||||||
import org.l2jmobius.gameserver.model.Skill;
|
import org.l2jmobius.gameserver.model.Skill;
|
||||||
import org.l2jmobius.gameserver.model.World;
|
|
||||||
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
|
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
|
||||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.ActionFailed;
|
import org.l2jmobius.gameserver.network.serverpackets.ActionFailed;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUser;
|
import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUser;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.SetupGauge;
|
import org.l2jmobius.gameserver.network.serverpackets.SetupGauge;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.StopMove;
|
import org.l2jmobius.gameserver.network.serverpackets.StopMove;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.TeleportToLocation;
|
|
||||||
|
|
||||||
public class ScrollOfEscape implements IItemHandler
|
public class ScrollOfEscape implements IItemHandler
|
||||||
{
|
{
|
||||||
@@ -64,22 +62,7 @@ public class ScrollOfEscape implements IItemHandler
|
|||||||
activeChar.broadcastPacket(sm);
|
activeChar.broadcastPacket(sm);
|
||||||
final ActionFailed af = new ActionFailed();
|
final ActionFailed af = new ActionFailed();
|
||||||
activeChar.sendPacket(af);
|
activeChar.sendPacket(af);
|
||||||
World.getInstance().removeVisibleObject(activeChar);
|
activeChar.teleToLocation(townCords[0], townCords[1], townCords[2]);
|
||||||
activeChar.removeAllKnownObjects();
|
|
||||||
final TeleportToLocation teleport = new TeleportToLocation(activeChar, townCords[0], townCords[1], townCords[2]);
|
|
||||||
activeChar.sendPacket(teleport);
|
|
||||||
activeChar.broadcastPacket(teleport);
|
|
||||||
activeChar.setX(townCords[0]);
|
|
||||||
activeChar.setY(townCords[1]);
|
|
||||||
activeChar.setZ(townCords[2]);
|
|
||||||
try
|
|
||||||
{
|
|
||||||
Thread.sleep(2000L);
|
|
||||||
}
|
|
||||||
catch (InterruptedException e)
|
|
||||||
{
|
|
||||||
// empty catch block
|
|
||||||
}
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -45,6 +45,7 @@ import org.l2jmobius.gameserver.network.serverpackets.SocialAction;
|
|||||||
import org.l2jmobius.gameserver.network.serverpackets.StatusUpdate;
|
import org.l2jmobius.gameserver.network.serverpackets.StatusUpdate;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.StopMove;
|
import org.l2jmobius.gameserver.network.serverpackets.StopMove;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||||
|
import org.l2jmobius.gameserver.network.serverpackets.TeleportToLocation;
|
||||||
import org.l2jmobius.gameserver.templates.Weapon;
|
import org.l2jmobius.gameserver.templates.Weapon;
|
||||||
import org.l2jmobius.util.Rnd;
|
import org.l2jmobius.util.Rnd;
|
||||||
|
|
||||||
@@ -1552,4 +1553,23 @@ public abstract class Creature extends WorldObject
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void teleToLocation(int x, int y, int z)
|
||||||
|
{
|
||||||
|
final TeleportToLocation teleportToLocation = new TeleportToLocation(this, x, y, z);
|
||||||
|
sendPacket(teleportToLocation);
|
||||||
|
broadcastPacket(teleportToLocation);
|
||||||
|
World.getInstance().removeVisibleObject(this);
|
||||||
|
removeAllKnownObjects();
|
||||||
|
setX(x);
|
||||||
|
setY(y);
|
||||||
|
setZ(z);
|
||||||
|
try
|
||||||
|
{
|
||||||
|
Thread.sleep(2000);
|
||||||
|
}
|
||||||
|
catch (InterruptedException e)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
World.getInstance().addVisibleObject(this);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1834,7 +1834,8 @@ public class PlayerInstance extends Creature
|
|||||||
// TODO: Check for more?
|
// TODO: Check for more?
|
||||||
if (((regionX == 18) && (regionY == 19)) // School of Dark Arts
|
if (((regionX == 18) && (regionY == 19)) // School of Dark Arts
|
||||||
|| ((regionX == 18) && (regionY == 23)) // Forgotten Temple
|
|| ((regionX == 18) && (regionY == 23)) // Forgotten Temple
|
||||||
|| ((regionX == 19) && (regionY == 23)) // Ant Nest
|
|| ((regionX == 19) && (regionY == 23)) // Wastelands - Ant Nest
|
||||||
|
|| ((regionX == 19) && (regionY == 24)) // Wastelands - Southern Entrance
|
||||||
|| ((regionX == 20) && (regionY == 18)) // Dark Elf Village
|
|| ((regionX == 20) && (regionY == 18)) // Dark Elf Village
|
||||||
|| ((regionX == 20) && (regionY == 21)) // Cruma Tower
|
|| ((regionX == 20) && (regionY == 21)) // Cruma Tower
|
||||||
|| ((regionX == 21) && (regionY == 18)) // Sea of Spores
|
|| ((regionX == 21) && (regionY == 18)) // Sea of Spores
|
||||||
|
@@ -21,10 +21,8 @@ import java.util.logging.Logger;
|
|||||||
|
|
||||||
import org.l2jmobius.gameserver.data.TeleportLocationTable;
|
import org.l2jmobius.gameserver.data.TeleportLocationTable;
|
||||||
import org.l2jmobius.gameserver.model.TeleportLocation;
|
import org.l2jmobius.gameserver.model.TeleportLocation;
|
||||||
import org.l2jmobius.gameserver.model.World;
|
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.ActionFailed;
|
import org.l2jmobius.gameserver.network.serverpackets.ActionFailed;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.TeleportToLocation;
|
|
||||||
import org.l2jmobius.gameserver.templates.Npc;
|
import org.l2jmobius.gameserver.templates.Npc;
|
||||||
|
|
||||||
public class TeleporterInstance extends NpcInstance
|
public class TeleporterInstance extends NpcInstance
|
||||||
@@ -69,21 +67,7 @@ public class TeleporterInstance extends NpcInstance
|
|||||||
if (player.getAdena() >= list.getPrice())
|
if (player.getAdena() >= list.getPrice())
|
||||||
{
|
{
|
||||||
player.reduceAdena(list.getPrice());
|
player.reduceAdena(list.getPrice());
|
||||||
final TeleportToLocation Tloc = new TeleportToLocation(player, list.getLocX(), list.getLocY(), list.getLocZ());
|
player.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ());
|
||||||
player.sendPacket(Tloc);
|
|
||||||
World.getInstance().removeVisibleObject(player);
|
|
||||||
player.removeAllKnownObjects();
|
|
||||||
player.setX(list.getLocX());
|
|
||||||
player.setY(list.getLocY());
|
|
||||||
player.setZ(list.getLocZ());
|
|
||||||
try
|
|
||||||
{
|
|
||||||
Thread.sleep(2000L);
|
|
||||||
}
|
|
||||||
catch (InterruptedException e)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
World.getInstance().addVisibleObject(player);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@@ -32,7 +32,6 @@ import org.l2jmobius.gameserver.network.serverpackets.Die;
|
|||||||
import org.l2jmobius.gameserver.network.serverpackets.ItemList;
|
import org.l2jmobius.gameserver.network.serverpackets.ItemList;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.ShortCutInit;
|
import org.l2jmobius.gameserver.network.serverpackets.ShortCutInit;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.TeleportToLocation;
|
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||||
|
|
||||||
public class EnterWorld extends ClientBasePacket
|
public class EnterWorld extends ClientBasePacket
|
||||||
@@ -98,20 +97,7 @@ public class EnterWorld extends ClientBasePacket
|
|||||||
if (activeChar.getZ() < -16000)
|
if (activeChar.getZ() < -16000)
|
||||||
{
|
{
|
||||||
final int[] townCords = MapRegionTable.getInstance().getClosestTownCords(activeChar);
|
final int[] townCords = MapRegionTable.getInstance().getClosestTownCords(activeChar);
|
||||||
activeChar.sendPacket(new TeleportToLocation(activeChar, townCords[0], townCords[1], townCords[2]));
|
activeChar.teleToLocation(townCords[0], townCords[1], townCords[2]);
|
||||||
World.getInstance().removeVisibleObject(activeChar);
|
|
||||||
activeChar.removeAllKnownObjects();
|
|
||||||
activeChar.setX(townCords[0]);
|
|
||||||
activeChar.setY(townCords[1]);
|
|
||||||
activeChar.setZ(townCords[2]);
|
|
||||||
try
|
|
||||||
{
|
|
||||||
Thread.sleep(2000L);
|
|
||||||
}
|
|
||||||
catch (InterruptedException e)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
World.getInstance().addVisibleObject(activeChar);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Water check.
|
// Water check.
|
||||||
|
@@ -18,7 +18,6 @@
|
|||||||
package org.l2jmobius.gameserver.network.clientpackets;
|
package org.l2jmobius.gameserver.network.clientpackets;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.CreatureState;
|
import org.l2jmobius.gameserver.enums.CreatureState;
|
||||||
import org.l2jmobius.gameserver.model.World;
|
|
||||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||||
import org.l2jmobius.gameserver.network.ClientThread;
|
import org.l2jmobius.gameserver.network.ClientThread;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.ActionFailed;
|
import org.l2jmobius.gameserver.network.serverpackets.ActionFailed;
|
||||||
@@ -58,10 +57,6 @@ public class MoveBackwardToLocation extends ClientBasePacket
|
|||||||
activeChar.setZ(originZ);
|
activeChar.setZ(originZ);
|
||||||
activeChar.moveTo(targetX, targetY, targetZ, 0);
|
activeChar.moveTo(targetX, targetY, targetZ, 0);
|
||||||
|
|
||||||
final int x = ((activeChar.getX() - World.MAP_MIN_X) >> 15) + World.TILE_X_MIN;
|
|
||||||
final int y = ((activeChar.getY() - World.MAP_MIN_Y) >> 15) + World.TILE_Y_MIN;
|
|
||||||
System.out.println(x + " " + y);
|
|
||||||
|
|
||||||
// Water check.
|
// Water check.
|
||||||
activeChar.checkWaterState();
|
activeChar.checkWaterState();
|
||||||
}
|
}
|
||||||
|
@@ -20,7 +20,6 @@ package org.l2jmobius.gameserver.network.clientpackets;
|
|||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.data.MapRegionTable;
|
import org.l2jmobius.gameserver.data.MapRegionTable;
|
||||||
import org.l2jmobius.gameserver.model.World;
|
|
||||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||||
import org.l2jmobius.gameserver.network.ClientThread;
|
import org.l2jmobius.gameserver.network.ClientThread;
|
||||||
import org.l2jmobius.gameserver.network.Connection;
|
import org.l2jmobius.gameserver.network.Connection;
|
||||||
@@ -28,7 +27,6 @@ import org.l2jmobius.gameserver.network.serverpackets.ActionFailed;
|
|||||||
import org.l2jmobius.gameserver.network.serverpackets.Revive;
|
import org.l2jmobius.gameserver.network.serverpackets.Revive;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.SocialAction;
|
import org.l2jmobius.gameserver.network.serverpackets.SocialAction;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.StopMove;
|
import org.l2jmobius.gameserver.network.serverpackets.StopMove;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.TeleportToLocation;
|
|
||||||
|
|
||||||
public class RequestRestartPoint extends ClientBasePacket
|
public class RequestRestartPoint extends ClientBasePacket
|
||||||
{
|
{
|
||||||
@@ -45,25 +43,10 @@ public class RequestRestartPoint extends ClientBasePacket
|
|||||||
final ActionFailed actionFailed = new ActionFailed();
|
final ActionFailed actionFailed = new ActionFailed();
|
||||||
con.sendPacket(actionFailed);
|
con.sendPacket(actionFailed);
|
||||||
activeChar.broadcastPacket(stopMove);
|
activeChar.broadcastPacket(stopMove);
|
||||||
final TeleportToLocation teleport = new TeleportToLocation(activeChar, townCords[0], townCords[1], townCords[2]);
|
activeChar.teleToLocation(townCords[0], townCords[1], townCords[2]);
|
||||||
activeChar.sendPacket(teleport);
|
|
||||||
World.getInstance().removeVisibleObject(activeChar);
|
|
||||||
activeChar.removeAllKnownObjects();
|
|
||||||
activeChar.setX(townCords[0]);
|
|
||||||
activeChar.setY(townCords[1]);
|
|
||||||
activeChar.setZ(townCords[2]);
|
|
||||||
activeChar.setCurrentHp(0.6 * activeChar.getMaxHp());
|
activeChar.setCurrentHp(0.6 * activeChar.getMaxHp());
|
||||||
activeChar.setCurrentMp(0.6 * activeChar.getMaxMp());
|
activeChar.setCurrentMp(0.6 * activeChar.getMaxMp());
|
||||||
final Revive revive = new Revive(activeChar);
|
final Revive revive = new Revive(activeChar);
|
||||||
try
|
|
||||||
{
|
|
||||||
Thread.sleep(2000L);
|
|
||||||
}
|
|
||||||
catch (InterruptedException e)
|
|
||||||
{
|
|
||||||
// empty catch block
|
|
||||||
}
|
|
||||||
World.getInstance().addVisibleObject(activeChar);
|
|
||||||
final SocialAction sa = new SocialAction(activeChar.getObjectId(), 15);
|
final SocialAction sa = new SocialAction(activeChar.getObjectId(), 15);
|
||||||
activeChar.broadcastPacket(sa);
|
activeChar.broadcastPacket(sa);
|
||||||
activeChar.sendPacket(sa);
|
activeChar.sendPacket(sa);
|
||||||
|
@@ -46,11 +46,6 @@ public class ValidatePosition extends ClientBasePacket
|
|||||||
final PlayerInstance activeChar = client.getActiveChar();
|
final PlayerInstance activeChar = client.getActiveChar();
|
||||||
if (activeChar != null)
|
if (activeChar != null)
|
||||||
{
|
{
|
||||||
// Connection con = client.getConnection();
|
|
||||||
// int realX = activeChar.getX();
|
|
||||||
// int realY = activeChar.getY();
|
|
||||||
// int realZ = activeChar.getZ();
|
|
||||||
// int realHeading = activeChar.getHeading();
|
|
||||||
activeChar.setZ(z);
|
activeChar.setZ(z);
|
||||||
activeChar.updateKnownCounter = (byte) (activeChar.updateKnownCounter + 1);
|
activeChar.updateKnownCounter = (byte) (activeChar.updateKnownCounter + 1);
|
||||||
if (activeChar.updateKnownCounter > 3)
|
if (activeChar.updateKnownCounter > 3)
|
||||||
|
Reference in New Issue
Block a user