77import java .io .IOException ;
88import java .nio .file .Files ;
99import java .nio .file .Path ;
10+ import java .nio .file .Paths ;
1011import java .time .Instant ;
1112import java .util .ArrayList ;
1213import java .util .Arrays ;
@@ -30,6 +31,7 @@ public class Generator {
3031 private Instant startTime ;
3132 private String postfix ;
3233 private String version ;
34+ private static List <String > lwjgl3Blacklist = new ArrayList <>();
3335
3436 private static JSONObject manifest ;
3537
@@ -48,6 +50,11 @@ public Generator(Path dir, boolean update, boolean packToFolders, boolean genMan
4850 }
4951
5052 public void generate () throws IOException {
53+ JSONArray blacklistObj = parseJSONArray (Paths .get ("src/main/resources/lwjgl3_blacklist.json" ));
54+ lwjgl3Blacklist .clear ();
55+ for (int i = 0 ; i < blacklistObj .length (); i ++) {
56+ lwjgl3Blacklist .add (blacklistObj .getString (i ));
57+ }
5158 Set <String > assets = new HashSet <>();
5259 Files .createDirectories (basePath .resolve ("assets" ));
5360 if (update ) {
@@ -157,10 +164,12 @@ public static boolean update(JSONObject json, String postfix, boolean lwjglCompa
157164 updated |= mergePreset (preset_paulscode , json );
158165 }
159166 if (time .compareTo (LWJGL2_TIME ) > 0 ) {
160- JSONObject preset_lwjgl3 = getPreset ("lwjgl3" );
161- updated |= mergePreset (preset_lwjgl3 , json );
162- if (lwjglCompat ) {
163- return false ;
167+ if (!lwjgl3Blacklist .contains (id )) {
168+ JSONObject preset_lwjgl3 = getPreset ("lwjgl3" );
169+ updated |= mergePreset (preset_lwjgl3 , json );
170+ if (lwjglCompat ) {
171+ return false ;
172+ }
164173 }
165174 } else {
166175 if (lwjglCompat ) {
0 commit comments