mirror of
https://github.com/2006-Scape/2006Scape.git
synced 2026-07-07 00:32:06 +00:00
More Discord Commands(GameKick, MoveHome & Update)
*GameKick kicks A player if their client froze but acc stayed logged in *MoveHome removes the need for ::stuck which removes potential for abuse *Update schedules A server update
This commit is contained in:
@@ -1,15 +1,15 @@
|
|||||||
package com.rs2.integrations.discord;
|
package com.rs2.integrations.discord;
|
||||||
|
|
||||||
import com.rs2.GameConstants;
|
import com.rs2.GameConstants;
|
||||||
import com.rs2.game.players.Client;
|
import com.rs2.integrations.discord.commands.*;
|
||||||
import com.rs2.game.players.Player;
|
import com.rs2.integrations.discord.commands.admin.GameKick;
|
||||||
import com.rs2.game.players.PlayerHandler;
|
import com.rs2.integrations.discord.commands.admin.MoveHome;
|
||||||
|
import com.rs2.integrations.discord.commands.admin.Update;
|
||||||
import org.javacord.api.DiscordApi;
|
import org.javacord.api.DiscordApi;
|
||||||
import org.javacord.api.DiscordApiBuilder;
|
import org.javacord.api.DiscordApiBuilder;
|
||||||
import org.javacord.api.entity.channel.TextChannel;
|
import org.javacord.api.entity.channel.TextChannel;
|
||||||
import org.javacord.api.entity.message.MessageBuilder;
|
import org.javacord.api.entity.message.MessageBuilder;
|
||||||
import org.javacord.api.util.logging.ExceptionLogger;
|
import org.javacord.api.util.logging.ExceptionLogger;
|
||||||
import com.rs2.integrations.discord.commands.*;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
@@ -38,29 +38,14 @@ public class JavaCord {
|
|||||||
api.addListener(new Players());
|
api.addListener(new Players());
|
||||||
api.addListener(new Vote());
|
api.addListener(new Vote());
|
||||||
api.addListener(new Website());
|
api.addListener(new Website());
|
||||||
|
//Admin Commands
|
||||||
|
api.addListener(new GameKick());
|
||||||
|
api.addListener(new MoveHome());
|
||||||
|
api.addListener(new Update());
|
||||||
if(!DiscordActivity.playerCount) {
|
if(!DiscordActivity.playerCount) {
|
||||||
api.updateActivity(GameConstants.WEBSITE_LINK);
|
api.updateActivity(GameConstants.WEBSITE_LINK);
|
||||||
}
|
}
|
||||||
api.addMessageCreateListener(event -> {
|
api.addMessageCreateListener(event -> {
|
||||||
|
|
||||||
if (event.getMessageContent().startsWith(commandPrefix + " kick")) {
|
|
||||||
if (event.getMessageAuthor().isServerAdmin()) {
|
|
||||||
String playerToKick = event.getMessageContent().replace( commandPrefix + " kick ", "");
|
|
||||||
for (Player player2 : PlayerHandler.players) {
|
|
||||||
if (player2 != null) {
|
|
||||||
if (player2.playerName.equalsIgnoreCase(playerToKick)) {
|
|
||||||
Client c2 = (Client) player2;
|
|
||||||
event.getChannel().sendMessage("You have kicked " + playerToKick + ".");
|
|
||||||
c2.disconnected = true;
|
|
||||||
c2.logout(true);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
event.getChannel().sendMessage("You do not have permission to perform this command");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
package com.rs2.integrations.discord.commands;
|
package com.rs2.integrations.discord.commands;
|
||||||
|
|
||||||
import com.rs2.GameConstants;
|
|
||||||
import com.rs2.integrations.discord.JavaCord;
|
import com.rs2.integrations.discord.JavaCord;
|
||||||
import org.javacord.api.entity.message.Message;
|
import org.javacord.api.entity.message.Message;
|
||||||
import org.javacord.api.event.message.MessageCreateEvent;
|
import org.javacord.api.event.message.MessageCreateEvent;
|
||||||
@@ -21,8 +20,6 @@ public class Commands implements MessageCreateListener {
|
|||||||
+ System.lineSeparator() +
|
+ System.lineSeparator() +
|
||||||
JavaCord.commandPrefix + " online"
|
JavaCord.commandPrefix + " online"
|
||||||
+ System.lineSeparator() +
|
+ System.lineSeparator() +
|
||||||
JavaCord.commandPrefix + " players"
|
|
||||||
+ System.lineSeparator() +
|
|
||||||
JavaCord.commandPrefix + " vote"
|
JavaCord.commandPrefix + " vote"
|
||||||
+ System.lineSeparator() +
|
+ System.lineSeparator() +
|
||||||
JavaCord.commandPrefix + " website/" + JavaCord.commandPrefix + " site"
|
JavaCord.commandPrefix + " website/" + JavaCord.commandPrefix + " site"
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
package com.rs2.integrations.discord.commands;
|
package com.rs2.integrations.discord.commands;
|
||||||
|
|
||||||
import com.rs2.GameConstants;
|
|
||||||
import com.rs2.integrations.discord.JavaCord;
|
import com.rs2.integrations.discord.JavaCord;
|
||||||
import org.javacord.api.entity.message.Message;
|
import org.javacord.api.entity.message.Message;
|
||||||
import org.javacord.api.event.message.MessageCreateEvent;
|
import org.javacord.api.event.message.MessageCreateEvent;
|
||||||
|
|||||||
@@ -1,13 +1,11 @@
|
|||||||
package com.rs2.integrations.discord.commands;
|
package com.rs2.integrations.discord.commands;
|
||||||
|
|
||||||
import com.rs2.GameConstants;
|
import com.rs2.game.players.PlayerHandler;
|
||||||
import com.rs2.integrations.discord.JavaCord;
|
import com.rs2.integrations.discord.JavaCord;
|
||||||
import org.javacord.api.entity.message.Message;
|
import org.javacord.api.entity.message.Message;
|
||||||
import org.javacord.api.event.message.MessageCreateEvent;
|
import org.javacord.api.event.message.MessageCreateEvent;
|
||||||
import org.javacord.api.listener.message.MessageCreateListener;
|
import org.javacord.api.listener.message.MessageCreateListener;
|
||||||
|
|
||||||
import com.rs2.game.players.PlayerHandler;
|
|
||||||
|
|
||||||
public class Players implements MessageCreateListener {
|
public class Players implements MessageCreateListener {
|
||||||
@Override
|
@Override
|
||||||
public void onMessageCreate(MessageCreateEvent event) {
|
public void onMessageCreate(MessageCreateEvent event) {
|
||||||
|
|||||||
+32
@@ -0,0 +1,32 @@
|
|||||||
|
package com.rs2.integrations.discord.commands.admin;
|
||||||
|
|
||||||
|
import com.rs2.game.players.Client;
|
||||||
|
import com.rs2.game.players.Player;
|
||||||
|
import com.rs2.game.players.PlayerHandler;
|
||||||
|
import com.rs2.integrations.discord.JavaCord;
|
||||||
|
import org.javacord.api.event.message.MessageCreateEvent;
|
||||||
|
import org.javacord.api.listener.message.MessageCreateListener;
|
||||||
|
|
||||||
|
public class GameKick implements MessageCreateListener {
|
||||||
|
@Override
|
||||||
|
public void onMessageCreate(MessageCreateEvent event) {
|
||||||
|
if (event.getMessageContent().startsWith(JavaCord.commandPrefix + " gamekick")) {
|
||||||
|
if (event.getMessageAuthor().isServerAdmin()) {
|
||||||
|
String playerToKick = event.getMessageContent().replace( JavaCord.commandPrefix + " gamekick ", "");
|
||||||
|
for (Player player2 : PlayerHandler.players) {
|
||||||
|
if (player2 != null) {
|
||||||
|
if (player2.playerName.equalsIgnoreCase(playerToKick)) {
|
||||||
|
Client c2 = (Client) player2;
|
||||||
|
event.getChannel().sendMessage( playerToKick+ " was kicked by " + event.getMessageAuthor().getDisplayName() + ".");
|
||||||
|
c2.disconnected = true;
|
||||||
|
c2.logout(true);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
event.getChannel().sendMessage("You do not have permission to perform this command");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
+31
@@ -0,0 +1,31 @@
|
|||||||
|
package com.rs2.integrations.discord.commands.admin;
|
||||||
|
|
||||||
|
import com.rs2.GameConstants;
|
||||||
|
import com.rs2.game.players.Client;
|
||||||
|
import com.rs2.game.players.PlayerHandler;
|
||||||
|
import com.rs2.integrations.discord.JavaCord;
|
||||||
|
import org.javacord.api.event.message.MessageCreateEvent;
|
||||||
|
import org.javacord.api.listener.message.MessageCreateListener;
|
||||||
|
|
||||||
|
public class MoveHome implements MessageCreateListener {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onMessageCreate(MessageCreateEvent event) {
|
||||||
|
if (event.getMessageContent().startsWith(JavaCord.commandPrefix + " movehome")) {
|
||||||
|
if (event.getMessageAuthor().isServerAdmin()) {
|
||||||
|
String teleToMe = event.getMessageContent().replace( JavaCord.commandPrefix + " movehome ", "");
|
||||||
|
for (int i = 0; i < PlayerHandler.players.length; i++) {
|
||||||
|
if (PlayerHandler.players[i] != null) {
|
||||||
|
if (PlayerHandler.players[i].playerName.equalsIgnoreCase(teleToMe)) {
|
||||||
|
Client p = (Client) PlayerHandler.players[i];
|
||||||
|
event.getChannel().sendMessage(p.playerName + " has been moved to Lumbridge.");
|
||||||
|
p.getPlayerAssistant().movePlayer(GameConstants.RESPAWN_X, GameConstants.RESPAWN_Y, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
event.getChannel().sendMessage("You do not have permission to perform this command");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
package com.rs2.integrations.discord.commands.admin;
|
||||||
|
|
||||||
|
import com.rs2.game.players.PlayerHandler;
|
||||||
|
import com.rs2.integrations.discord.JavaCord;
|
||||||
|
import org.javacord.api.event.message.MessageCreateEvent;
|
||||||
|
import org.javacord.api.listener.message.MessageCreateListener;
|
||||||
|
|
||||||
|
public class Update implements MessageCreateListener {
|
||||||
|
@Override
|
||||||
|
public void onMessageCreate(MessageCreateEvent event) {
|
||||||
|
if(event.getMessageAuthor().isServerAdmin()) {
|
||||||
|
String seconds = event.getMessageContent().replace(JavaCord.commandPrefix + " update ", "");
|
||||||
|
if (event.getMessageContent().startsWith(JavaCord.commandPrefix + " update")) {
|
||||||
|
PlayerHandler.updateSeconds = Integer.parseInt(seconds);
|
||||||
|
PlayerHandler.updateAnnounced = false;
|
||||||
|
PlayerHandler.updateRunning = true;
|
||||||
|
PlayerHandler.updateStartTime = System.currentTimeMillis();
|
||||||
|
event.getChannel().sendMessage("Server update will begin in " + seconds + " seconds.");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
event.getChannel().sendMessage("You do not have permission to perform this command");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -279,9 +279,6 @@ public class Commands implements PacketType {
|
|||||||
"::loc, ::pos, ::coord",
|
"::loc, ::pos, ::coord",
|
||||||
"Get your current world position",
|
"Get your current world position",
|
||||||
"",
|
"",
|
||||||
"::stuck",
|
|
||||||
"Return to Lumbridge when stuck",
|
|
||||||
"",
|
|
||||||
"::randomtoggle",
|
"::randomtoggle",
|
||||||
"Enable/Disable random events",
|
"Enable/Disable random events",
|
||||||
"",
|
"",
|
||||||
@@ -316,17 +313,6 @@ public class Commands implements PacketType {
|
|||||||
}
|
}
|
||||||
player.getPacketSender().showInterface(8134);
|
player.getPacketSender().showInterface(8134);
|
||||||
break;
|
break;
|
||||||
case "stuck":
|
|
||||||
if (player.getCombatAssistant().inCombat()) {
|
|
||||||
player.getPacketSender().sendMessage("You cannot do that while in combat.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
player.getPlayerAssistant().movePlayer(SpellTeleport.LUMBRIDGE.getDestX(), SpellTeleport.LUMBRIDGE.getDestY(), 0);
|
|
||||||
player.getPacketSender().sendMessage("How did you manage that one...");
|
|
||||||
player.getPacketSender().sendMessage("If it's bug related, please report on Github/Discord!");
|
|
||||||
player.gfx100(80);
|
|
||||||
player.startAnimation(404);
|
|
||||||
break;
|
|
||||||
case "randomtoggle":
|
case "randomtoggle":
|
||||||
case "togglerandom":
|
case "togglerandom":
|
||||||
case "random":
|
case "random":
|
||||||
|
|||||||
Reference in New Issue
Block a user