Skip to content

Commit e6e9756

Browse files
committed
add config.json
1 parent f90b8bf commit e6e9756

8 files changed

Lines changed: 53 additions & 37 deletions

File tree

pom.xml

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656
<dependency>
5757
<groupId>org.geysermc.geyser</groupId>
5858
<artifactId>api</artifactId>
59-
<version>2.5.0-SNAPSHOT</version>
59+
<version>2.2.3-SNAPSHOT</version>
6060
<scope>provided</scope>
6161
</dependency>
6262
<dependency>
@@ -66,20 +66,5 @@
6666
<scope>system</scope>
6767
<systemPath>${project.basedir}/libs/geyserutils-geyser-1.0-SNAPSHOT.jar</systemPath>
6868
</dependency>
69-
<dependency>
70-
<groupId>me.rochblondiaux</groupId>
71-
<artifactId>blockbenchmodelreader</artifactId>
72-
<version>1.2</version>
73-
</dependency>
74-
<dependency>
75-
<groupId>com.github.GeyserMC.PackConverter</groupId>
76-
<artifactId>bedrock-pack-schema</artifactId>
77-
<version>3d8150474d</version>
78-
</dependency>
79-
<dependency>
80-
<groupId>com.github.GeyserMC.PackConverter</groupId>
81-
<artifactId>pack-schema-api</artifactId>
82-
<version>3d8150474d</version>
83-
</dependency>
8469
</dependencies>
8570
</project>

src/main/java/re/imc/geysermodelenginepackgenerator/ExtensionMain.java renamed to src/main/java/re/imc/geysermodelenginepackgenerator/GeyserModelEnginePackGenerator.java

Lines changed: 35 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,37 @@
11
package re.imc.geysermodelenginepackgenerator;
22

3-
import me.zimzaza4.geyserutils.geyser.GeyserUtils;
4-
import org.checkerframework.checker.nullness.qual.NonNull;
3+
import com.google.gson.Gson;
4+
import lombok.Getter;
55
import org.geysermc.event.subscribe.Subscribe;
66
import org.geysermc.geyser.api.command.Command;
7-
import org.geysermc.geyser.api.command.CommandExecutor;
87
import org.geysermc.geyser.api.command.CommandSource;
98
import org.geysermc.geyser.api.event.lifecycle.GeyserDefineCommandsEvent;
109
import org.geysermc.geyser.api.event.lifecycle.GeyserLoadResourcePacksEvent;
1110
import org.geysermc.geyser.api.event.lifecycle.GeyserPreInitializeEvent;
1211
import org.geysermc.geyser.api.extension.Extension;
1312
import org.geysermc.geyser.api.extension.ExtensionLogger;
13+
import re.imc.geysermodelenginepackgenerator.config.Config;
1414
import re.imc.geysermodelenginepackgenerator.generator.Entity;
15-
import re.imc.geysermodelenginepackgenerator.generator.Geometry;
1615
import re.imc.geysermodelenginepackgenerator.util.ZipUtil;
1716

1817
import java.io.File;
1918
import java.io.IOException;
20-
import java.nio.channels.FileChannel;
19+
import java.io.InputStream;
20+
import java.net.URI;
21+
import java.net.URISyntaxException;
2122
import java.nio.file.Files;
2223
import java.nio.file.Path;
2324
import java.nio.file.StandardCopyOption;
24-
import java.util.List;
2525
import java.util.zip.ZipOutputStream;
2626

27-
public class ExtensionMain implements Extension {
27+
public class GeyserModelEnginePackGenerator implements Extension {
2828

2929
private File source;
3030

3131
public static ExtensionLogger logger;
3232
Path generatedPackZip;
33+
@Getter
34+
Config config = new Config();
3335

3436
@Subscribe
3537
public void onLoad(GeyserPreInitializeEvent event) {
@@ -57,10 +59,31 @@ public void onDefineCommand(GeyserDefineCommandsEvent event) {
5759
}
5860

5961
public void loadConfig() {
60-
6162
File generatedPack = dataFolder().resolve("generated_pack").toFile();
63+
File configFile = dataFolder().resolve("config.json").toFile();
64+
65+
Gson gson = new Gson();
66+
67+
if (!configFile.exists()) {
68+
try {
69+
configFile.createNewFile();
70+
} catch (IOException e) {
71+
e.printStackTrace();
72+
}
73+
try {
74+
Files.writeString(configFile.toPath(), gson.toJson(config));
75+
} catch (IOException e) {
76+
e.printStackTrace();
77+
}
78+
}
6279

63-
GeneratorMain.startGenerate(source, generatedPack);
80+
try {
81+
config = gson.fromJson(Files.readString(configFile.toPath()), Config.class);
82+
} catch (IOException e) {
83+
e.printStackTrace();
84+
}
85+
86+
PackGenerator.startGenerate(source, generatedPack);
6487

6588
generatedPackZip = dataFolder().resolve("generated_pack.zip");
6689

@@ -70,16 +93,17 @@ public void loadConfig() {
7093
e.printStackTrace();
7194
}
7295

73-
for (Entity entity : GeneratorMain.entityMap.values()) {
96+
for (Entity entity : PackGenerator.entityMap.values()) {
7497
entity.register();
7598
}
7699

77100
}
78101

79102

103+
80104
@Subscribe
81105
public void onPackLoad(GeyserLoadResourcePacksEvent event) {
82-
if (Boolean.parseBoolean(System.getProperty("geyser-model-engine-auto-load-pack", "true"))) {
106+
if (Boolean.parseBoolean(System.getProperty("geyser-model-engine-auto-load-pack", "true")) || config.isAutoLoadPack()) {
83107
event.resourcePacks().add(generatedPackZip);
84108
}
85109
}

src/main/java/re/imc/geysermodelenginepackgenerator/GeneratorMain.java renamed to src/main/java/re/imc/geysermodelenginepackgenerator/PackGenerator.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,15 @@
55
import com.google.gson.JsonParser;
66
import re.imc.geysermodelenginepackgenerator.generator.*;
77

8-
import javax.imageio.ImageIO;
98
import java.io.*;
109
import java.nio.charset.StandardCharsets;
1110
import java.nio.file.Files;
1211
import java.nio.file.Path;
13-
import java.nio.file.StandardCopyOption;
1412
import java.util.*;
1513
import java.util.zip.ZipEntry;
1614
import java.util.zip.ZipFile;
17-
import java.util.zip.ZipInputStream;
1815

19-
public class GeneratorMain {
16+
public class PackGenerator {
2017
public static final Map<String, Entity> entityMap = new HashMap<>();
2118
public static final Map<String, Animation> animationMap = new HashMap<>();
2219
public static final Map<String, Geometry> geometryMap = new HashMap<>();
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package re.imc.geysermodelenginepackgenerator.config;
2+
3+
import com.google.gson.annotations.SerializedName;
4+
import lombok.Getter;
5+
import lombok.Setter;
6+
7+
@Getter
8+
@Setter
9+
public class Config {
10+
@SerializedName("auto_load_pack")
11+
boolean autoLoadPack = true;
12+
}

src/main/java/re/imc/geysermodelenginepackgenerator/generator/Animation.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import lombok.Getter;
99
import lombok.NoArgsConstructor;
1010
import lombok.Setter;
11-
import re.imc.geysermodelenginepackgenerator.GeneratorMain;
11+
import re.imc.geysermodelenginepackgenerator.PackGenerator;
1212

1313
import java.util.HashSet;
1414
import java.util.Map;
@@ -119,7 +119,7 @@ public void addHeadBind(Geometry geometry) {
119119
if (i == 0) {
120120
return;
121121
}
122-
GeneratorMain.entityMap
122+
PackGenerator.entityMap
123123
.get(modelId).setHasHeadAnimation(true);
124124

125125
object.add("bones", bones);

src/main/java/re/imc/geysermodelenginepackgenerator/generator/Entity.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public class Entity {
3232
"textures": {
3333
},
3434
"geometry": {
35-
35+
3636
},
3737
"animations": {
3838
"look_at_target": "%look_at_target%"

src/main/java/re/imc/geysermodelenginepackgenerator/generator/Geometry.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
import lombok.Getter;
66
import lombok.NoArgsConstructor;
77
import lombok.Setter;
8-
import org.geysermc.geyser.api.extension.ExtensionLogger;
9-
import re.imc.geysermodelenginepackgenerator.ExtensionMain;
108

119
import java.util.*;
1210

src/main/resources/extension.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: GeyserModelEnginePackGenerator
22
id: geysermodelenginepackgenerator
3-
main: re.imc.geysermodelenginepackgenerator.ExtensionMain
3+
main: re.imc.geysermodelenginepackgenerator.GeyserModelEnginePackGenerator
44
api: 1.0.0
55
version: 1.0.0
66
authors: [zimzaza4]

0 commit comments

Comments
 (0)