Skip to content

Commit 980ed14

Browse files
committed
Support for LAccess extraction
UnitCommand extraction disabled as there will be an incompatible change in Mindustry 8.
1 parent a16409c commit 980ed14

File tree

1 file changed

+35
-1
lines changed

1 file changed

+35
-1
lines changed

src/mimex/MindustryMetadataExtractor.java

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,11 @@
22

33
import arc.Core;
44
import arc.files.Fi;
5+
import arc.struct.EnumSet;
56
import arc.util.Log;
67
import mindustry.Vars;
78
import mindustry.ai.UnitCommand;
9+
import mindustry.logic.LAccess;
810
import mindustry.mod.Mod;
911
import mindustry.world.Block;
1012
import mindustry.world.blocks.distribution.ItemBridge;
@@ -35,7 +37,8 @@ public void init() {
3537
writeItems();
3638
writeLiquids();
3739
writeUnits();
38-
writeCommands();
40+
//writeCommands();
41+
writeLAccess();
3942
}
4043

4144
private void writeIcons() {
@@ -197,6 +200,37 @@ private void writeCommands() {
197200
Log.info("Created local file " + fi.absolutePath());
198201
}
199202

203+
private void writeLAccess() {
204+
StringBuilder sbr = new StringBuilder();
205+
206+
sbr.append("// DO NOT EDIT! Generated by mimex - Mindustry Metadata Extractor").append(newLine);
207+
208+
sbr.append("name")
209+
.append(';').append("senseable")
210+
.append(';').append("controls")
211+
.append(';').append("settable")
212+
.append(';').append("parameters")
213+
.append(newLine);
214+
215+
EnumSet<LAccess>
216+
senseable = EnumSet.of(LAccess.senseable),
217+
controls = EnumSet.of(LAccess.controls),
218+
settable = EnumSet.of(LAccess.settable);
219+
220+
for (LAccess l : LAccess.all) {
221+
sbr.append(l.name())
222+
.append(';').append(senseable.contains(l) ? "1" : "0")
223+
.append(';').append(controls.contains(l) ? "1" : "0")
224+
.append(';').append(settable.contains(l) ? "1" : "0")
225+
.append(';').append(String.join(",", l.params))
226+
.append(newLine);
227+
}
228+
229+
Fi fi = Core.files.local("mimex-laccess.txt");
230+
fi.writeString(sbr.toString());
231+
Log.info("Created local file " + fi.absolutePath());
232+
}
233+
200234
private final Map<BuildVisibility, String> visibilityMap = new IdentityHashMap<>(); {
201235
visibilityMap.put(BuildVisibility.hidden, "hidden");
202236
visibilityMap.put(BuildVisibility.shown, "shown");

0 commit comments

Comments
 (0)