mirror of
https://github.com/2006-Scape/2006Scape.git
synced 2026-07-03 00:31:51 +00:00
Add kick command, and force logout function (#154)
* Fix local Parabot instructions * Add kick command, and force logout function
This commit is contained in:
@@ -759,8 +759,12 @@ public class Client extends Player {
|
||||
flushOutStream();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void logout() {
|
||||
logout(false);
|
||||
}
|
||||
|
||||
public void logout(boolean forceLogout) {
|
||||
synchronized (this) {
|
||||
if(Server.trawler.players.contains(this)) {
|
||||
Server.trawler.players.remove(this);
|
||||
@@ -795,7 +799,7 @@ public class Client extends Player {
|
||||
PestControl.leaveWaitingBoat(this);
|
||||
getPlayerAssistant().movePlayer(2657, 2639, 0);
|
||||
}
|
||||
if(underAttackBy > 0 || underAttackBy2 > 0) {
|
||||
if(!forceLogout && (underAttackBy > 0 || underAttackBy2 > 0)) {
|
||||
getActionSender().sendMessage("You can't logout during combat!");
|
||||
return;
|
||||
}
|
||||
@@ -807,7 +811,7 @@ public class Client extends Player {
|
||||
if (hasNpc == true) {
|
||||
getSummon().pickUpClean(this, summonId);
|
||||
}
|
||||
if (System.currentTimeMillis() - logoutDelay > 2500) {
|
||||
if (forceLogout || System.currentTimeMillis() - logoutDelay > 2500) {
|
||||
outStream.createFrame(109);
|
||||
properLogout = true;
|
||||
} else {
|
||||
|
||||
@@ -196,6 +196,28 @@ public class Commands implements PacketType {
|
||||
|
||||
public static void moderatorCommands(Client player, String playerCommand, String[] arguments) {
|
||||
switch (playerCommand.toLowerCase()) {
|
||||
case "kick":
|
||||
try {
|
||||
if (arguments.length == 0) {
|
||||
player.getActionSender().sendMessage("You must specify a player name: ::kick playername");
|
||||
return;
|
||||
}
|
||||
String playerToKick = String.join(" ", arguments);
|
||||
for(Player player2 : PlayerHandler.players) {
|
||||
if(player2 != null) {
|
||||
if(player2.playerName.equalsIgnoreCase(playerToKick)) {
|
||||
Client c2 = (Client)player2;
|
||||
player.getActionSender().sendMessage("You have kicked " + playerToKick + ".");
|
||||
c2.disconnected = true;
|
||||
c2.logout(true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch(Exception e) {
|
||||
player.getActionSender().sendMessage("Player Must Be Online.");
|
||||
}
|
||||
break;
|
||||
case "yell":
|
||||
for (int j = 0; j < PlayerHandler.players.length; j++) {
|
||||
if (PlayerHandler.players[j] != null) {
|
||||
@@ -539,7 +561,7 @@ public class Commands implements PacketType {
|
||||
Client c2 = (Client)PlayerHandler.players[i];
|
||||
player.getActionSender().sendMessage("You have given " + playerToAdmin + " admin.");
|
||||
c2.playerRights = 2;
|
||||
c2.logout();
|
||||
c2.logout(true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -561,7 +583,7 @@ public class Commands implements PacketType {
|
||||
Client c2 = (Client)PlayerHandler.players[i];
|
||||
player.getActionSender().sendMessage("You have demoted " + playerToAdmin + ".");
|
||||
c2.playerRights = 0;
|
||||
c2.logout();
|
||||
c2.logout(true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -583,7 +605,7 @@ public class Commands implements PacketType {
|
||||
Client c2 = (Client)PlayerHandler.players[i];
|
||||
player.getActionSender().sendMessage("You have given " + playerToMod + " mod.");
|
||||
c2.playerRights = 1;
|
||||
c2.logout();
|
||||
c2.logout(true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user