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();
|
flushOutStream();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void logout() {
|
public void logout() {
|
||||||
|
logout(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void logout(boolean forceLogout) {
|
||||||
synchronized (this) {
|
synchronized (this) {
|
||||||
if(Server.trawler.players.contains(this)) {
|
if(Server.trawler.players.contains(this)) {
|
||||||
Server.trawler.players.remove(this);
|
Server.trawler.players.remove(this);
|
||||||
@@ -795,7 +799,7 @@ public class Client extends Player {
|
|||||||
PestControl.leaveWaitingBoat(this);
|
PestControl.leaveWaitingBoat(this);
|
||||||
getPlayerAssistant().movePlayer(2657, 2639, 0);
|
getPlayerAssistant().movePlayer(2657, 2639, 0);
|
||||||
}
|
}
|
||||||
if(underAttackBy > 0 || underAttackBy2 > 0) {
|
if(!forceLogout && (underAttackBy > 0 || underAttackBy2 > 0)) {
|
||||||
getActionSender().sendMessage("You can't logout during combat!");
|
getActionSender().sendMessage("You can't logout during combat!");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -807,7 +811,7 @@ public class Client extends Player {
|
|||||||
if (hasNpc == true) {
|
if (hasNpc == true) {
|
||||||
getSummon().pickUpClean(this, summonId);
|
getSummon().pickUpClean(this, summonId);
|
||||||
}
|
}
|
||||||
if (System.currentTimeMillis() - logoutDelay > 2500) {
|
if (forceLogout || System.currentTimeMillis() - logoutDelay > 2500) {
|
||||||
outStream.createFrame(109);
|
outStream.createFrame(109);
|
||||||
properLogout = true;
|
properLogout = true;
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -196,6 +196,28 @@ public class Commands implements PacketType {
|
|||||||
|
|
||||||
public static void moderatorCommands(Client player, String playerCommand, String[] arguments) {
|
public static void moderatorCommands(Client player, String playerCommand, String[] arguments) {
|
||||||
switch (playerCommand.toLowerCase()) {
|
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":
|
case "yell":
|
||||||
for (int j = 0; j < PlayerHandler.players.length; j++) {
|
for (int j = 0; j < PlayerHandler.players.length; j++) {
|
||||||
if (PlayerHandler.players[j] != null) {
|
if (PlayerHandler.players[j] != null) {
|
||||||
@@ -539,7 +561,7 @@ public class Commands implements PacketType {
|
|||||||
Client c2 = (Client)PlayerHandler.players[i];
|
Client c2 = (Client)PlayerHandler.players[i];
|
||||||
player.getActionSender().sendMessage("You have given " + playerToAdmin + " admin.");
|
player.getActionSender().sendMessage("You have given " + playerToAdmin + " admin.");
|
||||||
c2.playerRights = 2;
|
c2.playerRights = 2;
|
||||||
c2.logout();
|
c2.logout(true);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -561,7 +583,7 @@ public class Commands implements PacketType {
|
|||||||
Client c2 = (Client)PlayerHandler.players[i];
|
Client c2 = (Client)PlayerHandler.players[i];
|
||||||
player.getActionSender().sendMessage("You have demoted " + playerToAdmin + ".");
|
player.getActionSender().sendMessage("You have demoted " + playerToAdmin + ".");
|
||||||
c2.playerRights = 0;
|
c2.playerRights = 0;
|
||||||
c2.logout();
|
c2.logout(true);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -583,7 +605,7 @@ public class Commands implements PacketType {
|
|||||||
Client c2 = (Client)PlayerHandler.players[i];
|
Client c2 = (Client)PlayerHandler.players[i];
|
||||||
player.getActionSender().sendMessage("You have given " + playerToMod + " mod.");
|
player.getActionSender().sendMessage("You have given " + playerToMod + " mod.");
|
||||||
c2.playerRights = 1;
|
c2.playerRights = 1;
|
||||||
c2.logout();
|
c2.logout(true);
|
||||||
break;
|
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