Skip to content

Commit

Permalink
Merge pull request #143 from Syrent/development
Browse files Browse the repository at this point in the history
Remove VRUoM from project
  • Loading branch information
Syrent committed Apr 1, 2023
2 parents d3b05ed + 422f931 commit 8302ca8
Show file tree
Hide file tree
Showing 17 changed files with 367 additions and 23 deletions.
7 changes: 4 additions & 3 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ repositories {
url = uri('https://repo.maven.apache.org/maven2/')
}

// Velocity-API / PaperLib
// Velocity-API / PaperLib / Folia
maven {
name 'papermc'
url 'https://repo.papermc.io/repository/maven-public/'
Expand All @@ -45,13 +45,13 @@ repositories {
}

// VRuom
maven {
/*maven {
url = uri("https://maven.pkg.github.com/mohamad82bz/ruom")
credentials {
username = project.findProperty("gpr.user")
password = project.findProperty("gpr.key")
}
}
}*/

// ProtocolLib
maven {
Expand Down Expand Up @@ -85,6 +85,7 @@ dependencies {
compileOnly 'me.clip:placeholderapi:2.11.3'
compileOnly 'xyz.jpenilla:squaremap-api:1.1.13'
compileOnly 'net.essentialsx:EssentialsX:2.19.7'
compileOnly 'org.spongepowered:configurate-yaml:4.0.0'
compileOnly 'com.discordsrv:discordsrv:1.26.2'

compileOnly files("libs/SayanChat-2.8.1-all.jar")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import com.google.gson.JsonObject
import ir.syrent.velocityvanish.spigot.VelocityVanishSpigot
import ir.syrent.velocityvanish.spigot.ruom.Ruom
import ir.syrent.velocityvanish.velocity.bridge.Bridge
import me.mohamad82.ruom.utils.GsonUtils
import ir.syrent.velocityvanish.velocity.vruom.utils.GsonUtils
import org.bukkit.entity.Player

@Suppress("UnstableApiUsage")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import com.google.common.io.ByteStreams;
import com.google.gson.JsonObject;
import ir.syrent.velocityvanish.spigot.ruom.Ruom;
import me.mohamad82.ruom.utils.GsonUtils;
import ir.syrent.velocityvanish.velocity.vruom.utils.GsonUtils;
import org.bukkit.entity.Player;
import org.bukkit.plugin.messaging.PluginMessageListener;
import org.jetbrains.annotations.NotNull;
Expand Down
15 changes: 5 additions & 10 deletions src/main/java/ir/syrent/velocityvanish/velocity/VelocityVanish.kt
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ import ir.syrent.velocityvanish.velocity.bridge.VelocityBridgeManager
import ir.syrent.velocityvanish.velocity.command.ForceVanishCommand
import ir.syrent.velocityvanish.velocity.listener.ProxyPingListener
import ir.syrent.velocityvanish.velocity.listener.TabCompleteListener
import me.mohamad82.ruom.VRUoMPlugin
import me.mohamad82.ruom.VRuom
import me.mohamad82.ruom.messaging.VelocityMessagingEvent
import ir.syrent.velocityvanish.velocity.vruom.VRUoMPlugin
import ir.syrent.velocityvanish.velocity.vruom.VRuom
import ir.syrent.velocityvanish.velocity.vruom.messaging.VelocityMessagingEvent
import net.minecrell.serverlistplus.core.ServerListPlusCore
import net.minecrell.serverlistplus.core.replacement.LiteralPlaceholder
import net.minecrell.serverlistplus.core.replacement.ReplacementManager
Expand All @@ -28,11 +28,10 @@ class VelocityVanish @Inject constructor(
server: ProxyServer,
logger: Logger,
@DataDirectory dataDirectory: Path
) : VRUoMPlugin(server, logger) {
) : VRUoMPlugin(server, logger, dataDirectory) {

lateinit var bridgeManager: VelocityBridgeManager
private set
val dataDirectory: Path

/*
* Note: This is not the best way to do this, but for time being it's fine.
Expand All @@ -43,10 +42,6 @@ class VelocityVanish @Inject constructor(
return vanishedPlayers.filter { getServer().getPlayer(it).isPresent }
}

init {
this.dataDirectory = dataDirectory
}

@Subscribe
private fun onProxyInitialization(event: ProxyInitializeEvent) {
instance = this
Expand Down Expand Up @@ -133,7 +128,7 @@ class VelocityVanish @Inject constructor(
}

private fun createFolder() {
val dataFile = dataDirectory.toFile()
val dataFile = VRUoMPlugin.getDataDirectory().toFile()
if (!dataFile.exists()) {
dataFile.mkdir()
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ package ir.syrent.velocityvanish.velocity.bridge

import com.velocitypowered.api.proxy.Player
import com.velocitypowered.api.proxy.server.RegisteredServer
import me.mohamad82.ruom.VRuom
import me.mohamad82.ruom.messaging.VelocityMessagingChannel
import ir.syrent.velocityvanish.velocity.vruom.VRuom
import ir.syrent.velocityvanish.velocity.vruom.messaging.VelocityMessagingChannel

class VelocityBridge: Bridge, VelocityMessagingChannel("velocityvanish", "main") {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import com.velocitypowered.api.proxy.server.RegisteredServer
import ir.syrent.velocityvanish.velocity.VelocityVanish
import ir.syrent.velocityvanish.velocity.event.VelocityUnVanishEvent
import ir.syrent.velocityvanish.velocity.event.VelocityVanishEvent
import me.mohamad82.ruom.VRuom
import me.mohamad82.ruom.utils.GsonUtils
import ir.syrent.velocityvanish.velocity.vruom.VRuom
import ir.syrent.velocityvanish.velocity.vruom.utils.GsonUtils

@Suppress("UnstableApiUsage")
class VelocityBridgeManager(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package ir.syrent.velocityvanish.velocity.command
import com.velocitypowered.api.command.SimpleCommand
import ir.syrent.velocityvanish.utils.component
import ir.syrent.velocityvanish.velocity.VelocityVanish
import me.mohamad82.ruom.VRuom
import ir.syrent.velocityvanish.velocity.vruom.VRuom

class ForceVanishCommand(
private val plugin: VelocityVanish
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import com.velocitypowered.api.event.Subscribe;
import com.velocitypowered.api.proxy.Player;
import ir.syrent.velocityvanish.velocity.VelocityVanish;
import me.mohamad82.ruom.VRuom;
import ir.syrent.velocityvanish.velocity.vruom.VRuom;
import me.sayandevelopment.sayanchat.bridge.proxy.velocity.VelocityPrivateMessageSendEvent;
import me.sayandevelopment.sayanchat.enums.PrivateMessageResult;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import com.velocitypowered.api.event.Subscribe
import com.velocitypowered.api.event.proxy.ProxyPingEvent
import com.velocitypowered.api.proxy.server.ServerPing
import ir.syrent.velocityvanish.velocity.VelocityVanish
import me.mohamad82.ruom.VRuom
import ir.syrent.velocityvanish.velocity.vruom.VRuom

class ProxyPingListener(
private val plugin: VelocityVanish
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package ir.syrent.velocityvanish.velocity.listener
import com.velocitypowered.api.event.Subscribe
import com.velocitypowered.api.event.player.TabCompleteEvent
import ir.syrent.velocityvanish.velocity.VelocityVanish
import me.mohamad82.ruom.VRuom
import ir.syrent.velocityvanish.velocity.vruom.VRuom

class TabCompleteListener(
private val plugin: VelocityVanish
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package ir.syrent.velocityvanish.velocity.vruom;

import com.velocitypowered.api.proxy.ProxyServer;
import org.slf4j.Logger;

import java.nio.file.Path;

public class VRUoMPlugin {

private static VRUoMPlugin instance;
private static ProxyServer server;
private static Logger logger;
private static Path dataDirectory;

public VRUoMPlugin(ProxyServer server, Logger logger) {
instance = this;
VRUoMPlugin.server = server;
VRUoMPlugin.logger = logger;
}

public VRUoMPlugin(ProxyServer server, Logger logger, Path dataDirectory) {
instance = this;
VRUoMPlugin.server = server;
VRUoMPlugin.logger = logger;
VRUoMPlugin.dataDirectory = dataDirectory;
}

public static VRUoMPlugin get() {
return instance;
}

public static ProxyServer getServer() {
return server;
}

public static Logger getLogger() {
return logger;
}

public static Path getDataDirectory() {
return dataDirectory;
}
}
120 changes: 120 additions & 0 deletions src/main/java/ir/syrent/velocityvanish/velocity/vruom/VRuom.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
package ir.syrent.velocityvanish.velocity.vruom;

import com.velocitypowered.api.command.Command;
import com.velocitypowered.api.command.CommandMeta;
import com.velocitypowered.api.plugin.Plugin;
import com.velocitypowered.api.proxy.Player;
import com.velocitypowered.api.proxy.ProxyServer;
import com.velocitypowered.api.scheduler.ScheduledTask;
import org.slf4j.Logger;

import java.io.File;
import java.nio.file.Path;
import java.util.Collection;
import java.util.Optional;
import java.util.concurrent.TimeUnit;

public class VRuom {

private final static Plugin DESCRIPTION;
private final static Logger logger;
private static boolean debug = false;

static {
DESCRIPTION = VRUoMPlugin.get().getClass().getAnnotation(Plugin.class);
logger = VRUoMPlugin.getLogger();
}

public static Object getPlugin() {
return VRUoMPlugin.get();
}

public static Plugin getDescription() {
return DESCRIPTION;
}

public static ProxyServer getServer() {
return VRUoMPlugin.getServer();
}

public static Path getDataDirectory() {
return VRUoMPlugin.getDataDirectory();
}

/**
* @deprecated Use {@link #getDataDirectory()} instead
* Data folder is accessible through the DataDirectory constructor in the Velocity main class\
*/
public static File getDataFolder() {
return new File("plugins", getDescription().name());
}

public static void registerListener(Object listener) {
getServer().getEventManager().register(VRUoMPlugin.get(), listener);
}

public static void registerCommand(String name, Collection<String> aliases, Command command) {
CommandMeta meta = getServer().getCommandManager().metaBuilder(name).aliases(aliases.toArray(new String[0])).build();
getServer().getCommandManager().register(meta, command);
}

public static Collection<Player> getOnlinePlayers() {
return getServer().getAllPlayers();
}

public static Optional<Player> getPlayer(String username) {
for (Player player : getOnlinePlayers()) {
if (player.getUsername().equalsIgnoreCase(username)) {
return Optional.of(player);
}
}
return Optional.empty();
}

public static void setDebug(boolean debug) {
VRuom.debug = debug;
}

public static void log(String message) {
logger.info(message);
}

public static void debug(String message) {
if (debug) {
log("[Debug] " + message);
}
}

public static void warn(String message) {
logger.warn(message);
}

public static void error(String message) {
logger.error(message);
}

public static void run(RunnableExc runnable) {
try {
runnable.run();
} catch (Exception e) {
e.printStackTrace();
}
}

@FunctionalInterface public interface RunnableExc {
void run() throws Exception;
}

public static ScheduledTask runAsync(Runnable runnable) {
return getServer().getScheduler().buildTask(VRUoMPlugin.get(), runnable).schedule();
}

public static ScheduledTask runAsync(Runnable runnable, long delay, TimeUnit delayUnit) {
return getServer().getScheduler().buildTask(VRUoMPlugin.get(), runnable).delay(delay, delayUnit).schedule();
}

public static ScheduledTask runAsync(Runnable runnable, long delay, TimeUnit delayUnit, long period, TimeUnit periodUnit) {
return getServer().getScheduler().buildTask(VRUoMPlugin.get(), runnable).delay(delay, delayUnit).repeat(period, periodUnit).schedule();
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package ir.syrent.velocityvanish.velocity.vruom.configuration;

import ir.syrent.velocityvanish.velocity.vruom.VRUoMPlugin;
import ir.syrent.velocityvanish.velocity.vruom.utils.ResourceUtils;
import org.spongepowered.configurate.CommentedConfigurationNode;
import org.spongepowered.configurate.ConfigurateException;
import org.spongepowered.configurate.yaml.YamlConfigurationLoader;

import java.io.File;

public class ConfigurateYamlConfig {

private final String fileName;
private YamlConfigurationLoader loader;

public CommentedConfigurationNode root;

public ConfigurateYamlConfig(String fileName) {
this.fileName = fileName;
}

public void create() {
File copyFile = new File(VRUoMPlugin.getDataDirectory().toFile(), fileName);
if (!copyFile.exists()) {
copyFile.getParentFile().mkdirs();
ResourceUtils.copyResource(fileName, copyFile);
}

loader = YamlConfigurationLoader.builder().file(copyFile).build();
}

public void load() {
if (loader == null) {
create();
}

try {
root = loader.load();
} catch (ConfigurateException e) {
e.printStackTrace();
}
}
}

0 comments on commit 8302ca8

Please sign in to comment.