22
33import com .mojang .logging .LogUtils ;
44import net .fabricmc .api .ClientModInitializer ;
5- import net .fabricmc .fabric .api .client .command .v2 .ClientCommandManager ;
65import net .fabricmc .fabric .api .client .command .v2 .ClientCommandRegistrationCallback ;
76import net .fabricmc .fabric .api .client .event .lifecycle .v1 .ClientTickEvents ;
87import net .fabricmc .fabric .api .command .v2 .ArgumentTypeRegistry ;
9- import net .fabricmc .loader .api .FabricLoader ;
10- import net .minecraft .client .Minecraft ;
118import net .minecraft .commands .synchronization .SingletonArgumentInfo ;
12- import net .minecraft .network .chat .Component ;
139import net .minecraft .resources .ResourceLocation ;
14- import org .geysermc .pack .bedrock .resource .BedrockResourcePack ;
15- import org .geysermc .pack .converter .PackConversionContext ;
16- import org .geysermc .pack .converter .PackConverter ;
17- import org .geysermc .pack .converter .converter .ActionListener ;
18- import org .geysermc .pack .converter .converter .Converter ;
19- import org .geysermc .pack .converter .converter .base .PackManifestConverter ;
20- import org .geysermc .pack .converter .converter .lang .LangConverter ;
21- import org .geysermc .pack .converter .converter .misc .SplashTextConverter ;
22- import org .geysermc .pack .converter .converter .model .ModelConverter ;
23- import org .geysermc .pack .converter .data .ConversionData ;
24- import org .geysermc .pack .converter .util .DefaultLogListener ;
25- import org .geysermc .pack .converter .util .LogListener ;
2610import org .geysermc .rainbow .command .CommandSuggestionsArgumentType ;
2711import org .geysermc .rainbow .command .PackGeneratorCommand ;
28- import org .geysermc .rainbow .creative .MinecraftCreativeResourcePack ;
2912import org .geysermc .rainbow .mapper .PackMapper ;
3013import org .slf4j .Logger ;
3114
32- import javax .imageio .ImageIO ;
33- import java .io .IOException ;
34- import java .nio .file .Path ;
35- import java .util .ArrayList ;
36- import java .util .List ;
37-
3815public class Rainbow implements ClientModInitializer {
3916
4017 public static final String MOD_ID = "rainbow" ;
@@ -52,58 +29,6 @@ public void onInitializeClient() {
5229
5330 ArgumentTypeRegistry .registerArgumentType (getModdedLocation ("command_suggestions" ),
5431 CommandSuggestionsArgumentType .class , SingletonArgumentInfo .contextFree (CommandSuggestionsArgumentType ::new ));
55-
56- ClientCommandRegistrationCallback .EVENT .register ((dispatcher , buildContext ) -> {
57- dispatcher .register (ClientCommandManager .literal ("debugtest" )
58- .executes (context -> {
59-
60- PackConverter packConverter = new PackConverter ()
61- .packName ("RAINBOW-TEST" )
62- .output (FabricLoader .getInstance ().getGameDir ().resolve ("pack-convert-out" ));
63- Path tmpDir = FabricLoader .getInstance ().getGameDir ().resolve ("pack-convert-temp" );
64-
65- ImageIO .scanForPlugins ();
66- MinecraftCreativeResourcePack resourcePack = new MinecraftCreativeResourcePack (Minecraft .getInstance ().getResourceManager ());
67- BedrockResourcePack bedrockResourcePack = new BedrockResourcePack (tmpDir );
68-
69- LogListener logListener = new DefaultLogListener ();
70- final Converter .ConversionDataCreationContext conversionDataCreationContext = new Converter .ConversionDataCreationContext (
71- packConverter , logListener , null , tmpDir , resourcePack , resourcePack
72- );
73-
74-
75- List <Converter <?>> converters = new ArrayList <>();
76- converters .add (new PackManifestConverter ());
77- converters .add (new LangConverter ());
78- converters .add (new ModelConverter ());
79-
80- int errors = 0 ;
81- for (Converter converter : converters ) {
82- ConversionData data = converter .createConversionData (conversionDataCreationContext );
83- PackConversionContext <?> conversionContext = new PackConversionContext <>(data , packConverter , resourcePack , bedrockResourcePack , logListener );
84-
85- List <ActionListener <?>> actionListeners = List .of ();
86- try {
87- actionListeners .forEach (actionListener -> actionListener .preConvert ((PackConversionContext ) conversionContext ));
88- converter .convert (conversionContext );
89- actionListeners .forEach (actionListener -> actionListener .postConvert ((PackConversionContext ) conversionContext ));
90- } catch (Throwable t ) {
91- logListener .error ("Error converting pack!" , t );
92- errors ++;
93- }
94- }
95-
96- try {
97- bedrockResourcePack .export ();
98- } catch (IOException e ) {
99- throw new RuntimeException (e );
100- }
101- context .getSource ().sendFeedback (Component .literal ("exporting, " + errors + " errors" ));
102-
103- return 0 ;
104- })
105- );
106- });
10732 }
10833
10934 public static ResourceLocation getModdedLocation (String path ) {
0 commit comments