Guest User

Untitled

a guest
Jan 24th, 2019
277
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.03 KB | None | 0 0
  1. diff --git a/aCis_gameserver/java/net/sf/l2j/gameserver/handler/AdminCommandHandler.java b/aCis_gameserver/java/net/sf/l2j/gameserver/handler/AdminCommandHandler.java
  2. index 9ab431a..dcc00b6 100644
  3. --- a/aCis_gameserver/java/net/sf/l2j/gameserver/handler/AdminCommandHandler.java
  4. +++ b/aCis_gameserver/java/net/sf/l2j/gameserver/handler/AdminCommandHandler.java
  5. @@ -1,5 +1,7 @@
  6. package net.sf.l2j.gameserver.handler;
  7.  
  8. +import com.elfocrash.roboto.admincommands.AdminFakePlayers;
  9. +
  10. import java.util.HashMap;
  11. import java.util.Map;
  12.  
  13. @@ -103,6 +105,7 @@ protected AdminCommandHandler()
  14. registerAdminCommandHandler(new AdminTarget());
  15. registerAdminCommandHandler(new AdminTeleport());
  16. registerAdminCommandHandler(new AdminZone());
  17. + registerAdminCommandHandler(new AdminFakePlayers());
  18. }
  19.  
  20. public void registerAdminCommandHandler(IAdminCommandHandler handler)
  21. diff --git a/aCis_gameserver/java/net/sf/l2j/gameserver/handler/chathandlers/ChatTell.java b/aCis_gameserver/java/net/sf/l2j/gameserver/handler/chathandlers/ChatTell.java
  22. index ec1a8df..bd6823d 100644
  23. --- a/aCis_gameserver/java/net/sf/l2j/gameserver/handler/chathandlers/ChatTell.java
  24. +++ b/aCis_gameserver/java/net/sf/l2j/gameserver/handler/chathandlers/ChatTell.java
  25. @@ -1,5 +1,7 @@
  26. package net.sf.l2j.gameserver.handler.chathandlers;
  27.  
  28. +import com.elfocrash.roboto.FakePlayer;
  29. +
  30. import net.sf.l2j.gameserver.handler.IChatHandler;
  31. import net.sf.l2j.gameserver.model.BlockList;
  32. import net.sf.l2j.gameserver.model.World;
  33. @@ -21,7 +23,7 @@ public void handleChat(int type, Player activeChar, String target, String text)
  34. return;
  35.  
  36. final Player receiver = World.getInstance().getPlayer(target);
  37. - if (receiver == null || receiver.getClient().isDetached())
  38. + if (receiver == null || receiver.getClient().isDetached() && !(receiver instanceof FakePlayer))
  39. {
  40. activeChar.sendPacket(SystemMessageId.TARGET_IS_NOT_FOUND_IN_THE_GAME);
  41. return;
  42. diff --git a/aCis_gameserver/java/net/sf/l2j/gameserver/model/actor/instance/Player.java b/aCis_gameserver/java/net/sf/l2j/gameserver/model/actor/instance/Player.java
  43. index a1872b7..331fba0 100644
  44. --- a/aCis_gameserver/java/net/sf/l2j/gameserver/model/actor/instance/Player.java
  45. +++ b/aCis_gameserver/java/net/sf/l2j/gameserver/model/actor/instance/Player.java
  46. @@ -1,5 +1,7 @@
  47. package net.sf.l2j.gameserver.model.actor.instance;
  48.  
  49. +import com.elfocrash.roboto.FakePlayer;
  50. +
  51. import java.sql.Connection;
  52. import java.sql.PreparedStatement;
  53. import java.sql.ResultSet;
  54. @@ -244,8 +246,22 @@
  55. * This class represents a player in the world.<br>
  56. * There is always a client-thread connected to this (except if a player-store is activated upon logout).
  57. */
  58. -public final class Player extends Playable
  59. +public class Player extends Playable
  60. {
  61. + private FakePlayer _fakePlayerUnderControl = null;
  62. +
  63. + public boolean isControllingFakePlayer() {
  64. + return _fakePlayerUnderControl != null;
  65. + }
  66. +
  67. + public FakePlayer getPlayerUnderControl() {
  68. + return _fakePlayerUnderControl;
  69. + }
  70. +
  71. + public void setPlayerUnderControl(FakePlayer fakePlayer) {
  72. + _fakePlayerUnderControl = fakePlayer;
  73. + }
  74. +
  75. public enum StoreType
  76. {
  77. NONE(0),
  78. @@ -590,7 +606,7 @@ public String string()
  79. * @param accountName The name of the account including this Player
  80. * @param app The PcAppearance of the Player
  81. */
  82. - private Player(int objectId, PlayerTemplate template, String accountName, PcAppearance app)
  83. + protected Player(int objectId, PlayerTemplate template, String accountName, PcAppearance app)
  84. {
  85. super(objectId, template);
  86.  
  87. @@ -611,7 +627,7 @@ private Player(int objectId, PlayerTemplate template, String accountName, PcAppe
  88. getFreight();
  89. }
  90.  
  91. - private Player(int objectId)
  92. + protected Player(int objectId)
  93. {
  94. super(objectId, null);
  95.  
  96. @@ -10001,7 +10017,7 @@ private void restoreFriendList()
  97. }
  98. }
  99.  
  100. - private void notifyFriends(boolean login)
  101. + protected void notifyFriends(boolean login)
  102. {
  103. for (int id : _friendList)
  104. {
  105. diff --git a/aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/MoveBackwardToLocation.java b/aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/MoveBackwardToLocation.java
  106. index d0e4ef3..1f82e68 100644
  107. --- a/aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/MoveBackwardToLocation.java
  108. +++ b/aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/MoveBackwardToLocation.java
  109. @@ -1,5 +1,7 @@
  110. package net.sf.l2j.gameserver.network.clientpackets;
  111.  
  112. +import com.elfocrash.roboto.FakePlayer;
  113. +
  114. import java.nio.BufferUnderflowException;
  115.  
  116. import net.sf.l2j.Config;
  117. @@ -87,6 +89,13 @@ protected void runImpl()
  118. return;
  119. }
  120.  
  121. + if(activeChar.isControllingFakePlayer()) {
  122. + FakePlayer fakePlayer = activeChar.getPlayerUnderControl();
  123. + activeChar.sendPacket(ActionFailed.STATIC_PACKET);
  124. + fakePlayer.getAI().setIntention(CtrlIntention.MOVE_TO, new Location(_targetX, _targetY, _targetZ));
  125. + return;
  126. + }
  127. +
  128. double dx = _targetX - _originX;
  129. double dy = _targetY - _originY;
Advertisement
Add Comment
Please, Sign In to add comment