mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2025-07-03 16:35:50 +00:00
fix: apply project code style
This commit is contained in:
parent
03124cb008
commit
0a93b0fac3
@ -80,6 +80,7 @@ object Versions {
|
|||||||
|
|
||||||
object Allay {
|
object Allay {
|
||||||
const val api = "0.2.0"
|
const val api = "0.2.0"
|
||||||
|
const val gson = "2.12.1"
|
||||||
}
|
}
|
||||||
|
|
||||||
object Minestom {
|
object Minestom {
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
dependencies {
|
dependencies {
|
||||||
shadedApi(project(":common:implementation:base"))
|
shadedApi(project(":common:implementation:base"))
|
||||||
|
|
||||||
|
implementation("com.google.code.gson", "gson", Versions.Allay.gson)
|
||||||
|
|
||||||
compileOnly("org.allaymc.allay", "api", Versions.Allay.api)
|
compileOnly("org.allaymc.allay", "api", Versions.Allay.api)
|
||||||
}
|
}
|
@ -23,11 +23,13 @@ import java.io.InputStream;
|
|||||||
import java.io.InputStreamReader;
|
import java.io.InputStreamReader;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.Map.Entry;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.TreeMap;
|
import java.util.TreeMap;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author daoge_cmd
|
* @author daoge_cmd | IWareQ
|
||||||
*/
|
*/
|
||||||
public final class Mapping {
|
public final class Mapping {
|
||||||
private static final Gson GSON = new GsonBuilder()
|
private static final Gson GSON = new GsonBuilder()
|
||||||
@ -95,7 +97,7 @@ public final class Mapping {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static boolean initBiomeMapping() {
|
private static boolean initBiomeMapping() {
|
||||||
try (var stream = Mapping.class.getClassLoader().getResourceAsStream("mapping/biomes.json")) {
|
try(InputStream stream = Mapping.class.getClassLoader().getResourceAsStream("mapping/biomes.json")) {
|
||||||
if(stream == null) {
|
if(stream == null) {
|
||||||
TerraAllayPlugin.INSTANCE.getPluginLogger().error("biomes mapping not found");
|
TerraAllayPlugin.INSTANCE.getPluginLogger().error("biomes mapping not found");
|
||||||
return false;
|
return false;
|
||||||
@ -111,7 +113,7 @@ public final class Mapping {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static boolean initItemMapping() {
|
private static boolean initItemMapping() {
|
||||||
try (var stream = Mapping.class.getClassLoader().getResourceAsStream("mapping/items.json")) {
|
try(InputStream stream = Mapping.class.getClassLoader().getResourceAsStream("mapping/items.json")) {
|
||||||
if(stream == null) {
|
if(stream == null) {
|
||||||
TerraAllayPlugin.INSTANCE.getPluginLogger().error("items mapping not found");
|
TerraAllayPlugin.INSTANCE.getPluginLogger().error("items mapping not found");
|
||||||
return false;
|
return false;
|
||||||
@ -119,7 +121,7 @@ public final class Mapping {
|
|||||||
|
|
||||||
Map<String, ItemMapping> mappings = from(stream, new TypeToken<>() {});
|
Map<String, ItemMapping> mappings = from(stream, new TypeToken<>() {});
|
||||||
mappings.forEach((javaId, mapping) -> {
|
mappings.forEach((javaId, mapping) -> {
|
||||||
var itemType = ItemTypeSafeGetter
|
ItemType<?> itemType = ItemTypeSafeGetter
|
||||||
.name(mapping.bedrockId())
|
.name(mapping.bedrockId())
|
||||||
.meta(mapping.bedrockData())
|
.meta(mapping.bedrockData())
|
||||||
.itemType();
|
.itemType();
|
||||||
@ -133,7 +135,7 @@ public final class Mapping {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static boolean initBlockStateMapping() {
|
private static boolean initBlockStateMapping() {
|
||||||
try (var stream = Mapping.class.getClassLoader().getResourceAsStream("mapping/blocks.json")) {
|
try(InputStream stream = Mapping.class.getClassLoader().getResourceAsStream("mapping/blocks.json")) {
|
||||||
if(stream == null) {
|
if(stream == null) {
|
||||||
TerraAllayPlugin.INSTANCE.getPluginLogger().error("blocks mapping not found");
|
TerraAllayPlugin.INSTANCE.getPluginLogger().error("blocks mapping not found");
|
||||||
return false;
|
return false;
|
||||||
@ -142,8 +144,8 @@ public final class Mapping {
|
|||||||
Map<String, List<BlockMapping>> root = from(stream, new TypeToken<>() {});
|
Map<String, List<BlockMapping>> root = from(stream, new TypeToken<>() {});
|
||||||
List<BlockMapping> mappings = root.get("mappings");
|
List<BlockMapping> mappings = root.get("mappings");
|
||||||
mappings.forEach(mapping -> {
|
mappings.forEach(mapping -> {
|
||||||
var jeState = createJeBlockState(mapping.javaState());
|
JeBlockState jeState = createJeBlockState(mapping.javaState());
|
||||||
var beState = createBeBlockState(mapping.bedrockState());
|
BlockState beState = createBeBlockState(mapping.bedrockState());
|
||||||
BE_BLOCK_STATE_TO_JE.put(beState, jeState);
|
BE_BLOCK_STATE_TO_JE.put(beState, jeState);
|
||||||
JE_BLOCK_STATE_HASH_TO_BE.put(jeState.getHash(), beState);
|
JE_BLOCK_STATE_HASH_TO_BE.put(jeState.getHash(), beState);
|
||||||
});
|
});
|
||||||
@ -155,7 +157,7 @@ public final class Mapping {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static boolean initJeBlockDefaultProperties() {
|
private static boolean initJeBlockDefaultProperties() {
|
||||||
try (var stream = Mapping.class.getClassLoader().getResourceAsStream("je_block_default_states.json")) {
|
try(InputStream stream = Mapping.class.getClassLoader().getResourceAsStream("je_block_default_states.json")) {
|
||||||
if(stream == null) {
|
if(stream == null) {
|
||||||
TerraAllayPlugin.INSTANCE.getPluginLogger().error("je_block_default_states.json not found");
|
TerraAllayPlugin.INSTANCE.getPluginLogger().error("je_block_default_states.json not found");
|
||||||
return false;
|
return false;
|
||||||
@ -175,7 +177,7 @@ public final class Mapping {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static BlockState createBeBlockState(BlockMapping.BedrockState state) {
|
private static BlockState createBeBlockState(BlockMapping.BedrockState state) {
|
||||||
var getter = BlockStateSafeGetter.name("minecraft:" + state.bedrockId());
|
BlockStateSafeGetter.Getter getter = BlockStateSafeGetter.name("minecraft:" + state.bedrockId());
|
||||||
if(state.state() != null) {
|
if(state.state() != null) {
|
||||||
convertValueType(state.state()).forEach(getter::property);
|
convertValueType(state.state()).forEach(getter::property);
|
||||||
}
|
}
|
||||||
@ -184,7 +186,7 @@ public final class Mapping {
|
|||||||
|
|
||||||
private static Map<String, Object> convertValueType(Map<String, Object> data) {
|
private static Map<String, Object> convertValueType(Map<String, Object> data) {
|
||||||
Map<String, Object> result = new TreeMap<>();
|
Map<String, Object> result = new TreeMap<>();
|
||||||
for (var entry : data.entrySet()) {
|
for(Entry<String, Object> entry : data.entrySet()) {
|
||||||
if(entry.getValue() instanceof Number number) {
|
if(entry.getValue() instanceof Number number) {
|
||||||
// Convert double to int because the number in json is double
|
// Convert double to int because the number in json is double
|
||||||
result.put(entry.getKey(), number.intValue());
|
result.put(entry.getKey(), number.intValue());
|
||||||
@ -197,7 +199,7 @@ public final class Mapping {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static <V> V from(InputStream inputStream, TypeToken<V> typeToken) {
|
public static <V> V from(InputStream inputStream, TypeToken<V> typeToken) {
|
||||||
var reader = new JsonReader(new InputStreamReader(Objects.requireNonNull(inputStream)));
|
JsonReader reader = new JsonReader(new InputStreamReader(Objects.requireNonNull(inputStream)));
|
||||||
return GSON.fromJson(reader, typeToken.getType());
|
return GSON.fromJson(reader, typeToken.getType());
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -207,6 +209,7 @@ public final class Mapping {
|
|||||||
) {
|
) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public record ItemMapping(
|
public record ItemMapping(
|
||||||
@SerializedName("bedrock_identifier")
|
@SerializedName("bedrock_identifier")
|
||||||
String bedrockId,
|
String bedrockId,
|
||||||
@ -215,6 +218,7 @@ public final class Mapping {
|
|||||||
) {
|
) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public record BlockMapping(
|
public record BlockMapping(
|
||||||
@SerializedName("java_state")
|
@SerializedName("java_state")
|
||||||
BlockMapping.JavaState javaState,
|
BlockMapping.JavaState javaState,
|
||||||
@ -230,6 +234,7 @@ public final class Mapping {
|
|||||||
) {
|
) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public record BedrockState(
|
public record BedrockState(
|
||||||
@SerializedName("bedrock_identifier")
|
@SerializedName("bedrock_identifier")
|
||||||
String bedrockId,
|
String bedrockId,
|
||||||
@ -239,13 +244,16 @@ public final class Mapping {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @see <a href="https://stackoverflow.com/questions/59655279/is-there-an-easy-way-to-make-gson-skip-a-field-if-theres-an-error-deserializing">IgnoreFailureTypeAdapterFactory</a>
|
* @see <a
|
||||||
|
* href="https://stackoverflow.com/questions/59655279/is-there-an-easy-way-to-make-gson-skip-a-field-if-theres-an-error
|
||||||
|
* -deserializing">IgnoreFailureTypeAdapterFactory</a>
|
||||||
*/
|
*/
|
||||||
public static class IgnoreFailureTypeAdapterFactory implements TypeAdapterFactory {
|
public static class IgnoreFailureTypeAdapterFactory implements TypeAdapterFactory {
|
||||||
@Override
|
@Override
|
||||||
public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> typeToken) {
|
public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> typeToken) {
|
||||||
var delegate = gson.getDelegateAdapter(this, typeToken);
|
TypeAdapter<T> delegate = gson.getDelegateAdapter(this, typeToken);
|
||||||
return new TypeAdapter<>() {
|
return new TypeAdapter<>() {
|
||||||
@Override
|
@Override
|
||||||
public void write(JsonWriter writer, T value) throws IOException {
|
public void write(JsonWriter writer, T value) throws IOException {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user