Addition of instant teleporting methods.
This commit is contained in:
		| @@ -26,7 +26,6 @@ import org.l2jmobius.gameserver.model.items.instance.ItemInstance; | ||||
| import org.l2jmobius.gameserver.model.skills.Skill; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation.FlyType; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation; | ||||
| import org.l2jmobius.gameserver.util.Util; | ||||
|  | ||||
| /** | ||||
| @@ -92,8 +91,6 @@ public class Blink extends AbstractEffect | ||||
| 		 | ||||
| 		effected.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE); | ||||
| 		effected.broadcastPacket(new FlyToLocation(effected, destination, _flyType, _flySpeed, _flyDelay, _animationSpeed)); | ||||
| 		effected.setXYZ(destination); | ||||
| 		effected.broadcastPacket(new ValidateLocation(effected)); | ||||
| 		effected.revalidateZone(true); | ||||
| 		effected.teleToLocationInstant(destination); | ||||
| 	} | ||||
| } | ||||
|   | ||||
| @@ -25,7 +25,6 @@ import org.l2jmobius.gameserver.model.items.instance.ItemInstance; | ||||
| import org.l2jmobius.gameserver.model.skills.Skill; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation.FlyType; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation; | ||||
|  | ||||
| /** | ||||
|  * This Blink effect switches the location of the caster and the target.<br> | ||||
| @@ -55,15 +54,12 @@ public class BlinkSwap extends AbstractEffect | ||||
| 		effector.broadcastPacket(new FlyToLocation(effector, effectedLoc, FlyType.DUMMY)); | ||||
| 		effector.abortAttack(); | ||||
| 		effector.abortCast(); | ||||
| 		effector.setXYZ(effectedLoc); | ||||
| 		effector.broadcastPacket(new ValidateLocation(effector)); | ||||
| 		effector.teleToLocationInstant(effectedLoc); | ||||
| 		 | ||||
| 		effected.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE); | ||||
| 		effected.broadcastPacket(new FlyToLocation(effected, effectorLoc, FlyType.DUMMY)); | ||||
| 		effected.abortAttack(); | ||||
| 		effected.abortCast(); | ||||
| 		effected.setXYZ(effectorLoc); | ||||
| 		effected.broadcastPacket(new ValidateLocation(effected)); | ||||
| 		effected.revalidateZone(true); | ||||
| 		effected.teleToLocationInstant(effectorLoc); | ||||
| 	} | ||||
| } | ||||
|   | ||||
| @@ -25,7 +25,6 @@ import org.l2jmobius.gameserver.model.items.instance.ItemInstance; | ||||
| import org.l2jmobius.gameserver.model.skills.Skill; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation.FlyType; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation; | ||||
|  | ||||
| /** | ||||
|  * Throw Up effect implementation. | ||||
| @@ -60,8 +59,6 @@ public class FlyAway extends AbstractEffect | ||||
| 		final Location destination = GeoEngine.getInstance().getValidLocation(effected.getX(), effected.getY(), effected.getZ(), x, y, z, effected.getInstanceWorld()); | ||||
| 		 | ||||
| 		effected.broadcastPacket(new FlyToLocation(effected, destination, FlyType.THROW_UP)); | ||||
| 		effected.setXYZ(destination); | ||||
| 		effected.broadcastPacket(new ValidateLocation(effected)); | ||||
| 		effected.revalidateZone(true); | ||||
| 		effected.teleToLocationInstant(destination); | ||||
| 	} | ||||
| } | ||||
|   | ||||
| @@ -41,7 +41,6 @@ import org.l2jmobius.gameserver.model.stats.Formulas; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.ExAlterSkillRequest; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation.FlyType; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation; | ||||
| import org.l2jmobius.gameserver.util.Util; | ||||
|  | ||||
| /** | ||||
| @@ -187,9 +186,7 @@ public class KnockBack extends AbstractEffect | ||||
| 			{ | ||||
| 				effected.setHeading(Util.calculateHeadingFrom(effected, effector)); | ||||
| 			} | ||||
| 			effected.setXYZ(loc); | ||||
| 			effected.broadcastPacket(new ValidateLocation(effected)); | ||||
| 			effected.revalidateZone(true); | ||||
| 			effected.teleToLocationInstant(loc); | ||||
| 			 | ||||
| 			World.getInstance().forEachVisibleObjectInRange(effected, PlayerInstance.class, 1200, nearby -> | ||||
| 			{ | ||||
|   | ||||
| @@ -25,7 +25,6 @@ import org.l2jmobius.gameserver.model.skills.Skill; | ||||
| import org.l2jmobius.gameserver.model.stats.Formulas; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation.FlyType; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation; | ||||
|  | ||||
| /** | ||||
|  * An effect that pulls effected target back to the effector. | ||||
| @@ -76,9 +75,7 @@ public class PullBack extends AbstractEffect | ||||
| 		if (GeoEngine.getInstance().canMoveToTarget(effected.getX(), effected.getY(), effected.getZ(), effector.getX(), effector.getY(), effector.getZ(), effected.getInstanceWorld())) | ||||
| 		{ | ||||
| 			effected.broadcastPacket(new FlyToLocation(effected, effector, _type, _speed, _delay, _animationSpeed)); | ||||
| 			effected.setXYZ(effector.getX(), effector.getY(), GeoEngine.getInstance().getHeight(effector.getX(), effector.getY(), effector.getZ()) + 10); | ||||
| 			effected.broadcastPacket(new ValidateLocation(effected), false); | ||||
| 			effected.revalidateZone(true); | ||||
| 			effected.teleToLocationInstant(effector.getX(), effector.getY(), GeoEngine.getInstance().getHeight(effector.getX(), effector.getY(), effector.getZ()) + 10); | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|   | ||||
| @@ -29,7 +29,6 @@ import org.l2jmobius.gameserver.model.items.instance.ItemInstance; | ||||
| import org.l2jmobius.gameserver.model.skills.Skill; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation.FlyType; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation; | ||||
|  | ||||
| /** | ||||
|  * Teleport player/party to summoned npc effect implementation. | ||||
| @@ -95,9 +94,7 @@ public class TeleportToNpc extends AbstractEffect | ||||
| 			effected.broadcastPacket(new FlyToLocation(effected, location, FlyType.DUMMY)); | ||||
| 			effected.abortAttack(); | ||||
| 			effected.abortCast(); | ||||
| 			effected.setXYZ(location); | ||||
| 			effected.broadcastPacket(new ValidateLocation(effected)); | ||||
| 			effected.revalidateZone(true); | ||||
| 			effected.teleToLocationInstant(location); | ||||
| 		} | ||||
| 		else | ||||
| 		{ | ||||
|   | ||||
| @@ -28,7 +28,6 @@ import org.l2jmobius.gameserver.model.items.instance.ItemInstance; | ||||
| import org.l2jmobius.gameserver.model.skills.Skill; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation.FlyType; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation; | ||||
| import org.l2jmobius.gameserver.util.Util; | ||||
|  | ||||
| /** | ||||
| @@ -87,14 +86,12 @@ public class TeleportToSummon extends AbstractEffect | ||||
| 		final int y = (int) (py + (25 * Math.sin(ph))); | ||||
| 		final int z = summon.getZ(); | ||||
| 		 | ||||
| 		final Location loc = GeoEngine.getInstance().getValidLocation(effector.getX(), effector.getY(), effector.getZ(), x, y, z,effector.getInstanceWorld()); | ||||
| 		final Location loc = GeoEngine.getInstance().getValidLocation(effector.getX(), effector.getY(), effector.getZ(), x, y, z, effector.getInstanceWorld()); | ||||
| 		 | ||||
| 		effector.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE); | ||||
| 		effector.broadcastPacket(new FlyToLocation(effector, loc.getX(), loc.getY(), loc.getZ(), FlyType.DUMMY)); | ||||
| 		effector.abortAttack(); | ||||
| 		effector.abortCast(); | ||||
| 		effector.setXYZ(loc); | ||||
| 		effector.broadcastPacket(new ValidateLocation(effector)); | ||||
| 		effected.revalidateZone(true); | ||||
| 		effector.teleToLocationInstant(loc); | ||||
| 	} | ||||
| } | ||||
|   | ||||
| @@ -27,7 +27,6 @@ import org.l2jmobius.gameserver.model.items.instance.ItemInstance; | ||||
| import org.l2jmobius.gameserver.model.skills.Skill; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.FlyToLocation.FlyType; | ||||
| import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation; | ||||
| import org.l2jmobius.gameserver.util.Util; | ||||
|  | ||||
| /** | ||||
| @@ -76,14 +75,12 @@ public class TeleportToTarget extends AbstractEffect | ||||
| 		final int y = (int) (py + (25 * Math.sin(ph))); | ||||
| 		final int z = effected.getZ(); | ||||
| 		 | ||||
| 		final Location loc = GeoEngine.getInstance().getValidLocation(effector.getX(), effector.getY(), effector.getZ(), x, y, z,effector.getInstanceWorld()); | ||||
| 		final Location loc = GeoEngine.getInstance().getValidLocation(effector.getX(), effector.getY(), effector.getZ(), x, y, z, effector.getInstanceWorld()); | ||||
| 		 | ||||
| 		effector.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE); | ||||
| 		effector.broadcastPacket(new FlyToLocation(effector, loc.getX(), loc.getY(), loc.getZ(), FlyType.DUMMY)); | ||||
| 		effector.abortAttack(); | ||||
| 		effector.abortCast(); | ||||
| 		effector.setXYZ(loc); | ||||
| 		effector.broadcastPacket(new ValidateLocation(effector)); | ||||
| 		effected.revalidateZone(true); | ||||
| 		effector.teleToLocationInstant(loc); | ||||
| 	} | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 MobiusDevelopment
					MobiusDevelopment