Updated to version 5.1
Added second new visual speed type display Renamed Config.Config to Config.config (Private variable) Renamed Config.config to Config.ConfigFile (Local variable) Added red triangle to the discouraged visual speed type display Cleaned up some code Added credits to org.json to readme.md
This commit is contained in:
@@ -15,10 +15,8 @@ import net.minecraft.world.entity.vehicle.Boat;
|
||||
import net.minecraft.world.entity.vehicle.Minecart;
|
||||
import net.minecraft.world.phys.Vec3;
|
||||
|
||||
import javax.imageio.ImageIO;
|
||||
import java.awt.*;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Objects;
|
||||
@@ -133,6 +131,11 @@ public class Client {
|
||||
}/100;
|
||||
double i = (v *(316-45))+45;
|
||||
|
||||
int yPos = getPos(graphics, Config.getYPosition(), 1);
|
||||
int xPos = getPos(graphics, Config.getXPosition(), 0);
|
||||
|
||||
int lineHeight = Minecraft.getInstance().font.lineHeight;
|
||||
|
||||
if(Config.getVisualSpeedometer() && !speedometerVisualDisplayFailed){
|
||||
|
||||
//double v = speedTypeSpeed / speedType.gatMaxVisual();
|
||||
@@ -147,6 +150,11 @@ public class Client {
|
||||
if(Config.getShowVisualSpeedType()) {
|
||||
g2d.drawString(SpeedTypes.getName(speedType).getString(), img.getWidth() / 2 - 27, img.getHeight() / 2 + 25);
|
||||
}
|
||||
if(Config.getShowSpeedType()){
|
||||
String speedString = SpeedTypes.getName(speedType).getString();
|
||||
int width = Minecraft.getInstance().font.width(speedString);
|
||||
drawString(graphics, xPos - width, yPos - Config.getImageSize() - lineHeight - 1, speedString, Config.getColor().getColor());
|
||||
}
|
||||
|
||||
BufferedImage img = ImageHandler.scale(Client.img, Config.getImageSize(), Config.getImageSize());
|
||||
|
||||
@@ -163,9 +171,6 @@ public class Client {
|
||||
|
||||
g2d.drawLine(x3,y3,img.getWidth()/2,img.getHeight()/2);
|
||||
|
||||
int xPos = getPos(graphics, Config.getXPosition(), 0);
|
||||
int yPos = getPos(graphics, Config.getYPosition(), 1);
|
||||
|
||||
for(int x1 = 0; x1 < img.getWidth(); x1++){
|
||||
for(int y1 = 0; y1 < img.getHeight(); y1++){
|
||||
int x2 = x1 + xPos - img.getWidth();
|
||||
@@ -196,12 +201,11 @@ public class Client {
|
||||
// k -> color RGB int
|
||||
String speedString = format + " " + SpeedTypes.getName(speedType).getString();
|
||||
int width = Minecraft.getInstance().font.width(speedString);
|
||||
int lineHeight = Minecraft.getInstance().font.lineHeight;
|
||||
graphics.drawString(
|
||||
Minecraft.getInstance().font,
|
||||
speedString,
|
||||
getPos(graphics, Config.getXPosition(), 0) - width,
|
||||
getPos(graphics, Config.getYPosition(), 1) - lineHeight,
|
||||
xPos - width,
|
||||
yPos - lineHeight,
|
||||
Config.getColor().getColor()
|
||||
);
|
||||
}
|
||||
|
||||
@@ -10,47 +10,47 @@ import me.shedaniel.math.Color;
|
||||
import static me.zacharias.speedometer.Speedometer.MOD_ID;
|
||||
|
||||
public class Config {
|
||||
private static JSONObject Config;
|
||||
private static JSONObject config;
|
||||
public static final float configVersion = 3f;
|
||||
private static int counter = 0;
|
||||
|
||||
public static void initialize(){
|
||||
if(Config != null) throw new RuntimeException("Already Initialized");
|
||||
File config = new File(Platform.getConfigFolder().toString()+"/"+MOD_ID+"/config.json");
|
||||
if(!config.exists()){
|
||||
if(config != null) throw new RuntimeException("Already Initialized");
|
||||
File configFile = new File(Platform.getConfigFolder().toString()+"/"+MOD_ID+"/config.json");
|
||||
if(!configFile.exists()){
|
||||
try {
|
||||
config.getParentFile().mkdir();
|
||||
config.createNewFile();
|
||||
configFile.getParentFile().mkdir();
|
||||
configFile.createNewFile();
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
Config = new JSONObject();
|
||||
config = new JSONObject();
|
||||
|
||||
defualt();
|
||||
}else {
|
||||
try {
|
||||
BufferedReader in = new BufferedReader(new FileReader(config));
|
||||
BufferedReader in = new BufferedReader(new FileReader(configFile));
|
||||
String tmp;
|
||||
StringBuilder builder = new StringBuilder();
|
||||
while((tmp = in.readLine()) != null){
|
||||
builder.append(tmp);
|
||||
}
|
||||
Config = new JSONObject(builder.toString());
|
||||
if(Config.has("version")){
|
||||
if(Config.getFloat("version")!=configVersion){
|
||||
if(Config.getFloat("version") > configVersion){
|
||||
config = new JSONObject(builder.toString());
|
||||
if(config.has("version")){
|
||||
if(config.getFloat("version")!=configVersion){
|
||||
if(config.getFloat("version") > configVersion){
|
||||
defualt();
|
||||
|
||||
save();
|
||||
}else if(Config.getFloat("version") < configVersion){
|
||||
Config = new JSONObject();
|
||||
}else if(config.getFloat("version") < configVersion){
|
||||
config = new JSONObject();
|
||||
|
||||
defualt();
|
||||
save();
|
||||
}
|
||||
}
|
||||
}else{
|
||||
Config = new JSONObject();
|
||||
config = new JSONObject();
|
||||
defualt();
|
||||
save();
|
||||
}
|
||||
@@ -61,57 +61,48 @@ public class Config {
|
||||
}
|
||||
|
||||
private static void defualt() {
|
||||
if(!Config.has("speed")) {
|
||||
Config.put("speed", SpeedTypes.BlockPS);
|
||||
if(!config.has("speed")) {
|
||||
config.put("speed", SpeedTypes.BlockPS);
|
||||
}
|
||||
if(!Config.has("useKnot")) {
|
||||
Config.put("useKnot", false);
|
||||
if(!config.has("useKnot")) {
|
||||
config.put("useKnot", false);
|
||||
}
|
||||
if(!Config.has("color")) {
|
||||
Config.put("color", new JSONObject()
|
||||
if(!config.has("color")) {
|
||||
config.put("color", new JSONObject()
|
||||
.put("r", 16)
|
||||
.put("g", 146)
|
||||
.put("b", 158)
|
||||
);
|
||||
}
|
||||
if(!Config.has("visualSpeedometer")) {
|
||||
Config.put("visualSpeedometer", false);
|
||||
if(!config.has("visualSpeedometer")) {
|
||||
config.put("visualSpeedometer", false);
|
||||
}
|
||||
|
||||
/*if(!Config.has("xPositionVisual")) {
|
||||
Config.put("xPositionVisual", "W-3");
|
||||
if(!config.has("xPosition")) {
|
||||
config.put("xPosition", "W-3");
|
||||
}
|
||||
if(!Config.has("yPositionVisual")) {
|
||||
Config.put("yPositionVisual", "H-3");
|
||||
}
|
||||
if(!Config.has("xPositionText")) {
|
||||
Config.put("xPositionText", "W-3");
|
||||
}
|
||||
if(!Config.has("yPositionText")) {
|
||||
Config.put("yPositionText", "H-3");
|
||||
}*/
|
||||
|
||||
if(!Config.has("xPosition")) {
|
||||
Config.put("xPosition", "W-3");
|
||||
}
|
||||
if(!Config.has("yPosition")) {
|
||||
Config.put("yPosition", "H-3");
|
||||
if(!config.has("yPosition")) {
|
||||
config.put("yPosition", "H-3");
|
||||
}
|
||||
|
||||
if(!Config.has("debug")) {
|
||||
Config.put("debug", false);
|
||||
if(!config.has("debug")) {
|
||||
config.put("debug", false);
|
||||
}
|
||||
|
||||
if(!Config.has("imagSize")) {
|
||||
Config.put("imageSize", 19);
|
||||
if(!config.has("imagSize")) {
|
||||
config.put("imageSize", 19);
|
||||
}
|
||||
|
||||
if(!Config.has("version")) {
|
||||
Config.put("version", configVersion);
|
||||
if(!config.has("version")) {
|
||||
config.put("version", configVersion);
|
||||
}
|
||||
|
||||
if(!Config.has("showVisualSpeedType")){
|
||||
Config.put("showVisualSpeedType", false);
|
||||
if(!config.has("showVisualSpeedType")){
|
||||
config.put("showVisualSpeedType", false);
|
||||
}
|
||||
|
||||
if(!config.has("showSpeedType")){
|
||||
config.put("showSpeedType", false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -127,7 +118,7 @@ public class Config {
|
||||
}
|
||||
try {
|
||||
BufferedWriter out = new BufferedWriter(new FileWriter(config));
|
||||
out.write(Config.toString(4));
|
||||
out.write(Config.config.toString(4));
|
||||
out.flush();
|
||||
out.close();
|
||||
}catch (Exception e){
|
||||
@@ -137,24 +128,24 @@ public class Config {
|
||||
}
|
||||
|
||||
public static SpeedTypes getSpeedType(){
|
||||
if(Config.has("speed")){
|
||||
return Config.getEnum(SpeedTypes.class, "speed");
|
||||
if(config.has("speed")){
|
||||
return config.getEnum(SpeedTypes.class, "speed");
|
||||
}else{
|
||||
return SpeedTypes.BlockPS;
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean getUseKnot() {
|
||||
if(Config.has("useKnot")){
|
||||
return Config.getBoolean("useKnot");
|
||||
if(config.has("useKnot")){
|
||||
return config.getBoolean("useKnot");
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static Color getColor(){
|
||||
if(Config.has("color")){
|
||||
JSONObject color = Config.getJSONObject("color");
|
||||
if(config.has("color")){
|
||||
JSONObject color = config.getJSONObject("color");
|
||||
return Color.ofRGB(
|
||||
color.getInt("r"),
|
||||
color.getInt("g"),
|
||||
@@ -166,16 +157,16 @@ public class Config {
|
||||
}
|
||||
|
||||
public static boolean isDebug() {
|
||||
if(Config.has("debug")){
|
||||
return Config.getBoolean("debug");
|
||||
if(config.has("debug")){
|
||||
return config.getBoolean("debug");
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean getVisualSpeedometer(){
|
||||
if(Config.has("visualSpeedometer")){
|
||||
return Config.getBoolean("visualSpeedometer");
|
||||
if(config.has("visualSpeedometer")){
|
||||
return config.getBoolean("visualSpeedometer");
|
||||
}else {
|
||||
return false;
|
||||
}
|
||||
@@ -188,71 +179,48 @@ public class Config {
|
||||
counter++;
|
||||
}
|
||||
|
||||
/*public static String getXPositionVisual(){
|
||||
if(Config.has("xPositionVisual")) {
|
||||
return Config.getString("xPositionVisual");
|
||||
}else{
|
||||
return "W-23";
|
||||
}
|
||||
}
|
||||
|
||||
public static String getYPositionVisual() {
|
||||
if (Config.has("yPositionVisual")) {
|
||||
return Config.getString("yPositionVisual");
|
||||
} else {
|
||||
return "H-23";
|
||||
}
|
||||
}
|
||||
public static String getXPositionText(){
|
||||
if(Config.has("xPositionText")) {
|
||||
return Config.getString("xPositionText");
|
||||
}else{
|
||||
return "W-70";
|
||||
}
|
||||
}
|
||||
|
||||
public static String getYPositionText(){
|
||||
if(Config.has("yPositionText")) {
|
||||
return Config.getString("yPositionText");
|
||||
}else{
|
||||
return "H-15";
|
||||
}
|
||||
}*/
|
||||
|
||||
public static String getYPosition(){
|
||||
if(Config.has("yPosition")) {
|
||||
return Config.getString("yPosition");
|
||||
if(config.has("yPosition")) {
|
||||
return config.getString("yPosition");
|
||||
}else{
|
||||
return "H-3";
|
||||
}
|
||||
}
|
||||
|
||||
public static String getXPosition(){
|
||||
if(Config.has("xPosition")) {
|
||||
return Config.getString("xPosition");
|
||||
if(config.has("xPosition")) {
|
||||
return config.getString("xPosition");
|
||||
}else{
|
||||
return "W-3";
|
||||
}
|
||||
}
|
||||
|
||||
public static int getImageSize(){
|
||||
if(Config.has("imageSize")){
|
||||
return Config.getInt("imageSize");
|
||||
if(config.has("imageSize")){
|
||||
return config.getInt("imageSize");
|
||||
}else {
|
||||
return 19;
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean getShowVisualSpeedType() {
|
||||
if(Config.has("showVisualSpeedType")){
|
||||
return Config.getBoolean("showVisualSpeedType");
|
||||
if(config.has("showVisualSpeedType")){
|
||||
return config.getBoolean("showVisualSpeedType");
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean getShowSpeedType(){
|
||||
if(config.has("getShowSpeedType")){
|
||||
return config.getBoolean("showSpeedType");
|
||||
}else{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
public static void setColor(Color color){
|
||||
Config.put("color", new JSONObject()
|
||||
config.put("color", new JSONObject()
|
||||
.put("r", color.getRed())
|
||||
.put("g", color.getGreen())
|
||||
.put("b", color.getBlue())
|
||||
@@ -260,51 +228,38 @@ public class Config {
|
||||
}
|
||||
|
||||
public static void setUseKnot(boolean useKnot){
|
||||
Config.put("useKnot", useKnot);
|
||||
config.put("useKnot", useKnot);
|
||||
}
|
||||
|
||||
public static void setSpeedType(SpeedTypes speedType) {
|
||||
Config.put("speed", speedType);
|
||||
config.put("speed", speedType);
|
||||
}
|
||||
|
||||
public static void setVisualSpeedometer(boolean visualSpeedometer){
|
||||
Config.put("visualSpeedometer", visualSpeedometer);
|
||||
config.put("visualSpeedometer", visualSpeedometer);
|
||||
}
|
||||
|
||||
/*
|
||||
public static void setXPositionVisual(String xPositionVisual){
|
||||
Config.put("xPositionVisual", xPositionVisual);
|
||||
}
|
||||
|
||||
public static void setYPositionVisual(String yPositionVisual){
|
||||
Config.put("yPositionVisual", yPositionVisual);
|
||||
}
|
||||
|
||||
public static void setXPositionText(String xPositionText){
|
||||
Config.put("xPositionText", xPositionText);
|
||||
}
|
||||
|
||||
public static void setYPositionText(String yPositionText){
|
||||
Config.put("yPositionText", yPositionText);
|
||||
}*/
|
||||
|
||||
public static void setXPosition(String xPosition){
|
||||
Config.put("xPosition", xPosition);
|
||||
config.put("xPosition", xPosition);
|
||||
}
|
||||
|
||||
public static void setYPosition(String yPosition){
|
||||
Config.put("yPosition", yPosition);
|
||||
config.put("yPosition", yPosition);
|
||||
}
|
||||
|
||||
public static void setDebug(boolean debug){
|
||||
Config.put("debug", debug);
|
||||
config.put("debug", debug);
|
||||
}
|
||||
|
||||
public static void setImageSize(int imageSize){
|
||||
Config.put("imageSize", imageSize);
|
||||
config.put("imageSize", imageSize);
|
||||
}
|
||||
|
||||
public static void setShowVisualSpeedType(boolean showVisualSpeedType){
|
||||
Config.put("showVisualSpeedType", showVisualSpeedType);
|
||||
config.put("showVisualSpeedType", showVisualSpeedType);
|
||||
}
|
||||
|
||||
public static void setShowSpeedType(boolean showSpeedType){
|
||||
config.put("showSpeedType", showSpeedType);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package me.zacharias.speedometer;
|
||||
import me.shedaniel.clothconfig2.api.ConfigBuilder;
|
||||
import me.shedaniel.clothconfig2.api.ConfigCategory;
|
||||
import me.shedaniel.clothconfig2.api.ConfigEntryBuilder;
|
||||
import net.minecraft.ChatFormatting;
|
||||
import net.minecraft.client.gui.screens.Screen;
|
||||
import net.minecraft.network.chat.Component;
|
||||
|
||||
@@ -46,79 +47,6 @@ public class ConfigMenu {
|
||||
String xRegex = "W*w*S*s*\\+*-*\\**/*[0-9]*";
|
||||
String yRegex = "H*h*S*s*\\+*-*\\**/*[0-9]*";
|
||||
|
||||
// Text Placement
|
||||
/*
|
||||
category.addEntry(entryBuilder.startStringDropdownMenu(Component.translatable("speedometer.config.xPosition.text"), Config.getXPositionText())
|
||||
.setSaveConsumer(Config::setXPositionText)
|
||||
.setErrorSupplier(xPosition -> {
|
||||
if(xPosition.matches(xRegex)){
|
||||
return Optional.empty();
|
||||
}else{
|
||||
return Optional.of(Component.translatable("speedometer.invalid"));
|
||||
}
|
||||
})
|
||||
.setTooltip(
|
||||
Component.translatable("speedometer.config.tooltip.xPosition.line1"),
|
||||
Component.translatable("speedometer.config.tooltip.xPosition.line2"),
|
||||
Component.translatable("speedometer.config.tooltip.xPosition.line3")
|
||||
)
|
||||
.build()
|
||||
);
|
||||
|
||||
category.addEntry(entryBuilder.startStringDropdownMenu(Component.translatable("speedometer.config.yPosition.text"), Config.getYPositionText())
|
||||
.setSaveConsumer(Config::setYPositionText)
|
||||
.setErrorSupplier(yPosition -> {
|
||||
if(yPosition.matches(yRegex)){
|
||||
return Optional.empty();
|
||||
}else{
|
||||
return Optional.of(Component.translatable("speedometer.invalid"));
|
||||
}
|
||||
})
|
||||
.setTooltip(
|
||||
Component.translatable("speedometer.config.tooltip.yPosition.line1"),
|
||||
Component.translatable("speedometer.config.tooltip.yPosition.line2"),
|
||||
Component.translatable("speedometer.config.tooltip.yPosition.line3")
|
||||
)
|
||||
.build()
|
||||
);
|
||||
|
||||
// Visual location
|
||||
|
||||
category.addEntry(entryBuilder.startStringDropdownMenu(Component.translatable("speedometer.config.xPosition.visual"), Config.getXPositionVisual())
|
||||
.setSaveConsumer(Config::setXPositionVisual)
|
||||
.setErrorSupplier(xPosition -> {
|
||||
if(xPosition.matches(xRegex)){
|
||||
return Optional.empty();
|
||||
}else{
|
||||
return Optional.of(Component.translatable("speedometer.invalid"));
|
||||
}
|
||||
})
|
||||
.setTooltip(
|
||||
Component.translatable("speedometer.config.tooltip.xPosition.line1"),
|
||||
Component.translatable("speedometer.config.tooltip.xPosition.line2"),
|
||||
Component.translatable("speedometer.config.tooltip.xPosition.line3")
|
||||
)
|
||||
.build()
|
||||
);
|
||||
|
||||
|
||||
category.addEntry(entryBuilder.startStringDropdownMenu(Component.translatable("speedometer.config.yPosition.visual"), Config.getYPositionVisual())
|
||||
.setSaveConsumer(Config::setYPositionVisual)
|
||||
.setErrorSupplier(yPosition -> {
|
||||
if(yPosition.matches(yRegex)){
|
||||
return Optional.empty();
|
||||
}else{
|
||||
return Optional.of(Component.translatable("speedometer.invalid"));
|
||||
}
|
||||
})
|
||||
.setTooltip(
|
||||
Component.translatable("speedometer.config.tooltip.yPosition.line1"),
|
||||
Component.translatable("speedometer.config.tooltip.yPosition.line2"),
|
||||
Component.translatable("speedometer.config.tooltip.yPosition.line3")
|
||||
)
|
||||
.build()
|
||||
);*/
|
||||
|
||||
category.addEntry(entryBuilder.startStringDropdownMenu(Component.translatable("speedometer.config.xPosition"), Config.getXPosition())
|
||||
.setSaveConsumer(Config::setXPosition)
|
||||
.setErrorSupplier(xPosition -> {
|
||||
@@ -160,6 +88,25 @@ public class ConfigMenu {
|
||||
.build()
|
||||
);
|
||||
|
||||
// Show visual speed type
|
||||
|
||||
category.addEntry(entryBuilder.startBooleanToggle(Component.translatable("speedometer.config.showSpeedType"), Config.getShowSpeedType())
|
||||
.setSaveConsumer(Config::setShowSpeedType)
|
||||
.setYesNoTextSupplier(showSpeedType -> Component.translatable("speedometer."+(showSpeedType?"show":"hide")))
|
||||
.setTooltip(Component.translatable("speedometer.config.tooltip.showSpeedType.line1"))
|
||||
.build()
|
||||
);
|
||||
|
||||
category.addEntry(entryBuilder.startBooleanToggle(Component.translatable("speedometer.config.showVisualSpeedType"), Config.getShowVisualSpeedType())
|
||||
.setSaveConsumer(Config::setShowVisualSpeedType)
|
||||
.setYesNoTextSupplier(showVisualSpeedType -> Component.translatable("speedometer."+(showVisualSpeedType?"show":"hide")).withStyle(ChatFormatting.DARK_RED))
|
||||
.setTooltip(Component.translatable("speedometer.config.tooltip.showVisualSpeedType.line1"),
|
||||
Component.translatable("speedometer.config.tooltip.showVisualSpeedType.line2"))
|
||||
.build()
|
||||
);
|
||||
|
||||
|
||||
|
||||
category.addEntry(entryBuilder.startBooleanToggle(Component.translatable("speedometer.config.debug"),Config.isDebug())
|
||||
.setSaveConsumer(Config::setDebug)
|
||||
.setYesNoTextSupplier(isDebug -> Component.translatable("speedometer.debug."+isDebug))
|
||||
@@ -167,16 +114,6 @@ public class ConfigMenu {
|
||||
.build()
|
||||
);
|
||||
|
||||
// Show visual speed type
|
||||
|
||||
category.addEntry(entryBuilder.startBooleanToggle(Component.translatable("speedometer.config.showVisualSpeedType"), Config.getShowVisualSpeedType())
|
||||
.setSaveConsumer(Config::setShowVisualSpeedType)
|
||||
.setYesNoTextSupplier(showVisualSpeedType -> Component.translatable("speedometer."+(Config.getShowVisualSpeedType()?"show":"hide")))
|
||||
.setTooltip(Component.translatable("speedometer.config.tooltip.showVisualSpeedType.line1"),
|
||||
Component.translatable("speedometer.config.tooltip.showVisualSpeedType.line2"))
|
||||
.build()
|
||||
);
|
||||
|
||||
builder.setSavingRunnable(me.zacharias.speedometer.Config::save);
|
||||
|
||||
return builder;
|
||||
|
||||
@@ -20,7 +20,7 @@ public class Speedometer
|
||||
|
||||
|
||||
if(Platform.getEnvironment() != Env.CLIENT) {
|
||||
LOGGER.error("You're running speedometer on somthing other then a client, this is not supported");
|
||||
LOGGER.error("You're running speedometer on something other then a client, this is not supported");
|
||||
try {
|
||||
for (File f : Objects.requireNonNull(Platform.getModsFolder().toFile().listFiles())) {
|
||||
if (f.getName().startsWith("speedometer")) {
|
||||
|
||||
@@ -13,7 +13,8 @@
|
||||
"speedometer.config.yPosition": "Y Position for Meters",
|
||||
"speedometer.config.debug": "Debug",
|
||||
"speedometer.config.imageSize": "Image Size",
|
||||
"speedometer.config.showVisualSpeedType": "Show Visual Speed Type",
|
||||
"speedometer.config.showVisualSpeedType": "\u00A74⨻\u00A7rShow Visual Speed Type",
|
||||
"speedometer.config.showSpeedType": "Show Visual Speed Type",
|
||||
|
||||
"speedometer.key.configKey": "Config Key",
|
||||
"speedometer.key.debugKey": "Debug Key",
|
||||
@@ -57,5 +58,7 @@
|
||||
"speedometer.config.tooltip.showVisualSpeedType.line1": "This setting doesn't work fully.",
|
||||
"speedometer.config.tooltip.showVisualSpeedType.line2": "I(the developer) discourages the use of this setting since it doesn't work on smaller sises and the fps breaks at larger",
|
||||
|
||||
"speedometer.config.tooltip.showSpeedType.line1": "This setting shows the speed type above the visual meter which is better then within the visual meter",
|
||||
|
||||
"speedometer.invalid": "Invalid String"
|
||||
}
|
||||
Reference in New Issue
Block a user