import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.gui.IGuiEventListener;
import net.minecraft.client.renderer.OpenGlHelper;
+import net.minecraft.client.resources.I18n;
import org.lwjgl.opengl.GL11;
import java.util.HashSet;
}
//done button
- addControl(new AbstractButton(200, this.width / 2 - 100, getY(5.5), 200, "Done") {
+ addControl(new AbstractButton(200, this.width / 2 - 100, getY(5.5), 200, I18n.format("gui.done")) {
@Override
public void onPressed() {
ConfigManager.saveConfig();
this.title = "Bounding Box Outline Reloaded";
this.controls = new HashSet<>();
- this.addTabs("General", "Structures", "Villages");
+ this.addTabs(I18n.format("bbor.tabs.general"),
+ I18n.format("bbor.tabs.structures"),
+ I18n.format("bbor.tabs.villages"));
buildTab(0,
- (id, x, y, width) -> new AbstractButton(id, x, y, width, "Active", this.mc.world != null) {
+ (id, x, y, width) -> new AbstractButton(id, x, y, width, I18n.format("bbor.options.active"), this.mc.world != null) {
@Override
public void onPressed() {
ClientRenderer.toggleActive();
return enabled ? ClientRenderer.getActive() ? 2 : 1 : 0;
}
},
- (id, x, y, width) -> new BoolSettingButton(id, x, y, width, "Outer Box Only", ConfigManager.outerBoxesOnly),
- (id, x, y, width) -> new BoolSettingButton(id, x, y, width, "Fill", ConfigManager.fill),
+ (id, x, y, width) -> new BoolSettingButton(id, x, y, width, I18n.format("bbor.options.outerBoxOnly"), ConfigManager.outerBoxesOnly),
+ (id, x, y, width) -> new BoolSettingButton(id, x, y, width, I18n.format("bbor.options.fill"), ConfigManager.fill),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Spawn Chunks", BoundingBoxType.WorldSpawn),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Lazy Chunks", BoundingBoxType.LazySpawnChunks),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.features.spawnChunks"), BoundingBoxType.WorldSpawn),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.features.lazyChunks"), BoundingBoxType.LazySpawnChunks),
(id, x, y, width) -> new MaxYSettingSlider(id, x, y, width, 39, ConfigManager.worldSpawnMaxY),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Slime Chunks", BoundingBoxType.SlimeChunks),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.features.slimeChunks"), BoundingBoxType.SlimeChunks),
(id, x, y, width) -> new MaxYSettingSlider(id, x, y, width, 39, ConfigManager.slimeChunkMaxY),
(id, x, y, width) -> (IRowHeight) () -> 0,
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Mob Spawners", BoundingBoxType.MobSpawner),
- (id, x, y, width) -> new BoolSettingButton(id, x, y, width, "Spawn Area", ConfigManager.renderMobSpawnerSpawnArea),
- (id, x, y, width) -> new BoolSettingButton(id, x, y, width, "Activation Lines", ConfigManager.renderMobSpawnerActivationLines),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.features.mobSpawners"), BoundingBoxType.MobSpawner),
+ (id, x, y, width) -> new BoolSettingButton(id, x, y, width, I18n.format("bbor.features.mobSpawners.spawnArea"), ConfigManager.renderMobSpawnerSpawnArea),
+ (id, x, y, width) -> new BoolSettingButton(id, x, y, width, I18n.format("bbor.features.mobSpawners.activationLines"), ConfigManager.renderMobSpawnerActivationLines),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Spawn Sphere", BoundingBoxType.AFKSphere),
- (id, x, y, width) -> new BoolSettingButton(id, x, y, width, "Spawnable Blocks", ConfigManager.renderAFKSpawnableBlocks),
- (id, x, y, width) -> new IntSettingSlider(id, x, y, width, 1, 3, "Distance", ConfigManager.afkSpawnableBlocksRenderDistance)
- .addDisplayValue(1, "Nearest")
- .addDisplayValue(2, "Nearer")
- .addDisplayValue(3, "Normal"),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.features.spawningSpheres"), BoundingBoxType.AFKSphere),
+ (id, x, y, width) -> new BoolSettingButton(id, x, y, width, I18n.format("bbor.features.spawningSpheres.spawnableBlocks"), ConfigManager.renderAFKSpawnableBlocks),
+ (id, x, y, width) -> new IntSettingSlider(id, x, y, width, 1, 3, "bbor.options.distance", ConfigManager.afkSpawnableBlocksRenderDistance)
+ .addDisplayValue(1, I18n.format("bbor.options.distance.nearest"))
+ .addDisplayValue(2, I18n.format("bbor.options.distance.nearer"))
+ .addDisplayValue(3, I18n.format("bbor.options.distance.normal")),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Biome Borders", BoundingBoxType.BiomeBorder),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.features.biomeBorders"), BoundingBoxType.BiomeBorder),
(id, x, y, width) -> new MaxYSettingSlider(id, x, y, width, 1, ConfigManager.biomeBordersMaxY),
- (id, x, y, width) -> new IntSettingSlider(id, x, y, width, 1, 3, "Distance", ConfigManager.biomeBordersRenderDistance)
- .addDisplayValue(1, "Nearest")
- .addDisplayValue(2, "Nearer")
- .addDisplayValue(3, "Normal"));
+ (id, x, y, width) -> new IntSettingSlider(id, x, y, width, 1, 3, "bbor.options.distance", ConfigManager.biomeBordersRenderDistance)
+ .addDisplayValue(1, I18n.format("bbor.options.distance.nearest"))
+ .addDisplayValue(2, I18n.format("bbor.options.distance.nearer"))
+ .addDisplayValue(3, I18n.format("bbor.options.distance.normal")));
buildTab(1,
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Desert Temples", BoundingBoxType.DesertTemple),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Jungle Temples", BoundingBoxType.JungleTemple),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Witch Huts", BoundingBoxType.WitchHut),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.desertTemples"), BoundingBoxType.DesertTemple),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.jungleTemples"), BoundingBoxType.JungleTemple),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.witchHuts"), BoundingBoxType.WitchHut),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Mansions", BoundingBoxType.Mansion),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Monuments", BoundingBoxType.OceanMonument),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Igloos", BoundingBoxType.Igloo),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.mansions"), BoundingBoxType.Mansion),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.monuments"), BoundingBoxType.OceanMonument),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.igloos"), BoundingBoxType.Igloo),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Ocean Ruins", BoundingBoxType.OceanRuin),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Buried Treasure", BoundingBoxType.BuriedTreasure),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Shipwrecks", BoundingBoxType.Shipwreck),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.oceanRuins"), BoundingBoxType.OceanRuin),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.buriedTreasure"), BoundingBoxType.BuriedTreasure),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.shipwrecks"), BoundingBoxType.Shipwreck),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Strongholds", BoundingBoxType.Stronghold),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Mineshafts", BoundingBoxType.MineShaft),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Pillager Outposts", BoundingBoxType.PillagerOutpost, false),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.strongholds"), BoundingBoxType.Stronghold),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.mineshafts"), BoundingBoxType.MineShaft),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.pillagerOutposts"), BoundingBoxType.PillagerOutpost, false),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Villages", BoundingBoxType.Village),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "Fortresses", BoundingBoxType.NetherFortress),
- (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, "End Cities", BoundingBoxType.EndCity));
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.villages"), BoundingBoxType.Village),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.fortresses"), BoundingBoxType.NetherFortress),
+ (id, x, y, width) -> new BoundingBoxTypeButton(id, x, y, width, I18n.format("bbor.structures.endCities"), BoundingBoxType.EndCity));
buildTab(2,
- (id, x, y, width) -> new BoolSettingButton(id, x, y, width, "Village Spheres", ConfigManager.drawVillageSpheres),
- (id, x, y, width) -> new BoolSettingButton(id, x, y, width, "Door Lines", ConfigManager.drawVillageDoors),
- (id, x, y, width) -> new BoolSettingButton(id, x, y, width, "Golem Spawn", ConfigManager.drawIronGolemSpawnArea),
-
- (id, x, y, width) -> new IntSettingSlider(id, x, y, width, 1, 5, "Dot Size", ConfigManager.villageSphereDotSize),
- (id, x, y, width) -> new IntSettingSlider(id, x, y, width, 1, 5, "Density", ConfigManager.villageSphereDensity)
- .addDisplayValue(1, "Fewest")
- .addDisplayValue(2, "Fewer")
- .addDisplayValue(3, "Normal")
- .addDisplayValue(4, "More")
- .addDisplayValue(5, "Most"));
+ (id, x, y, width) -> new BoolSettingButton(id, x, y, width, I18n.format("bbor.features.villageSpheres"), ConfigManager.drawVillageSpheres),
+ (id, x, y, width) -> new BoolSettingButton(id, x, y, width, I18n.format("bbor.features.villageSpheres.doorLines"), ConfigManager.drawVillageDoors),
+ (id, x, y, width) -> new BoolSettingButton(id, x, y, width, I18n.format("bbor.features.villageSpheres.golemSpawn"), ConfigManager.drawIronGolemSpawnArea),
+
+ (id, x, y, width) -> new IntSettingSlider(id, x, y, width, 1, 5, "bbor.features.villageSpheres.dotSize", ConfigManager.villageSphereDotSize),
+ (id, x, y, width) -> new IntSettingSlider(id, x, y, width, 1, 5, "bbor.features.villageSpheres.density", ConfigManager.villageSphereDensity)
+ .addDisplayValue(1, I18n.format("bbor.features.villageSpheres.density.fewest"))
+ .addDisplayValue(2, I18n.format("bbor.features.villageSpheres.density.fewer"))
+ .addDisplayValue(3, I18n.format("bbor.features.villageSpheres.density.normal"))
+ .addDisplayValue(4, I18n.format("bbor.features.villageSpheres.density.more"))
+ .addDisplayValue(5, I18n.format("bbor.features.villageSpheres.density.most")));
}
private void drawScreen(int top, int bottom) {
--- /dev/null
+{
+ "bbor.key.toggleActive": "Toggle Active",
+
+ "bbor.tabs.general": "General",
+ "bbor.tabs.structures": "Structures",
+ "bbor.tabs.villages": "Villages",
+
+ "bbor.options.active": "Active",
+ "bbor.options.outerBoxOnly": "Outer Box Only",
+ "bbor.options.fill": "Fill",
+
+ "bbor.options.maxY": "Max Y: %s",
+ "bbor.options.maxY.activated": "Activated",
+ "bbor.options.maxY.player": "Player",
+ "bbor.options.maxY.seaLevel": "Sea Level",
+
+ "bbor.options.distance": "Distance: %s",
+ "bbor.options.distance.nearest": "Nearest",
+ "bbor.options.distance.nearer": "Nearer",
+ "bbor.options.distance.normal": "Normal",
+
+ "bbor.features.spawnChunks": "Spawn Chunks",
+ "bbor.features.lazyChunks": "Lazy Chunks",
+ "bbor.features.slimeChunks": "Slime Chunks",
+ "bbor.features.mobSpawners": "Mob Spawners",
+ "bbor.features.mobSpawners.spawnArea": "Spawn Area",
+ "bbor.features.mobSpawners.activationLines": "Activation Lines",
+ "bbor.features.spawningSpheres": "Spawning Spheres",
+ "bbor.features.spawningSpheres.spawnableBlocks": "Spawnable Blocks",
+ "bbor.features.biomeBorders": "Biome Borders",
+ "bbor.features.biomeBorders.onlyThisBiome": "Only This Biome",
+
+ "bbor.structures.desertTemples": "Desert Temples",
+ "bbor.structures.jungleTemples": "Jungle Temples",
+ "bbor.structures.witchHuts": "Witch Huts",
+ "bbor.structures.mansions": "Mansions",
+ "bbor.structures.monuments": "Monuments",
+ "bbor.structures.igloos": "Igloos",
+ "bbor.structures.oceanRuins": "Ocean Ruins",
+ "bbor.structures.buriedTreasure": "Buried Treasure",
+ "bbor.structures.shipwrecks": "Shipwrecks",
+ "bbor.structures.strongholds": "Strongholds",
+ "bbor.structures.mineshafts": "Mineshafts",
+ "bbor.structures.pillagerOutposts": "Pillager Outposts",
+ "bbor.structures.villages": "Villages",
+ "bbor.structures.fortresses": "Fortresses",
+
+ "bbor.features.villageSpheres": "Village Spheres",
+ "bbor.features.villageSpheres.doorLines": "Door Lines",
+ "bbor.features.villageSpheres.golemSpawn": "Golem Spawn",
+ "bbor.features.villageSpheres.dotSize": "Dot Size: %s",
+ "bbor.features.villageSpheres.density": "Density: %s",
+ "bbor.features.villageSpheres.density.fewest": "Fewest",
+ "bbor.features.villageSpheres.density.fewer": "Fewer",
+ "bbor.features.villageSpheres.density.normal": "Normal",
+ "bbor.features.villageSpheres.density.more": "More",
+ "bbor.features.villageSpheres.density.most": "Most",
+
+ "bbor.commands.box.added": "Box added with start [x=%d, y=%d, z=%d] and end [x=%d, y=%d, z=%d]",
+ "bbor.commands.box.cleared.all": "All boxes cleared",
+ "bbor.commands.box.cleared": "Box cleared with start [x=%d, y=%d, z=%d] and end [x=%d, y=%d, z=%d]",
+ "bbor.commands.box.notFound": "No box found with start [x=%d, y=%d, z=%d] and end [x=%d, y=%d, z=%d]",
+
+ "bbor.commands.spawningSphere.set": "Spawning sphere set",
+ "bbor.commands.spawningSphere.notSet": "No spawning sphere set",
+ "bbor.commands.spawningSphere.cleared": "Spawning sphere cleared",
+ "bbor.commands.spawningSphere.calculated": "Calculated %s spawnable spaces",
+
+ "bbor.renderer.spawningSphere.spawnable": "Spawnable:",
+ "bbor.renderer.spawningSphere.none": "None"
+}
\ No newline at end of file