mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2025-07-18 18:23:06 +00:00
Chat filter.
This commit is contained in:
parent
67efdb47aa
commit
909461975a
@ -416,18 +416,21 @@ public class NMSBinding18_2 implements INMSBinding {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static Object fieldFor(Class<?> returns, Object in) {
|
private static Object fieldFor(Class<?> returns, Object in) {
|
||||||
for(Field i : in.getClass().getFields()) {
|
return fieldForClass(returns, in.getClass(), in);
|
||||||
if(i.getType().equals(returns)) {
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
private static <T> T fieldForClass(Class<T> returnType, Class<?> sourceType, Object in) {
|
||||||
|
for(Field i : sourceType.getFields())
|
||||||
|
if(i.getType().equals(returnType)) {
|
||||||
i.setAccessible(true);
|
i.setAccessible(true);
|
||||||
try {
|
try {
|
||||||
Iris.info("[NMS] Found " + returns.getSimpleName() + " in " + in.getClass().getSimpleName() + "." + i.getName());
|
Iris.info("[NMS] Found " + returnType.getSimpleName() + " in " + sourceType.getSimpleName() + "." + i.getName());
|
||||||
return i.get(in);
|
return (T)i.get(in);
|
||||||
} catch(IllegalAccessException e) {
|
} catch(IllegalAccessException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
59
src/main/java/com/volmit/iris/core/service/LogFilterSVC.java
Normal file
59
src/main/java/com/volmit/iris/core/service/LogFilterSVC.java
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
package com.volmit.iris.core.service;
|
||||||
|
|
||||||
|
import com.volmit.iris.util.collection.KList;
|
||||||
|
import com.volmit.iris.util.plugin.IrisService;
|
||||||
|
import org.apache.logging.log4j.Level;
|
||||||
|
import org.apache.logging.log4j.LogManager;
|
||||||
|
import org.apache.logging.log4j.Marker;
|
||||||
|
import org.apache.logging.log4j.core.Filter;
|
||||||
|
import org.apache.logging.log4j.core.LogEvent;
|
||||||
|
import org.apache.logging.log4j.core.Logger;
|
||||||
|
import org.apache.logging.log4j.message.Message;
|
||||||
|
|
||||||
|
public class LogFilterSVC implements IrisService, Filter {
|
||||||
|
|
||||||
|
private static final String HEIGHTMAP_MISMATCH = "Ignoring heightmap data for chunk";
|
||||||
|
|
||||||
|
private static final KList<String> FILTERS = new KList<>();
|
||||||
|
|
||||||
|
public void onEnable() {
|
||||||
|
FILTERS.add(HEIGHTMAP_MISMATCH);
|
||||||
|
((Logger) LogManager.getRootLogger()).addFilter(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void initialize() { }
|
||||||
|
public void start() { }
|
||||||
|
public void stop() { }
|
||||||
|
public void onDisable() { }
|
||||||
|
public boolean isStarted() { return true; }
|
||||||
|
public boolean isStopped() { return false; }
|
||||||
|
|
||||||
|
public State getState() {
|
||||||
|
try { return State.STARTED; }
|
||||||
|
catch (Exception var2) { return null; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public Filter.Result getOnMatch() { return Result.NEUTRAL; }
|
||||||
|
public Filter.Result getOnMismatch() { return Result.NEUTRAL; }
|
||||||
|
|
||||||
|
public Result filter(LogEvent event) { return check(event.getMessage().getFormattedMessage()); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, Object msg, Throwable t) { return check(msg.toString()); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, Message msg, Throwable t) { return check(msg.getFormattedMessage()); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, String message, Object... params) { return check(message); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, String message, Object p0) { return check(message); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, String message, Object p0, Object p1) { return check(message); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, String message, Object p0, Object p1, Object p2) { return check(message); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3) { return check(message); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4) { return check(message); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5) { return check(message); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6) { return check(message); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7) { return check(message); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7, Object p8) { return check(message); }
|
||||||
|
public Result filter(Logger logger, Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7, Object p8, Object p9) { return check(message); }
|
||||||
|
|
||||||
|
private Result check(String string) {
|
||||||
|
if(FILTERS.stream().anyMatch(string::contains))
|
||||||
|
return Result.DENY;
|
||||||
|
return Result.NEUTRAL;
|
||||||
|
}
|
||||||
|
}
|
@ -568,7 +568,7 @@ public class IrisObject extends IrisRegistrant {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if(config.getMode().equals(ObjectPlaceMode.MIN_HEIGHT)) {
|
} else if(config.getMode().equals(ObjectPlaceMode.MIN_HEIGHT)) {
|
||||||
y = 257;
|
y = rdata.getEngine().getHeight() + 1;
|
||||||
BlockVector offset = new BlockVector(config.getTranslate().getX(), config.getTranslate().getY(), config.getTranslate().getZ());
|
BlockVector offset = new BlockVector(config.getTranslate().getX(), config.getTranslate().getY(), config.getTranslate().getZ());
|
||||||
BlockVector rotatedDimensions = config.getRotation().rotate(new BlockVector(getW(), getH(), getD()), spinx, spiny, spinz).clone();
|
BlockVector rotatedDimensions = config.getRotation().rotate(new BlockVector(getW(), getH(), getD()), spinx, spiny, spinz).clone();
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user