minecraft-src/net/minecraft/world/level/block/state/properties/BooleanProperty.java
2025-07-04 03:15:13 +03:00

40 lines
926 B
Java

package net.minecraft.world.level.block.state.properties;
import java.util.List;
import java.util.Optional;
public final class BooleanProperty extends Property<Boolean> {
private static final List<Boolean> VALUES = List.of(true, false);
private static final int TRUE_INDEX = 0;
private static final int FALSE_INDEX = 1;
private BooleanProperty(String name) {
super(name, Boolean.class);
}
@Override
public List<Boolean> getPossibleValues() {
return VALUES;
}
public static BooleanProperty create(String name) {
return new BooleanProperty(name);
}
@Override
public Optional<Boolean> getValue(String value) {
return switch (value) {
case "true" -> Optional.of(true);
case "false" -> Optional.of(false);
default -> Optional.empty();
};
}
public String getName(Boolean value) {
return value.toString();
}
public int getInternalIndex(Boolean boolean_) {
return boolean_ ? 0 : 1;
}
}