Compare commits
4 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
544720331b | ||
![]() |
0b8bea51b9 | ||
![]() |
d2e5bcb293 | ||
![]() |
dc1ad6d418 |
@ -199,6 +199,32 @@ function writeToWebConsole(msg, time){
|
|||||||
|
|
||||||
msg = msg.replace(/§r/g, "</span>"); //&r
|
msg = msg.replace(/§r/g, "</span>"); //&r
|
||||||
|
|
||||||
|
//Color filter for MC 1.18 (Also easy :D)
|
||||||
|
//span may not be closed every time but browsers will do for ourselves
|
||||||
|
msg = msg.replace(/0/g, "<span style='color: #000000;'>"); //&0
|
||||||
|
msg = msg.replace(/1/g, "<span style='color: #0000AA;'>"); //&1
|
||||||
|
msg = msg.replace(/2/g, "<span style='color: #00AA00;'>"); //&2
|
||||||
|
msg = msg.replace(/3/g, "<span style='color: #00AAAA;'>"); //&3
|
||||||
|
msg = msg.replace(/4/g, "<span style='color: #AA0000;'>"); //&4
|
||||||
|
msg = msg.replace(/5/g, "<span style='color: #AA00AA;'>"); //&5
|
||||||
|
msg = msg.replace(/6/g, "<span style='color: #FFAA00;'>"); //&6
|
||||||
|
msg = msg.replace(/7/g, "<span style='color: #AAAAAA;'>"); //&7
|
||||||
|
msg = msg.replace(/8/g, "<span style='color: #555555;'>"); //&8
|
||||||
|
msg = msg.replace(/9/g, "<span style='color: #5555FF;'>"); //&9
|
||||||
|
msg = msg.replace(/a/g, "<span style='color: #55FF55;'>"); //&a
|
||||||
|
msg = msg.replace(/b/g, "<span style='color: #55FFFF;'>"); //&b
|
||||||
|
msg = msg.replace(/c/g, "<span style='color: #FF5555;'>"); //&c
|
||||||
|
msg = msg.replace(/d/g, "<span style='color: #FF55FF;'>"); //&d
|
||||||
|
msg = msg.replace(/e/g, "<span style='color: #FFFF55;'>"); //&e
|
||||||
|
msg = msg.replace(/f/g, "<span style='color: #FFFFFF;'>"); //&f
|
||||||
|
|
||||||
|
msg = msg.replace(/l/g, "<span style='font-weight:bold;'>"); //&l
|
||||||
|
msg = msg.replace(/m/g, "<span style='text-decoration: line-through;'>"); //&m
|
||||||
|
msg = msg.replace(/n/g, "<span style='text-decoration: underline;'>"); //&n
|
||||||
|
msg = msg.replace(/o/g, "<span style='font-style: italic;'>"); //&o
|
||||||
|
|
||||||
|
msg = msg.replace(/r/g, "</span>"); //&r
|
||||||
|
|
||||||
//Append datetime if enabled
|
//Append datetime if enabled
|
||||||
if(persistenceManager.getSetting("dateTimePrefix")){
|
if(persistenceManager.getSetting("dateTimePrefix")){
|
||||||
if(typeof time !== 'undefined' && time !== null) //if time is present and not null
|
if(typeof time !== 'undefined' && time !== null) //if time is present and not null
|
||||||
|
2
pom.xml
2
pom.xml
@ -90,7 +90,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.google.code.gson</groupId>
|
<groupId>com.google.code.gson</groupId>
|
||||||
<artifactId>gson</artifactId>
|
<artifactId>gson</artifactId>
|
||||||
<version>2.8.5</version>
|
<version>2.8.9</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</project>
|
</project>
|
@ -1,49 +1,54 @@
|
|||||||
package es.mesacarlos.webconsole.websocket.command;
|
package es.mesacarlos.webconsole.websocket.command;
|
||||||
|
|
||||||
//------------------------------
|
//------------------------------
|
||||||
//
|
//
|
||||||
// This class was developed by Rafael K.
|
// This class was developed by Rafael K.
|
||||||
// On 1/8/2022 at 10:22 PM
|
// On 1/8/2022 at 10:22 PM
|
||||||
// In the project WebConsole
|
// In the project WebConsole
|
||||||
//
|
//
|
||||||
//------------------------------
|
//------------------------------
|
||||||
|
|
||||||
import es.mesacarlos.webconsole.util.Internationalization;
|
import es.mesacarlos.webconsole.util.Internationalization;
|
||||||
import es.mesacarlos.webconsole.websocket.WSServer;
|
import es.mesacarlos.webconsole.websocket.WSServer;
|
||||||
import es.mesacarlos.webconsole.websocket.response.Tps;
|
import es.mesacarlos.webconsole.websocket.response.Tps;
|
||||||
import org.java_websocket.WebSocket;
|
import org.java_websocket.WebSocket;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
|
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
|
|
||||||
public class TpsCommand implements WSCommand {
|
public class TpsCommand implements WSCommand {
|
||||||
private static final String mcVer = Bukkit.getServer().getClass().getPackage().getName().split("\\.")[3];
|
private static final String mcVer = Bukkit.getServer().getClass().getPackage().getName().split("\\.")[3];
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void execute(WSServer wsServer, WebSocket conn, String params) {
|
public void execute(WSServer wsServer, WebSocket conn, String params) {
|
||||||
try {
|
try {
|
||||||
double tps = getTps()[0];
|
double tps = getTps()[0];
|
||||||
wsServer.sendToClient(conn, new Tps(Internationalization.getPhrase("tps-message", tps), tps));
|
wsServer.sendToClient(conn, new Tps(Internationalization.getPhrase("tps-message", tps), tps));
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return Current server Tps
|
* @return Current server Tps
|
||||||
*/
|
*/
|
||||||
public double[] getTps() throws ClassNotFoundException, NoSuchMethodException, InvocationTargetException, IllegalAccessException, NoSuchFieldException {
|
public double[] getTps() throws ClassNotFoundException, NoSuchMethodException, InvocationTargetException, IllegalAccessException, NoSuchFieldException {
|
||||||
Class<?> minecraftServerClass = Class.forName("net.minecraft.server." + mcVer + ".MinecraftServer");
|
try {
|
||||||
Method getServerMethod = minecraftServerClass.getDeclaredMethod("getServer");
|
Class<?> minecraftServerClass = Class.forName("net.minecraft.server." + mcVer + ".MinecraftServer");
|
||||||
Object serverInstance = getServerMethod.invoke(null);
|
Method getServerMethod = minecraftServerClass.getDeclaredMethod("getServer");
|
||||||
Field recentTpsField = serverInstance.getClass().getField("recentTps");
|
Object serverInstance = getServerMethod.invoke(null);
|
||||||
double[] recentTps = (double[]) recentTpsField.get(serverInstance);
|
Field recentTpsField = serverInstance.getClass().getField("recentTps");
|
||||||
for (int i = 0; i < recentTps.length; i++) {
|
double[] recentTps = (double[]) recentTpsField.get(serverInstance);
|
||||||
recentTps[i] = Math.round(recentTps[i]);
|
for (int i = 0; i < recentTps.length; i++) {
|
||||||
}
|
recentTps[i] = Math.round(recentTps[i]);
|
||||||
return recentTps;
|
}
|
||||||
}
|
return recentTps;
|
||||||
|
} catch (Exception e) {
|
||||||
}
|
//If an uncaught exception is thrown, maybe it is because this method of getting TPS does not work in the MV version currently running..
|
||||||
|
return new double[] { 0 };
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user