Update Commands (#280)

* Show commands in interface

* Update players command, add playershops command

* Remove null command

* Update Commands.class
This commit is contained in:
Danial
2019-12-13 13:36:18 +13:00
committed by Josh Shippam
parent f39993e3d9
commit 9b160452ad
5 changed files with 82 additions and 17 deletions
@@ -13,7 +13,7 @@ import com.rebotted.world.GlobalDropsHandler;
public class PlayerHandler {
public static Player players[] = new Player[GameConstants.MAX_PLAYERS];
public static int playerCount = 0, playerBotCount = 0;
public static int playerCount = 0, playerShopCount = 0;
public static String playersCurrentlyOn[] = new String[GameConstants.MAX_PLAYERS];
public static boolean updateAnnounced;
public static boolean updateRunning;
@@ -54,18 +54,18 @@ public class PlayerHandler {
return playerCount;
}
public static int getPlayerBotCount() {
return playerBotCount;
public static int getPlayerShopCount() {
return playerShopCount;
}
public void updatePlayerNames() {
playerBotCount = 0;
playerShopCount = 0;
playerCount = 0;
for (int i = 0; i < GameConstants.MAX_PLAYERS; i++) {
if (players[i] != null) {
playersCurrentlyOn[i] = players[i].playerName;
if (players[i].isBot)
playerBotCount++;
playerShopCount++;
else
playerCount++;
} else {
@@ -14,6 +14,7 @@ import com.rebotted.game.players.*;
import com.rebotted.net.packets.PacketType;
import com.rebotted.util.Misc;
import com.rebotted.world.clip.Region;
import org.apollo.jagcached.Constants;
public class Commands implements PacketType {
@@ -74,6 +75,7 @@ public class Commands implements PacketType {
case "coords":
case "coord":
case "pos":
case "loc":
player.getPacketSender().sendMessage("Your coords are [" + player.absX + ", " + player.absY + ", " + player.heightLevel + "]");
break;
case "password":
@@ -91,13 +93,38 @@ public class Commands implements PacketType {
player.logout(true);
}
break;
case "null":
break;
case "players":
if (PlayerHandler.getPlayerCount() != 1) {
player.getPacketSender().sendMessage("There are currently " + PlayerHandler.getPlayerCount() + " players online.");
case "playershops":
int count = playerCommand.equalsIgnoreCase("players") ? PlayerHandler.getPlayerCount() : PlayerHandler.getPlayerShopCount();
if (count != 1) {
player.getPacketSender().sendMessage("There are currently " + count + " " + (playerCommand.equalsIgnoreCase("players") ? "players" : "player shops") + " online.");
} else {
player.getPacketSender().sendMessage("There is currently " + PlayerHandler.getPlayerCount() + " player online.");
player.getPacketSender().sendMessage("There is currently " + count + " " + (playerCommand.equalsIgnoreCase("players") ? "player" : "player shop") + " online.");
}
if (player.playerRights > 0) {
String[] players = new String[count];
int playerIndex = 0;
for(Player _player : PlayerHandler.players) {
if(_player != null) {
if (playerCommand.equalsIgnoreCase("players") ? !_player.isBot : _player.isBot)
players[playerIndex++] = _player.properName;
}
}
// Clear all lines
for (int i = 8144; i < 8195; i++) player.getPacketSender().sendFrame126("", i);
player.getPacketSender().sendFrame126("@dre@" + (playerCommand.equalsIgnoreCase("players") ? "Players" : "Player Shops"), 8144);
int playersLineNumber = 8147;
for (String line : players){
player.getPacketSender().sendFrame126(line, playersLineNumber++);
}
player.getPacketSender().showInterface(8134);
break;
}
break;
case "shop":
@@ -151,10 +178,49 @@ public class Commands implements PacketType {
player.getPacketSender().closeAllWindows();
break;
case "commands":
player.getPacketSender().sendMessage("::players, ::highscores, ::loc, ::stuck, ::randomtoggle, ::debug, ::togglegfx, ::shop");
break;
case "loc":
player.getPacketSender().sendMessage(player.absX + "," + player.absY);
String[] commands = new String[]{
"::players",
"Show how many players are online",
"",
"::highscores",
"Get a list of current highscores",
"",
"::loc, ::pos, ::coord",
"Get your current world position",
"",
"::stuck",
"Return to Lumbridge when stuck",
"",
"::randomtoggle",
"Enable/Disable random events",
"",
"::debug",
"Enable/Disable debug information",
"",
"::togglegfx",
"Enable/Disable graphics rendering",
"",
"::shop",
"Open/Move player owned shop to your location",
"",
"::closeshop",
"Close your player owned shop",
"",
"::withdrawshop",
"Withdraw profits from player owned shop",
};
// Clear all lines
for (int i = 8144; i < 8195; i++) player.getPacketSender().sendFrame126("", i);
player.getPacketSender().sendFrame126("@dre@Commands", 8144);
int commandsLineNumber = 8147;
for (String line : commands){
player.getPacketSender().sendFrame126(line, commandsLineNumber++);
}
player.getPacketSender().showInterface(8134);
break;
case "stuck":
player.getPlayerAssistant().startTeleport(LUMBRIDGE_X, LUMBRIDGE_Y, 0, "modern");
@@ -211,10 +277,9 @@ public class Commands implements PacketType {
player.getPacketSender().sendFrame126("@dre@Highscores", 8144);
int lineNumber = 8147;
int highscoresLineNumber = 8147;
for (String line : highscores){
System.out.println(line + " - " + lineNumber);
player.getPacketSender().sendFrame126(line, lineNumber++);
player.getPacketSender().sendFrame126(line, highscoresLineNumber++);
}
player.getPacketSender().showInterface(8134);