9
0
mirror of https://github.com/Xiao-MoMi/craft-engine.git synced 2025-12-27 19:09:08 +00:00

feat(block): 实现压力板方块行为

This commit is contained in:
jhqwqmc
2025-06-22 03:56:24 +08:00
parent 224bea9067
commit 2ad04895be
6 changed files with 225 additions and 3 deletions

View File

@@ -0,0 +1,34 @@
package net.momirealms.craftengine.core.util;
import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
public enum PressurePlateSensitivity {
EVERYTHING("everything", "all"),
MOBS("mobs", "mob");
private final String[] names;
PressurePlateSensitivity(String... names) {
this.names = names;
}
public String[] names() {
return names;
}
private static final Map<String, PressurePlateSensitivity> BY_NAME = new HashMap<>();
static {
for (PressurePlateSensitivity trigger : PressurePlateSensitivity.values()) {
for (String name : trigger.names()) {
BY_NAME.put(name, trigger);
}
}
}
public static PressurePlateSensitivity byName(String name) {
return Optional.ofNullable(BY_NAME.get(name)).orElseThrow(() -> new IllegalArgumentException("PressurePlateSensitivity not found: " + name));
}
}