From 541bfe44c704d470b098c4e273facb97b760648b Mon Sep 17 00:00:00 2001 From: Parth Iyer Date: Thu, 2 Apr 2026 19:35:35 -0400 Subject: [PATCH 01/12] Add comment when linting fails --- .github/workflows/check.yml | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index aec440c6..02286131 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -12,6 +12,7 @@ jobs: permissions: actions: read contents: read + pull-requests: write security-events: write steps: @@ -33,8 +34,21 @@ jobs: run: ./gradlew build - name: Lint - run: | - ./gradlew lint || echo "::warning::Checkstyle found violations. See the checkstyle-report artifact for details." + id: lint + continue-on-error: true + run: ./gradlew lint + + - name: Comment on PR if lint failed + if: steps.lint.outcome == 'failure' && github.event_name == 'pull_request' + uses: actions/github-script@v6 + with: + script: | + github.rest.issues.createComment({ + issue_number: context.issue.number, + owner: context.repo.owner, + repo: context.repo.repo, + body: ':warning: **Checkstyle found style violations.** See the **checkstyle-report** artifact for details.' + }) - name: Determine artifact name id: find_artifact From 93ae2ffea887ed064b2731c738a00652472dc307 Mon Sep 17 00:00:00 2001 From: Parth Iyer Date: Thu, 2 Apr 2026 19:52:36 -0400 Subject: [PATCH 02/12] Add count and link to run --- .github/workflows/check.yml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 02286131..cc424ff1 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -38,16 +38,25 @@ jobs: continue-on-error: true run: ./gradlew lint + - name: Count lint violations + id: count_violations + if: steps.lint.outcome == 'failure' + run: | + count=$(grep -r '> $GITHUB_OUTPUT + - name: Comment on PR if lint failed if: steps.lint.outcome == 'failure' && github.event_name == 'pull_request' uses: actions/github-script@v6 with: script: | + const count = ${{ steps.count_violations.outputs.count }}; + const runUrl = `${context.serverUrl}/${context.repo.owner}/${context.repo.repo}/actions/runs/${context.runId}`; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, - body: ':warning: **Checkstyle found style violations.** See the **checkstyle-report** artifact for details.' + body: `:warning: **Checkstyle found ${count} style violation${count === 1 ? '' : 's'}.** Download the **checkstyle-report** artifact from the [Actions run](${runUrl}) for details.` }) - name: Determine artifact name From b3dac67339cde2fdf4d6cdff0ed1aa1d5b75119a Mon Sep 17 00:00:00 2001 From: Elias Dobrin Date: Fri, 14 Apr 2023 12:52:49 -0700 Subject: [PATCH 03/12] Changed DOS style linefeeds to UNIX style (now scripts are working on Unix). Revert "Changed DOS style linefeeds to UNIX style (now scripts are working on Unix)." This reverts commit bc55a4c129ca8879eb7659a5d19d207cb2018b1c. From 190d1970bf48f70b01d1a42c369598db6eee10cb Mon Sep 17 00:00:00 2001 From: Parth Iyer Date: Sun, 17 May 2026 11:10:05 -0700 Subject: [PATCH 04/12] TTF font redering happens. Falls back to Noto Sans when a symbol does not exist in Bullet. --- .claude/settings.local.json | 19 + build.gradle.kts | 10 +- src/main/java/lwjglwindow/LWJGLWindow.java | 50 +- .../lwjglwindow/TruetypeFontRenderer.java | 487 +++++++++++ .../java/tanks/gui/screen/ScreenLanguage.java | 4 + src/main/resources/fonts/Bullet.ttf | Bin 0 -> 294172 bytes src/main/resources/translations/hi.lang | 794 ++++++++++++++++++ 7 files changed, 1323 insertions(+), 41 deletions(-) create mode 100644 .claude/settings.local.json create mode 100644 src/main/java/lwjglwindow/TruetypeFontRenderer.java create mode 100644 src/main/resources/fonts/Bullet.ttf create mode 100644 src/main/resources/translations/hi.lang diff --git a/.claude/settings.local.json b/.claude/settings.local.json new file mode 100644 index 00000000..80d76e85 --- /dev/null +++ b/.claude/settings.local.json @@ -0,0 +1,19 @@ +{ + "permissions": { + "allow": [ + "Bash(./gradlew clean:*)", + "Bash(python3:*)", + "WebSearch", + "WebFetch(domain:checkstyle.org)", + "WebFetch(domain:github.com)", + "WebFetch(domain:checkstyle.sourceforge.io)", + "Bash(./gradlew checkstyleMain:*)", + "Bash(./gradlew lineCount:*)", + "Bash(./gradlew lintCount:*)", + "Bash(find:*)", + "Bash(./gradlew compuleCheckstyleChecksJava)", + "Bash(head:*)", + "WebFetch(domain:www.jetbrains.com)" + ] + } +} diff --git a/build.gradle.kts b/build.gradle.kts index 634eeda1..de63d0ba 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -13,14 +13,14 @@ fun getHash(): String { ?.trim() ?: "00000000" } -val lwjglVersion = "3.4.1" +val lwjglVersion = "3.3.3" val lwjglNatives = listOf( - "natives-freebsd", - "natives-linux-arm32", "natives-linux-arm64", - "natives-linux-ppc64le", "natives-linux-riscv64", +// "natives-freebsd", +// "natives-linux-arm32", "natives-linux-arm64", +// "natives-linux-ppc64le", "natives-linux-riscv64", "natives-linux", "natives-macos", "natives-macos-arm64", - "natives-windows-x86", "natives-windows", "natives-windows-arm64", +// "natives-windows-x86", "natives-windows", "natives-windows-arm64", ) repositories { diff --git a/src/main/java/lwjglwindow/LWJGLWindow.java b/src/main/java/lwjglwindow/LWJGLWindow.java index 1664f000..a240c236 100644 --- a/src/main/java/lwjglwindow/LWJGLWindow.java +++ b/src/main/java/lwjglwindow/LWJGLWindow.java @@ -3,7 +3,6 @@ import basewindow.*; import basewindow.transformation.Matrix4; import basewindow.transformation.Transformation; -import tanks.Game; import de.matthiasmann.twl.utils.PNGDecoder; import de.matthiasmann.twl.utils.PNGDecoder.Format; @@ -127,44 +126,15 @@ public void run() glfwSetErrorCallback(null).free(); } + protected void init() { - this.fontRenderer = new FontRenderer(this, "/fonts/default/font.png"); - // Load zh cn font - try - { - int count = 1; - while (true) - { - try (InputStream zhCnFontInputStream = LWJGLWindow.class.getClassLoader().getResourceAsStream("fonts/zh_cn/font_zh_cn_" + count + ".png"); - InputStream zhCnTxtInputStream = LWJGLWindow.class.getClassLoader().getResourceAsStream("fonts/zh_cn/font_zh_cn_" + count + ".txt")) - { - if (zhCnFontInputStream == null) break; - if (zhCnTxtInputStream == null) - { - System.err.println("Failed to load zh cn font " + count); - continue; - } - Scanner scanner = new Scanner(Objects.requireNonNull(zhCnTxtInputStream), StandardCharsets.UTF_8.name()); - StringBuilder sb = new StringBuilder(); - while (scanner.hasNextLine()) - { - sb.append(scanner.nextLine()); - } - String chinese_chars = sb.toString(); - int[] chinese_chars_sizes = new int[chinese_chars.length()]; - Arrays.fill(chinese_chars_sizes, 8); - this.fontRenderer.addFont("/fonts/zh_cn/font_zh_cn_" + count + ".png", chinese_chars, chinese_chars_sizes); - count++; - } - } - } - catch (IOException e) - { - e.printStackTrace(Game.logger); - e.printStackTrace(); - } + TruetypeFontRenderer ttf = new TruetypeFontRenderer(this, "/fonts/Bullet.ttf", 64, true, 1.4, 0.3); + ttf.addFontsFromIndex("/fonts/NotoSans/index.txt", 128, false, 1.4, 0.3); + + this.fontRenderer = ttf; + GLFWErrorCallback.createPrint(System.err).set(); @@ -175,6 +145,14 @@ protected void init() glfwWindowHint(GLFW_VISIBLE, GLFW_FALSE); glfwWindowHint(GLFW_RESIZABLE, GLFW_TRUE); + // Request a well-defined OpenGL 3.0 context. Renderer uses immediate-mode + // (glBegin/glEnd), so we stay below 3.2 where the compatibility profile is implicit. + // Without these hints, NVIDIA's EGL driver on Wayland segfaults setting up the context. + glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); + glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 0); + glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_ANY_PROFILE); + glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GLFW_FALSE); + if (antialiasingEnabled) glfwWindowHint(GLFW_SAMPLES, 4); diff --git a/src/main/java/lwjglwindow/TruetypeFontRenderer.java b/src/main/java/lwjglwindow/TruetypeFontRenderer.java new file mode 100644 index 00000000..0aadfdbe --- /dev/null +++ b/src/main/java/lwjglwindow/TruetypeFontRenderer.java @@ -0,0 +1,487 @@ +package lwjglwindow; + +import basewindow.BaseFontRenderer; + +import org.lwjgl.BufferUtils; +import org.lwjgl.stb.STBTTFontinfo; +import org.lwjgl.system.MemoryStack; + +import java.io.BufferedReader; +import java.io.ByteArrayOutputStream; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.nio.ByteBuffer; +import java.nio.IntBuffer; +import java.nio.charset.StandardCharsets; +import java.util.*; + +import static org.lwjgl.opengl.GL11.*; +import static org.lwjgl.stb.STBTruetype.*; + +public class TruetypeFontRenderer extends BaseFontRenderer +{ + public static class TtfFontInfo + { + public final STBTTFontinfo stbInfo; + public final ByteBuffer ttfBuffer; + public final float fontScale; + public final int ascent; + public final int bakeHeight; + public final boolean pixelPerfect; + public final double sizeScale; + public final double yOffset; + + private final Map glyphTextures = new HashMap<>(); + private final Map glyphMetrics = new HashMap<>(); + + public TtfFontInfo(ByteBuffer buffer, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + this.ttfBuffer = buffer; + this.stbInfo = STBTTFontinfo.create(); + this.bakeHeight = bakeHeight; + this.pixelPerfect = pixelPerfect; + this.sizeScale = sizeScale; + this.yOffset = yOffset; + + if (!stbtt_InitFont(stbInfo, buffer)) + throw new RuntimeException("Failed to initialize STB truetype font"); + + this.fontScale = stbtt_ScaleForPixelHeight(stbInfo, bakeHeight); + + try (MemoryStack stack = MemoryStack.stackPush()) + { + IntBuffer a = stack.mallocInt(1); + IntBuffer d = stack.mallocInt(1); + IntBuffer lg = stack.mallocInt(1); + stbtt_GetFontVMetrics(stbInfo, a, d, lg); + this.ascent = a.get(0); + } + } + + public boolean supportsCodepoint(int codepoint) + { + return stbtt_FindGlyphIndex(stbInfo, codepoint) != 0; + } + + public int[] getMetrics(int codepoint) + { + if (glyphMetrics.containsKey(codepoint)) + return glyphMetrics.get(codepoint); + + try (MemoryStack stack = MemoryStack.stackPush()) + { + IntBuffer adv = stack.mallocInt(1); + IntBuffer lsb = stack.mallocInt(1); + stbtt_GetCodepointHMetrics(stbInfo, codepoint, adv, lsb); + + IntBuffer x0 = stack.mallocInt(1); + IntBuffer y0 = stack.mallocInt(1); + IntBuffer x1 = stack.mallocInt(1); + IntBuffer y1 = stack.mallocInt(1); + stbtt_GetCodepointBitmapBox(stbInfo, codepoint, fontScale, fontScale, x0, y0, x1, y1); + + int[] m = new int[]{adv.get(0), x1.get(0) - x0.get(0), y1.get(0) - y0.get(0), x0.get(0), y0.get(0)}; + glyphMetrics.put(codepoint, m); + return m; + } + } + + public int getOrCreateTexture(int codepoint) + { + if (glyphTextures.containsKey(codepoint)) + return glyphTextures.get(codepoint); + + try (MemoryStack stack = MemoryStack.stackPush()) + { + IntBuffer w = stack.mallocInt(1); + IntBuffer h = stack.mallocInt(1); + IntBuffer xoff = stack.mallocInt(1); + IntBuffer yoff = stack.mallocInt(1); + + ByteBuffer bitmap = stbtt_GetCodepointBitmap(stbInfo, fontScale, fontScale, codepoint, w, h, xoff, yoff); + + if (bitmap == null || w.get(0) == 0 || h.get(0) == 0) + { + glyphTextures.put(codepoint, 0); + return 0; + } + + // The project's fragment shader does `color * vertexColor`, where `color` is the + // sampled texel. GL_ALPHA textures return RGB=0 in GLSL, which would zero out + // the glyph color. Upload as RGBA with white RGB and STB's alpha so the shader + // multiplies the per-vertex color through unchanged. + int bw = w.get(0); + int bh = h.get(0); + ByteBuffer rgba = BufferUtils.createByteBuffer(bw * bh * 4); + for (int i = 0; i < bw * bh; i++) + { + int a = bitmap.get(i) & 0xFF; + if (pixelPerfect) + a = a >= 128 ? 0xFF : 0x00; + rgba.put((byte) 0xFF); + rgba.put((byte) 0xFF); + rgba.put((byte) 0xFF); + rgba.put((byte) a); + } + rgba.flip(); + + int filter = pixelPerfect ? GL_NEAREST : GL_LINEAR; + int texId = glGenTextures(); + glBindTexture(GL_TEXTURE_2D, texId); + glPixelStorei(GL_UNPACK_ALIGNMENT, 1); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, filter); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, filter); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, bw, bh, 0, GL_RGBA, GL_UNSIGNED_BYTE, rgba); + + stbtt_FreeBitmap(bitmap); + + int[] m = new int[]{getMetrics(codepoint)[0], w.get(0), h.get(0), xoff.get(0), yoff.get(0)}; + glyphMetrics.put(codepoint, m); + glyphTextures.put(codepoint, texId); + return texId; + } + } + } + + private final List fonts = new ArrayList<>(); + private final TtfFontInfo defaultFont; + private final LWJGLWindow lwjglWindow; + + public TruetypeFontRenderer(LWJGLWindow h, String ttfResourcePath) + { + this(h, ttfResourcePath, 64, false, 1.0, 0.0); + } + + /** + * @param bakeHeight Glyph rasterization resolution in pixels. Smaller = chunkier; larger = smoother. + * @param pixelPerfect If true, glyph alpha is thresholded to 0/255 and texture filtering uses NEAREST. + * @param sizeScale Glyph size multiplier. 1.0 = STB's natural size; >1 enlarges to better fill the cell. + * @param yOffset Vertical shift in cell-height units. +0.1 moves text down by sY * 3.2 screen pixels. + */ + public TruetypeFontRenderer(LWJGLWindow h, String ttfResourcePath, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + super(h); + this.lwjglWindow = h; + this.defaultFont = loadFont(ttfResourcePath, bakeHeight, pixelPerfect, sizeScale, yOffset); + this.fonts.add(defaultFont); + } + + private TtfFontInfo loadFont(String path, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + try + { + InputStream in = lwjglWindow.getResource(path); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + byte[] chunk = new byte[8192]; + int n; + while ((n = in.read(chunk)) > 0) + out.write(chunk, 0, n); + in.close(); + byte[] bytes = out.toByteArray(); + ByteBuffer buffer = BufferUtils.createByteBuffer(bytes.length); + buffer.put(bytes).flip(); + return new TtfFontInfo(buffer, bakeHeight, pixelPerfect, sizeScale, yOffset); + } + catch (Exception e) + { + throw new RuntimeException("Failed to load truetype font: " + path, e); + } + } + + /** + * Adds a fallback font with custom tuning. Used when the primary font lacks a glyph. + * If the font fails to load (missing file, unsupported format, etc.) the failure is logged + * and the call is a no-op — a broken fallback should not kill the renderer. + */ + public void addFont(String ttfPath, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + try + { + fonts.add(loadFont(ttfPath, bakeHeight, pixelPerfect, sizeScale, yOffset)); + } + catch (Exception e) + { + System.err.println("TruetypeFontRenderer: failed to add fallback font '" + ttfPath + "': " + e.getMessage()); + if (e.getCause() != null) + System.err.println(" caused by: " + e.getCause()); + } + } + + /** {@code BaseFontRenderer} contract — for TrueType only the first arg matters; other args ignored. */ + @Override + public void addFont(String ttfPath, String chars, int[] charSizes) + { + addFont(ttfPath, 64, false, 1.0, 0.0); + } + + /** + * Loads every font listed in {@code indexPath} (one resource path per line; blank lines and + * lines starting with {@code #} are ignored) and registers each as a fallback with the given + * tuning. The index file is read via {@code LWJGLWindow.getResource}, so it goes through the + * project's normal override-location lookup before falling back to the classpath. + */ + public void addFontsFromIndex(String indexPath, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + try (InputStream in = lwjglWindow.getResource(indexPath); + BufferedReader r = new BufferedReader(new InputStreamReader(in, StandardCharsets.UTF_8))) + { + int loaded = 0; + String line; + while ((line = r.readLine()) != null) + { + line = line.trim(); + if (line.isEmpty() || line.startsWith("#")) + continue; + + int before = fonts.size(); + addFont(line, bakeHeight, pixelPerfect, sizeScale, yOffset); + if (fonts.size() > before) + loaded++; + } + System.out.println("TruetypeFontRenderer: loaded " + loaded + " fonts from " + indexPath); + } + catch (Exception e) + { + System.err.println("TruetypeFontRenderer: failed to read font index '" + indexPath + "': " + e.getMessage()); + } + } + + @Override + public boolean supportsChar(char c) + { + for (TtfFontInfo font: fonts) + { + if (font.supportsCodepoint(c)) + return true; + } + return false; + } + + private TtfFontInfo findFontForChar(char c) + { + for (TtfFontInfo font: fonts) + { + if (font.supportsCodepoint(c)) + return font; + } + return defaultFont; + } + + protected double drawChar(double x, double y, double z, double sX, double sY, char c, boolean depthtest) + { + if (lwjglWindow.drawingShadow) + return 0; + + int codepoint = c; + TtfFontInfo font = findFontForChar(c); + + int texId = font.getOrCreateTexture(codepoint); + int[] m = font.getMetrics(codepoint); + int advance = m[0]; + int bitmapW = m[1]; + int bitmapH = m[2]; + int xoff = m[3]; + int yoff = m[4]; + + double scaleX = sX * 32.0 * font.sizeScale / font.bakeHeight; + double scaleY = sY * 32.0 * font.sizeScale / font.bakeHeight; + + double baselineY = (y - sY * 16) + font.ascent * font.fontScale * scaleY + sY * 32 * font.yOffset; + double gx = x + xoff * scaleX; + double gy = baselineY + yoff * scaleY; + double gw = bitmapW * scaleX; + double gh = bitmapH * scaleY; + + if (texId != 0) + { + if (depthtest) + glEnable(GL_DEPTH_TEST); + + lwjglWindow.enableTexture(); + glEnable(GL_BLEND); + lwjglWindow.setTransparentBlendFunc(); + glDepthMask(false); + + glBindTexture(GL_TEXTURE_2D, texId); + + glBegin(GL_TRIANGLE_FAN); + glTexCoord2d(0, 0); + glVertex3d(gx, gy, z); + glTexCoord2d(0, 1); + glVertex3d(gx, gy + gh, z); + glTexCoord2d(1, 1); + glVertex3d(gx + gw, gy + gh, z); + glTexCoord2d(1, 0); + glVertex3d(gx + gw, gy, z); + glEnd(); + + glDepthMask(true); + lwjglWindow.disableTexture(); + + if (depthtest) + glDisable(GL_DEPTH_TEST); + } + + return advance * font.fontScale * scaleX; + } + + @Override + public void drawString(double x, double y, double z, double sX, double sY, String s) + { + drawString(x, y, z, sX, sY, s, true); + } + + @Override + public void drawString(double x, double y, double z, double sX, double sY, String s, boolean depth) + { + if (depth) + glEnable(GL_DEPTH_TEST); + else + glDisable(GL_DEPTH_TEST); + + double opacity = this.window.colorA; + double curX = x; + char[] c = s.toCharArray(); + + double r0 = this.window.colorR; + double g0 = this.window.colorG; + double b0 = this.window.colorB; + double a0 = this.window.colorA; + + for (int i = 0; i < c.length; i++) + { + if (c[i] == 'Â') + continue; + else if (c[i] == '§') + { + if (s.length() <= i + 1) + continue; + + if (c[i + 1] == 'r') + { + i++; + this.window.setColor(r0 * 255, g0 * 255, b0 * 255, a0 * 255); + continue; + } + + if (s.length() <= i + 12) + continue; + + try + { + int r = Integer.parseInt(c[i + 1] + "" + c[i + 2] + "" + c[i + 3]); + int g = Integer.parseInt(c[i + 4] + "" + c[i + 5] + "" + c[i + 6]); + int b = Integer.parseInt(c[i + 7] + "" + c[i + 8] + "" + c[i + 9]); + int a = Integer.parseInt(c[i + 10] + "" + c[i + 11] + "" + c[i + 12]); + this.window.setColor(r, g, b, a * opacity); + } + catch (Exception e) + { + continue; + } + + i += 12; + } + else + curX += drawChar(curX, y, z, sX, sY, c[i], depth); + } + + glDisable(GL_DEPTH_TEST); + } + + @Override + public void drawString(double x, double y, double sX, double sY, String s) + { + double opacity = this.window.colorA; + double curX = x; + char[] c = s.toCharArray(); + + double r0 = this.window.colorR; + double g0 = this.window.colorG; + double b0 = this.window.colorB; + double a0 = this.window.colorA; + + for (int i = 0; i < c.length; i++) + { + if (c[i] == 'Â') + continue; + else if (c[i] == '§') + { + if (s.length() <= i + 1) + continue; + + if (c[i + 1] == 'r') + { + i++; + this.window.setColor(r0 * 255, g0 * 255, b0 * 255, a0 * 255); + continue; + } + + if (s.length() <= i + 12) + continue; + + try + { + int r = Integer.parseInt(c[i + 1] + "" + c[i + 2] + "" + c[i + 3]); + int g = Integer.parseInt(c[i + 4] + "" + c[i + 5] + "" + c[i + 6]); + int b = Integer.parseInt(c[i + 7] + "" + c[i + 8] + "" + c[i + 9]); + int a = Integer.parseInt(c[i + 10] + "" + c[i + 11] + "" + c[i + 12]); + this.window.setColor(r, g, b, a * opacity); + } + catch (Exception e) + { + continue; + } + + i += 12; + } + else + curX += drawChar(curX, y, 0, sX, sY, c[i], false); + } + } + + @Override + public double getStringSizeX(double sX, String s) + { + double w = 0; + char[] c = s.toCharArray(); + + for (int i = 0; i < c.length; i++) + { + if (c[i] == 'Â') + continue; + else if (c[i] == '§') + { + if (s.length() <= i + 1) + continue; + + if (c[i + 1] == 'r') + { + i++; + continue; + } + + if (s.length() <= i + 12) + continue; + + i += 12; + } + else + { + TtfFontInfo font = findFontForChar(c[i]); + int[] m = font.getMetrics(c[i]); + w += m[0] * font.fontScale * sX * 32.0 * font.sizeScale / font.bakeHeight; + } + } + + return w; + } + + @Override + public double getStringSizeY(double sY, String s) + { + return sY * 32; + } +} diff --git a/src/main/java/tanks/gui/screen/ScreenLanguage.java b/src/main/java/tanks/gui/screen/ScreenLanguage.java index 9ed64757..ac2e644a 100644 --- a/src/main/java/tanks/gui/screen/ScreenLanguage.java +++ b/src/main/java/tanks/gui/screen/ScreenLanguage.java @@ -74,6 +74,10 @@ public ScreenLanguage() changeLanguage(new Translation("zhcn.lang")) )); + languages.buttons.add(4, new Button(0, 0, 350, 40, "हिन्दी", () -> + changeLanguage(new Translation("hi.lang")) + )); + languages.sortButtons(); } diff --git a/src/main/resources/fonts/Bullet.ttf b/src/main/resources/fonts/Bullet.ttf new file mode 100644 index 0000000000000000000000000000000000000000..cee7bf9645a33cbbeb469a699b1e3c2640633490 GIT binary patch literal 294172 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/translations/hi.lang b/src/main/resources/translations/hi.lang new file mode 100644 index 00000000..24545b01 --- /dev/null +++ b/src/main/resources/translations/hi.lang @@ -0,0 +1,794 @@ +हिन्दी +Languages=भाषाएँ +Tanks=टैंक्स +The Crusades=क्रूसेड्स +Play!=खेलें! +Options=विकल्प +About=के बारे में +Exit the game=खेल से बाहर निकलें +FPS=FPS +Memory used=उपयोग की गई मेमोरी +Singleplayer=एकल खिलाड़ी +Multiplayer=मल्टीप्लेयर +Select a game mode=खेल मोड चुनें +Version=संस्करण +Back=वापस +Select a singleplayer game mode=एकल खिलाड़ी मोड चुनें +Random level=यादृच्छिक स्तर +Crusades=क्रूसेड्स +My levels=मेरे स्तर +Tutorial=ट्यूटोरियल +Level time:=स्तर का समय: +Deterministic mode=नियतात्मक मोड +Continue playing=खेलना जारी रखें +Generate a new level=नया स्तर बनाएँ +Restart this level=इस स्तर को पुनः आरंभ करें +Quit to title=शीर्षक पर वापस जाएँ +Play=खेलें +Edit=संपादित करें +Delete Level=स्तर हटाएँ +Level name=स्तर का नाम +Level size=स्तर का आकार +Background colors=पृष्ठभूमि के रंग +Lighting=प्रकाश +Teams=टीमें +Items=वस्तुएँ +Time limit=समय सीमा +Minutes=मिनट +Seconds=सेकंड +Set minutes and seconds to 0 to disable the time limit=समय सीमा निष्क्रिय करने के लिए मिनट और सेकंड को 0 पर सेट करें +Direct light=सीधा प्रकाश +Shadow light=छाया प्रकाश +Red=लाल +Green=हरा +Blue=नीला +Red randomness=लाल अनियमितता +Green randomness=हरी अनियमितता +Blue randomness=नीली अनियमितता +Width=चौड़ाई +Height=ऊँचाई +New team=नई टीम +ally=मित्र +enemy=शत्रु +Starting coins=प्रारंभिक सिक्के +Shop=दुकान +Starting items=प्रारंभिक वस्तुएँ +Rearrange items=वस्तुएँ पुनः व्यवस्थित करें +Add item=वस्तु जोड़ें +Bullet=गोली +Mine=माइन +Shield=ढाल +From template=टेम्पलेट से +Basic bullet=साधारण गोली +Basic mine=साधारण माइन +Fire bullet=आग की गोली +Laser=लेज़र +Bouncy fire bullet=उछलती हुई आग की गोली +Mega mine=मेगा माइन +Zap=ज़ैप +Shield=ढाल +Freezing bullet=जमाने वाली गोली +Flamethrower=ज्वाला फेंकने वाला +Mega bullet=मेगा गोली +Artillery shell=तोपख़ाने का गोला +Healing ray=चिकित्सा किरण +Explosive bullet=विस्फोटक गोली +Mini bullet=छोटी गोली +Dark fire bullet=काली आग की गोली +%d coins=%d सिक्के +Delete item=वस्तु हटाएँ +Save to template=टेम्पलेट में सहेजें +Name=नाम +Icon=आइकन +Select icon=आइकन चुनें +Amount=मात्रा +Max stack size=अधिकतम स्टैक आकार +Price=मूल्य +Fuse length=फ्यूज़ की लंबाई +Triggered fuse=ट्रिगर किया गया फ्यूज़ +Explosion radius=विस्फोट त्रिज्या +Size=आकार +Cooldown=कूलडाउन +Max live mines=अधिकतम सक्रिय माइनें +Damage=क्षति +Previous page=पिछला पृष्ठ +Next page=अगला पृष्ठ +Destroys blocks=ब्लॉक नष्ट करता है +Yes=हाँ +No=नहीं +Ok=ठीक है +Page %d of %d=पृष्ठ %d में से %d +Recoil=पुनराघात +Heavy=भारी +Type=प्रकार +Effect=प्रभाव +Speed=गति +Max live bullets=अधिकतम सक्रिय गोलियाँ +Bounces=उछाल +Health boost=स्वास्थ्य वृद्धि +Max extra health=अधिकतम अतिरिक्त स्वास्थ्य +Level options=स्तर विकल्प +Generate a random level to play=खेलने के लिए यादृच्छिक स्तर बनाएँ +Fight battles in an order, and see how long you can survive!=क्रम से लड़ाइयाँ लड़ें, और देखें कि आप कब तक जीवित रह सकते हैं! +Create and play your own levels!=अपने स्तर बनाएँ और खेलें! +Learn how to play Tanks!=टैंक्स खेलना सीखें! +You can control the blue tank using the keyboard.=आप कीबोर्ड का उपयोग करके नीले टैंक को नियंत्रित कर सकते हैं। +Move up: %d=ऊपर जाएँ: %d +Move up: %d or %d=ऊपर जाएँ: %d या %d +Move left: %d=बाएँ जाएँ: %d +Move left: %d or %d=बाएँ जाएँ: %d या %d +Move right: %d=दाएँ जाएँ: %d +Move right: %d or %d=दाएँ जाएँ: %d या %d +Move down: %d=नीचे जाएँ: %d +Move down: %d or %d=नीचे जाएँ: %d या %d +Move over here to continue=जारी रखने के लिए यहाँ आएँ +Press %d or %d to shoot toward your mouse!=माउस की दिशा में फायर करने के लिए %d या %d दबाएँ! +Press %d to shoot toward your mouse!=माउस की दिशा में फायर करने के लिए %d दबाएँ! +Destroy all enemy tanks to win!=जीतने के लिए सभी दुश्मन टैंकों को नष्ट करें! +Shoot these enemy tanks!=इन दुश्मन टैंकों पर फायर करें! +Press and hold . or Mouse button 3 to aim.=निशाना लगाने के लिए . या माउस बटन 3 दबाकर रखें। +Press Space or Mouse button 1 to shoot=फायर करने के लिए स्पेस या माउस बटन 1 दबाएँ +You can have up to 5 bullets on screen at one time.=स्क्रीन पर एक समय में अधिकतम 5 गोलियाँ हो सकती हैं। +Aim and bounce your bullets on a wall to destroy this tank!=इस टैंक को नष्ट करने के लिए निशाना लगाएँ और दीवार से अपनी गोलियों को उछालें! +Press Enter or Mouse button 2 to lay a mine!=माइन लगाने के लिए एंटर या माउस बटन 2 दबाएँ! +Mines can destroy nearby tanks and brown blocks.=माइनें पास के टैंकों और भूरे ब्लॉकों को नष्ट कर सकती हैं। +Place a mine next to this brown wall to destroy it!=इस भूरी दीवार को नष्ट करने के लिए उसके पास माइन रखें! +A mine will explode after 10 seconds, if another tank gets near, or if shot. =माइन 10 सेकंड बाद, या कोई अन्य टैंक पास आने पर, या उस पर गोली लगने पर फट जाती है। +You can have up to 2 mines on screen at a time.=स्क्रीन पर एक समय में अधिकतम 2 माइनें हो सकती हैं। +Stand back!=पीछे हटें! +Your mines can destroy you!=आपकी माइनें आपको नष्ट कर सकती हैं! +You were destroyed!=आप नष्ट हो गए! +Try again=फिर से प्रयास करें +Back to title=शीर्षक पर वापस +Watch out! This brown tank will shoot at you!=सावधान! यह भूरा टैंक आप पर गोली चलाएगा! +Shoot it before it destroys you!=इससे पहले कि वह आपको नष्ट करे, उस पर फायर करें! +Avoid all bullets and mines, including your own, as they can destroy you.=सभी गोलियों और माइनों से बचें, अपनी सहित, क्योंकि वे आपको नष्ट कर सकती हैं। +If your tank is destroyed, you will have to start the level over!=यदि आपका टैंक नष्ट हो गया, तो आपको स्तर फिर से शुरू करना होगा! +You can see your health, available bullets and mines, and remaining tanks by pressing Shift!=शिफ्ट दबाकर आप अपना स्वास्थ्य, उपलब्ध गोलियाँ और माइनें, और शेष टैंक देख सकते हैं! +Victory!=विजय! +Info bar:=सूचना पट्टी: +Shows the following information at the bottom of the screen=स्क्रीन के निचले हिस्से में निम्नलिखित जानकारी दिखाता है +Game version=खेल संस्करण +Framerate=फ्रेमरेट +Network latency (if in a party)=नेटवर्क विलंबता (पार्टी में होने पर) +Memory usage=मेमोरी उपयोग +off=बंद +on=चालू +Multiplayer options=मल्टीप्लेयर विकल्प +Username=उपयोगकर्ता नाम +Pick a username that players will see in multiplayer=ऐसा उपयोगकर्ता नाम चुनें जो खिलाड़ी मल्टीप्लेयर में देखेंगे +Tank color=टैंक का रंग +Personalize your tank and stand out in multiplayer!=अपने टैंक को व्यक्तिगत बनाएँ और मल्टीप्लेयर में अलग दिखें! +Multiplayer tank color=मल्टीप्लेयर टैंक का रंग +Primary red=प्राथमिक लाल +Primary green=प्राथमिक हरा +Primary blue=प्राथमिक नीला +Secondary red=द्वितीयक लाल +Secondary green=द्वितीयक हरा +Secondary blue=द्वितीयक नीला +Second color:=दूसरा रंग: +Allows you to pick a custom secondary color=आपको एक कस्टम द्वितीयक रंग चुनने की अनुमति देता है +Party host options=पार्टी मेज़बान विकल्प +Options for parties you host=आपकी होस्ट की गई पार्टियों के विकल्प +Cooldown time=कूलडाउन समय +The wait time in seconds after all players are ready before the battle begins.=सभी खिलाड़ी तैयार होने के बाद लड़ाई शुरू होने से पहले प्रतीक्षा का समय (सेकंड में)। +Friendly fire:=मित्रवत फायर: +default=डिफ़ॉल्ट +Anticheat=धोखा-रोधी +When this option is enabled while hosting a party, other players' positions and velocities will be corrected if invalid.=पार्टी होस्ट करते समय यह विकल्प सक्षम होने पर, अमान्य पाए जाने पर अन्य खिलाड़ियों की स्थिति और गति को सही किया जाएगा। +Weaker settings work better with less-stable connections.=कमज़ोर सेटिंग्स कम-स्थिर कनेक्शन के साथ बेहतर काम करती हैं। +strong=मज़बूत +weak=कमज़ोर +Chat filter:=चैट फ़िल्टर: +Filters chat of potentially-inappropriate words=संभावित रूप से अनुचित शब्दों को चैट से फ़िल्टर करता है +Auto ready:=स्वतः तैयार: +When enabled, automatically presses the ready button if there is no shop=सक्षम होने पर, यदि कोई दुकान नहीं है तो स्वचालित रूप से तैयार बटन दबाता है +Input options=इनपुट विकल्प +Input options and controls=इनपुट विकल्प और नियंत्रण +Controls=नियंत्रण +None=कोई नहीं +Game controls=खेल नियंत्रण +Game=खेल +Pause=रोकें +Toggle zoom=ज़ूम चालू/बंद करें +Chat=चैट +Hide / show pause menu=पॉज़ मेनू छिपाएँ / दिखाएँ +Toggle fullscreen=फुलस्क्रीन चालू/बंद करें +Tank=टैंक +Tank controls=टैंक नियंत्रण +Move up=ऊपर जाएँ +Move down =नीचे जाएँ +Move left=बाएँ जाएँ +Move right=दाएँ जाएँ +Shoot bullet=गोली चलाएँ +Lay mine=माइन रखें +Trace aim=निशाना ट्रेस करें +Hotbar=हॉटबार +Toggle hotbar visibility=हॉटबार दृश्यता चालू/बंद करें +Item slot %d=वस्तु स्लॉट %d +Deselect item slot=वस्तु स्लॉट चयन रद्द करें +editor=संपादक +Editor controls=संपादक नियंत्रण +Editor menu=संपादक मेनू +Object menu=वस्तु मेनू +Play level=स्तर खेलें +Toggle on-screen buttons=ऑन-स्क्रीन बटन चालू/बंद करें +Undo=पूर्ववत करें +Redo=फिर से करें +Use tool=उपकरण उपयोग करें +Tool quick action=उपकरण त्वरित क्रिया +Tank team=टैंक टीम +Tank orientation=टैंक की दिशा +Obstacle height=बाधा की ऊँचाई +Obstacle group ID=बाधा समूह आईडी +Build=बनाएँ +Erase=मिटाएँ +Adjust camera=कैमरा समायोजित करें +Zoom in=ज़ूम इन करें +Zoom out=ज़ूम आउट करें +Re-center camera=कैमरा पुनः केंद्रित करें +Next object=अगली वस्तु +Previous object=पिछली वस्तु +Next object type=अगला वस्तु प्रकार +Previous object type=पिछला वस्तु प्रकार +Next object property=अगली वस्तु संपत्ति +Previous object property=पिछली वस्तु संपत्ति +Select=चुनें +Clear selection=चयन साफ़ करें +Toggle square selection=वर्गाकार चयन चालू/बंद करें +Toggle remove from selection=चयन से हटाना चालू/बंद करें +Reset=रीसेट +Unbind=अनबाइंड +Mouse target: =माउस लक्ष्य: +When enabled, your mouse pointer will be replaced by a target=सक्षम होने पर, आपके माउस पॉइंटर को एक लक्ष्य से बदल दिया जाएगा +Graphics options=ग्राफ़िक्स विकल्प +Terrain: =भूभाग: +fast=तेज़ +fancy=उत्तम +Fancy terrain varies block and ground colors=उत्तम भूभाग ब्लॉक और ज़मीन के रंगों में विविधता लाता है +May impact performance on larger levels=बड़े स्तरों पर प्रदर्शन को प्रभावित कर सकता है +Bullet trails: =गोली के निशान: +Bullet trails show the paths of bullets=गोली के निशान गोलियों का मार्ग दिखाते हैं +Fancy bullet trails enable extra particle effects for certain bullet types=उत्तम गोली के निशान कुछ गोली प्रकारों के लिए अतिरिक्त कण प्रभाव सक्षम करते हैं +Glow effects: =चमक प्रभाव: +Glow effects may significantly impact performance=चमक प्रभाव प्रदर्शन को महत्वपूर्ण रूप से प्रभावित कर सकते हैं +Particle effects: =कण प्रभाव: +Particle effects may significantly impact performance=कण प्रभाव प्रदर्शन को महत्वपूर्ण रूप से प्रभावित कर सकते हैं +Particle percentage=कण प्रतिशत +V-Sync:=V-Sync: +Limit framerate to your screen's refresh rate=फ्रेमरेट को आपकी स्क्रीन की रिफ्रेश दर तक सीमित करें +May decrease battery consumption=बैटरी की खपत कम कर सकता है +Also, might fix issues with inconsistent game speed=साथ ही, असंगत खेल गति की समस्याओं को ठीक कर सकता है +3D graphics: =3D ग्राफ़िक्स: +3D graphics may impact performance=3D ग्राफ़िक्स प्रदर्शन को प्रभावित कर सकते हैं +3D ground: =3D ज़मीन: +3D ground may impact performance in larger levels=3D ज़मीन बड़े स्तरों पर प्रदर्शन को प्रभावित कर सकती है +View:=दृश्य: +Changes the angle at which you view the game field=उस कोण को बदलता है जिस पर आप खेल मैदान देखते हैं +Bird's-eye view=पक्षी की दृष्टि से +Angled=कोणीय +Antialiasing:=एंटीएलियासिंग: +May fix flickering in thin edges at the cost of performance=प्रदर्शन की क़ीमत पर पतले किनारों की झिलमिलाहट को ठीक कर सकता है +Requires restarting the game to take effect=प्रभावी होने के लिए खेल को पुनः आरंभ करना आवश्यक है +Notice!=सूचना! +Antialiasing will be enabled the next time you start the game=अगली बार जब आप खेल शुरू करेंगे तो एंटीएलियासिंग सक्षम हो जाएगी +Antialiasing will be disabled the next time you start the game=अगली बार जब आप खेल शुरू करेंगे तो एंटीएलियासिंग अक्षम हो जाएगी +Fullscreen:=फुलस्क्रीन: +Can also be toggled at any time by pressing %d or %d=%d या %d दबाकर किसी भी समय भी चालू/बंद किया जा सकता है +Sound options=ध्वनि विकल्प +Sound volume=ध्वनि वॉल्यूम +Music volume=संगीत वॉल्यूम +Game options=खेल विकल्प +Autostart:=स्वतः आरंभ: +When enabled, level will start automatically 4 seconds after they are loaded (if the play button isn't clicked earlier)=सक्षम होने पर, स्तर लोड होने के 4 सेकंड बाद स्वचालित रूप से शुरू हो जाएगा (यदि खेलें बटन पहले नहीं दबाया गया) +Advanced stats:=उन्नत आँकड़े: +Shows more detailed statistics after a crusade ends.=क्रूसेड समाप्त होने के बाद अधिक विस्तृत आँकड़े दिखाता है। +Speedrunning options=स्पीडरनिंग विकल्प +Timer:=टाइमर: +When enabled, time spent in the current level attempt and crusade will be displayed=सक्षम होने पर, वर्तमान स्तर प्रयास और क्रूसेड में बिताया गया समय प्रदर्शित होगा +Deterministic:=नियतात्मक: +Deterministic mode changed the random number generation to be fixed based on a seed, and the game speed to be locked and independent of framerate.=नियतात्मक मोड यादृच्छिक संख्या जनरेशन को बीज पर आधारित निश्चित कर देता है, और खेल की गति को लॉक और फ्रेमरेट से स्वतंत्र कर देता है। +This is useful for fair speedruns but may provide for a less smooth experience=यह निष्पक्ष स्पीडरन के लिए उपयोगी है लेकिन कम सहज अनुभव दे सकता है +About=के बारे में +Changelogs=परिवर्तन लॉग +License=लाइसेंस +Privacy policy=गोपनीयता नीति +Library licenses=लाइब्रेरी लाइसेंस +What's new in %d:=%d में क्या नया है: +New features:=नई सुविधाएँ: +Levels:=स्तर: +Items:=वस्तुएँ: +User interfaces:=उपयोगकर्ता इंटरफ़ेस: +Graphics:=ग्राफ़िक्स: +Audio:=ऑडियो: +Options:=विकल्प: +More:=अधिक: +Balancing:=संतुलन: +Improvements:=सुधार: +Welcome to %d!=%d में आपका स्वागत है! +Time: %d=समय: %d +New level=नया स्तर +Level menu=स्तर मेनू +Up=ऊपर +Down=नीचे +Left=बाएँ +Right=दाएँ +Done=पूर्ण +none=कोई नहीं +Are you sure you want to delete the level?=क्या आप वाकई स्तर हटाना चाहते हैं? +Player=खिलाड़ी +Move the player=खिलाड़ी को हिलाएँ +Add multiple player spawn points=कई खिलाड़ी स्पॉन बिंदु जोड़ें +A dummy tank used to practice your aim=निशाने का अभ्यास करने के लिए डमी टैंक +A primitive stationary tank=एक आदिम स्थिर टैंक +A primitive mobile tank=एक आदिम चलने वाला टैंक +A tank which shoots fast rocket bullets=तेज़ रॉकेट गोलियाँ चलाने वाला टैंक +A tanks which lays mines=माइनें बिछाने वाला टैंक +A medium-speed smart tank=मध्यम गति का स्मार्ट टैंक +A stationary tank which shoots deadly lasers=घातक लेज़र चलाने वाला स्थिर टैंक +A deadly stationary tank which shoots rockets that bounce twice=दो बार उछलने वाले रॉकेट चलाने वाला घातक स्थिर टैंक +A smart, fast tank which can lay mines=माइनें बिछा सकने वाला स्मार्ट, तेज़ टैंक +A stationary tank which shoots stunning electricity which arcs between targets=लक्ष्यों के बीच चाप बनाने वाली चकित करने वाली बिजली चलाने वाला स्थिर टैंक +An invisible smart tank=एक अदृश्य स्मार्ट टैंक +A support tank which shoots freezing bullets that deal low damage=कम क्षति देने वाली जमाने वाली गोलियाँ चलाने वाला सहायक टैंक +A short-range tank which shoots fire=आग चलाने वाला लघु-दूरी टैंक +A tank which shoots huge bullets which bounce 3 times and can't be stopped=विशाल गोलियाँ चलाने वाला टैंक जो 3 बार उछलती हैं और रोकी नहीं जा सकतीं +A stationary tank which lobs bullets over walls=दीवारों के ऊपर गोलियाँ फेंकने वाला स्थिर टैंक +A tank which adds extra health to its allies and becomes explosive as a last stand=अपने मित्रों को अतिरिक्त स्वास्थ्य देने वाला टैंक जो अंतिम क्षण में विस्फोटक बन जाता है +A tank which shoots explosive bullets=विस्फोटक गोलियाँ चलाने वाला टैंक +A tank which speeds up its allies and speeds up as a last stand=अपने मित्रों को तेज़ करने वाला टैंक जो अंतिम क्षण में स्वयं भी तेज़ हो जाता है +A fast tank which rapidly fires many small, low-damage bullets=तेज़ी से कई छोटी, कम-क्षति वाली गोलियाँ चलाने वाला तेज़ टैंक +A tank which mimics the closest tank it sees=सबसे नज़दीकी दिखाई देने वाले टैंक की नक़ल करने वाला टैंक +A tank which blows strong gusts of air=हवा के ज़ोरदार झोंके मारने वाला टैंक +A tank which spawns mini-tanks and shoots 2-bounce rockets=मिनी-टैंक उत्पन्न करने वाला और 2-उछाल वाले रॉकेट चलाने वाला टैंक +A small, primitive tank which shoots tiny, low damage bullets=छोटी, कम क्षति वाली गोलियाँ चलाने वाला छोटा, आदिम टैंक +A tank which shoots homing rockets=होमिंग रॉकेट चलाने वाला टैंक +A tank which gets angry at line of sight=दृष्टि रेखा पर ग़ुस्साने वाला टैंक +A big boss tank which spawns other tanks and takes 5 regular bullets to destroy=अन्य टैंक उत्पन्न करने वाला बड़ा बॉस टैंक जिसे नष्ट करने के लिए 5 सामान्य गोलियाँ चाहिए +Last opened %d =अंतिम बार खोला %d +Adventure crusade=साहसिक क्रूसेड +Classic crusade=क्लासिक क्रूसेड +Levels: %d=स्तर: %d +Game paused=खेल रोक दिया गया +Note! You will lose a life for restarting!=ध्यान दें! पुनः आरंभ करने पर आप एक जीवन खो देंगे! +Note! You will lose a life for quitting in the middle of a level=ध्यान दें! स्तर के बीच में छोड़ने पर आप एक जीवन खो देंगे +You can't restart the level because you only have one life left!=आप स्तर पुनः आरंभ नहीं कर सकते क्योंकि आपके पास केवल एक जीवन शेष है! +Since you do not have any other lives left, your progress will be lost=चूँकि आपके पास कोई अन्य जीवन शेष नहीं है, आपकी प्रगति खो जाएगी +Battle %d=लड़ाई %d +Grassy welcome=घास भरा स्वागत +Snowy tunnel=बर्फ़ीली सुरंग +Stadium=स्टेडियम +Potholes=गड्ढे +Shooting range=शूटिंग रेंज +Blockage=अवरोध +Breakout=ब्रेकआउट +Bomb squad=बम दस्ता +Shrubland=झाड़ीदार ज़मीन +The corner=कोना +Package=पैकेज +Break in=घुसपैठ +The box=डिब्बा +The classic=क्लासिक +Purple dome=बैंगनी गुंबद +Snake=साँप +Zap=ज़ैप +Grassy fort=घास भरा क़िला +Snow piles=बर्फ़ के ढेर +Ghost invasion=भूतों का आक्रमण +Winter lake=शीतकालीन झील +Freeze trap=जमाने वाला जाल +Toast=टोस्ट +Mud pits=कीचड़ के गड्ढे +Dodge forest=बचाव जंगल +Bumper mania=बंपर पागलपन +Squad=दस्ता +Corners=कोने +The base=ठिकाना +Face off=आमने-सामने +Black bros=काले भाई +Shades of green=हरे के रंग +Babies attack=शिशुओं का हमला +Blizzard=बर्फ़ानी तूफ़ान +Big boss=बड़ा बॉस +Play random levels, crusades, the tutorial, or make your own levels!=यादृच्छिक स्तर, क्रूसेड, ट्यूटोरियल खेलें या अपने स्तर बनाएँ! +Play, chat, and share levels and crusades with other players!=अन्य खिलाड़ियों के साथ स्तर और क्रूसेड खेलें, चैट करें और साझा करें! +Create or join a party=पार्टी बनाएँ या जॉइन करें +Make sure that everyone is using the same port!=सुनिश्चित करें कि सभी एक ही पोर्ट का उपयोग कर रहे हैं! +All players should be connected to the same network, unless the host is port forwarding.=जब तक मेज़बान पोर्ट फ़ॉरवर्डिंग नहीं कर रहा हो, सभी खिलाड़ियों को एक ही नेटवर्क से जुड़ा होना चाहिए। +Joining via Steam peer-to-peer Doesn't require port forwarding.=स्टीम peer-to-peer के माध्यम से जॉइन करने के लिए पोर्ट फ़ॉरवर्डिंग आवश्यक नहीं है। +Create a party=पार्टी बनाएँ +Join a party=पार्टी जॉइन करें +Port=पोर्ट +Sets port for multiplayer=मल्टीप्लेयर के लिए पोर्ट सेट करता है +Make sure all players are using the same port=सुनिश्चित करें कि सभी खिलाड़ी एक ही पोर्ट का उपयोग कर रहे हैं +Your local IP Address: %d %d Port: %d%d=आपका स्थानीय IP पता: %d %d पोर्ट: %d%d +Also hosting on Steam peer-to-peer (Steam friends can join)=स्टीम peer-to-peer पर भी होस्ट किया जा रहा है (स्टीम मित्र जॉइन कर सकते हैं) +Players in this party:=इस पार्टी में खिलाड़ी: +Play:=खेलें: +Versus=बनाम +Fight other players in this party in a randomly generated level=इस पार्टी के अन्य खिलाड़ियों के साथ यादृच्छिक रूप से बनाए गए स्तर में लड़ें +Play levels you have created=आपके द्वारा बनाए गए स्तर खेलें +Level and crusade sharing:=स्तर और क्रूसेड साझाकरण: +Upload=अपलोड +Download=डाउनलोड +Party options=पार्टी विकल्प +What would you like to share?=आप क्या साझा करना चाहेंगे? +Share a level=एक स्तर साझा करें +Share a crusade=एक क्रूसेड साझा करें +Click here or press %d to send a chat message=चैट संदेश भेजने के लिए यहाँ क्लिक करें या %d दबाएँ +Share=साझा करें +Shared levels=साझा किए गए स्तर +Shared crusades=साझा की गई क्रूसेड +Level downloaded!=स्तर डाउनलोड हो गया! +Pick a different name...=एक अलग नाम चुनें... +Ready %d=तैयार %d +End party=पार्टी समाप्त करें +Are you sure you want to end the party?=क्या आप वाकई पार्टी समाप्त करना चाहते हैं? +All players will be disconnected!=सभी खिलाड़ी डिस्कनेक्ट हो जाएँगे! +Join Steam friends=स्टीम मित्रों के साथ जॉइन करें +Steam friends playing Tanks=टैंक्स खेलते स्टीम मित्र +Party IP Address=पार्टी IP पता +You can find this on the party host's screen=यह आपको पार्टी मेज़बान की स्क्रीन पर मिलेगा +Join=जॉइन करें +Connect to a non-cellular data network to play with others!=अन्य लोगों के साथ खेलने के लिए ग़ैर-सेलुलर डेटा नेटवर्क से कनेक्ट करें! +%d has joined the party=%d पार्टी में शामिल हुआ +%d has left the party=%d पार्टी से चला गया +%dms=%dms +Would you like to kick %d from the party?=क्या आप %d को पार्टी से निकालना चाहेंगे? +Cancel=रद्द करें +Kick %d=%d को निकालें +You were kicked from the party!=आपको पार्टी से निकाल दिया गया! +The party host has closed their game=पार्टी मेज़बान ने अपना खेल बंद कर दिया है +Continue=जारी रखें +Please wait for the current game to finish!=कृपया वर्तमान खेल समाप्त होने की प्रतीक्षा करें! +%d would like to join the party=%d पार्टी में शामिल होना चाहता है +%d has started!=%d शुरू हो गया है! +Created access code: %d=ऐक्सेस कोड बनाया गया: %d +Party=पार्टी +Select a multiplayer game mode=मल्टीप्लेयर खेल मोड चुनें +Party=पार्टी +Play with other people who are connected to your local network (or who are port forwarding)=उन अन्य लोगों के साथ खेलें जो आपके स्थानीय नेटवर्क से जुड़े हैं (या जो पोर्ट फ़ॉरवर्डिंग कर रहे हैं) +Online=ऑनलाइन +Access the online Tanks community!=ऑनलाइन टैंक्स समुदाय तक पहुँचें! +Welcome to %d!=%d में आपका स्वागत है! +You now have access to %d for %d=अब आपके पास %d के लिए %d तक की पहुँच है +Tanks Online menu=टैंक्स ऑनलाइन मेनू +Upload level=स्तर अपलोड करें +Select a level to upload...=अपलोड करने के लिए स्तर चुनें... +Level successfully uploaded!=स्तर सफलतापूर्वक अपलोड हुआ! +Browse levels=स्तर ब्राउज़ करें +Uploaded by: %d=अपलोड करने वाला: %d +%d=%d +My uploaded levels=मेरे अपलोड किए गए स्तर +My account=मेरा खाता +Your access code:=आपका ऐक्सेस कोड: +Your access will expire in %d=आपकी पहुँच %d में समाप्त हो जाएगी +Accounts using this access code: %d=इस ऐक्सेस कोड का उपयोग करने वाले खाते: %d +Unlink access code=ऐक्सेस कोड अनलिंक करें +You can control the blue tank using the blue joystick.=आप नीले जॉयस्टिक का उपयोग करके नीले टैंक को नियंत्रित कर सकते हैं। +Use this stick to move the blue tank!=नीले टैंक को हिलाने के लिए इस स्टिक का उपयोग करें! +Skip Tutorial=ट्यूटोरियल छोड़ें +Tap somewhere to shoot in that direction!=उस दिशा में फायर करने के लिए कहीं टैप करें! +Tap the player and drag around the orange circle to aim.=खिलाड़ी पर टैप करें और निशाना लगाने के लिए नारंगी घेरे के चारों ओर खींचें। +Pull your finger out of the orange circle to shoot!¡=फायर करने के लिए नारंगी घेरे से अपनी उँगली बाहर निकालें! +Double-tap the blue tank to lay a mine!=माइन रखने के लिए नीले टैंक पर डबल-टैप करें! +You can see your health, available bullets and mines, and remaining enemy tanks by pressing the bottom arrow!=नीचे का तीर दबाकर आप अपना स्वास्थ्य, उपलब्ध गोलियाँ और माइनें, और शेष दुश्मन टैंक देख सकते हैं! +Press the arrow below!=नीचे का तीर दबाएँ! +Finish of the battle by destroying that grey tank, but watch out - it can move!=उस ग्रे टैंक को नष्ट करके लड़ाई समाप्त करें, लेकिन सावधान - वह चल सकता है! +Congratulations! You are now ready to play!=बधाई हो! अब आप खेलने के लिए तैयार हैं! +Let's go!=चलिए शुरू करें! +Debug menu=डिबग मेनू +Test keyboard=कीबोर्ड परीक्षण +Key test=कुंजी परीक्षण +Press a key to show its code=उसका कोड दिखाने के लिए कोई कुंजी दबाएँ +Test text boxes=टेक्स्ट बॉक्स परीक्षण +Text box test=टेक्स्ट बॉक्स परीक्षण +Text box=टेक्स्ट बॉक्स +UUID box=UUID बॉक्स +Test models=मॉडल परीक्षण +Trace rays:=किरणें ट्रेस करें: +Immersive camera:=इमर्सिव कैमरा: +First person:=प्रथम-पुरुष: +Crusade name=क्रूसेड का नाम +Starting lives=प्रारंभिक जीवन +Bonus life frequency=बोनस जीवन आवृत्ति +Level names:=स्तर के नाम: +Crusade levels=क्रूसेड स्तर +Rearrange levels=स्तर पुनः व्यवस्थित करें +Add level=स्तर जोड़ें +Select a level to add=जोड़ने के लिए स्तर चुनें +Level position=स्तर की स्थिति +Battle cleared=लड़ाई जीती! +Lives remaining: %d=शेष जीवन: %d +Crusade time: %d=क्रूसेड का समय: %d +You gained a life for clearing %d!=%d जीतने के लिए आपको एक जीवन मिला! +Next level=अगला स्तर +Replay the level=स्तर पुनः खेलें +You finished the crusade!=आपने क्रूसेड पूरा कर लिया! +statistics=आँकड़े +Kills=कत्ल +Coins=सिक्के +Total coins=कुल सिक्के +Deaths=मौतें +Battles=लड़ाइयाँ +Battle=लड़ाई +Attempts=प्रयास +Clear time=पूर्ण समय +Total time=कुल समय +Total=कुल +Item=वस्तु +Times used=उपयोग की बार +Hits landed=लगे प्रहार +Accuracy=शुद्धता +Summary=सारांश +Battles cleared=जीती हुई लड़ाइयाँ +Lives remaining=शेष जीवन +Total kills=कुल कत्ल +Total deaths=कुल मौतें +Time elapsed=बीता हुआ समय +Coins spent=खर्च किए गए सिक्के +Coins remaining=शेष सिक्के +Return to title=शीर्षक पर वापस +Minigames=मिनी-गेम्स +Arcade Mode=आर्केड मोड +Beat Arcade Mode=आर्केड मोड हराएँ +Castle Crusade=क़िला क्रूसेड +Sports Crusade=स्पोर्ट्स क्रूसेड +Drag and drop crusades to import them=क्रूसेड आयात करने के लिए उन्हें ड्रैग और ड्रॉप करें +Create a crusade=क्रूसेड बनाएँ +Random co-op=यादृच्छिक को-ऑप +Random versus=यादृच्छिक बनाम +Your Local IP Address:=आपका स्थानीय IP पता: + + +§000100200255bird's-eye=§000100200255पक्षी की दृष्टि से +§000100200255circular=§000100200255वृत्ताकार +§000100200255fancy=§000100200255उत्तम +§000100200255unlimited=§000100200255असीमित +§000200000255default=§000200000255डिफ़ॉल्ट +§000200000255on=§000200000255चालू +§000200000255public=§000200000255सार्वजनिक +§000200000255strong=§000200000255मज़बूत +§200000000255off=§200000000255बंद +§200000000255private=§200000000255निजी +§200000000255third person=§200000000255तृतीय-पुरुष +§200100000255angled=§200100000255कोणीय +§200100000255bottom=§200100000255नीचे +§200100000255fast=§200100000255तेज़ +§200100000255V-Sync=§200100000255V-Sync +§200100000255weak=§200100000255कमज़ोर +§255000000255first person=§255000000255प्रथम-पुरुष +Adds designs to the built-in tanks---which can help differentiate them=अंतर्निहित टैंकों में डिज़ाइन जोड़ता है---जो उन्हें अलग पहचानने में मदद करता है +Advanced stats: =उन्नत आँकड़े: +Agree and continue=सहमत हों और जारी रखें +A mine will explode after 10 seconds, if another tank gets near, or if shot.=माइन 10 सेकंड बाद, या कोई अन्य टैंक पास आने पर, या उस पर गोली लगने पर फट जाएगी। +Antialiasing: =एंटीएलियासिंग: +Antialiasing will be enabled=एंटीएलियासिंग सक्षम हो जाएगी +Anticheat: =धोखा-रोधी: +a place to share your creations to an audience of all ages.=एक जगह जहाँ आप अपनी रचनाएँ हर उम्र के दर्शकों के साथ साझा कर सकते हैं। +Audio: =ऑडियो: +Auto ready: =स्वतः तैयार: +Autostart: =स्वतः आरंभ: +Back to minigames=मिनी-गेम्स पर वापस +Back to party=पार्टी पर वापस +Balancing: =संतुलन: +Battle cleared!=लड़ाई जीती! +Battle failed!=लड़ाई हारी! +Beginner crusade=शुरुआती क्रूसेड +Block=ब्लॉक +Bot players=बॉट खिलाड़ी +Browse crusades=क्रूसेड ब्राउज़ करें +Browse crusades the Tanks community has created!=टैंक्स समुदाय द्वारा बनाए गए क्रूसेड ब्राउज़ करें! +Browse levels the Tanks community has created!=टैंक्स समुदाय द्वारा बनाए गए स्तर ब्राउज़ करें! +Browse public parties=सार्वजनिक पार्टियाँ ब्राउज़ करें +Bullet trails show the paths of bullets------Fancy bullet trails enable some extra particle---effects for certain bullet types=गोली के निशान गोलियों का मार्ग दिखाते हैं------उत्तम गोली के निशान कुछ गोली प्रकारों के---लिए अतिरिक्त कण प्रभाव सक्षम करते हैं +but watch out - it can move!=लेकिन सावधान - वह चल सकता है! +Camera=कैमरा +Can also be toggled at any time---by pressing %s=%s दबाकर किसी भी समय भी---चालू/बंद किया जा सकता है +Castle crusade=क़िला क्रूसेड +Changes the angle at which---you view the game field=उस कोण को बदलता है जिस पर---आप खेल मैदान देखते हैं +Chat filter: =चैट फ़िल्टर: +Circle tool=वृत्त उपकरण +Clear tool=साफ़ करें उपकरण +Click here or press %s to send a chat message=चैट संदेश भेजने के लिए यहाँ क्लिक करें या %s दबाएँ +Click to mute %s and prevent them from chatting.---%s is currently not muted.=%s को म्यूट करने और उन्हें चैट करने से रोकने के लिए क्लिक करें।---%s वर्तमान में म्यूट नहीं है। +Click to unmute %s.---%s is currently muted and can't chat.=%s को अनम्यूट करने के लिए क्लिक करें।---%s वर्तमान में म्यूट है और चैट नहीं कर सकता। +Close menu=मेनू बंद करें +Colors: %d=रंग: %d +Configures the placement of item, health,---and ammunition information on the screen.------In the 'bottom' setting, all this information---will be at the bottom of the screen.------In the 'circular' setting, this information will---either be overlaid on your tank---or placed around your cursor.=स्क्रीन पर वस्तु, स्वास्थ्य और---गोला-बारूद जानकारी का स्थान कॉन्फ़िगर करता है।------'नीचे' सेटिंग में, यह सारी जानकारी---स्क्रीन के नीचे होगी।------'वृत्ताकार' सेटिंग में, यह जानकारी---या तो आपके टैंक के ऊपर लगी होगी---या आपके कर्सर के चारों ओर रखी जाएगी। +Connect to a network to play with others!=अन्य लोगों के साथ खेलने के लिए नेटवर्क से कनेक्ट करें! +Constrain mouse: =माउस को सीमित करें: +Copy=कॉपी करें +Countdown time=उल्टी गिनती का समय +Create a level with the 'New level' button!='नया स्तर' बटन से स्तर बनाएँ! +Create crusade=क्रूसेड बनाएँ +Creations deemed inappropriate or offensive may be removed.=अनुचित या आपत्तिजनक मानी जाने वाली रचनाएँ हटाई जा सकती हैं। +Crusade preview: =क्रूसेड पूर्वावलोकन: +# Current battle: =# वर्तमान लड़ाई: +Cut=कट करें +Delete level=स्तर हटाएँ +Deterministic: =नियतात्मक: +Deterministic mode changes the random number---generation to be fixed based on a seed, and---the game speed to be locked and independent---of framerate.------This is useful for fair speedruns but may---provide for a less smooth experience.------If your device can't run Tanks at 60 FPS,---use 30 FPS mode to prevent slowdowns.=नियतात्मक मोड यादृच्छिक संख्या जनरेशन को---बीज पर आधारित निश्चित कर देता है, और---खेल की गति को लॉक और फ्रेमरेट से---स्वतंत्र कर देता है।------यह निष्पक्ष स्पीडरन के लिए उपयोगी है---लेकिन कम सहज अनुभव दे सकता है।------यदि आपका डिवाइस टैंक्स को 60 FPS पर नहीं चला सकता,---धीमी गति से बचने के लिए 30 FPS मोड का उपयोग करें। +Disables all friendly fire in the party.---Tanks on the same team will---not damage each other.---Useful for co-op in bigger parties.=पार्टी में सभी मित्रवत फायर निष्क्रिय करता है।---एक ही टीम के टैंक---एक-दूसरे को क्षति नहीं देंगे।---बड़ी पार्टियों में को-ऑप के लिए उपयोगी। +Disables the framerate limit------May cause issues with inconsistent game speed=फ्रेमरेट सीमा को निष्क्रिय करता है------असंगत खेल गति की समस्याएँ पैदा कर सकता है +Disallows your mouse pointer from---leaving the window while playing=खेलते समय आपके माउस पॉइंटर को---विंडो से बाहर निकलने से रोकता है +%d players in this party:=इस पार्टी में %d खिलाड़ी: +Editor=संपादक +Effect options=प्रभाव विकल्प +Enabling 3D ground may impact---performance in large levels=3D ज़मीन सक्षम करना बड़े स्तरों पर---प्रदर्शन को प्रभावित कर सकता है +Exit=बाहर निकलें +Failed to connect=कनेक्ट करने में विफल +family friendly and respectful to other players!=परिवार के अनुकूल और अन्य खिलाड़ियों के प्रति सम्मानजनक हो! +Fancy terrain enables varied block---and ground colors------May impact performance on larger levels=उत्तम भूभाग विविध ब्लॉक---और ज़मीन के रंग सक्षम करता है------बड़े स्तरों पर प्रदर्शन को प्रभावित कर सकता है +Fight battles in an order,---and see how long you can survive!=क्रम से लड़ाइयाँ लड़ें,---और देखें कि आप कब तक जीवित रह सकते हैं! +Fight other players in this party---in a randomly generated level=इस पार्टी के अन्य खिलाड़ियों के साथ---यादृच्छिक रूप से बनाए गए स्तर में लड़ें +First person: =प्रथम-पुरुष: +Friendly fire: =मित्रवत फायर: +Fullscreen: =फुलस्क्रीन: +Game menu=खेल मेनू +Generate new level=नया स्तर बनाएँ +Getting your IP Address...=आपका IP पता प्राप्त किया जा रहा है... +Glow effects may significantly---impact performance=चमक प्रभाव प्रदर्शन को महत्वपूर्ण---रूप से प्रभावित कर सकते हैं +Graphics: =ग्राफ़िक्स: +Hide/show pause menu=पॉज़ मेनू छिपाएँ/दिखाएँ +Hosting failed:---%s------If you keep getting this error try restarting the game.=होस्टिंग विफल:---%s------यदि आपको यह त्रुटि बार-बार मिले तो खेल पुनः आरंभ करें। +Hotbar: =हॉटबार: +How many extra bot players---to add to parties=पार्टियों में जोड़ने के लिए---कितने अतिरिक्त बॉट खिलाड़ी +Immersive camera: =इमर्सिव कैमरा: +Improvements: =सुधार: +Info bar: =सूचना पट्टी: +Invite Steam friends=स्टीम मित्रों को आमंत्रित करें +Items: =वस्तुएँ: +Item slot 1=वस्तु स्लॉट 1 +Item slot 10=वस्तु स्लॉट 10 +Item slot 2=वस्तु स्लॉट 2 +Item slot 3=वस्तु स्लॉट 3 +Item slot 4=वस्तु स्लॉट 4 +Item slot 5=वस्तु स्लॉट 5 +Item slot 6=वस्तु स्लॉट 6 +Item slot 7=वस्तु स्लॉट 7 +Item slot 8=वस्तु स्लॉट 8 +Item slot 9=वस्तु स्लॉट 9 +Join by IP=IP से जॉइन करें +Join steam parties=स्टीम पार्टियाँ जॉइन करें +Last modified---%s ago=अंतिम बार संशोधित---%s पहले +Last opened %d=अंतिम बार खोला %d +Layered music: =परतदार संगीत: +Leave party=पार्टी छोड़ें +Level and crusade sharing: =स्तर और क्रूसेड साझाकरण: +Level names: =स्तर के नाम: +Levels: =स्तर: +Level save name=स्तर सहेजने का नाम +Level time: =स्तर का समय: +Limiting your framerate may---decrease battery consumption=आपकी फ्रेमरेट सीमित करना---बैटरी की खपत कम कर सकता है +Limits framerate to your screen's refresh rate------May fix issues with screen tearing=फ्रेमरेट को आपकी स्क्रीन की रिफ्रेश दर तक सीमित करता है------स्क्रीन टीयरिंग की समस्याओं को ठीक कर सकता है +Line tool=रेखा उपकरण +Make a copy=एक प्रति बनाएँ +make their party public to other Steam players.=अपनी पार्टी को अन्य स्टीम खिलाड़ियों के लिए सार्वजनिक करें। +Manual limit=मैन्युअल सीमा +Max FPS: §000100200255unlimited=अधिकतम FPS: §000100200255असीमित +Max FPS: §200100000255V-Sync=अधिकतम FPS: §200100000255V-Sync +Max FPS: %s=अधिकतम FPS: %s +Maximum framerate: §000100200255unlimited=अधिकतम फ्रेमरेट: §000100200255असीमित +Maximum framerate: §200100000255V-Sync=अधिकतम फ्रेमरेट: §200100000255V-Sync +Maximum framerate is locked to 60---because of deterministic mode=नियतात्मक मोड के कारण---अधिकतम फ्रेमरेट 60 पर लॉक है +Maximum framerate: %s=अधिकतम फ्रेमरेट: %s +May fix flickering in thin edges---at the cost of performance------Requires restarting the game---to take effect=प्रदर्शन की क़ीमत पर पतले किनारों की---झिलमिलाहट को ठीक कर सकता है------प्रभावी होने के लिए खेल को---पुनः आरंभ करना आवश्यक है +Miscellaneous options=विविध विकल्प +More: =अधिक: +Move down=नीचे जाएँ +My profile=मेरी प्रोफ़ाइल +My uploaded creations=मेरी अपलोड की गई रचनाएँ +network, unless the host is port forwarding.=नेटवर्क से, जब तक मेज़बान पोर्ट फ़ॉरवर्डिंग न कर रहा हो। +New features: =नई सुविधाएँ: +No creations found=कोई रचना नहीं मिली +No levels found=कोई स्तर नहीं मिला +Now finish off the battle by destroying that gray tank,=अब उस ग्रे टैंक को नष्ट करके लड़ाई समाप्त करें, +# off=# बंद +# on=# चालू +Online creations=ऑनलाइन रचनाएँ +Open folder in file manager=फ़ाइल मैनेजर में फ़ोल्डर खोलें +Open game folder=खेल फ़ोल्डर खोलें +Options: =विकल्प: +or=या +Particle effects may significantly---impact performance=कण प्रभाव प्रदर्शन को महत्वपूर्ण---रूप से प्रभावित कर सकते हैं +Party host=पार्टी मेज़बान +Paste=पेस्ट करें +Personalize your tank!=अपने टैंक को व्यक्तिगत बनाएँ! +Pick a name for the copy!=प्रति के लिए एक नाम चुनें! +Pick a username that players---will see in multiplayer=ऐसा उपयोगकर्ता नाम चुनें जो खिलाड़ी---मल्टीप्लेयर में देखेंगे +Play: =खेलें: +Play, chat, and share levels---and crusades with other players!=अन्य खिलाड़ियों के साथ स्तर और---क्रूसेड खेलें, चैट करें और साझा करें! +Players in this party: =इस पार्टी में खिलाड़ी: +Players using Steam can invite friends to their party or=स्टीम का उपयोग कर रहे खिलाड़ी मित्रों को अपनी पार्टी में आमंत्रित कर सकते हैं या +Play random levels, crusades, minigames,---the tutorial, or make your own levels or crusades!=यादृच्छिक स्तर, क्रूसेड, मिनी-गेम्स,---ट्यूटोरियल खेलें या अपने स्तर या क्रूसेड बनाएँ! +Play Tanks in new ways!=टैंक्स को नए तरीक़ों से खेलें! +Please ensure that everything you upload is appropriately=कृपया सुनिश्चित करें कि आप जो भी अपलोड कर रहे हैं वह उचित रूप से +Publicly share and check out---levels and crusades other players---have made!=अन्य खिलाड़ियों द्वारा बनाए गए स्तर और---क्रूसेड सार्वजनिक रूप से साझा करें---और देखें! +Pull your finger out of the orange circle to shoot!=फायर करने के लिए नारंगी घेरे से अपनी उँगली बाहर निकालें! +Quick use ability 1=त्वरित उपयोग क्षमता 1 +Quick use ability 2=त्वरित उपयोग क्षमता 2 +Quick use ability 3=त्वरित उपयोग क्षमता 3 +Quick use ability 4=त्वरित उपयोग क्षमता 4 +Quick use ability 5=त्वरित उपयोग क्षमता 5 +Quit=बाहर निकलें +# Remaining lives: =# शेष जीवन: +Replay level=स्तर पुनः खेलें +Reset controls=नियंत्रण रीसेट करें +Reset to default colors=डिफ़ॉल्ट रंगों पर रीसेट करें +Restart level=स्तर पुनः आरंभ करें +Restart tutorial=ट्यूटोरियल पुनः आरंभ करें +Resume=जारी रखें +Rocket=रॉकेट +Rotate selection=चयन घुमाएँ +Save copy=प्रति सहेजें +Search=खोजें +Second color: =दूसरा रंग: +Set a manual framerate limit=मैन्युअल फ्रेमरेट सीमा सेट करें +Sets port for multiplayer------Make sure all players are using---the same port=मल्टीप्लेयर के लिए पोर्ट सेट करता है------सुनिश्चित करें कि सभी खिलाड़ी---एक ही पोर्ट का उपयोग कर रहे हैं +Shadow options=छाया विकल्प +Shadow quality=छाया गुणवत्ता +Shadow quality: %s=छाया गुणवत्ता: %s +Shadows: =छायाएँ: +Shadows are quite graphically intense---and may significantly reduce framerate=छायाएँ ग्राफ़िक रूप से काफ़ी सघन हैं---और फ्रेमरेट को काफ़ी कम कर सकती हैं +Share a crusade you made with the Tanks community!=टैंक्स समुदाय के साथ अपना बनाया क्रूसेड साझा करें! +Share a level you made with the Tanks community!=टैंक्स समुदाय के साथ अपना बनाया स्तर साझा करें! +Share crusade=क्रूसेड साझा करें +Share level=स्तर साझा करें +Show best run: =सर्वश्रेष्ठ रन दिखाएँ: +Shows indicators for bullets---hidden behind terrain=भूभाग के पीछे छुपी गोलियों के---लिए संकेतक दिखाता है +Shows the following information---at the bottom of the screen:------Game version---Framerate---Network latency (if in a party)---Memory usage=स्क्रीन के निचले हिस्से में---निम्नलिखित जानकारी दिखाता है:------खेल संस्करण---फ्रेमरेट---नेटवर्क विलंबता (पार्टी में होने पर)---मेमोरी उपयोग +Sorting by last modified=अंतिम बार संशोधन के अनुसार क्रमबद्ध +Sorting by name=नाम के अनुसार क्रमबद्ध +Square selection=वर्गाकार चयन +Square tool=वर्ग उपकरण +%s's creations=%s की रचनाएँ +Starting Steam party...=स्टीम पार्टी आरंभ की जा रही है... +Start now=अभी शुरू करें +Start over=फिर से शुरू करें +Stats animations: =आँकड़े एनिमेशन: +Steam visibility: =स्टीम दृश्यता: +Steam workshop=स्टीम वर्कशॉप +Steam workshop upload agreement=स्टीम वर्कशॉप अपलोड समझौता +Take screenshot=स्क्रीनशॉट लें +Tank textures: =टैंक टेक्सचर: +Thank you for your understanding.=आपकी समझ के लिए धन्यवाद। +the next time you start the game.=अगली बार जब आप खेल शुरू करेंगे। +the same port, and that all players are connected to the same=एक ही पोर्ट का, और सभी खिलाड़ी एक ही +The Steam Workshop for Tanks: The Crusades is intended to be=टैंक्स: द क्रूसेड्स के लिए स्टीम वर्कशॉप का उद्देश्य है +The Tanks community looks forward to seeing what you've made!=टैंक्स समुदाय आपकी बनाई हुई चीज़ें देखने के लिए उत्सुक है! +The wait time in seconds after---all players are ready before---the battle begins.=सभी खिलाड़ी तैयार होने के बाद---लड़ाई शुरू होने से पहले---प्रतीक्षा का समय (सेकंड में)। +Timer: =टाइमर: +Toggle automatic zoom=स्वचालित ज़ूम चालू/बंद करें +Toggle showing IP address=IP पता दिखाना चालू/बंद करें +To join with an IP address, make sure that everyone is using=IP पते से जॉइन करने के लिए, सुनिश्चित करें कि सभी +Trace rays: =किरणें ट्रेस करें: +Unlimited=असीमित +Upload crusade=क्रूसेड अपलोड करें +User interfaces: =उपयोगकर्ता इंटरफ़ेस: +View: =दृश्य: +View everything you have uploaded=आपके द्वारा अपलोड की गई हर चीज़ देखें +Void rocket=शून्य रॉकेट +V-Sync=V-Sync +V-Sync: =V-Sync: +Wand tool=जादू की छड़ी उपकरण +Warn before closing the game---while in an editor=संपादक में रहते हुए खेल बंद---करने से पहले चेतावनी दें +Warn before exit: =बाहर निकलने से पहले चेतावनी दें: +Welcome to Tanks!=टैंक्स में आपका स्वागत है! +What's new in %d: =%d में क्या नया है: +When enabled and playing a built-in---crusade that you've already completed---at least once, the time difference from---your best run's time will show upon---clearing a level.=सक्षम होने पर और कम से कम एक बार---पूरा किए गए अंतर्निहित क्रूसेड को खेलते समय,---स्तर जीतने पर आपके सर्वश्रेष्ठ रन के---समय से अंतर दिखाया जाएगा। +When enabled, levels will---start playing automatically---4 seconds after they are---loaded (if the play button---isn't clicked earlier)=सक्षम होने पर, स्तर लोड होने के---4 सेकंड बाद स्वचालित रूप से---शुरू हो जाएँगे (यदि खेलें बटन---पहले नहीं दबाया गया) +When enabled, the backgrounds of---the crusade preview and stats---screens display an animation of all---the crusade levels scrolling by.=सक्षम होने पर, क्रूसेड पूर्वावलोकन---और आँकड़े स्क्रीनों की पृष्ठभूमि---क्रूसेड के सभी स्तरों के स्क्रॉल---होने का एनिमेशन दिखाती हैं। +When enabled, time spent---in the current level attempt---and crusade will be displayed=सक्षम होने पर, वर्तमान स्तर प्रयास---और क्रूसेड में बिताया गया---समय प्रदर्शित होगा +When layered music is enabled, different---instruments will be added to the soundtrack---based on criteria such as remaining tank---types or arcade rampage level.--- ---This may cause lag and desynchronization---of music on some devices.=परतदार संगीत सक्षम होने पर, शेष टैंक---प्रकार या आर्केड रैम्पेज स्तर जैसे---मानदंडों के आधार पर ध्वनि-पथ में---विभिन्न वाद्य जोड़े जाएँगे।--- ---यह कुछ डिवाइसों पर संगीत की लैग---और बेमेल का कारण बन सकता है। +When off, skips directly to the summary tab---of the crusade end stats screen=बंद होने पर, क्रूसेड एंड आँकड़े स्क्रीन के---सारांश टैब पर सीधे चला जाता है +When this option is enabled---while hosting a party,---other players' positions and---velocities will be checked---and corrected if invalid.------Weaker settings work better---with less stable connections.=पार्टी होस्ट करते समय यह विकल्प---सक्षम होने पर, अन्य खिलाड़ियों---की स्थिति और गति की जाँच की---जाएगी और अमान्य पाए जाने पर---सही की जाएगी।------कमज़ोर सेटिंग्स कम-स्थिर---कनेक्शन के साथ बेहतर काम करती हैं। +Window options=विंडो विकल्प +Window resolution=विंडो रिज़ॉल्यूशन +X-ray bullets: =एक्स-रे गोलियाँ: +You can control the tank in the circle using the keyboard.=आप घेरे में टैंक को कीबोर्ड का उपयोग करके नियंत्रित कर सकते हैं। +You can find this on the---party host's screen=यह आपको पार्टी मेज़बान---की स्क्रीन पर मिलेगा +You can see your health, available bullets and mines,=आप अपना स्वास्थ्य, उपलब्ध गोलियाँ और माइनें देख सकते हैं, +You have no levels=आपके पास कोई स्तर नहीं है +Your access code: =आपका ऐक्सेस कोड: +Your Local IP Address: %s (Port: %d)=आपका स्थानीय IP पता: %s (पोर्ट: %d) From 5731567c5b59a698a70dd86c3ffb997feb885d53 Mon Sep 17 00:00:00 2001 From: Parth Iyer Date: Sun, 24 May 2026 19:41:28 -0700 Subject: [PATCH 05/12] Fix linting issues --- src/main/java/lwjglwindow/LWJGLWindow.java | 6 +++--- src/main/java/lwjglwindow/TruetypeFontRenderer.java | 5 +---- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/src/main/java/lwjglwindow/LWJGLWindow.java b/src/main/java/lwjglwindow/LWJGLWindow.java index a240c236..f2dc10cf 100644 --- a/src/main/java/lwjglwindow/LWJGLWindow.java +++ b/src/main/java/lwjglwindow/LWJGLWindow.java @@ -130,10 +130,10 @@ public void run() protected void init() { - TruetypeFontRenderer ttf = new TruetypeFontRenderer(this, "/fonts/Bullet.ttf", 64, true, 1.4, 0.3); - ttf.addFontsFromIndex("/fonts/NotoSans/index.txt", 128, false, 1.4, 0.3); + TruetypeFontRenderer ttf = new TruetypeFontRenderer(this, "/fonts/Bullet.ttf", 64, true, 1.4, 0.3); + ttf.addFontsFromIndex("/fonts/NotoSans/index.txt", 128, false, 1.4, 0.3); - this.fontRenderer = ttf; + this.fontRenderer = ttf; GLFWErrorCallback.createPrint(System.err).set(); diff --git a/src/main/java/lwjglwindow/TruetypeFontRenderer.java b/src/main/java/lwjglwindow/TruetypeFontRenderer.java index 0aadfdbe..edcb3423 100644 --- a/src/main/java/lwjglwindow/TruetypeFontRenderer.java +++ b/src/main/java/lwjglwindow/TruetypeFontRenderer.java @@ -6,10 +6,7 @@ import org.lwjgl.stb.STBTTFontinfo; import org.lwjgl.system.MemoryStack; -import java.io.BufferedReader; -import java.io.ByteArrayOutputStream; -import java.io.InputStream; -import java.io.InputStreamReader; +import java.io.*; import java.nio.ByteBuffer; import java.nio.IntBuffer; import java.nio.charset.StandardCharsets; From 76d2a9ffac958751c5fb7b8bdde36b0d8d95451f Mon Sep 17 00:00:00 2001 From: Parth Iyer Date: Sun, 24 May 2026 20:16:23 -0700 Subject: [PATCH 06/12] Fix the weird GL bug on mac? --- src/main/java/lwjglwindow/LWJGLWindow.java | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/src/main/java/lwjglwindow/LWJGLWindow.java b/src/main/java/lwjglwindow/LWJGLWindow.java index f2dc10cf..92deb054 100644 --- a/src/main/java/lwjglwindow/LWJGLWindow.java +++ b/src/main/java/lwjglwindow/LWJGLWindow.java @@ -126,16 +126,13 @@ public void run() glfwSetErrorCallback(null).free(); } - protected void init() { - TruetypeFontRenderer ttf = new TruetypeFontRenderer(this, "/fonts/Bullet.ttf", 64, true, 1.4, 0.3); ttf.addFontsFromIndex("/fonts/NotoSans/index.txt", 128, false, 1.4, 0.3); this.fontRenderer = ttf; - GLFWErrorCallback.createPrint(System.err).set(); if (!glfwInit()) @@ -145,14 +142,6 @@ protected void init() glfwWindowHint(GLFW_VISIBLE, GLFW_FALSE); glfwWindowHint(GLFW_RESIZABLE, GLFW_TRUE); - // Request a well-defined OpenGL 3.0 context. Renderer uses immediate-mode - // (glBegin/glEnd), so we stay below 3.2 where the compatibility profile is implicit. - // Without these hints, NVIDIA's EGL driver on Wayland segfaults setting up the context. - glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); - glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 0); - glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_ANY_PROFILE); - glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GLFW_FALSE); - if (antialiasingEnabled) glfwWindowHint(GLFW_SAMPLES, 4); @@ -1388,4 +1377,4 @@ public void setForceModelGlow(boolean glow) { this.forceModelGlow = glow; } -} +} \ No newline at end of file From 2fb81b173b58839a0f3d3311018e4683f8e89fe1 Mon Sep 17 00:00:00 2001 From: Parth Iyer Date: Sun, 24 May 2026 20:42:54 -0700 Subject: [PATCH 07/12] Added the Font Slicer Script to the repo --- .gitignore | 1 + slicr.py | 69 ++++++++++++++++++ src/main/java/lwjglwindow/LWJGLWindow.java | 2 +- .../resources/fonts/{ => default}/Bullet.ttf | Bin 4 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 slicr.py rename src/main/resources/fonts/{ => default}/Bullet.ttf (100%) diff --git a/.gitignore b/.gitignore index 784e34ce..4439cda6 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,4 @@ steam_app_id.txt /Tests /src/main/resources/hash.txt libs.tar.gz +chars diff --git a/slicr.py b/slicr.py new file mode 100644 index 00000000..c752e636 --- /dev/null +++ b/slicr.py @@ -0,0 +1,69 @@ +from PIL import Image +import svgwrite +import fontforge + +SCALER = 24 +OFF = 10 + +chars = (" !\"#$%&'()*+,-./" + + "0123456789:;<=>?" + + "@ABCDEFGHIJKLMNO" + + "PQRSTUVWXYZ[\\]^_" + + "'abcdefghijklmno" + + "pqrstuvwxyz{|}~`" + + "âăîşţàçæèéêëïôœù" + + "úûüÿáíóñ¡¿äöå") + +def save_char(char_id, cell_width, cell_height, char_img): + dwg = svgwrite.Drawing(f"chars/{chars[char_id]}.svg", size=(f"{cell_width*SCALER}px", f"{(cell_height-(2*OFF))*SCALER}px"), profile='tiny') + for y in range(cell_height): + for x in range(cell_width): + r, g, b, a = char_img.getpixel((x, y)) + if a > 0: + hex_color = f'#{r:02x}{g:02x}{b:02x}' + dwg.add(dwg.rect((x*SCALER, (y-OFF)*SCALER), (SCALER, SCALER), fill=hex_color)) + + dwg.save() + +def slice_image(image_path, cell_width, cell_height): + """ + Slices a grid image into individual character PNGs. + """ + img = Image.open(image_path) + width, height = img.size + + char_id = 0 + for y in range(0, height, cell_height): + for x in range(0, width, cell_width): + box = (x, y, x + cell_width, y + cell_height) + char_img = img.crop(box) + if (char_id < len(chars)): + save_char(char_id, cell_width, cell_height, char_img) + char_id += 1 + +def fontify(): + slice_image("src/main/resources/fonts/default/font.png", 32, 64) + font = fontforge.font() + font.fontname = "Bullet" + font.fullname = "Bullet Sans" + font.familyname = "Bullet" + font.encoding = "UnicodeBMP" + font.copyright = "Copyright (c) 2025 Matei Budiu, Parth Iyer" + for char in chars: + glyph = font.createChar(ord(char)) + try: + if char == ' ': + glyph.width = 15 * SCALER + else: + glyph.importOutlines(f"chars/{char}.svg") + xmin, ymin, xmax, ymax = glyph.boundingBox() + glyph.width = int(xmax - xmin + 5*SCALER/2) + glyph.left_side_bearing = int(5*SCALER/2) + + except Exception as e: + print(f"Error processing {char}: {e}") + + font.autoWidth(0) + font.generate("src/main/resources/fonts/default/Bullet.ttf") + +fontify() diff --git a/src/main/java/lwjglwindow/LWJGLWindow.java b/src/main/java/lwjglwindow/LWJGLWindow.java index 92deb054..a698664e 100644 --- a/src/main/java/lwjglwindow/LWJGLWindow.java +++ b/src/main/java/lwjglwindow/LWJGLWindow.java @@ -128,7 +128,7 @@ public void run() protected void init() { - TruetypeFontRenderer ttf = new TruetypeFontRenderer(this, "/fonts/Bullet.ttf", 64, true, 1.4, 0.3); + TruetypeFontRenderer ttf = new TruetypeFontRenderer(this, "/fonts/default/Bullet.ttf", 128, true, 1.4, 0.3); ttf.addFontsFromIndex("/fonts/NotoSans/index.txt", 128, false, 1.4, 0.3); this.fontRenderer = ttf; diff --git a/src/main/resources/fonts/Bullet.ttf b/src/main/resources/fonts/default/Bullet.ttf similarity index 100% rename from src/main/resources/fonts/Bullet.ttf rename to src/main/resources/fonts/default/Bullet.ttf From 767abba3e9eda0ce8774e964520e099ce7934bed Mon Sep 17 00:00:00 2001 From: Parth Iyer Date: Mon, 25 May 2026 11:14:25 -0700 Subject: [PATCH 08/12] Remove Noto Sans & switch to ttcs instead of ttfs --- .gitignore | 1 + src/main/java/lwjglwindow/LWJGLWindow.java | 7 +- .../lwjglwindow/TruetypeFontRenderer.java | 186 +++++++++++++++--- src/main/resources/fonts/zh_cn/OFL.txt | 96 --------- .../resources/fonts/zh_cn/font_zh_cn_1.png | Bin 64132 -> 0 bytes .../resources/fonts/zh_cn/font_zh_cn_1.txt | 1 - .../resources/fonts/zh_cn/font_zh_cn_2.png | Bin 74422 -> 0 bytes .../resources/fonts/zh_cn/font_zh_cn_2.txt | 1 - .../resources/fonts/zh_cn/font_zh_cn_3.png | Bin 75370 -> 0 bytes .../resources/fonts/zh_cn/font_zh_cn_3.txt | 1 - .../resources/fonts/zh_cn/font_zh_cn_4.png | Bin 79259 -> 0 bytes .../resources/fonts/zh_cn/font_zh_cn_4.txt | 1 - .../resources/fonts/zh_cn/font_zh_cn_5.png | Bin 77778 -> 0 bytes .../resources/fonts/zh_cn/font_zh_cn_5.txt | 1 - .../resources/fonts/zh_cn/font_zh_cn_6.png | Bin 76631 -> 0 bytes .../resources/fonts/zh_cn/font_zh_cn_6.txt | 1 - 16 files changed, 166 insertions(+), 130 deletions(-) delete mode 100644 src/main/resources/fonts/zh_cn/OFL.txt delete mode 100644 src/main/resources/fonts/zh_cn/font_zh_cn_1.png delete mode 100644 src/main/resources/fonts/zh_cn/font_zh_cn_1.txt delete mode 100644 src/main/resources/fonts/zh_cn/font_zh_cn_2.png delete mode 100644 src/main/resources/fonts/zh_cn/font_zh_cn_2.txt delete mode 100644 src/main/resources/fonts/zh_cn/font_zh_cn_3.png delete mode 100644 src/main/resources/fonts/zh_cn/font_zh_cn_3.txt delete mode 100644 src/main/resources/fonts/zh_cn/font_zh_cn_4.png delete mode 100644 src/main/resources/fonts/zh_cn/font_zh_cn_4.txt delete mode 100644 src/main/resources/fonts/zh_cn/font_zh_cn_5.png delete mode 100644 src/main/resources/fonts/zh_cn/font_zh_cn_5.txt delete mode 100644 src/main/resources/fonts/zh_cn/font_zh_cn_6.png delete mode 100644 src/main/resources/fonts/zh_cn/font_zh_cn_6.txt diff --git a/.gitignore b/.gitignore index 4439cda6..fd72c5ba 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,4 @@ steam_app_id.txt /src/main/resources/hash.txt libs.tar.gz chars +.claude diff --git a/src/main/java/lwjglwindow/LWJGLWindow.java b/src/main/java/lwjglwindow/LWJGLWindow.java index a698664e..aeb24d90 100644 --- a/src/main/java/lwjglwindow/LWJGLWindow.java +++ b/src/main/java/lwjglwindow/LWJGLWindow.java @@ -128,8 +128,13 @@ public void run() protected void init() { + // Fallback triage, in priority order: the game's bundled font, then the OS default font for + // broad offline coverage, then any font files (e.g. the downloaded Noto Sans .ttc) the user + // has under ~/.tanks/fonts. findFontForChar walks these in load order, so the first that has + // the glyph wins. TruetypeFontRenderer ttf = new TruetypeFontRenderer(this, "/fonts/default/Bullet.ttf", 128, true, 1.4, 0.3); - ttf.addFontsFromIndex("/fonts/NotoSans/index.txt", 128, false, 1.4, 0.3); + ttf.addSystemFont(128, false, 1.4, 0.3); + ttf.addFontsFromDirectory(System.getProperty("user.home") + "/.tanks/fonts", 128, false, 1.4, 0.3); this.fontRenderer = ttf; diff --git a/src/main/java/lwjglwindow/TruetypeFontRenderer.java b/src/main/java/lwjglwindow/TruetypeFontRenderer.java index edcb3423..043d0b3a 100644 --- a/src/main/java/lwjglwindow/TruetypeFontRenderer.java +++ b/src/main/java/lwjglwindow/TruetypeFontRenderer.java @@ -9,7 +9,8 @@ import java.io.*; import java.nio.ByteBuffer; import java.nio.IntBuffer; -import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Paths; import java.util.*; import static org.lwjgl.opengl.GL11.*; @@ -32,6 +33,16 @@ public static class TtfFontInfo private final Map glyphMetrics = new HashMap<>(); public TtfFontInfo(ByteBuffer buffer, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + this(buffer, 0, bakeHeight, pixelPerfect, sizeScale, yOffset); + } + + /** + * @param fontOffset Byte offset of this font's table directory within {@code buffer}: 0 for a + * standalone .ttf, or the {@code stbtt_GetFontOffsetForIndex} value for a + * member of a .ttc collection (where many fonts share one buffer). + */ + public TtfFontInfo(ByteBuffer buffer, int fontOffset, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) { this.ttfBuffer = buffer; this.stbInfo = STBTTFontinfo.create(); @@ -40,7 +51,7 @@ public TtfFontInfo(ByteBuffer buffer, int bakeHeight, boolean pixelPerfect, doub this.sizeScale = sizeScale; this.yOffset = yOffset; - if (!stbtt_InitFont(stbInfo, buffer)) + if (!stbtt_InitFont(stbInfo, buffer, fontOffset)) throw new RuntimeException("Failed to initialize STB truetype font"); this.fontScale = stbtt_ScaleForPixelHeight(stbInfo, bakeHeight); @@ -165,21 +176,27 @@ public TruetypeFontRenderer(LWJGLWindow h, String ttfResourcePath, int bakeHeigh this.fonts.add(defaultFont); } - private TtfFontInfo loadFont(String path, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + private ByteBuffer readResource(String path) throws IOException { - try + try (InputStream in = lwjglWindow.getResource(path)) { - InputStream in = lwjglWindow.getResource(path); ByteArrayOutputStream out = new ByteArrayOutputStream(); byte[] chunk = new byte[8192]; int n; while ((n = in.read(chunk)) > 0) out.write(chunk, 0, n); - in.close(); byte[] bytes = out.toByteArray(); ByteBuffer buffer = BufferUtils.createByteBuffer(bytes.length); buffer.put(bytes).flip(); - return new TtfFontInfo(buffer, bakeHeight, pixelPerfect, sizeScale, yOffset); + return buffer; + } + } + + private TtfFontInfo loadFont(String path, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + try + { + return new TtfFontInfo(readResource(path), bakeHeight, pixelPerfect, sizeScale, yOffset); } catch (Exception e) { @@ -213,36 +230,151 @@ public void addFont(String ttfPath, String chars, int[] charSizes) addFont(ttfPath, 64, false, 1.0, 0.0); } + /** Reads an entire file on disk into a native {@link ByteBuffer} suitable for STB. */ + private static ByteBuffer readFile(String filePath) throws IOException + { + byte[] bytes = Files.readAllBytes(Paths.get(filePath)); + ByteBuffer buffer = BufferUtils.createByteBuffer(bytes.length); + buffer.put(bytes).flip(); + return buffer; + } + /** - * Loads every font listed in {@code indexPath} (one resource path per line; blank lines and - * lines starting with {@code #} are ignored) and registers each as a fallback with the given - * tuning. The index file is read via {@code LWJGLWindow.getResource}, so it goes through the - * project's normal override-location lookup before falling back to the classpath. + * Registers every font contained in {@code buffer} as a fallback, in order, all sharing the one + * buffer. A plain .ttf reports a single font; a .ttc collection reports several. Order matters: + * {@link #findFontForChar} returns the first font that has the glyph, so earlier-added fonts win. + * + * @return the number of fonts registered */ - public void addFontsFromIndex(String indexPath, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + private int addFontsFromBuffer(ByteBuffer buffer, String label, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) { - try (InputStream in = lwjglWindow.getResource(indexPath); - BufferedReader r = new BufferedReader(new InputStreamReader(in, StandardCharsets.UTF_8))) + int count = stbtt_GetNumberOfFonts(buffer); + if (count <= 0) + throw new RuntimeException("not a valid font file (stbtt_GetNumberOfFonts returned " + count + ")"); + + int loaded = 0; + for (int i = 0; i < count; i++) { - int loaded = 0; - String line; - while ((line = r.readLine()) != null) - { - line = line.trim(); - if (line.isEmpty() || line.startsWith("#")) - continue; + int offset = stbtt_GetFontOffsetForIndex(buffer, i); + if (offset < 0) + continue; - int before = fonts.size(); - addFont(line, bakeHeight, pixelPerfect, sizeScale, yOffset); - if (fonts.size() > before) - loaded++; + try + { + fonts.add(new TtfFontInfo(buffer, offset, bakeHeight, pixelPerfect, sizeScale, yOffset)); + loaded++; + } + catch (Exception e) + { + System.err.println("TruetypeFontRenderer: skipped sub-font " + i + " of '" + label + "': " + e.getMessage()); } - System.out.println("TruetypeFontRenderer: loaded " + loaded + " fonts from " + indexPath); + } + return loaded; + } + + /** + * Adds every font in a file on disk (a .ttf, .otf, or multi-font .ttc) as a fallback. Intended + * for fonts outside the classpath — an OS system font, or a user-supplied file under + * {@code ~/.tanks/fonts}. A missing, unreadable, or invalid file is logged and skipped: a bad + * fallback must never kill the renderer. + * + * @return the number of fonts registered (0 on failure) + */ + public int addFontFile(String filePath, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + try + { + int loaded = addFontsFromBuffer(readFile(filePath), filePath, bakeHeight, pixelPerfect, sizeScale, yOffset); + System.out.println("TruetypeFontRenderer: loaded " + loaded + " font(s) from " + filePath); + return loaded; } catch (Exception e) { - System.err.println("TruetypeFontRenderer: failed to read font index '" + indexPath + "': " + e.getMessage()); + System.err.println("TruetypeFontRenderer: failed to load font file '" + filePath + "': " + e.getMessage()); + return 0; + } + } + + /** + * Adds every font file sitting directly inside {@code dirPath} (non-recursive) as a fallback: + * each .ttc, .ttf, and .otf, processed in case-insensitive filename order so load priority is + * stable across runs. This is where the downloaded Noto Sans collection in {@code ~/.tanks/fonts} + * is picked up, alongside any other font the user drops there. The directory is created if it + * doesn't exist (so there's a place to drop fonts and for the downloader to write to); an empty + * or uncreatable directory is a no-op. + */ + public void addFontsFromDirectory(String dirPath, int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + File dir = new File(dirPath); + if (!dir.isDirectory() && !dir.mkdirs()) + { + System.err.println("TruetypeFontRenderer: could not create font directory " + dirPath); + return; + } + + File[] files = dir.listFiles((d, name) -> + { + String n = name.toLowerCase(Locale.ROOT); + return n.endsWith(".ttc") || n.endsWith(".ttf") || n.endsWith(".otf"); + }); + + if (files == null) + return; + + Arrays.sort(files, Comparator.comparing(f -> f.getName().toLowerCase(Locale.ROOT))); + for (File f : files) + addFontFile(f.getAbsolutePath(), bakeHeight, pixelPerfect, sizeScale, yOffset); + } + + /** + * Adds the platform's default UI font as a fallback — the tier between the bundled font and any + * downloaded fonts — so common scripts render offline before the larger Noto collection is + * present. Probes a short, per-OS list of well-known font paths and adds the first that exists; + * if none are found the call is a no-op. + */ + public void addSystemFont(int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + String os = System.getProperty("os.name", "").toLowerCase(Locale.ROOT); + String[] candidates; + + if (os.contains("win")) + { + String windir = System.getenv("WINDIR"); + String root = (windir != null ? windir : "C:\\Windows") + "\\Fonts\\"; + candidates = new String[]{root + "segoeui.ttf", root + "arial.ttf", root + "tahoma.ttf"}; + } + else if (os.contains("mac") || os.contains("darwin")) + { + candidates = new String[]{ + "/System/Library/Fonts/SFNS.ttf", + "/System/Library/Fonts/SFNSText.ttf", + "/System/Library/Fonts/Helvetica.ttc", + "/System/Library/Fonts/Supplemental/Arial.ttf", + "/Library/Fonts/Arial.ttf"}; } + else // Linux / other unix + { + candidates = new String[]{ + "/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf", + "/usr/share/fonts/dejavu-sans-fonts/DejaVuSans.ttf", + "/usr/share/fonts/dejavu/DejaVuSans.ttf", + "/usr/share/fonts/TTF/DejaVuSans.ttf", + "/usr/share/fonts/google-noto/NotoSans-Regular.ttf", + "/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf", + "/usr/share/fonts/liberation/LiberationSans-Regular.ttf", + "/usr/share/fonts/truetype/liberation/LiberationSans-Regular.ttf"}; + } + + for (String path : candidates) + { + if (new File(path).isFile()) + { + addFontFile(path, bakeHeight, pixelPerfect, sizeScale, yOffset); + return; + } + } + + System.err.println("TruetypeFontRenderer: no system default font found for OS '" + os + "'"); } @Override diff --git a/src/main/resources/fonts/zh_cn/OFL.txt b/src/main/resources/fonts/zh_cn/OFL.txt deleted file mode 100644 index 3ff0ccab..00000000 --- a/src/main/resources/fonts/zh_cn/OFL.txt +++ /dev/null @@ -1,96 +0,0 @@ -Copyright 2014-2025 Adobe (http://www.adobe.com/), with Reserved Font -Name 'Source'. Source is a trademark of Adobe in the United States -and/or other countries. - -This Font Software is licensed under the SIL Open Font License, -Version 1.1. - -This license is copied below, and is also available with a FAQ at: -http://scripts.sil.org/OFL - ------------------------------------------------------------ -SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 ------------------------------------------------------------ - -PREAMBLE -The goals of the Open Font License (OFL) are to stimulate worldwide -development of collaborative font projects, to support the font -creation efforts of academic and linguistic communities, and to -provide a free and open framework in which fonts may be shared and -improved in partnership with others. - -The OFL allows the licensed fonts to be used, studied, modified and -redistributed freely as long as they are not sold by themselves. The -fonts, including any derivative works, can be bundled, embedded, -redistributed and/or sold with any software provided that any reserved -names are not used by derivative works. The fonts and derivatives, -however, cannot be released under any other type of license. The -requirement for fonts to remain under this license does not apply to -any document created using the fonts or their derivatives. - -DEFINITIONS -"Font Software" refers to the set of files released by the Copyright -Holder(s) under this license and clearly marked as such. This may -include source files, build scripts and documentation. - -"Reserved Font Name" refers to any names specified as such after the -copyright statement(s). - -"Original Version" refers to the collection of Font Software -components as distributed by the Copyright Holder(s). - -"Modified Version" refers to any derivative made by adding to, -deleting, or substituting -- in part or in whole -- any of the -components of the Original Version, by changing formats or by porting -the Font Software to a new environment. - -"Author" refers to any designer, engineer, programmer, technical -writer or other person who contributed to the Font Software. - -PERMISSION & CONDITIONS -Permission is hereby granted, free of charge, to any person obtaining -a copy of the Font Software, to use, study, copy, merge, embed, -modify, redistribute, and sell modified and unmodified copies of the -Font Software, subject to the following conditions: - -1) Neither the Font Software nor any of its individual components, in -Original or Modified Versions, may be sold by itself. - -2) Original or Modified Versions of the Font Software may be bundled, -redistributed and/or sold with any software, provided that each copy -contains the above copyright notice and this license. These can be -included either as stand-alone text files, human-readable headers or -in the appropriate machine-readable metadata fields within text or -binary files as long as those fields can be easily viewed by the user. - -3) No Modified Version of the Font Software may use the Reserved Font -Name(s) unless explicit written permission is granted by the -corresponding Copyright Holder. This restriction only applies to the -primary font name as presented to the users. - -4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font -Software shall not be used to promote, endorse or advertise any -Modified Version, except to acknowledge the contribution(s) of the -Copyright Holder(s) and the Author(s) or with their explicit written -permission. - -5) The Font Software, modified or unmodified, in part or in whole, -must be distributed entirely under this license, and must not be -distributed under any other license. The requirement for fonts to -remain under this license does not apply to any document created using -the Font Software. - -TERMINATION -This license becomes null and void if any of the above conditions are -not met. - -DISCLAIMER -THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT -OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE -COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL -DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM -OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/src/main/resources/fonts/zh_cn/font_zh_cn_1.png b/src/main/resources/fonts/zh_cn/font_zh_cn_1.png deleted file mode 100644 index 056753656942ac005b4da02ff305b3ef2b1a0d5e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64132 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 R_W}49NKIF@O4&O6{{Tk%jNt$P diff --git a/src/main/resources/fonts/zh_cn/font_zh_cn_1.txt b/src/main/resources/fonts/zh_cn/font_zh_cn_1.txt deleted file mode 100644 index d3deda35..00000000 --- a/src/main/resources/fonts/zh_cn/font_zh_cn_1.txt +++ /dev/null @@ -1 +0,0 @@ -,。?!@#¥%……&*()-+~·《》【】、|‘”;:—、简体中文结构基于并添加了更多翻译游戏版本语言坦克十字军东征开始选项关退出帧率内存使用量单人择模式返回随机卡小我的教程时间确定性继续生成新重此到主菜编辑删除名称大背景颜色照明团队物品限制分钟秒将和数 \ No newline at end of file diff --git a/src/main/resources/fonts/zh_cn/font_zh_cn_2.png b/src/main/resources/fonts/zh_cn/font_zh_cn_2.png deleted file mode 100644 index 8ac4b2dd3a7711e75d095cbc4a5af9d4c729e939..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74422 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 diff --git a/src/main/resources/fonts/zh_cn/font_zh_cn_2.txt b/src/main/resources/fonts/zh_cn/font_zh_cn_2.txt deleted file mode 100644 index 0c39018e..00000000 --- a/src/main/resources/fonts/zh_cn/font_zh_cn_2.txt +++ /dev/null @@ -1 +0,0 @@ -设置为以禁直射光阴影红绿蓝宽度高盟友敌初硬币商店排列子弹地雷护盾从板普通火焰激反超级闪电冰冻喷器炮治疗束爆炸迷你黑暗保图标最堆叠尺寸价格引线长触发半径冷却活动伤害上一页下破坏方块是否第共后坐力型类效果速次命值提升额外个进行按顺序战斗看能坚持久创建玩自己学习 \ No newline at end of file diff --git a/src/main/resources/fonts/zh_cn/font_zh_cn_3.png b/src/main/resources/fonts/zh_cn/font_zh_cn_3.png deleted file mode 100644 index dcd90ade6d3db98d8d90999981c85b13d939e66a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75370 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

UadiOOH%} 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 tvgDIMDk}#L&{+ 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 diff --git a/src/main/resources/fonts/zh_cn/font_zh_cn_4.txt b/src/main/resources/fonts/zh_cn/font_zh_cn_4.txt deleted file mode 100644 index 3cc341d8..00000000 --- a/src/main/resources/fonts/zh_cn/font_zh_cn_4.txt +++ /dev/null @@ -1 +0,0 @@ -隐藏全追踪热见槽取消对象播撤销做工具快操伍障碍造擦调整摄像头居属清形解绑目指针替华丽改变面响轨迹路某粒著百比垂步刷减少池耗也决致问三维视场角俯倾斜抗锯齿修复薄缘烁但代需要才注意声音乐载点统计详细据尝花费种固锁与助公平供太流畅验日志证私政策依赖库容功界频衡欢 \ No newline at end of file diff --git a/src/main/resources/fonts/zh_cn/font_zh_cn_5.png b/src/main/resources/fonts/zh_cn/font_zh_cn_5.png deleted file mode 100644 index 1bb64db5ff4561fa11bf795007275e136017560e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77778 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ð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%0AlWm2kTO9XozZToX1P8Xzds&KNYggg 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%0AdM7A!u}<_h z_vw-XbTAVpM+RpGLLVcJFoP4o``Sv58u9&|+n=&XTQR_EabXf_Yk)mkKrvtrU=|Jd z>?h}d!27tK`Kk`|tXOZzZ7rg|pBd)+#@h_$OO5#Pj#sF%&v&XX+cd;nv5ypx1Z6Gm zKSW|!X01yL?kgh?4-dG=R8ZDT-#st*3xnyu2#8ga@q3CZUsj1^v#^oh-zm zp?s~L5H;Sj(P0}odg$`|{*~ZHbjFbgQiS*tQpwsyi(08GRa2iq-P{G0m;I5)*r6#k zVXh32&X)VlbiB-!WV8bWAF*1I?8(6sSeOz#(6ATHzPC7W(yMRAqcJx(bn{^B`dUUT zB{%_nfjeE`Y%{+!?yO@Ljt*Ww-zc5;lq`EvNHL&((Pa~VV%Z@m1(>i5FxfF+Oq9Sc zW%PJn84r;4XkhaZDp(De!TQ%~y_O2%no%R6K_HrK7(sNvrU)>a&c#zL(~p%^Q6Tsl z^YN@`syZ3r7JxUdKt=fZwxXv7AcplX8@&uZd8z)f9#}Q95m|^I=4j^gnZ*F%{QNeK8;aII9)V1#257jR0=f>n z4%q)NYnWy^(Fvl90w41HHkm4G$}JpSlQp8=@0RM~cz{kiS7m)OqxbOx?Nku(C87sMUJkfH1jC@r&-L*zW|P~6K3T%e zD2k<^sJ$x+osSi^c#pPbkMwVXN)Sf4qR zZZe`KVuKlDH?jvc@xd8)xf-S5eC#cndm#l4W%Gybv)-M-;8pyoFnev~meRN+o~$ETKoyilI`9Qz{1_nz z&oKSd6eWF$q@MhT`I>Zdt}i&@e*xLL1BbLo+aO?cd7+Zgnv^N5{sd zeNZE|iL7r3$Qtv1_{t_okQ~ve)&OD>sKCR7Cq$GXTJ=&m-$b5^DM@XGF+pxXJH+s* zn~?u@TAS129#uClegRw`S#toi2=fn)sxHfID@E9s#z4oj|3;bl!1{wDJT)XzjNAY( z0n=j^ZW9MEBvTnOYsCxx<+f=7NG|g4_u6al;R45O@F9>i!RA}?tL|jcaZpHuAI{Vo z=>zVZI zr-m3CBDnQj`FFHW>w^xotd8M^m|RT+H|2J5nbyH{2U{F(E+;&Y?kQMq0g13(O1Afd zG7aWjB%Ffa%CJ6A{=vT|8YhcsEpo?E@lU~mHhN$k0)M;#1Ks~T=*h37pI-TsUvZo- z_@~?&OFqk9+Bd%mYzYY^sp$w!LOX*`f|fj$Z6T;%MM7h(FB?)ZY#=sWkToUwRlVz7 zJ1bZRaZA7rxW-800)WHPjR4@6di!X(vV9bFDP$0IAqdY*Trb64q8k8BnQo*4Z*V;- z<8HM)yG@n}r_@qP>F+{X7qONnDF&_%iwN;}Ru*U(4Hl@U;%jZ>fLv^UVgw!m@bgt} z;m?QXYJR<8n&O#~`eOPMlI+X-F6J3vi4y2~_#5-*K1z$4!R2|j`ts!{G2jfm#KXS! zm^@%qjup(Gx=J#j1sFy8I`)-`8$f+wjtj&v8i2F6#cU=WJtM zh|*EGqQ#AJ_cC8^&k9<&A{werw699=}-qJiS58z9)VvO85;tN{O` z?Fgq1>=_OQwnHi^76&Wf4xtRP!ul3WIInsqlolgzA?qzPi}#Nb9ze_+wES4|7?6~& z!`=k%xPJeRiy7+p+e&eW7VE~+yz1t>G{X!3zK=$S>*m_$Ilac(=Wb9E#IIH@77FJF zxo*$yW2_B?p!W*Va0gh!9{=}8Wl9+0sKfHYQ-H5&G6*Z{$;Yzu%&6cympXUfs^!HW zMwa7WhrfiT#r3>{0sqAK-(qyl43YJX%fGUdFi)YQ?p*50$5PDOAaZ&$2gV2LHpBEO z1;7a3LkxaN-rmaNEw3H@F(#0tYS%@fD&&zaolK-kaT3QPfM?}O8{fks+*<>CaY43_ zz#R{v@MDq4G$oIw=H7ye8|6-6h0hD-N3IfZH}PX_`XCu;O#Z{J3h7Q#Z{~W}6wVAf zC#%lnQ`2pCtf>%e@EPt3?tK*P+M^nuEmgh1wQc45^Aqi^?(a)y(cLuD1CqBYooF^ z)nD`F1vg12>2(14A4)kjPd>-k)5mL9X5{$$QT*k(MU)T#H8 zHG(jqe#GIx@mpq5xF3kqYYj$A3A*nM6-5ez_PN1FoYdT49powwH*At% zQv!*(PwOQPu2i55e1PqeybOdx9LsWu3p|-wb!1d^d~fxP?nyj4Ojm*~%%ZK&=(9!Q zfoYd$Xoml1jO2veU{8OULaQMg^92ggij!hODA|1raeLM1Gb+~T)RXhKJ23~hmQ{ks zTjIOqE?tJs6dWQBg&n zq0H9`%ky+zKNS|$v&mq?SV%jfmzQXVyWaNGA{3jcvA#V!ngU0k&0(y38Z$&n=A=_koby^`c7;pynaDB=gI4As4yhW&r z^bny-ujSlQWjs7R2;Iv>*wXHx-#mhwDwlzEX;4AMeJ1Y{VDzycUuDCc^)+L$wom>s zUnluRGysWGepnJ%@OtaFvb@zc1uj!Aae0e?wd_t2u%rC&MRuWQy-5K*{x2h<=0Uae zRp}3dvuGpsG;1+vzERFHYAzp*Du5y1HDh*%Ruy`Z)Vo25Z}X5sC3GA%psggt#KU%f z^__J){>~>%GFKR-L5|xT-|G9h?iK{$cjs2DjrOj`-3|1lRcm2{heG&c8mi^+B!Q&Z zb-#two(B2m$RZ6^mI$I!Dfy!%Ua4nAt=r$!@8He_^+I9PNm$Kw*ax-AC4;0_%NiJt z&+&sfG>`0ikZ$EP_XFc8Uq1swWXW?(YB&6C?2i8e7r1+HqEZqR_=I5dBI$Gn>%-%~ z5V@FjB_*Nhn|-1Kn;L;1dkkfofiPd3ruQMeY_k7!z(z?f8FbHk%|#oidHwI6f*}Dk zaF^n{12w`|fE56no@aV*?}M_d91Q5&sx{T3^M$S!icnQxaa0AvwZIqpB{?%QjEuApL7^^O2YW ze#vx}RtG|(cA0{w*b^_1+aN2SW?AAM>s|5%w|bV#*b5Iez*s@*fYPhw>uKh+N`U>R zmb7=+O~UX$pjB;8_V}O4uGUA`#PdP2VAb{ae;)?c3qBV*-N~Sy7m?#vM)UbR*(5aP zdk2_spwNnfFMru;5Bq^XTHQm1t3CGL4=;5a#G$3f++ANDrFe1dA4>d(v3I<&?Uh)4 zbRM0B%aCf*xfrm)U;p!?UTMS|SF88Pq!0^+a?+aGyhr>y-B4TNz2nZNwu55qhbMsV zMW$2A>SOM2ezCqOH;OW|;aq{6MS;rH5Rv)0^mX9 zjl4~Y`^sraEvycBOfMHh$i~&A^q?bAd3Ewoj+9`6njGm^hJz&E!%%0>x- z)|-%!XOqv!=@mS^c8ChG)nv&m3M56mGY7}c|7_6;4D@Nkm(BY5W@3yu#tEk!npMPy z^nPhR0p-Jdu#R!ORp^b~CL@O56HMJ)xa|DXgJQB``(nki0Cf<1oQk#ilb1!c5B#f- zsDY1)nJ+gE^1Y-$_nVW))qm+l@dRiPsh-?E#6ZOf%AA9iO^t-=GD4PuVVZL5Jg*}( zfDoXxxxB`_=fp)auKINUOuIq;CZ#2k6|lQK;2wxyE6M0@M8wD)(s&`waGZ%Bmd97s zJ!ESPx9zeixef8B{}70%&5nefrW(8us}YgmQNW#>B+q`Q4K&ffiPdDYn|Z6Sz2}9~ zGT8hLwQoFS9-N=^c2x3ncYE=e0{0sZoMo7A!0 zdMhELuYkd&Lhj5|Eg@#tafBOav?xT}J|6I^^8H!xWxYR{$%t#76+C5jPCIc7?966WUjy*>(6V~M5vivMlXBmUr1IjqU@viJ zbqB;ibP#Z2X7#Y~T@`t$i^XlrXV?F8i%zQS3%)(!xwj(-P%)F?LdGV5C!QB_Sb)Xb;t+W3Q z5q3H_lGIVw$i0NEvYHo^-z;rr zF!gwiza+(N&fu<*t>Z6|fkwM`eXGl9#5%*rx0RD2Ca1B!Pq{(~({Q};4A@b8+&HZ@Dle(#X-zAze=TC>k| zQm_Noj_rP7Dd!XRa`2Z3g6%1&w-~*kD+GaLb#}39G8f#loz={rx&*){(c=-Z@<&5f z#m;xyQ(AEy;TP{Hi-KD7HYY{Z4zcqO$SUy)M?@rkliaiCt1s|*kTLOqE2((-wO{o_ z6~uuHnIpXADn8Hz<5dBM#2PELypvdtalq8dP2TU{hj=rASV`hTu@|$fv~MqH-1|Lp zWn>8RW$xn6vV$2K#+6I()(O++GfLjr+yEjJGeo*UnhipFYJqI8B>hCsp58qqQ>uhD z>W`)n_{6WvI}T|=6~Fj9R(g=349hwMO1l;FlNz9|84&Q~D^*F-0RiNsV)W1R;@nT- z>k&l2=qE~`D!eKq)_I2LNQsZZ+X2ybnj|{Nzy&sadzmN@kbead@sl{e%Yo2xmEesl zd8@r4cTnsE?_gMsw>_!S%+41{QrW!(){`o?c(s+shjn1jrcC!2J0}Bf#aJ8eQ+){Q>!u>Gg>&<936Z zoo(70?st1tKk$E6zSWPGg&qf5xhJcGHr;|QnW#Yd^u+L$z3)^a*@qYRqBW(xAyHhi zq2Mj~0KzlBV}yBEU6&1o0FmUs?)cAGQ_o}Y*?C(vR(>vUjuWPAQT5stq^Pgu zzY*GLvAkUE!)E&Do*pIdcEREuO*EXTl<9!spd@u><`o%AoT>g^zJy=^sqlW{&9=O@ z`0qlTxS~$adp<^f*RJcAADTmvd%5zdVV>$O$=!cijD1Wt)t+CO(!(~6;0ARDAJs5FPuhhd1#}|nr_bCMsyu46klh-$`n8<8`^tNG^&ZbajqU4qmUQ1#wL9DJ6o<0QluS@G1xDUaeW9LmsF%ZXc#^W zeIMC zKUa(TwWQW=efT54G`p?b+8`ed2kZ!(~(-0N3yvE7U~PR+|@`nlEv>f+C{q*Fo8 zB2@txSZ&dxqQkT6_ffX0NU0aN27$X)=@}E64(&fVXl#mK zWz5vACs#d{*Neu3e?-3tf(qfW>Z$e-8#Z6HE@Af$qMsXkMLKg=!c4Avqx~>43q+IziYQtslZg0ewY0sgV9wjlK+y?V@P;iKw z2=+*}g}$!A=8U`3Yx?ELp(+?Q^!dY#`E%(+$J{CL(UR$&Q{L$>#Ms}R5e6`Ayo1MU z$*!HBe~wf($$8&h8BH~n>mygo2Oh$(41#nAiSKZ$Ol#TsB6c`lDHUICYw8Y3i<#sZ zmbeZbRwZ}*5qivxUMI6?%o}WtGq`oqbU!M`0cuXskw*9UaRoPCMc-$(Vgi*HdeuzL z2J&PlO9#g{s3iZsvee6<)9?MeCgb5c@#ybUN4XnZ@1KG=HTL(^lEb%$y$_@z>!MLP zgk<5Qm~HOAQCeHKlM7z&tw1r9opM=ShLaxa)Bk<{>D>6&AFUN2_xVdO;NeI>}7fA{NdwtXlie+xwIua^E6OFQVS zfGJ9}j|IQvg@*`qlD?>-T|cGoQGoN#BDSMzN|4@kdcXvzP5iZFSmE2MTYmn?WSw4+ zxw_|vxK+K1V^tgO1a}y-lIL}jbZ5|?o2@iCdQ^Ods8=gJCRlwTt!>yHY`;<1ky}fN z%7s~~c{b%sC8DJv{hdd0`q;1j*&W$!%WBnbOpmL3=9OFIp|dZp0&3L7d5#1jLxBrh ze$K92iYfa)f7cTQD|o&_S}k7vh0uZ}s8Nws40-<7(LE==35Ao6L#7$qMn{V$XP<%8 z;IGqpxSYI8?E!Ac73A%gK7K?>D0w#xB!CXZxqsSi;83BLvii05J*4r!GCe;h z(bEZjdZ~qEw9oq0MirCw_v@QieFm{INH2tWWKB6t!z(sDwL?xxufWo>`vzThw>WL* z%m=%7{-ZqtJNlHx)o- z)BE5gBMj&^t`)_~0P)4Y(va5TR!?_Brn z@+R{zr`o+^VSj1Nlkw>5<2QDV0k5|+z*psdZluk>GM6t2XJg%Ikrurt_8rDQFiizZ zMqBleZTmCbf}j6GWeC(>GRhsx_D_yj(`mCZxNe7WNZ_{Hcq=ac;$6H#w7hx$AHty!ooA4and=e*({INYS<{gY zGDrBlX-Inx6{agPh|Xo-gJMhJgAJV%7Q|@6sV%vLrm9s-PwLRF=NIGR-+0X_|CGGs zm$Bk;w#MB?U-lPO&v3GkZaL9tWyp~K!e1(>ZM+T;-Q0 zzg8;_yxwHoZgw~_^rHkFVG?C^a^c}>vE_QKS_L0lDN&57{{wZkP>q3m@D>4J`LSJ% z^nCi>>A~2!^79}8&_MaTUA8b)9%y<%KvabkNktui=s5t1_$*eTd4W$q_YF?DE^%bJ5k;>N#&{HOq&q^!EGIo z7#jBv|0s!6dSor)$)Dd>a5Rx=z=*K3s8J2L1GBj^(2z@R)?S^!kbw?i`681}L)|TU z>DTY>OwADH5!}L>3L=yQJ{>F3wq!^lWL`eH$3Wzs8zRQhC1ohM%vsE|C%|A^E1F+4 zv1!g26gXt;P!@U>?%e3RZNwol;u048&Uaa4&-$S2nJ?w7I>zxL{qQs((zx)KMa>nP zJ5xQ60|zqf+lYVR3o=Vl1tEf=D7+iDE=@MM@50nViXY*nA`G zh4Y$*3gC6)ueloL6w#K!oQImG6#>uXU9RUC%hvm@>dAFp2(7iZ97lsbM^|IMj`^Dr zZ%~nuIx%1%@;6YTQHOW(6nEO*&EIeqM*tgjM^DK7_P*kxu(o+%QzPU;yNqdmA-a@}FAPaN1wq{zzX7N9RBqt;;O@ zf=9TLLbES?%d~qqzmD7>xHZSpt<((`!%QSuA$2_$2Jg1@>zHwdv+&Zm^ODPDYqy0eo|kFwOfQm2=!z7}=|AjgRvO$t zPy!j&<;w-Ls1@0|?*TJBLG(2&neMX8n(kNzWhtZvs;&LmC7~D7gNFHK>P+zy29|x% z*)Mq1Q8Vc^4F!=kyM?imk=gm&&DvT_;)40sFl{wz?)#yr>^F+nOZy>2$fK7cbX~jj zH3q(TKK4>}`>VD_^EkVY`~fe?O~FMiU$OJ2I%i*wr!TBQr=+=PZ0kR%!lWVl%smn8 zcow58>D+B0_6z+DAp$0)fNsjwmu>;Z7mhOWgwR`sYZ%HX{s1) zScgFB$*$6u7Ye`r)b42AI+w|47$*eAV`?NA6)c*Y$%$)jG}7cqe85-FWE8s7{J2o2 zE%QQV4B;`Hd8;EVZc-oGolNNU+N-Z%zAz$ErE?~_xv>FRNTvHM2epBekq%%LKfIaO zCZu!}UyS=&#WsDW3(B=!c8g`bTO#$%E=@=Ts8qQTf7&$L&%E1G^{lAaSgxkEt^qtf zd;Vi~JP&6eu5MFv{_5lJ29|}OMq#Yoq#hfY$z)@rn>v4*REAx&qaa{2vPwBW`T;!_Cr*&;Q!wiFaSW2rhX(*W?hOzQ`MVqr$K^{`|~;H9ik8^&SBur{wujZ7n8@8zR*aE~=^R8IKH*OwFqV`AllJ7-t8qj0$P> zo-agLH2z_HDW~=0X_61Hw65W<2CO9__s4dzC=n{{tBR%$)4Je9yk{eZBrOSnXim}jEj zKxnzMFqaYA!PQy`RA$Jmz+Fw-Of?AKOagyCW&881y?T74l<8gM9+wR+@-p={4vog0 zwz9YRk=j20hgS4C8%=fh0Ec{jeyF?KEyA|asP0Cr_Ogs4tycymrFLH_zl_`a;53If z$G^UfiGHy=$jPQI*YuZuVo06TCt9ApSZ*?lJbuxF3*`g`pCTY~)*V1odO4%2 z=dR@5{=r>^xk4OzH{&8d%8P8dOKQ(azxC--xTFj3NzUZSnDKT?=v;bKD9v^f>yN|JtIppNEfW`{$(@*gizurgadb0GKgJnmQZIs+uT=aweedRu%OE9)qHCN}4~EHIuq zwR|-RJj81BGcjotzWGNAA8&g_2Svl&UX>I3Ba`(1flPLj4h=B_@vj>}Wr81a8o-Wr zemn9SXegYSzvMl*Q4Teuhc)c9OL$!g?bp*^~wj)C!0hl5{zd# zpn-GXdTwfh9#ltCVQq<6X}$phVObju%=N9s>^#qU@Fdbp{=tFFh^0QT!`do4N>Ot~6S zn^&?|Y_Gf15iuZ6JAi4L%S^fdk|wH!BOu(1@h^lj;c} zkc(wPJz(=pYv1PRe*d>Va4G+AiJ>lOdn%D%bqu>tShvMd_4%5nJh2e2kGr*xywLzK zc#{;g9%1Ar5L5_kQX(}nT<3$pf_&w@8lc62z5&3O z^Vmjx4A-3k!KA*D0Yy{pjMKW0nMgfkg|OIHhI$MUoutP>YKYY)h&LU`)zS*wJX|@! zRuy^tLiz=^al?K9ses7*x2fzc3xn948{iB$W`dVP(X{e&j#JseoIqv#aCL)pE_*0W z2)t2;J`dwP02tY@CMm)?zzK@> z0$g5ZPWi+-TW;YA5DiqkITrJcs!0Sk-1C-L=HvMJ>A?k4 z^P|=G1Z0Z%ol4)usY7eoFodX8>VawSPqO<|5T-NLFiBI=(Vn$(T5h`VF4c9rc3jOj zmdFigf)Ro)ZOQ*0)RQShkKh&y#b@?YH1HA2*L&^~riVO+50d1e<0_rFjQYm2aycImg{le54oa-mUASZO0}*qv|) zWccSI%ChjE{0Ho_hbtygY>qB^xC_WUd3b-SqUf6DIYDpXOjHkk(elQeny>l`wvS7P z&p8C_UvygJ3dejMN{RBdBDI#RGClp3cm315!$IQR1{Cr#(jesxuqt#*;CjoaaDF%B zh&#YVV-os!^o9pz)q6Dh%5;HdEG(n^LE1N13+eviXGvMdOD47C63II8f|6~zA54>H zb(&n=l&D5t_h65Am21Pb4%bnqBJ~ICU4W0%mQ_+cMbpN8y7AFAB*=feuijW!%Y)^z05!DT#%xq;vI=eJ9NWYv8nUB8Z6y+G{Zm^6hvoR4tZ<+67*XLgP# zB-jS2Bu94+O}J^FkOX2Ap?;Y#4zbU!MWaoSEJMkcEz#Y^|B%`3MDLAx@4wYLGz{u|AHuTVxp31buR_nK z#Z30~dNA zi;g3fI9Lf&Nq8R7CK&it%`_AK*z@mwNd>-B`pN ztdBHZmKfIvw&@K_IQ>py81-0%QhV}=8HRBf-2B3u%D$=r>}e34uTc#h7wP zDQFe&No-u5f<<4NeW6bev9*?gq?BZb{7GFI7Wq}2?Gc_h)`fCtkQsH&mr}FkGX{9e z=$qA=oVU*=XZm!#CRqT|4^Qa{P$$&nq@0=FoI3JzR% z+ZBaOk;d5@V=9~tp?wX_BzBARyHdCYD;J#|UK=3sAtow>RTb8!ZvY=>S8!w=j}h^0tYbpCN&o#90z$uIJ7iSvV}J)N_?R<58a{roS3H%Dt)uiX+F8AY6oWz*h?$)u znQ#tl?N4_f?|iw+XqB@6UStTk5jhKF+O(UI%W#%eyR)z6vV9m3i%HU z@IKxp%-4im?+8=Y{29b8r$<8IOOV&9n9g0p-L;~-)j@-!GhWJ3bzFmyF!|`pGOv6@ z$zXZIwB%YJGhq?7PsawaGesUPw*W7;wHRP$1TBA?A7`FFUEuQl322ktvHzd{=dKsJ z_&to6Ap#M%zfl!4H?Yv0PO6+ec9Un%Aw{@bBt^6=Mm1Ov`S#EN+o) zh`@v+5YD5L7SPZ!=eoGIy7{8&-hFXI6LhBG`x(b4(VTE_iyGxfeFVCGir$DKF}wbd zW2c5x9yi>t)^3gar;x70$C|8g{Vy@=xaXfku?I#)e`SNXCH+Tw#z7ca9wwT&J2?MTER$q*Rx)nWDhpMlAn!`tyz#!IW=vfF@b^N^zf&9Mw+j&tM%- z9`b-LWuOUU_hKjT^M?e9cUq5S_E{9$akTCFg}tXfk|37Pbb%XoYFiBj-*CwvtB*Fx zr(q zE*|*s?K>BZ^LVo)l;jL21;He9;@>iloe0UQT%DR($zeOt-R@7r#_^ zS{PWsHkp;>Ct+19za#>0e-SFKl~Do3xlFfsV9Dpi3}%~e;Q>e?1^i`W>G!A4iW#bT zN#JIJ5}kfy0gW5UwvwzA_o>pkL)SU%$U~uD44g= zEpmx0QEFu6QwBDq_1=s)lYFWjLzndkC1Omrn>wZdA8NvM3$U>Vzl zW?AhZ&anc2C+Fr43aR~adPQ|T3jcz$O6KzL9}(Ve%o9}w2gQa+ zI$O6|J(*>oU(RPTqO~}Gq2S^=8;t~?C`nrpN-E+T!8UFgee zah?mlL}rdyz(>*fE0tOP&4eF3i3F&wLukn6>?YefIb9SzCp8L7);{vkDnMd`MSS+E2D3TS~ccX$stjOQyy)9m6_6RCx?Wwr1?HLaCQ=xkZte;DXXEmk)f&t zdlrwa34o_0=`%qmqfb(wfoO;6QWW0=@);>{%v$4FlcnwC@v={3`%T9If!H6J;lJ$z ztlw(N6K|jUjz>f)OUR#u^wFexR%?d|#n$i~eN28Bkj+!a_-H3~P1SvmtDA1)T<~Y3 zU1MIfs8rZD5ZgFKpS(UQuFDC3aW9UwL|SqJ`=zj*crO7ICa8m~$Ry$H&cCIa=hbJP zUTi6s?&ou|S2H*mI4F0xGc-Ji8V7ElSnL6zNpIa$fPoKluRd=R`l#f^j0I%(4H z$cyxb#&1JpYIHS7iJr{iXA5kFY5!+B?PcZ~B1gI)yoT;(5dTNBAtT%k9pGmt77P`V zD65_DzF4WKwzjIo=puzaLgcXra9#=9Al+5Vb2T_mjWPQWXr5`yW#+8rBC*9#EUWA- z4&eO1pic~XakQ!Wka}e_#01f^*paO%`Br_He-q*)d3#gzBK;5%%htNL;47%bjLt70 z9(aLKoRv_fzO5>#HB)6-in!?HlMGWv;=&_IFsG+cL;LF!BdN1art7dZHuf!6EF<#n zCNhpi8wi=!^LNi%L*ysQnjgBbCW*$*|Fehz%eN{%c1`F?NpwFaj_p5RU`&seEsCHG zRn^V)@|_{ut(?R$&`IgSSYF50;ZR-cRC&X^oCme4>Zx=I{E8({z$~?=M%l@UoxM<* zTUs#XthJIwyVK71!EvQShAN#at8Y@v>BHTx`bpS1XQYQ8J)BK5(40TPh-7?}$2>ka zpy5AcrTCvpAIcdb*ERKY_dNU!Dy{c#*4?0)wqzsHw%U!bcf&974$e*%zfgc|sZt5j zp5%hM%CDY$=VEUqyH|?NUt+$0k?GUMIi&*#X2~3cR9!#FL&zH95yQ`%*>}h{>?pCX zxj~o?Da4WX^$T7kSh-cjR#SkFyEI_4;oArk(Yf&@td^jk#U-kxoROy_%Rh~Ca*J^|6N{IR^iaEh@j&E>F?m_#bDv1dBF)W0buUhE4@-g!1*lLWj`ct<_DU=11&)?&sp(SL~6T;1ytnvWaz znYKS`Cj_9b*JKcEC0nHSO|nOTkLb*wYYuT^FGKpMnjb=GzKv*FjPv{}&i2u(KG9xQ zO}u~AS_OXtRIP1VKr^4}#9ADV2sc8I@3hqSu_n6?_u}w&2rDT z+swRtXXo$3*T)ZC6^~859f#5u2vdK%=4nuTc#itq+C8%Vc>xF2rvN7|7p}+~tyw>h zJkbo-6Qd7$wDOb>D7(tV!W>~BfZ$ugec7ALqTQ&I>o$yK`0`&cdAo-Tqkr%e6JqW} z|Dyu~OhSY_H(fgYMyIMz>z7=TZ(xa^L3i7)Ipj`*>UVP1H>+4w$(AVt993tY!(Z?+ zJ1KV`%TQh4km2}<1rRyagxeZQcAPw`Y_5i&=NC>;6rR$C^8zK*TJ+z!RhtAS?%G;< z1p;w=%bty&n~Wdt*y>uI0E`XSx*CInShun8cJb_1fO*5faWqIm-_S z1K|7d!vN%P|5E% zjU)DZ&=p{%tE9*pW5mbYVHz!q^x_rz_%1ahgDyXGj$Rvrpb|H@qM0VLSgfcwp#)XU zlto;f9AnE}Zl2OJG*8!mB!hz95|fMq9nok8XIs3IgT5%oAvW9m0|o7UX*I_Z#J^-W zuPggscE`f@B$#WT0=2#~mCYX~(W*A~Q@Lv3r?62VgCi4}b&?nreX8&e2y0jOHZL$2 zEt`CgyTMkSY?t#j9&=BZb9tDiT&naYw^KxxKFPDLL}eFY1Db2^qA3k>%cR*9^ns4? z?=Hbk1u_0fQ5?EB8@NDZfH46?3IGr6c;H$YfEHsRR<+?aVv!px1lBg!QN2$j2-|WTja)Rh3ZPLd zYVl`y@B}i!FI#1_9yqMOl_ASi;5^{CKASMi=*@b+zjMofkD;(R=eM-pAaW(obz54^ zJ=qiW*EJ6@ZY*!_ilhJSAu`-#6NG;1eQi;X=OUxv?fGLRuCDEsN5kTFTq}qH=YkPj zto=%6?7f5mfp;W7h_ju49_}fMxQYX>*u;3_-gXOfv6kx(bC>|EGVdU;`{6J-v6b9VqvNMvFbD=e@c#^Ed zg-nGX{^h>A#ozGUJ`bi1nTRy}+JfEkm4AVJR=GV-M54kVx&FfAEGAHiMJcvNJRl&f z_w*X0a!psWg8M|reND#s;ZglE>+iliURt-EEoLj@57gR#Osnz}o#oU7FEx@uNwfP4IEo%FEhd%S8e_zN7ip)iMUmO_E5nM9;x)tCp1>?ZALfj9 zOji5?8@fJzbpZC+i5Ob5h5{qEk>gzsgwXjP7t|CF5qr-?QN{JoKT3AH1l`b^tw%cM zFB>60&iY#Dm@_=>7M_YB&x)^hO2kx8oPy}CBwq7{t1Q+iHQIQHP z!^o-DUeaufmGS7SWtw8qgss6tabT4V@uEu{7wP?A^(5BV*nREe)V;ChejH0?S9{5dJ z2xWe2k+ygN=0c3hsIs+Gg_(P~e~W^4Z@#Uvku;#UZ1w4$JrLHw3{6=ns-=iCZkU2p zn6?L1rABx^n?WnnQCKT#rvOD~$J)i$r8c3G^M!z+yNW}mjbDO!85w$z0`9Av#oYBb zvhdEu9)@GZGguaARNx1uxN7?S=*{E1EpF$!3TdJ)_eDbxt*@SNtCBBoRgnxQDynf> z4Xmq(d^u~g!fqG{`=s+EMuoPv6w$oKcu}y$@$)cysBWAE%B$I;QHHEP{`HV4LXoOF zU+r<(cu9dca3RQV(ZLtqHs&afbG2clFWY+wkkgL2i+x)uZ<{eu@wQwVn+|(#A3P4f zzxYZG`Lp-i{(au#zt7_R0OQ{+5Sv~nkx!v4?)n;48FYY6xtFt4Ga@fKadVM$K&_N9 z+07`e`TR!vb$HTF21Y~dvsTlvd}F??8!Bf^xzQo?@|b{KKQeN1fo_S{hKt5QT);&gForgd0f8CKM;I`&vtNrLtWdU;yE_$iehv8h$nOke!+8Hr5d;`e|67sA0n zK&WJ}%Zm_H85`%0XAC|8P!5`F`o5Mm^RF$eHY#tX7(*G?4C}+O{Ap7k5W`sPz8?@h zMztY}Ve)ylN+p0D^JlNLOsV1=g!o0=+C+2lEmEYPW1nEwag6BT7B?AZra^&8iO`%zeT_bQaQywpGnOc#8D zvLqxOG`laKK|jIBs;)y7t1wC3-Mj!XI7T$2;~Vf-Eeof{bYw~LRGnYgT{W2);`sWr z?hEo!wkb^$B48$Kr(H=xv|ky}x-TOLSr&swt&Z{$?@%ix7r~gpW)Ju^)0^g!*Zfl<@#(;~* zGcXMI8fwyFa}`9QXxZo+>nM!OMKUU#I|emxUKKM$c)|)X+0%M<6&pd%MdBYtevMQ? zzx*#FWR~jT2H2&^iI&m^OeC4NLK((Kc&GSqdD5S>p18+J)DX$d!5ROrGHEW8d7&`tPTmua^Vauevc3Z?tn@ zJr0Ugiwq=_oF1loii^x<*h$$}KiybpJg7_Ty0B*r&Ph*ezdO~<@WP#COi7>$OTD z^Jbg)A{;VIC@FzE2$Es(#0yk-y4zd8H|(6gd0qSd;ATt5nH}}M>QY+~sZGsuLpK^~ zXWA7Lrg91(9Rwdj>jHapMwd~e?GDd#smqjj>xGM z9J@45BgXJhrz8H-$oR8KSUrI7CMQHx0e0|2eIsXuIslP=^JvBuq<4b zYDK&(oW^FO<~YC>(*TBf8ceb5WN*G`6D-(aVl&T$SEb!HitBv+Fx|`fRJ4Q5(q~I^ zWL_$ot!^JTf~_;+`Sp$#v-+unsb~ftRXMR9kyC39hG}@AjpxM|R8XQu&z0xEN9Out%xr2nxKQ7!uxYYI3DYpRv~32Lm^zL-Es&%81v6R(r`#@1 zC08!JyZg(ewYD*PCoSfjifMZ?w;kE0^`xPHg3LH%OkU9OZekdY;`CWzMGftOv8O~* z7_(pV)|MBqgRbyV$(0P>DOp=sFt(D#6AXj`3wD)E$X{Mb)@SW3V*>Nq_VGp5;})%!=* z??T=SX!%kg-x)pVYnW_lheNea^=lxJ^d_5@BQG=1jC1#~2Y)fJs-yT{290xXtr2kl zoikF$f3CSH;-ff=m10i{hX>sus^ z4IEwfMI>)s9Bh|eL@)EWs`)ao} z;t5QilC~Ogj-4rv`8~(luq#E;XTuuPr#z2ta>|hl2OKFRoYnx-b9LlK6N3Koz$wj-^H;dLT*m zf!T(EYy08lKtojh;OQ6m1L5j%o&9J~4fIxeMjuq~#6)xuIj;X&GF z<{l<^C~hbd&ZdzIi%RH$z?uyk`>BMu83u?XUnN~>GMTfWKV9*u4NU4ljYTFl^Z(K zVt{6RZWj2iVzSB|;%NjM&NYNhPdCO{FH~_A5Y1%k_A<~o&Hk>>op3?E|AP%!4Tx(Wh$@YYfvLuMJr+NZhF0U5J|6^uV$m<>+r`# zs`s|pU@WZ2s%ojl5boAk=vGYLs)P!GYD6H-pHqcr^#RAj9lzrt{`m^NT3S8g0a8Y`Z$dhuZ-MN?p ztT2uwA{EMpAc`ufgN7&HL>pQK+Ua8ZV?K<%lsfrWX900nF%i_ov5R(Lt#~n-O;Zy~ zCn%FjLFdW2>Qj}RA`c2@7+0U0C6fKSOPJ4=oD!XSOAieSb(#4n1l2_imxu)*jS$1b zdE$o7TpG=p*#GLNGraFOctS}nads70rZ5b;VEup1b~>emh^FN+4txd%-whYVwP=od5)_GHG+78_@c%fpB)50z zGR@())(~~6rv1DS7@i0oyk8AHL_fL>475I&QP3?`U8H+xa8uBU@$S|WAP*pp_Mcj` zmxhiY=uG_CbsGqmcuC!Za7rGLk_PYvg4PFfv42KxQr#a3-cbP+tqrR8@t56i&;pnT z(tlcz`<$5r)Eh?v3c7WKZ_yp68hUx569s7AMshBqreMin5T4SI`g{GfM@XFNFy*Fj zoKfq!k-OHo9&gLg3lF={L5ony5v|MKa_|VaO&TR6F?W-g9^@`~^&!zFaiM0;mv~Ns z6LqCkuk5Rjgr$bT(e0oI_D&VO`#@4JeQxC6|D~b<X zQtW@Z^FmE#Bau6t3veKYJxZ{{@teEasw?a)8V|9Gl;Qii!XM~`AtPzQlG2qJ_i3M_ zla84_gL@Pj8$__|?iM8Xw}fUx0Kk}Q@az}>saXpfYba;kRq@iBkVs2GX_Sws`$PmV zj&-bnI#)wiYE4#5Ehw#!Dg^;X%lrp^c! zHI8FfgHO#p`QU&HZ(s3{d+P<5RyW&JKBK^xBJ0TQECBD+6=R5vAasy@@+KGu2%1?e zu+mfjJYj-z{Oq-V%ChkX9syl*<{Ef)k)Nf0%nzr?5rq_1o=Bj=)zCj<+C1(b#fQX&>{LRmq3+@bo9MxROuMTRYmI z&Vg_83!EL49nzl!J2(fvF+CxCEY7APH*u+90tR^?$)?% z)X3Jn(1NUSEmB`UN_vu7*z=bO5U?w()M??v*FxrEYwm}Mv7Ws>Z&YmL!K4k(Irl~! z6c(ni;O|GB$2+Q5S>`2qlPXIBu$4kXBbf$7fCqvN(wk}R_F7K1U@rJH^yYLD7g)!7 z>e$eL6-Kxb4!jYa`M8B+{%Bwp)SWQgZ-0OxD}_aV)&Lw>VYqf8@P;1AF!NvS`%dRc zI6ju~VF9YXA%LF44_in9BL4_$14W+@p$3^7myX1P>$>qsy(h(zn~(8L^Qqa8WEV|v z4BCEZ$ANEYdaI{A6UazBda;Rm>eac}?aP6*m{2Oh9}G(JyF9cdos(!hy5Bb9Du#aE`z zc!A^?y}`?2clWT26{6Jtpcy;+CjaF)(}4<=8p&!Dv%Apky@-`UpD-$TGMy9GCKf7I z4bA@*7f2hP!#x&%$%Usk{8_0IuPZ!%isUttF`VBDpRlG+&Um=plR;^D){ zNXBYoF?tkoV`1EXx&X6Iv(e+!K7=cs7Dh{j=fd(a2{F?nkfENF6IO+wvJrNFIr!P@ zAFixQZP!||}>bbU8zI*9f*jVLTiG*ysZ@ay8iPb}=B zIcR4nQKU7Xk;2Hwz7^`K_k2`e;_EAM`;Uth10@%WV`kumqGD{FB!Co0?Ve&|wv7Rpuo5pXH}xe~ z5#QVukO#y5b42GP;C+OHY%v8@Qm57_R8aAb+Jlt{B7qJ=$eO!x_&F=PcZnX(>7$6t zNN!Z`!EX}w)9j!gCU|%8rFikEj%$b0do3VhL^G2RGc;7=5d~q=fFqbNKhw*ary#9jg#vEwi2Cl%jFb#CWa%`^7X6Y zdPxUtA;UBv1@-MwP9GQhb7SSqe8xIb^N40EFmq(H8j*$+%Xc)IzN%D@0s6!SiaIl< za9sA{DxRA~{_!Os@a=d_E$brQ0P#gYX^RCXN_kSD*aGLT!Nq+eX;&n_N6PxQKASBj zZ*r#F_Eyz(9CKOJU<~>msDG=+NY1lIWXO%<&UkAU?WUUFxbX}`IV3iXxU4%5N|*R= z4=_2WvDV0+o}#sG7le$wxU&NCS{@*SA@^vmHQab?0CQKK2eo5~NFUl@8;{vBjhmNx z-iGn}J;S^aT&?$RbMEGZ2NkJ@=c=}HIo&tINI;6Fkf}M=ApDIM7TD1EIplhO=mW}@ zWaHC+;@M2tC=+1c+gA8-YD2G|*e$hHlbmdDVP(RNYmx_0gh*Y+c9}X#Ao7r^EX$@D zSWrKMf%@MFHGJ!gMGLN7zFh$&qSFB~ev8>O&K4a8)m8;XoYw=pdE^7~fGLg$og1u$ z6&|YP^`~~BdW~UzVP0&CtGL2CXT7h>eKIbUd&qS%;5@U){h9>lsr{BL&Od55_m-zK z_hnoT3SzzrbX~Vnr2ctK1u4cw{r!S)@4c&szgGMTQ7>kP7G;Z7ZRiJ-Kn=x_S(9u* zCt?0D$SL^&eJzZVBAB>KsL51)x)3GZE_Q~WgFV~thuO`p|AJZA6`@p3eq;tZ9B9Mw=|#-^BI{}FeUCed zBRlzTAA43)2RG%<{cNA<7ct6ubQ901-O9@uv60l$w1De)8XrG?bJ%FZ33nlto)?& zv+?lVe4I1c78khg4VW53% zeUPqJLoA9pg)#QEzg*=Uoit|(AEX~KLEcOK&JoRvAAa0cv7sH{gFWNmCd9 z418?rUBmP7B5D7?JgB7(@FAr*J{5eTR2p3Zk+xsHSf$Gcjyn)N1(QNs3=g_F2DCG* z=R`p09P}X`v9GVrkz@YP|D&0i@kQgR{7yQIcVnw2Kr4za{7fb}tJn&oFxFChI*L0aYCQ{EWeIcS<>cv1PhU}tt zI}0E#$-Y5NChw8$X$lFJaB*~E8_&-FT9Dsw;jX;76hV0*TCf^`jw009POJw8H`j|( z80wcOsuO+GeuC9Q%-mO~RRQy0z8>{l(BMua z!STE_sEzr$kt;~;1p|?IDK&EM}sT*nvsh&D%`*EOP`+t9cG}3O<& zTaEeHe3`l{2gutl=T^S^r3DiF9qRrB9FK9G%>$WwK#B|Al)#r4SR^6tk zRzLsi0_^e-Tmq;jb;vADT^VRBhn#!Uj{c2hQWP%#ex#Xv)@KI62Fdh?M^0+{IhkfR zo|3n=#DA)*`XQt>iyws!y||0Pc51+&U|h{eHjq9@#?OY%#zKu9i|ZsQ^DrmTKe^7y z%}h_Dp^gYNw7kWiB^rn9`98J64DQP_3py2*l*fXjPeFyvM;z5ZtuvdB$X{G%Yu>*_ zA7awEGV#~kd7fK^AJ4Q6z@0xY!T}={CqsgzcpHbIG^@e!t9;eo@A=04v(3e3mn(t$ z!Qc$Hc%4(0j6ZuV;%aPH>UF(17VKprtzy|v`AZRiPhYtpAHe9kldCXVN}S!D%IFb5 zRvGXokq8L%c!n%oYE;xL&`FvvFusWFxpmm@EeyIBkj$X#ZDJA5f-RS|(e?xysRBL| z-$^)6>vkeMK6mnGj}>Peirm~s2s}g{{QJop5M&P$N74te7dXEjOSAqvrSj z@*qdIZV$_=-iTCFmOC9tM5-+H3amm*w(%U%*9*xKs=#Ap?z1joO%m_?R2Uu-oN6T)7$(z@$cwEM zCduD8Q474L8NhI=qyZn;pR7ZD&cP0_V7^|{a|*S5)T z>t9VgB27?5Y9t^So-T6`KRVYG^m5kSfFQa5aPuc)3UjAC+s&bhsBcABks&IX^z*8Y zJ_^hONt4@6ssJ3F550LeT|8P%u;`9$q8i$buzI_+Fkl@-$usq9$|{;CZa5$MrMDO8 zLGbw6QqO3O=s_*voCn93Kr%&YXpcY1JI!y%T0{>?D@B4>>1FWqb!H5OIRI9MtZ{aF z2q=Any3b_J!4D@1HPVXX#J0XB+Izu?AFFOd~)RL$CNR z4pgaREzYI7%FYLhaQQm$w#Yqz|4a9_tC#M?$Bg!aG;01}1xwTBZ2g<@<h5;dN7W^Wof2jg#n?uO`q+DHEu3KU3kcApdh#A1NEVnNxU_w9mVK6UMfl2v`u0h zeJSUM#kJVyrSl;tM@d6PIClU{K*QIdDpss0PFd^W>f7Xv0u<#FdTG)>Ua)yUHM&a% z?WRzY7oj2e$cVzTk2768xZ|Lp%a|pkxQaq2LvdPzizIn-ISG$di!N0)fMp9?G5#4F zm>3{sVH?USZePSeH4-!BiC5yQmMr2+Mm9~7Q~*plCaA38yo)DmWABKpD)+xEBK+l z!rliXoi1wZld7XR!vcmvhV)TSZ=;^;;{Y9xLZ%BzHf$)a#v(SRptY__-f%2q)r4Lk zks|dAmYj|Wju1(Df#?BI6_(xY)3c+p+k(GZ*KfW?syX5r54si5?($-#*{tq!OsBzj zv1dr=Tirxvh5{bXuznPVmsZ88NtK}siTM7*8mI-lG(54Dv>EOkU-8TkUj=Um{4b8q z`#=f|fTf_2Kn$~~DTI}u?umND97j0t_ znf*9*m+_Ufa_t%H@j6HOnjR>!;zHiiFgCp|FwovHF{h&e4;8FAuI+1D;nB*h zXpSMwUKN7iBdxaqMpFWX=MHi!vK}i+zv#D{Om`G%^(Fbh`DnfPtJmv5+XFn4tu~G83I*3k zO6WaBimqbaDL|uYB8+8w+)p>k%?DgJZpPLP%KZdRI+-%6dO!NNFRD#X1DIBg52@6U4g2ca@XSDXl3Zw!6Oh%E7T%{mN-ljNdhXP!$~?2 zp&QU?{5uWIY6BRKJUf7Xy`##_vlJAn;{6NuGd7DVRZ7cCxT|(P3i^di=>e{QHzNPE ztG?+8JXG@#l+MO64-ZT}KYT@6RV2#IZn7!~{jJFQ#15k?>FT?TcR^PZztjIA(s`rG zL1$X`(f~$1UbQJ`d{||IFV)QBVAaB9+^X=Hw{b5QYgT2+LaTq5sSw}oFBVXVloQQ3 zr$VihwW&4gZFp_piPE{fJLU)&{D|nK!53*jIJz|;AbQjRN|n@2Uu!uqa|yYi9^cIvY)DA6INT zSURbNA_9>|ulcHM_9RpHa=Nr~PF&?OB; zd+?Y&wA!<1wpRxJPOBpJed2s464B#Xs0b%!&|VIbLR`|Wib_*-r&_UQ&5UFIC%HQl zvRZ35^U2*b=jdqIjrdB3(~D`a?A(6NxPF21#y7klR(b7eY-D6CQgi*f9$Smnp-tl} z!!J67q4n4LXtEwS@uzl3V)^iJkfu&pMrH-uSwUZaN%Xvt7~!GKSTEkTdi)1)72j-{AG(& z-@UNu=ia=nKnN(=Mw4w1vF5x4uHn~nX~`$fiOmEvAMGgta-@|JgvU+rn#kDmPsvel ztXo5Lc+m^&t*edWOjfG`YAvs%VNb#7NJ`m%6IkhiVwuEW|9&r`Pn3^x*-#MCo*a(u zvijL(CCC9tlT62XzRw{r>D_;n!hB2sp$NuqBn_<^OdStso|~-J;7HIf`1WbIAYPF4 zz=hGBjs6y^cPLNNP1>J4{{8;l?`Y2tBox6TxM`t9+E2hLFgh)DTSb+l{yxx+l67H4 ztdIjEKf8p6fY_&hcH2c@<{cq3C8yUX6UEqYqjg(hPAS7DsX>|w*wjEC+ZoPOQNHeP z=q2tVMVI4tLr_17ouUD41N){2E;T#%(#>}$j%-oh%O&Ga;;&;awr<#_D!L*(C95R& z{Hp9^7Dx9APPCAAo`s)(PwxHo-o7(=S^I6+YwVo&pvS@M5j9x-KPmuXeKR#E-_OLa zTKMMS4Y73hi(J~Mi<@~E+L~b?lUG~A=t(CW#2q@6{L$gE0v-HqymI`71zk+h^D#XM zdD5*+R1&Oz_S8*RDEJ}QVNkWyZL9r6m*!)5^2xxY;`zDvE^?(Gnq#b zMN#G;UTlt%?t-G(hN7+No`^z!26>-HOwc5yo$-MohO|9w&p$RYo+QN6JD^$FEvdl zQmN~g)|0aol#1?d0SpqaM}A^vJ|{g)S~hmUkrisQ{$C{klEqLYzFjaf^II}eiIRvm zC@<)Hj_=AVN#mt%BS=Kap?u0$AF!?4@PwQQ zruN6V4dt?mfr{j z%9-FOojz{3{VM3V$Vv*FGxtt{FBv^eUle`UNUL{xzEu4O-@K`BiXK328LpC$(8VuF zD8`_<>(H>HzlIqXaz_ifI)o0n1{2tU4|hB1&yshq%_O#w9;&{aZgrQir>igvaKY_yecjO0ARQ`=xF??ScWpZ2Y=446G7z{|aY5cCVUO zV^yVNny}%8$tVXku)0ugE+|j&^SA^A=P_6c$05xK>6el>baVK5m^`tZzYMFWtBiTj zG4qQTZ}6YZTG9Aw*^Hsv34Q1_Yk4%^h9mNXC zK*DEzFe0G$iI5K6Tv8?-|2h%iZIsDyn`!iEg$}$nHo6{HBNQOO#2@Kili;Fwv|y-{ z3|?CwL687`qQ0@6v5O2;=@h_Po4?ezh@N=yhd?qCs5Rn|F-y>j_fEXea~>viB2USC{0S+Dx!ak}JBR|8dP|%>)n{vUJh)s!w>i(zLVq;RYlf*RQBUHrw$rx%Ki1!M#cMYX-tTIOABRnH;d2{ zaKB{M5^^<_@J zOq7-A?%Eu`BJ=klqGijW*QIA8oX zH|_}=k`-BcwEY+ym>I6fnt}05nPa5qk!e*q88*gAU;f)LvY7uivIzh2R3dNfZw?7Z zwahGXaw_0F;=AK+;#@zQbESG;NHX6yJ#F7`?d9na^ISS|LQK0fuWgeai-xDv84KQJ zl>a63vuud#N>YTCAzkC?wdK-haxWD+H9Yw59{+caW$xM%I=;=tuUaga11`3LQr=X( z3CN80%ujX0{STs8Q&H{rsY%ulrv7&^^kplbr8!WffHpI1rSBKbZE)R{Q_o4#(4IMO z-INgwyj3z)?*>U+uOxwJ^?6{{!q$d%>6lKFjz}UsMYEfwd(D6!ztJIhH`yh*uv+D_ zUgD}*V5GF3gE$9^M$(5PF0L{!!gS;L?{!w6Lo?G~j8RvmF&9czhwHn|46;KB{uBQ2 zeg4TfnA95Cctj9*m=WXGr;P5yTb_D>2bZZfAey#;y^vAdD${0+%n|~mKY57s-WSTY zrFOkJJOjO5y6hlvv;hs|S9R|OCNZtASbt1(XTQjmHR2`{azle^e)_hNG6$@pVn$SiS|IarZN=qTH_iy1x8Jx0^Os z|C8WgZ1~NbjvQtP1u6P zc5@2QJ0P={(X6noqs!e63_km1*z`{rxGgEXVF^~S%PTs}zjgOdqTOH2AQShO=}noC zk^J*h{N0BTSrbBq!L|3LZUTYYJoB`6HO}6N_eXr0&-l}fvBKgOIxiAq-Wmwl<$f~d z1E^dsDNOagcmVsCvRJilztm^HCOOZT-F?rBLrR2TiM$9b3NK8riI>e=n&=rE-m@dp zZU*u9eu*>qvcj!#ekQa;IOuF{Eb+B(4UaY8qCF|If|LWxUK^QdWFpa9)qH1Bo%4o3 zi`j1H$tv-Oo;g+^(czrlbjqE|Wc8QxEsNMv?ttyPFu1IUUKug57_EzT=IHRz>*IGQ{GI)CMvwU#|!wS01_;T{Y{L-r2Tf{iiw>DSP(V;edKa7=G`{EYk zQ^C9kiY`a_>zQu3zy76lwMDk&FXy1SE^eesiEX=6Vz+iOPu zzx=-WXA&3TuDfFwT>LD=^HJOfK}VKMG%u%LV}>&ylmX3kiE7b1rZsPRr3uFV2C%? zzAyVQJi_^GNcthifLn8Yp|e;gn^9zH1BAb045pF z{y-$~bB@LmY~GoPd9e_Dh&H?BOcxI68-iOU>bx(-}^oheY zHc9S9hqz!keJbRP^&j`HFsv7(&zb;|Tk`_csM(pP_@B-a1EVkTJ}F)vGf)e=tPr3Gy3dA`*R9z9 zYOT|gur`?s0Zjek)7 zCTP2Mi3e+HC3CSOgM^v1k=JgIH2Id(lse~r-d7@b)qC?fKIE=(=73a#LxWZk!m+0+ z!jzaG?*G`G{eSs;05CrIS)UvU=4H$Ea_v6sW;{4m7IO#%d7!KscEE2P7jKifKR^pq z(ov_sMdu=)3hMzDoc&J6O-Vq^Zww~oBs{5}o|HDMpe})=24a}9 z)otrt#b~g)CB4TibmxkKI~<_cSn`2RkLTmJ%zz{(G8=Z_lQ3LFt>Fg5rVQ%ug;}|) zAH7X7HpVKeBe`{4wD{&ew6|Eb>CA)wdZ0eFV7Pg*N@Z4o&Vl6~ zM9glFAKoz3Rjj|Oalnp}m@+ff>u{UB`Pq=Ynv1@nL+#}(D6d|UO!x5Fe)JHd#!76r z7g_S`xaOWL3bg-Wty%vh@G?5WjQjDaqCx#@R0AiLyH2903$k;jj-ts?8G4p^cAi?R z`en1OrvK#LK$7!&J@(Ca4$$F$1j4dlb_YPl=3KH{u>n2+ z2hqv~Dp-PKrPuW!OqALQ0+{9w9>yotS~*AGi^H?vSlx^y?RB0AzdmsQqzQh$a8akj zZtv@d5cm@wIi59T%>JPU)`&jPBd4UsugI@%)&*wubOdIsA3ieHk16fnF4T1iGC8+{ z{`?$W_l_QQs8NiSiAnN8>-z#L_vl!el$VJ6T3TE9>cU|MZqVTiBkceK;AWq?&Sh^a zySramEfrI2Jno_OJay3EB-{uH1j0;odi*pdPTHj8iT#bBLtd?jR^!7~L@>9)y$3>I zab-Sjf&sEX;uH(m<)}zke#FB53l;wYsL(ih0D@5KJp2hv>ZMC0(CqqBmbot#m! z>jg<0($6GbETM|)3~F-HLuH((F<=t|QUW<$^9ouLbX-uUSF%7tz|azIX<6g=c!$`D z7YxL9zcDvi1MqyHqC0AOvnLDB*BCOO$ktao-NTSN{aZVLXkkY9t}%q`7BLB^=X zeO)&h4&m_P!Ky( z>{0Z10e~|VpcAxm8Gm?76;Zc-?AR`cGkGHBrOmuWFvvM*Fbb?dz>N4UN}kgqcODR} zMdbyA<-5?(vHqZEGWRh~`I%Q>crY3NO?*#P!a#Jvm_1G^Y0z9UQWCXOGB-Z~*z?28 zWuWlhIM1#J^x5ss-?mAdY%aRdn5K_>>zDOF!5lb!Zi!>_z|(7J(`HBN#}HUnjnNeH zZ@(_A*;N{VoPAecs}qS9gB52NP&%b0MLnq}+5@+2{W0+m_D<3Ir%7Clb>f!g2iBErp{bLSlc z`u!tcpcnd@v+plRGLXTIIs2p>3L*8#0Bs!?{|5vp^;M?FMuM4IM3;AfHm2-{I}6*u z^Y<=0_nO*IubAj;>~tQ8<4%N<21i168WP1jR5SyibgUvUKiC&1Fj17-z=<@{#Y=Q> z%^QNW+NWSmW=u`BB;Gf1MN8HiGuabE?Bo%9o{N7EaFOgok>`iGA@?StQlhU|`-+7^ zNCJOGcFA--yH#%XZ?7sNiGu{Qn~d=BiI|^xQ8ES&p90lDy%3$vCodcaAP)VYgtXL! zH|8|9u9^TDjM2(`EamOe(iZLf|zC z?0{vZqqn@FF#H0#k@5P-F^ed>mOL$oKWil4yq^aEbEXy(6a0L8L2v4+UH-lNZL>9w z^o+6}2ynQBW7Bue>~W*GN;ktd48SGn)W@jIqfbHA8Uf7cp%@=`yY^zXB^g+N>eSnH za}mUc zog9;*_2k6FN^IlR5Ow$6(9@xJfQzz&S;e8H1`+p}RuEmVedrAwbUP_&w@!q26JQ2z z%(Cpc`@WqVM+1=+RM+r!=zelil>PhoME&|dm>9X?ej|)?VE;i2uj0?~!W^^Rl#m$M zlxhVdysLua;WNDHgOgSv569NSFZ#YV+KX1U*Wb1;^x2cVo@Y;a-o*czpNp(#0j3_e ziC|++-b&P#M$g-*7FQI6TGUaPiS4}!N$+0v*BU=(o9nEfDT0m1{s<^;mU?KU*jr|` zr-M?LY@!#$9_pXKIux-?`lDc8ZB$!U?w)WnOKM=mcKf=T6$l*tQ}gULssSvl!b1-- zBtQ-HX0ux4_Hot!?)*_}QZvf$FjkQ}i~Rf}1n`GPmS!g~7Ugw+ue21t-V`v?bjYyKSg>k?+EZ2evpyueS1?bxC$^Cho|z~<^i zR@C>=E6spVlrn#}lFh#h(Vblj$i8#6shWO~_xe%=IcD_TWp{k<7PFE18+^W^$J;ex z{hbElEaTRMM>#}5S4{o#t$P9K1xKk_m*2f66h&eCO(lTF4&z)zgKXWS%&Y>T5MSc1 zH~IlnKRfaXXtNiFL=K6nJ89ve{IhwDtjt)}D(S}q<`&wO6-{=p0H@yMNs>ni1uYkL zb3bZ->@5z>W{gzIQUIrR;UEWgtz}E;4c?bEyrI3jp+BQx$X)O7VRe_6%3i@q8uyd>Ul$eF3+=oCh2{4)x1IEq+eOP~_mux~8!_3AmV~TS zjCxjE+)pD!ZlSBc`)prG!L6Fc-p(pkdU~V)8dnU9B~LZu0&cuKC`g74gxqvDH6Gw) zUkaZw-P?0~%k2JQ87q&n_?6@mY9yVFKUn&!7IJAdCo0H)GoD8LrVf4c%W|nvzUg3K zX!F0-8gjy~h7hOwo0Q^Pt%-SRGa2#!x;t$A9%~4-Iq~p-ww~kAH26791Or*MXZ|FQ z%whNd%}M>LkEkT=YKv=h183K?`Gdk8cWWM=O{p<+_~{2J)6Bx&*$idKiqXY&tkCMt z7sC{l!>#+!j%@roe8M~IQspLx00=f%QjJX{iIs>|M%|puO&1G|Mc3>TIN`PAvOP`x z+oYL!JEV}2rCbnT{}vKFz%d5%#1eYCoKYc13cR?n9Xfat>0E_`PUEN0N!`D?sI6pu z)WxJb-Fb5MtBbLu%l+8qz{IPcUU(SV@_astvOptX6a?d8M<5C#18VS7A;fi?0VMc) z>pCFPt~$ASLZ6n*GIcb-*kyGYY#iP*ZCt#w!@P%zc$Z?^tW5?m6O1~^fnnn4S! zkjKDkA`ia}e(tP*f{I+0qwmd0!8hn%18Z3eiiKEc2pVrt@75+#m56(Sy6pC){eZ2HHB}JJE^6zJp)0^ z_F>Pvn{U2qh?${c-g9NF>*Hf@%~w*r&c;l``cVHj(V^0xXRAD|#$_1OTIj&HPuA@@ zJZ8bqcnZi`m>y3H=*4D?8Mj7z$Z=?e&=H4&R4xiFvzd8T$Evf%qNu5=v-G}jsZINy^8CdDfnVDUrDjWFTv+KF% zuKf$K>+QgXEUTdIo9t<|AOj`9cai@$qmGS)Vj~hB;fJwkXD;=0Cqfxnm8P-{%b3#60P~2=2|! zlFnZW^5uNp%Y+-X0o3k{sx01X06LPV^p{lc;O!V@v>s$I`Rm;SO0+U9WSgDBwwVT& zuIph;3GOKBxJY3KN~3GX;2X!RYnbPGVGaP*@d9U`?EZqe zT_Ugo#$@2?iPW@UzvMJ5t6Q;u_yr9FQ$QwEvIJSemmSr5ZDROiTqk9Kzj zNPt}}#>__%8#gZnf$qd@1pxWHBjodWAzEF@A$9MyEwa6I<`F`rja>HRh7`yt9Rr6K zzfK?x`;TSGZ&yuJEzVLL9oeSc5O>nsU*v zbnTr8YC!v@_#Ke;uAS0GANY{bYe-}m9BiY;JFE#8iT{+O&pRAT7mn(z$Ix^i`_=f# zqE-7;aFTWFTBnphr!q!%Frkg!hmf!|d_Moos|R;woW;K!zz!V8$*Q?yEi06(-98T^ z(usju1Ixydq#-Bi7pa3?7Qsi0xZodTI3!2-S@p6oq_5(9zEpbdDURgWxBA}^WaGGp zUFo$k@xBA~QQspVBW*RB zB7#b3_FS+ue*Vjn?Ij8P21yP%)NXh?7ArNkcDV#Pr&r@}ktHNZ?W+*B2Dg`%q!Uk$ z5Crae2+nj z{G7nL+#`tR{fsXBj=()u9lT;#q)UY+Rra1-iJem2!&a$*{I!dlioqqWG;gpMdfpbT zmVJjEs1Dv3UK;KYyS$}*-Sm$8$-4PsmDF4iZMp1w*rncqL$w%Spf*H#svRK*SX{)@ z!A+Y259d0Lce+yjR=k1S!_9k?Cy)P_VF2qty>Gs9I?j#Uste|F9(eDjS3;#%L|L&r zxmIkKcYnWf@7Ao+v71p8c= zJ+S@I+sEh!R3Go2S{R*(h(@dH-7NZhI+X@*o$X9~+uYVz44C>=dm-({kyiUM5Cgur zZN(Tl+8XudfqRQ`Nc&9xH9RkU^-VFpiazWek z?NE*17;by7a^S=AYFF93-UV;$b(7V zrC?m-iXvSHzfj@qlc=H~@!VaK4eHRl=IJJatKT_7k)B-tv}Vj56rrHSBwFsb))Ik< z!?62Z%&<U=gfqxlBb5c7wQavU5|A z?LW^*=~%S`f;XPa`#`qS2Hk5x%{v51V>bG&JaCbm^RgHCQ1$i1pCvo5beOorH&2*`sWyH}f2GP_%^K{tdAEe%F}KJe+eXL;4Ie$wKP^PtDhHDGw4I#@SY+$J zlH)$D-T^~i6gjosHYLP$e@9*--NQFR+(n~`153L|uk-#mGM;LY>|^wcINGH@tcQlW zi~ddSd%6Bw9340PB+0(}GD^B6!jDKkd_&6tcErjipI^&D_vWBDY-bZ#;Xtb*H5%r7 za4`hH8bdaTfiIOq`IY*HNdnjwfA^@$Kb|M(pFF9M8w-Y3JpZ}l)iASjnYVOj`Ih_Z z!Z8N|o^UzY0+;{VP!_L>DfIuU%I4>rH&%Xos-EKVpKoZbJ;C6DNWqjZayWeRb*GRA=4`tA?AXEc>qt5av6*pr~ z9(;kc4a~WunH)P3_T(waz>O}}1ukV+liYH4t8Uk1rg(X!8UE9+i!r-%mjsx(?-mwV zI)432;VZEeyNpRf^+r2iN1B+TLV<{LnT&73O8VeZhWzNw5WR+-MT9{V(W26kCC~sl z`x*Ep+0Q6i)MDk|J)O>of!+k$zs0v<;lBzpAs=KWFUmr9)S*af|GNpt@)Z*hwa0BNqxuDM=P;hrhQ(7Uvw+bdgp%W9q`z^yo^`b zj3h1{kS9MjL4<{#=qRxHq*`RUF^Tx=9h^zudASu2jC&RtB3_nscaPwwh#a3ud3zGa ztBL+$#16M3>1OBB^9PygxNcG=pkD*(6Gh2sQSj|N@2Pg5!h3=qGBy?-wGG9wjEdkX z5`cp^y)lN>Tuaf86P$l|+)NzfKE)Eq;6~y-W=lMerkNqMeT;mAwp8})yZ{FUm2Gf@ z9(sRIt~WvUu~v8Sg3t(NCk)O-#P zjet0TaRGG$UL}Dy9Ay>4g=~ZURYeU<*{7wu9?=j{aTtk_w|qC;8(5^M7IG&EzVZ+w zRu#WxkSOe^^E_#=ulrN6Cx3A#C{~MwQ(hyVKOi=PIk{3@ThtuY8K{w19`BJ9PBC3TNhNJyfYrzrsWSm`u-DEWx5#MUy5 zwSYLC|Be_kCXHycio`R_GgRz>U^sd3L|&zSjN!pN+pv%6;`N-ELlE)4P_Xh|^_9Z+ zupg&F+%!`sb%L~H9Q_GEKOBN%d zia3%k+sO_r{U@zlTFOlG!WZ{*H&C;c5mVYm8mc8LXNT%$?0mO-dt-^HQWK;7oZ#of zly6S2JrU&|J_MG94GBZE-($6=u!SZ4ZYI{jbJa0zAy&^g0S=?%i7}dC8~V-N1h16A zba?wSHDzgnu#{@o+pQLw0sQDTPcF3JP&azge#b?kc-*c7eD3DfW{leQ*}zONbjma- z%Sx?Bo3XM)E26Wc#gLCsy;A{9Wfw2D5k^Y_%>=`VA59)NUc%qlKcD-u7NRLy5LpuZ zgB0RKdGsl@tMFC4=btUn6+i6#<&N3!+mp8jwzQ~X7e>@rkau7QN>i@;9_Y<00Z$Gj z1H-}w$6d2fe$fQKM3sA7VuSi1oiKg?CG z=?#UFc7`#1Of}T_w~Lx%TiH1F!lCk;_qb9pm~&} zP(0V&B4CM>F8QwLTLMeVpImdi!CEbKz9_$Q0~|@Pl$3p`_k+E%SKk%`NL#at0|t`7 zIvh>)k{zWd%RT|N#lMOHp;#h#hf3HjDJH1F*%@q~{0A!e*TYg`YOps5M>xOtD@;bI~=MauA38BWu z;ciy9D&7&lXSbv_3_r7Sj%dKWb=i9vC=oVWPfyogzg@pBxdBRckd^=K23W`*L2#^9 zZ;6V?z0W%rD3ha z+8v0fM?=2-fr^y2Im!DE?8D#w?*AF@3%QhNrY}p6_AJdU6ly2&@0|d?CwcPmYRyb+ zK617QMQ8+wy05>8E>3dU@!~#Jye4AnUL$jN$`{U)pbH;U$}TUZ|D#YbHdimcMFc7u ztENBKXj^uN&t(;_*nCYLY=Dz!llZJd_Omf+dD~7ZPoHT2JE@ef44$(=oNo0%JGUhz zgt@n|xC=ZNx-(odXbT+4MZdDP;VbbKpGh8Ma_3Z`qH>>7-?23hMR#-l@GB-$ zafF~6`;4f2(D1rjiY#I*xBtn+>#UBBXQwHLV)Hy~Qp9~~xC-~0qg9emM%<9gRQoi;-M}_6G?{|%NXTI3 zQF?sHhSkO95?eTdCsdL%Nbg9Hv+ zbjq&cYrYRXw+0dW!zr-Q=h{weK{el_#2y3PR}1nQ|J4|{SdpPxth$68b&2ksFGXk% z{bmTn^T1-WE~% z)Iv0E`dAT5`IP~BrBnE*N9}&KGvcfOn2Hd~Fno1|09d9y|4P7OQQfqi>R&)2%(waQ z(~J!+f||Zvh=;E+@0ZXUUW-NWpZaHzevgqxr=g+;Rhl}yP5 z9F0&~a{LXXrFsP#N|Hx3MA^L%z6?a~3{L*k3L_wQ50KVhTvDO2BS6bnufJd&ZVf*k zLlu+LW}8Yf$={aZl?bk!dq2Gs%PVBVnOvpe1_6XvMBhC^BoG8ME^<_4uXYB1rXz#S zJtW_{RT)Pf=4|9iOCW@hFV2TM`j-hz%d%T!aR|Yd`$vNbC3(l3EBYhm`@Bu@4V=m= z63NGYqiXm{CBnRj`IYT7y=i9-gZaSH?-et&3$KJnNc$j6Mgr^j`m*XUh&> z=kH*|hJ%0S6Jh!FPv9LU3`356yBFf=;$5xU0eYzBoPu!Ab|NrcuM^N%WgTl5X@HGt zmM;|x%(AcevHHYPK?2(Yzl*YO)aj9}iqbylQ`%I|2gTUnFtTAf;CeHwAP!I4^?o_K zpgwUkdU11mivE}>5&sw-+ur6Q-8w(vuCJ!kq>h#K`W_34HkI{9wGOyY7xJBjLczrz zSKsFE)vv=Y(z#_yxA$tdoyp%X=imk5#h!?(=BX?cJIp_M$aDtwS*MN(rWJPu>kfkDoIbpMj;b|@G{BheQlLP5wAmewVfSluV_*QeoE9s(yS z4irw#DDWg?MRa%t?PCIZ_&Z)FrQOq)h9b#eQtyl8n7{oSp8{$jE05{UJDy9;LHu(v z$3O`TvD}@i9!20g0cgcNf0t1f0<1jyxa{dYJPx!Gd{9NMV$6LY99jorbZ^`}NHhli zh%$>usDEQ0FT}g##EXk(#gOQ6Jm}OCb9P1X)uu^oRQ;!4KR9;|DOoUp zXczstl$$3!wlPTdDiiM4av8mI(FPxwZ4_Y`-?J>+Szn!uE_!!Sk=w?S_#;;KO#}^N zIL7wFb`u+tPc+)|#_U5uxc;@1YqV~_=+AQ#xT)YdH_9k{V7+bmE=us-%jhxW6H@SocP&lzu@=tsK#fc9|!YXtjTSUwQeMc^t=g`xmHLX~nv zhU|eh!hQebh$l$LJq6$BXaQ8o+B zXXJfl^%$ZpABvUYlVC!m96XYFr1;D4r()LSJRM}nDU9|-cDKGxk9bz}{f!$6fC17? zz5)t{lLo<%*bPNrFJ`ZqXFcDF6oC7Ye2CQh=K(}%Gk1ot6TB|SlCz{T4Ily9HMuvI zOA>D6S%WF*vOk4W@hYlFq$k;%95@4^1h1L;sNnL1{v}CiM<_0!q=?n6wDmrU^M4V) zCqOKLHT$2~_dwX(_$BqqGn9`KSzj{i`dD+`SPra72x;_Ra+Q}wgO+k_2dG>^?FfAy z#=WTEWRn1*gkeS%h464`Bu4rmG(%z{tAM)?#LS8p|2slLnRHp>a!N!_be^(}JmkE+{BS8nrxk z+;dgs?u$ccUf;4fg$&O}{#c#3;ZtP$mKOjX1@0hCw~y73aYT7(IX_vD7Z2SuoQwBD zfFbe2CCvlsy+})L%_b@&#m?3+a1DG=JnEfobcr5L8m#0$Orr%kpeM%PhY>URmgPLN zkcjMzChcW{jr(7S&|v%bIi4IB7b*)VL#?0V!JYswtU;!WGengOSfP|SWyube8sCF( zg0sQ1Ck?NdKu`GIe8v9=jwpOKutc=4C%x(J^OJJp2fa;*Q&Y<|6l<=FFL)UxGJmoB zUuT<~P6anM5GWvbl1G7((b%0MyCgzDeQZqNH5YLS3$}UjYoh1xUn*KDbo2Z=kFSQ*N66te}%Gt0Cz6^yE3YSWd~!7yS*q3khmI zWf020$^NF;h1>)xrzUMl00QtS0V}3Kc`D?3DKVM+&zjo?)xV>`Hrs zuGDwwVB63Qzd26N73mKCP2%^rdKRF4Bi-V3**&a()`?aoJFYx!+Gw+LN^Fr~vklrr zrQjrW4(2)=5T6rbBnHX8r0b+K&yTki0$$&Sy_?~?5r4hk(H-sc6wHGQgRKcx?{4fe>rO(<)lE_CoCO-utH z>H0naON9O(a~SWvJ0L_V>KDC|B&8Dm@t38at6Eh*hG+!>>f?XCf@`!A^icIphoIG^ zCeMpLNKzn+f$bT*fI#ab2Y@F0#T>60yV~1>8*gFQqYxYA@{;OrGAGC-iW}X|9izGN zxc~&DIEnaeE}oC^R3AX{m&}yk&M{CEh0S+D1#~Wa`$tdSvGXO2JO!S=LJOJ*y=A3) zqZ5F67B_PxxKo;+Z`G|*oE^mwp&G^aJs2a$82pxF2^q8K_GrU9%*4g`*2n`_?u!W5 z>6K;Ml77;UOiHvj1S>&%M?}EMv$>!n{tk~%SZ{edVw3;wy0K_ANn2RQPdTL6<^lHm z=>~vfO=B9EizGyCB@J>nnn&`PCEQs1sk+i-OWRh9dln>+KrV|z!&CtV3Ub9}=vjxx zT=lU>O)LwVZivdp*YU~sRuv1$e?SCHuz^8Qh{_20IUz7Y9b|!jEM9ac$4epP9=D;w zan?-Q6@;>Nj6oMZg_+K61e~HCbTY~{ou2Ae6hRtV$BBhSFSaQP-+fb@bVSbii9#Ki z)0#1u9?ez(kVRxQ=Pu_l?ZY-Dt)7LIo z|1gu_26|$sR`7bQrPu<%As2#Vh$;`JV>LP;ML)XG1H_5^b>gI&35!Qc^>D~e%Ju}$ zDw3C8A@P9I^pdXV7G!7e?#m4kdAjVcPON|5=CUOZ)!pymfn~y7>?k$r>3D*~b|%Zx zjX&oSnJv0`uGrC?e;#sV@eGxeE$7-L$21lZX05JcWGy5w=wCG_Yr@9GY6wtYvVOTq zz}lI-Jb6gkW2{pfH=mq1_D`3vy3F22;&p)xqW!ESJaK|l!jjweR;;H-R#IBL=fZ!k zU45btlLu8B14-rw#9|b%4U20kT%7t0--GNk20c-vUZq-p zpE!C(6UTM{5xS%79lmOVru(e}TnOB=uw}P6?F-!5iUk%74iIREufM@fGjq=Dn;JkZ zcwU}Vuv{Xr{djNBC2SZXH0)XTnN%`yt7Pj_PL}wcbP=8(%uUZlHPq4kf#n}>^*uc~ zx68Es+3wOtRMox1Gg-d5whRZ9Z6{(tSIn zO^Q}S5Pn=FVsq>SD7zM@Qz>0|GByAkyV0??Ix`}L%UGA(l3E^xE4&J;x|n*lJGH$v z$qX1e8$EU?)wEvNf=*a;yt#1t8lRIq_y!m~8af9to}sl#7U3Q6mG~Yw>*tQuXOoe6 zY<9dO6mDL0$##9G3FLrLjy=za*t|9OkFTrAASbWq!HE{auBd5x%LX*Xp7zts(SJWo ziZ48_)(o_iCUaDE%TnRX72PEQ(COcNai5O)&;ow|v{=8p-RGyx2ilNYV5+F-Zom^d zMYVF9Ll=+7b&JE=c^AM~>cE$WY;U=r^ga%;&CziQLIL{>O?>%2RINWrS^~ux_RF)L z#NlHQe9V2)Xm{pG>j{tMJ^6ee3@RQh_YvvkDhCq$FLi?`COJR z(?#UVJu;MJ>9Q)^no7G?^t9ep1yn#mHQZ&HSjqY_<-e_)<|e7ZBx(IkT4l$Yr|U8} zNCL}_=CSd5G2-4-_sLa0@vW9`PYE=}qq9YT$-Y$FC`Q_XBFpvT zj*QZB(x6*7(OY@VQ1Iewi;F9#nA~W(=h^Qf0KG-!pw_{Z9icvIiWnJc1V-tz-|CB# zv_29t{NdUK7dujT+06IUo1*pGEkY;h32S?w5WX%T>?ND(Y2^RrvR>|KFV2DQ+D(Pl zGQCZRFS^U*SEg#(pIe!-pTc{epL}{6S(^Yks-g#KHLK)P3^roSlR4LgvC!y8_hL0o{wfeko!pL#%H6!(!39DH^GOX*bGHli!h;@tl=cAT*v zP0C!zJAz5OUb++tz$>!2xUT$qdMFLIWtJE|qTsc{YS4B}_*1O3Fv9k$Qf2)vxs#bz ztP(=!K?bMtH^-;UI&I&g?)N10uj)GsxC?@4tQRNOxtF0IY-Umm>B zAoZE;|2J8Cu#4Gac_Uy{?e3KJ@CSRAH^&oyvu0j@!0vzbx z@W2ub>Pe>hxom5A4AX@UD3Q8A8pPlKIZva+hDlje8CgQC z{6_jFN%0^mYfTirR7N=hV#W%?1gfy>J2V0{=%FpPbB{9DYpix$6oC*Yc zqUcIRu{b`D*f9PaO%H9*_&qM_J}~`aPFDqFx$^S*7qMRN5T>sNKvm=e zek37D1`c1kC>+JSA?jm>p*)lP*uGA3O3y>gW8Aa%3x@eROP_z}S*#Sc*m@Fm28Vfc zl2Xk!8tQ~-x)?(|yRQW)TvTt(VZqn>J4A1VyospNqr&*+Se+q}+>_h<=UYDj zKxykCXI~1uGH(c-=JApJI{Gin`HJR_y-q>(;`yj@LRB)FBk4&3wVIbU(boN>v|mwC z?Aa_jU&$y;vZ6nMr|?LA+3$8^*M^>l!}W+?srqGJHI>Qslm9YGZN}mp$`?z9NrtCz z;u?#8<}_tR_iQ^3waSADun8|Cne{Zqx+1kmY9kh%xRK;qff~^_IYWVvj-{+LjmJ-o zF$L(qwFw4_ZR9rH0x%C~`@}+qp|qsLU_354p?6eWB4~P>q=G?*eexY>6b8}R)6>*| z0E@+i#OTounnW|PYZagrN6YTw2C_&1K!n~vN7DjW+^8?}t%SU0o!W(m7o`1Lkm=OW z=8wlW;okJ7J~$Sh#FS2HEuQwNI%Ov5s~GR`As{QXD0u@{$xOWuNDNEzoyGBwpFFxJ zdoNx~$9q%A5`T{xG!Rd4$8;q9FsB#WB(^4)`SW#tjYKZrNjj?$H@jYda2^!fzGQe> zZv1v?8~5yFI{rc|ydNW>>Gr^=PsWM=y6M8p^Uc3TXrFY^zvcp2;k6-K$D6T5`B-;OgQJY0`F>`Ha}WoLPPLurcQw&lfX!6MRXd zzq`&#@;>`r#{w-Iu4+4XUOi_4m-ZO)Qhw82Ap~;u>Bf+;-TI*hrB35!Lw1l^J3)Qi z7djgo!72v7=frZJ6ta{;&83;Y4c;U5M;7_S((~Fvse)&;N3yHv!>E2B^QwmqehyyP zhbcv&u#82B-7=O(VT%{DYM*OT5gJbvxZ9>!#w0|)0~ryXWSrtr+l-S=-? z8n^w2@4m_Bvx{A(_f$C%n7nm9oHiqf5bM{3ndPwaltm7+Xcc0xv^PKn8h-rgvkiyMI zUGmoDf`eI4=D(>##Ft(p9lW)kxQpvY=q5v#G`1YR#^v5yDvy-s=c{n0L+_f22mLLC znYrE(gH`NKTnPlNb+VM<3hLg-(?2nb)_-raFYrr6c#|0b!%(PVEw>0)LgXW~s{Ry@ z&W~Ho?jGu{g22~SVbBTb{EFszh|Hn3<+8L*5BWp?A5>2Yh=RD$V3EI&;*CF5es7CXp!_r;rKU^-)> zq=N0+{MoBjS(1&P5j2y^e*zg(wX?T~Nso#D(M&q~Lg~VJh3KZ7g7|$F+f3P+20c(qtPjy1Y~FUL5CQE^Fu3M{U2VDVVG%~#_XkO* zL|{<;C88aq1pFKk=Oxeasc;ex1&}2z9E1R|V?Dm>ou{2g%60b+q(lg@ zc-LXSOtiiBMae0K+X#x2Jy|Uk_wKM`%)?7Y#@g$|0PhJKo)*TA2jp-kd9;w(?P)lx z)n+IW0lzKWV`sSfUQHtJ)^lG`-QuW)WxZ?RG#=q_k;5Jee)>VGv{&=K?Dj{y zv2*$Hge|;QfQOD=v>Qv-xJkTi-YEI8ftr#?<06NR+7$&KIa?qmiBcw+8^PpX2c6+U z7yVGB#uN#bDB*N+-M*BaEZv@(okxV`dX)NFc=SGn>Tto+7t|OnSegP$Pq@rQ9+x)z zB-xEC%QmY|1XlOdm7K^q1NJY?cC~TVWFqeh{DjstT0|AUroERVmMl(s=`c_f?{RBh zOEoyf_xbPjhs4?0`?5&hL`G417z7AzP^@mi_UAM2XiS6|V=Qm)}?IUvj8TB$pxrHrHfm zG%O!HGh98^uM6d|P4y;@F4auQO%Nv%r9QszOR*z!n!Sm(O)Tw%EJ9wj#ezyPYt+bKb=KgCmZ(Szv`AJkB0AcY3)4}{Mx^`SMaTEkN0mWn6y1rgQ3t7?aK#lpT|v& zq}xx=l{dEk(E;#tR8rLI0x{0F@3@I}w)#uXe8beXG>CE_kAFGbo5!m#a)F)ohUio0 z(`5x{EfY>*G`_QZB+)$w?WR-lzPEqXlWzoqsWe{;R z1@>lGzqmgeA;tmW5R&a2eH-Gfi53WopzDCX{!ciXY4X;Q8LGyx)_24o4N2~ZzYQgdV8$koA;;*c@;B{(*W_K!QCP_>{eRI!~K5o$g;Nu6U zLURU|x=bAB7;#QFP4$1>wD&1dQU&A~Kef9qx2(wNI`Z)>=mltugbpNSeA~G*toX(J z#X4^FjhjKpZRZ*%h9+wIRFTICeOPqM9YcqF(NAmqBvUtJ#vkXY=GM0%4rNQ^Y@!># zU#hHYIz05-&k)OS&#Bs~SfEDF=WLU6?&l$iubwhsO%Z?U!&oh}J7t3079G5sBDl-+ z6O(!Cz@m|~V+Z+tg(W*3yjDdJtoDduS6uAYfMQ&8X#!pa@oFOjHr}A=s-A%V6iIKv zw-W#I^5uSyT8s1?3ZD-%GYsSDAU~qZ%DCA- zC;ih>Uzk!0_uNaoumN$q2dFfPP$gUGQ%d{A12ea{4B06J&SLso3uZ62iFf36T;iIJ z-x_vG$Q&%lHU<_VFidAe@b)Bj?YuhXRe2y~f|-?gtsjbZunSW-y1wE1F`BMBIR3ea za>s}Ze6&P&o%;}ASZZLzX21Ij+>7(#PeuqhD=J&tTz$5dNIEAsBdd;049S_eM2aAE zta^(tHx$up7d~j_kUK^PG(wvh_W~kNnRouvwHp{5YOc?VS*&d#n*UI3we+|#P$Xh~ z%@o_4llQ*G2V$_?>Z`YR)(zj|3#Y`^)rkcnR4EUJwsiu~ufp}PC!)FsEW^rgI)fWx zuL+gqdFv=8z*6$vY-7r3R-=o~|JU7lcQx_7(SAY|kuK5&LNFo-NR{3pp(8~)D7`BR zNDrU_QY1lo7ZC{3n{>V+B~nFtSArCQK@4krp$DLO&Yu22zp0m&1pPe$>-#)BM zyn*RR{=#UF&|kgi*+U4sEdD!u06#&c$jPsq^ZSQ!N@}Xz_p^3%GTHJ`sUgMLE`&aJ z*gW@NXjdg0u+h8;e$K1LchYpe8z4&Qn>w+N!_Esj2 zA3<=@tS|KVr+dUyeLG*qj!4yp>xeA_9mNZu4k)t|@b7k@@KPU!?wWN{1v)t<*aWcJfGQ zs}7cTI7)Y=-ti+}hb6{E+&_4tf7VD!&b9X%5(Ks-VUHNq`TKcX4~swSfs) z9L-e;71a#dDj`DPfp2m+RB8kZqupy#jC6#^9v?QDJo%%K;c{4=!JPlMfekzyUMslx z-X2hMwMmN!ufoLc&xNP+08_hji@HP}5rQkGQS8oL(V(wN4TNa(EKLljE-?rTOuTjM zFt=Lf#ZrntF?;aZR-!;RXP zZkr)2So?;EBAuD>XW1 zGLgT@N81t(;59!%Puhy+#o_Y1cC{(%{+T zxxO;K0H5P{UkY=!j-=K+S=O_7o-G3AwC`$+nV>l}{1`^XZHSo2BB+ zz1{H?Wi*?uhJ>Pfll-Y5Z)l2eXh%2GL|__Hc)E%qLwU6YrN-xgns6y>wU(ekh7vw( z7t;QA6HNAOo&6lT`0vL&ZSs$%{?XK#_mSw% zHX#4OR%rOlEQIr#{Yh)qoO#dHzU9AdWR^W?i0c-utE4*vO`q`s~v%Wuh#Q_O35LvO$3f+u$U(CY$WTf6j}# z5SviS*?nxa;r)()@GKU<+Vq;mND1R+pPq1(kz=nJeznOy*UJN#>1a zsuG69rxWoX{et|IC0=`Atyukn%>tB6yzmZgvT6j2fcwJqXr@x} zo?Jk`khXPCZC;^v#=4qCnPO<f1<%`wbQA=Ih)3=~ZylwJ>sa5{5BQ zo{WmyzAfuD9dS3}v*-5-b^XYmko3fReFl_%_k};T-9*Dnlb4DMZ0!xub6-9|?4OjR zUb66QD8ZEp?}bO6hf=Lkn1iW^*N!T&_$`xle-6S_6@21j<7s0OKW4Hw_KQtZ#M zPPs4(8*`cDJAQiAEoshd7^T^!-7l>aFRFbL5==@rG&gihSa9>mZA8j9{|3UDaT=Ze zM{MPlUQK1n!EMRNv@!>OZ0ZxJAe%PP^{QdJBft4r-q|nMULe zxN53z+)#QT%V{ch`D?UItNxkas&5yYbVP3Tp$&`N6@}@bZ9SQ08@$Ju(CD>gKFE#| zD(UC&v22Rn?LrExw86Qg16L<@L2xAT&Y5*R*>?nKk{eGSzP?9n|9#5pVn?*G7iT6C zj4+P?hFc#)yq*%wPwNreD!w{cDJ&(ftZm=TDgi#;R+C0B#^_A#x|N3hH@tB2WT2|D zV945_c%dwj%4AS|W8lNjFU{z4QwiYt9n5)3GpAw_I#octRSf6EcJY|6WY?8AV~8MC z_Jv?4j%>_`6yxS&MYAzK+csZi;f-Lc@hr0U9eRvCLrFSozL@ERtJ<{8C#^>raBRr_ zt4wu~FI3y&%4E~k46KI2OrGh&%TQ?Ar0rICHy z{EK@U0&BPupw5TbHqIaLV=L_y-c1DYkM?e7TxnuTb?}m-uIz;)XDYzu)rxoevoL+l zw|2>;M=En)38zy&+*;$=-Tjsk_dYqFXie@}F?s=;mWj2C4-~BOfSoUCM`k^qk*wv^ z@Lgsd;b0@m!eR?I6sI&}=!Xqot52;?<_c6na^*JX!PfynBl53)CCdY?CO*ZlnoT%R zuj~3ngQQ-h-LX&x5$o3k$z>lACe^JZ-R(kU1ijMlB+tp0o|{2xy}+1&wqkD;zFFSS z=4=sW5X(hCaJ>v(#rrsfkFJkNHXN1w^C)DUHqia#?_5|iK~zK1e!Nacz=WjWjpJ#) znG`lTApLbp+xrOrlznfv?566x8nmrx9ZQVEEBY_zbTXP99Rf6t4pM4vclYZUCGlRV zKotlmYr4ZXC}r|n>Oni1Y1}hKke*4sVY_ml*6;7Gupdjyag!691)-5w#(~K$#uWp~A|x-U{MZQjp3@91Th_1S7L3MPZ@3?g;wh}(#I{$??e3zKg4 zmXB?J=v0j2v6_y1!K7TDIy$lG*0<{cGvo^Jps1{hwrKaZvM~{QJexo-_9V5B%;>>a^i+ExL#KFBj3 zuT36*zzd)EwuRT3frlWYBXTpscV`>Qvejn<>1{Kf3rpKmQtFAHsd(l7JyM*L!>Y@j zlfs;i@`=S!U4*UER?A|004y+az8H3L8|NfOY=j4j<91=v!iI}V<#UbK8wf%=SN5@s zV{h^I{3~gm@<(@%4*koqDs<%%H~`-)BSkVDFGS@A$_6dDcGD-kNGH$;*g+5DuA&SQ z!`;s`H!y-MJ<&N*uzJOY!jj~89^_5pn@`OZ_>e;>=n6iZ!Tqgr{(n;_{I!0$Y`m|( zb?a3QOuByg7kbm8t4tu09amc(dg0K!%74;o(?av&$JbviLmB=O*S z6_*7*-2&Mby}(pYd+vSc#iP;tMH&3cN%3YyigW85T{FUj5d0UeYoRpFSl68M&>jM3~vS z2i^Vel@dTrVoq~<_V^~6m&(hN(w+uLhRhkOS^Zk0wlAKlwu7`@TM7i|V*BU>0&_Zv zb_{G*J|Nl%z=cDOSx`C11sHVrCQiqf0dSd`+*AJ)u1Qqp8Oh{rx@|hHw~^`cM^+SP z3+u(4zrnxr8%ryL-#C0%n zP)4mVU=Ib-rZWwgmwtfUz13)juOTiO(_5~B*zq;-cT_a{*x>~lVt7sQlM0T&4S%x zSg9lB2PyGf&u_ksaMB9ocCC+awl@G`bpiIB3~Pzh=)2AbW}mA@M}pW$nub`CMjnnL1ugAb%Pv z!&FxeJTqSyq_cmBhWpU42Uq^}}D z>5Qn^W%*@m1CoFHH?-2&3l2@*xZBaJ>Z=KKaacGrWl&=m{7L>4SX>1Q{?=K$x(B3^ z8y4IvuDA;4hc4ooVbID)Te4;pN%)lqh2i0b<=batKM#YZ>F?#U6mjj#^6x@W&eKP& zBsQ|w$w+qV^3N-Dmg41tX*UKFU>O%PsS zQ&3wE-6XYf@Y;_re`1(0eAtf=i*DoA@(nm^jclt-DYV_fp)do-Q`$Q?w~ z)DM2+W=3n$)U`~Vi39rm$TPsCGgxxv{2>F|T)w}la?RQc_G@I8C=f%?yd6jf7G$aT zGclZ0xfVc)55_IeWdIuhEWnjyIJsBUo&(I~j4A#T;_6VP1nmm`O)>Ijbv7{Rn)l0b ze>1KNkuBwutb@q3hOcd-uNaj-0`^h(s2CF*DWsLu#(g>q5Ar>~D7S2M&nGVzXl7*H z>=PebSOjnL`+J7CDI`hGIdkokG=@5r(Ccs0?_bBsFbqzCu_S5n(V=Vh`e&JUfa7%* z$TQy@z1ENaeGBKIccnK4p+m}Rimtt9a8xc-OjJO8oVipSwZ5fr8AQ@aYnX-V)xE}Q zs}($}T#kV->k12IENZ;@zr=OvP>UMcJUb1?3HCi&MznYJ;Q;MY@R@8GM-nm@SPChj z>4fY?A`)L;a>p7*waH)0VI%3h57539UgiYynNVC1YpZ1+fhci_b7S=iif4YYtv-;c z8=cr~)cmlp=ny}~yW`Q@Mx&;92@ZfI@HsFR$1|h?98&BsqL$HZoD$M|ZQ6IHM`zkc zR$s9W2u9%r3@cI58u(ix!}knn`U!?~sq)UXQj=Y3KqNqatxgr}g~oPluK?Da9|(|a zM8cgkiIKF}>y50aGvpyX`s=+NX22?VagyTMjh9?OR)pi- z|7oFq{Q`ccgf@ZuJ#}4#vi%0*B(Se8aZK6?J-kO+kPGm&PS%b1O&=6+5tS}(K#2+; zGs-zOfdu$Y6_*vWtRV#Zqm8VSdgOp$gWSFg75Q6t-xQ!f@Ck>8%{k}*gw+p(hpe4c z)kH1ct}6waU#gy9&VGn`$w6J*vbW6ei5t^ce(o)_4k9t?G^vA8?t&2t$)6rr54{}U zj)J218W;`?Us2t=;YU`L;#QJaEwPFuJztJf^`&5<$i#KzTV_%L!iR~)R3Y9nE2Yj- z_vo*kOM9e{L zkJ+(*=GZ&KKo~B*z>s;_6UgNc{1RiGYxI^$=ugDccROlE%Xcv}7J||RtCFtKinKGh zyj$FT>W(~;Z!g>dXXW}gM@1t%Dy1=q%&gqn&v{XJPbl$4lbzAKldVur6Q0f2Po)4a zh_d?Sr=EvXH{HK}t<4E$>ttp-@u6G_#_p>)dS-ktdocT9dY;nCmld#g#_YjdTi%UW zsee{ym8fKKX&KR1zk|+Z>*SI1ua7ydz0f~Y)EFsx`^Sa`+#(yYsK`jJTE3H`8X-cA z|8zGr)q66#PqRiWUb-oT{Ok*y#cXcBret`Yl_Gx~#8kE+{h84cI<72=_1(^q|0}W1 zO!{>T`{#n6Zz~N^{g@|E(U%PMA*8n8k(D^N$z9J|`Woj6F~<&@<_sB9x#{e~yo!d4 zG|YgtV=Eds^!2!c$;BYvP$1M5-@2PwH(h$l#+v@pkLh#8bf~tuNRjR!^erTLp&iDB z-nQ@h1bcpOD)jUw&ePZj{rZ~XWa9B4?6XjeOFY;_a zG&#**6g4;a>FGJiQX(es&&}#V@XH!Ud<%w1L>@2Aclv5!=5B11wKJkfk+#Cn@E*)W zA%u168|e-=;M>)F3r|+UVf_S=o7gA%i+l=~@Y6?!fm?a92(IkK^jYOo>d*||H?N80 z6|Fo_&$)Ez%$nw?Rdvw1p)#Of7y)LIeb3rURDIrhluKQ#Dfgri=6^XTj+}NjuIR$V^z% zcT*6@JRDyuVSi^w*L{)kp5$2&jopq~@$x z8CE(;MlO=2!g%`rAe zm?aj*6n8V3JvO+>0%Rwd8GO>V+i?dykAn3c4w)QwIWPC;ZjweQ3+96*s;usIy;f|U z0+N5rznykYLG>~GhNgrN3aqETIf1>$Sc1wAid z>n6Y69BR>{9~<$EWC z=l4r89(p~_P!P<1i@nW}@+x%RXtrT6@xk5W4)_Qy|Lb9J^t{e99mNngZlrHenN6dO z&#K`P#U;WTVS$3U->{>>K4}hIcv47LSpbr7j*#FKE?P|umcDJ%rz;ya8~gZ ztQ>6eI7}@T$8ofUODHIfRSFMb~Dki+3%;rXZAEQ6C13og7eD902P zPFxC7kx=jV(60;o#dm&Uz-szv9XXV~(;S~Nx1GWZ3+Fq@wpoPELc+b>4&%9w@_GmK z!V!nHFV(g#g55<+z8N;E`wOMz@zrN4KskV3}&L8Y=m~hU#czO3sjT=w_fnp zt_3o6Ev4n-1)gXLUy}gdI1|GuOT^cTAz!?s6@jYf1JBACuXb=N#JU7Xj zrg=gs9`6q&a^Ot=?83inLVyXl45@_e_xzgn6C^tvYY!$HGnR$F3vKF=KIkAvk;Jhj z$r{9FjuA}k!W$R69~i2AZ^|Fm`g7P@uUf+~md-drKc+#$^}m0iVEh^&RcpcI9@w4} z@Pp25Cj$GjvVi26+9Yz2*DCt$vc;AU6jE4om6E7y*&`laSP?ZVPgFT_`a{1 zCjxbuQ68u6{0E$pPIXDM7g97lKSE-jIDu4G^#F0qnacPKc&j$OEjl(^$b{lRZYN6| z2RjLo+4C|4Hm5eAH_7s&T7<_2YrIiCW?!kADOFP9ayZVxgDC`k5LW(=5Ui{qeEC|_ z(3*)og-9=94xnZnvuQ3wY9f8eNg~X&Gt4jbqS%M8Sk^4JjbfzCPPjJW+G$bVP+zgJ z&r2+>hRI(4bE{h|G^smUF$BV-eq{}w%`vvjr2JQ&BK2p*>dYV+?fq^C4&_#s1g!3u z$Dch1v?-sxQ?t1xo579~UJs$$V0>p4X-?hDJ9u+hKdz`l{H0fr2*Bbr)(9Uv%jfnm zANok476kd37>uHQRi-AXo8ZfD4FY=A+_E@~tGS=pT{+l_f+dp&APy_N+JB<{$e{n4 zY=m=iK}CYaTc5{JT;vsGk(Bd5`(qJ43@4IBiA`<8 z^#fHCQ9~o|T8D&;t75WYRLZ8`2#|*?>>;2t${Rbz&$sSYEfta^7I(f1 zpHW(TF7?u-YfOa;0AmDW%FI9_Z&SGTXmCD>GUbQG0aq&5n5C2_nr}_yVxkJZ^$xKe zSy{{h3J7&=pIhWh2!LAI;aWBg;JkMHHKzk7!Q$tjL*p&CamH@s3=Y77mi>&KOd}Ds zA}B4`boAnLrkD1u%qjOS<4=zj#qS}UzBX*Y4ospese30s< zX%r_ef&R^oUOdYZA2bwEaU8vGJeo+l_~D-^XKNN@|&IA5&ot` z!^vUrX1`CW3;gc&-%2;hM{Xc&-L_btyalxxT|W^3qh;L2iy*RWP^eg}Hxg&8`>1(} zTRFabX>{mi+1;4_svdY`k*np<`v&jfzl|gu5BhH&d?3oAL;5R>g9*nMsRYfl%k)t0 zZ#N7`F*-FE%F^7s(T^0E5yTDiTwDM1!+2luHh?woHfP#1VQ|reU7h)F!!f2=tmsXL zRd|xMLYN}&#Y>n$V;X^GG#1ZgYo%Ya9NOlPmn5HucZabwc>EGv*akOC?O4Bu2~V+9 zz}SD?P3HWxFoBcL&4B$%xdu^7@WsoCdPh=FzOZ3!(zj)klP-R2fc0<&xqgIzY;L)L zq{j=g3%glcQyk;`&Jzc*D{}MgBEznLk}Th1sI8p$=jNSxPPseP@_tkRY!cTzoDKz& zJXh-j#Bks3k+5R^6EGwe)f}Mt1T6j}!U!FFxNvdbF6*SAVLC^CB}{9gmCl$nzi2pGDZt9bG>DS#-JB9 zgab1dwb9bXqmyJZ-#l$>Z(3w5hEXoPfS%>uV=yawl$O!QY2Z%mGWTR@5f(M zb8%~r%Q^~M8NG?$Y73Iu2XDoC+jX14g6Mss4d}8l!gOs;6~ShcJaw28KNk+Y8?M@$ z40aj>SvT&julW&*_HN!fB}cd9j`V-{U>SjusMErQU25No{*Pn-<(U*z1gmDQm((66 zlwPg+#ghs2(wPj$*9A4B<#VwqyKK5dYwVdlxD?92%VrmrlB(XXq;B=KR0Y-sK+yOf zI`^@rSM6pZfVtdi5k+doY`ci6?~QsjZq17=?^L<3j?=S`rJr9njY?gSDe76gly8Hi z~LI#(8|%gpWH>iPO<4)+=_?9Q{g1!2-bmohf>bG%^_J?=%xe=(fN zhy{(BdR87vl5ne0XY{4Ba@?f*lv)k^qv$8S`5S#@dq_axX*66_ZT2=4N`T|nUz?)} zZY{kKpx?hkhY|T0G}-9$Kfw0Uhr7kp_vZPctz_s_9Vkq^e(T!2P`c(0NU@+Sl5RH# z$iK{51lO$~)bzJEQeOn85^zXTC5L*GpT+2;k&<=I?=dH^q|P9)(u|OF%}RH%*3Q`? zP#tKW(6XN%u?FOngk30ESoQud9tWxj$*(WyOZsmUU`=C24i5%M*PM0yJt Date: Mon, 25 May 2026 11:52:59 -0700 Subject: [PATCH 09/12] Now supports system fonts? --- build.gradle.kts | 10 +- src/main/java/lwjglwindow/LWJGLWindow.java | 10 +- .../lwjglwindow/TruetypeFontRenderer.java | 298 ++++++++++++++++-- 3 files changed, 281 insertions(+), 37 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index de63d0ba..634eeda1 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -13,14 +13,14 @@ fun getHash(): String { ?.trim() ?: "00000000" } -val lwjglVersion = "3.3.3" +val lwjglVersion = "3.4.1" val lwjglNatives = listOf( -// "natives-freebsd", -// "natives-linux-arm32", "natives-linux-arm64", -// "natives-linux-ppc64le", "natives-linux-riscv64", + "natives-freebsd", + "natives-linux-arm32", "natives-linux-arm64", + "natives-linux-ppc64le", "natives-linux-riscv64", "natives-linux", "natives-macos", "natives-macos-arm64", -// "natives-windows-x86", "natives-windows", "natives-windows-arm64", + "natives-windows-x86", "natives-windows", "natives-windows-arm64", ) repositories { diff --git a/src/main/java/lwjglwindow/LWJGLWindow.java b/src/main/java/lwjglwindow/LWJGLWindow.java index aeb24d90..81d2cd6f 100644 --- a/src/main/java/lwjglwindow/LWJGLWindow.java +++ b/src/main/java/lwjglwindow/LWJGLWindow.java @@ -128,12 +128,12 @@ public void run() protected void init() { - // Fallback triage, in priority order: the game's bundled font, then the OS default font for - // broad offline coverage, then any font files (e.g. the downloaded Noto Sans .ttc) the user - // has under ~/.tanks/fonts. findFontForChar walks these in load order, so the first that has - // the glyph wins. + // Fallback triage, in priority order: the game's bundled font, then the OS system fonts for + // broad offline coverage (CJK, Indic, Arabic, ...), then any font files (e.g. the downloaded + // Noto Sans .ttc) the user has under ~/.tanks/fonts. findFontForChar walks these in load + // order, so the first that has the glyph wins. TruetypeFontRenderer ttf = new TruetypeFontRenderer(this, "/fonts/default/Bullet.ttf", 128, true, 1.4, 0.3); - ttf.addSystemFont(128, false, 1.4, 0.3); + ttf.addSystemFonts(128, false, 1.4, 0.3); ttf.addFontsFromDirectory(System.getProperty("user.home") + "/.tanks/fonts", 128, false, 1.4, 0.3); this.fontRenderer = ttf; diff --git a/src/main/java/lwjglwindow/TruetypeFontRenderer.java b/src/main/java/lwjglwindow/TruetypeFontRenderer.java index 043d0b3a..9858a00c 100644 --- a/src/main/java/lwjglwindow/TruetypeFontRenderer.java +++ b/src/main/java/lwjglwindow/TruetypeFontRenderer.java @@ -9,6 +9,7 @@ import java.io.*; import java.nio.ByteBuffer; import java.nio.IntBuffer; + import java.nio.file.Files; import java.nio.file.Paths; import java.util.*; @@ -253,6 +254,7 @@ private int addFontsFromBuffer(ByteBuffer buffer, String label, int bakeHeight, throw new RuntimeException("not a valid font file (stbtt_GetNumberOfFonts returned " + count + ")"); int loaded = 0; + int failed = 0; for (int i = 0; i < count; i++) { int offset = stbtt_GetFontOffsetForIndex(buffer, i); @@ -266,12 +268,36 @@ private int addFontsFromBuffer(ByteBuffer buffer, String label, int bakeHeight, } catch (Exception e) { - System.err.println("TruetypeFontRenderer: skipped sub-font " + i + " of '" + label + "': " + e.getMessage()); + failed++; } } + + // STB rasterizes TrueType (glyf) and bare CFF outlines, but not CFF2 — the format used by + // variable OpenType/CFF fonts such as the system Noto Sans CJK packages. Those fail to init; + // report the likely cause once per file instead of once per sub-font. + if (failed > 0) + { + String reason = isOpenTypeCFF(buffer) + ? "OpenType/CFF outlines (CFF2 variable fonts aren't supported by STB)" + : "STB could not initialize them"; + System.err.println("TruetypeFontRenderer: skipped " + failed + " of " + count + + " font(s) in '" + label + "' — " + reason); + } + return loaded; } + /** True if the first font in {@code buffer} is OpenType/CFF-flavoured ('OTTO'), not TrueType. */ + private static boolean isOpenTypeCFF(ByteBuffer buffer) + { + int off = stbtt_GetFontOffsetForIndex(buffer, 0); + if (off < 0 || off + 4 > buffer.capacity()) + return false; + // 'OTTO' = 0x4F 0x54 0x54 0x4F + return buffer.get(off) == 0x4F && buffer.get(off + 1) == 0x54 + && buffer.get(off + 2) == 0x54 && buffer.get(off + 3) == 0x4F; + } + /** * Adds every font in a file on disk (a .ttf, .otf, or multi-font .ttc) as a fallback. Intended * for fonts outside the classpath — an OS system font, or a user-supplied file under @@ -285,7 +311,8 @@ public int addFontFile(String filePath, int bakeHeight, boolean pixelPerfect, do try { int loaded = addFontsFromBuffer(readFile(filePath), filePath, bakeHeight, pixelPerfect, sizeScale, yOffset); - System.out.println("TruetypeFontRenderer: loaded " + loaded + " font(s) from " + filePath); + if (loaded > 0) + System.out.println("TruetypeFontRenderer: loaded " + loaded + " font(s) from " + filePath); return loaded; } catch (Exception e) @@ -327,54 +354,271 @@ public void addFontsFromDirectory(String dirPath, int bakeHeight, boolean pixelP } /** - * Adds the platform's default UI font as a fallback — the tier between the bundled font and any - * downloaded fonts — so common scripts render offline before the larger Noto collection is - * present. Probes a short, per-OS list of well-known font paths and adds the first that exists; - * if none are found the call is a no-op. + * Adds the platform's system fonts as fallbacks — the tier between the bundled Bullet font and + * any downloaded fonts. Bullet already covers Latin, so the value here is breadth: CJK, Indic, + * Arabic, Hebrew, Thai and other scripts that no single UI font carries. We therefore register + * several broad-coverage system fonts and let {@link #findFontForChar} choose per glyph. + * + *

macOS and Windows keep their fonts in stable, well-known directories, so those are + * hardcoded. On Linux font locations vary by distro, so we ask fontconfig ({@code fc-match}) + * which file the system actually uses for each of a set of representative scripts; if fontconfig + * is unavailable we fall back to scanning the standard font directories. */ - public void addSystemFont(int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + public void addSystemFonts(int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) { String os = System.getProperty("os.name", "").toLowerCase(Locale.ROOT); - String[] candidates; + + // LinkedHashSet: keep discovery order but drop duplicates — one font often serves several + // scripts (e.g. a Noto CJK file covers zh/ja/ko), and it must not be loaded more than once. + Set paths = new LinkedHashSet<>(); if (os.contains("win")) { String windir = System.getenv("WINDIR"); String root = (windir != null ? windir : "C:\\Windows") + "\\Fonts\\"; - candidates = new String[]{root + "segoeui.ttf", root + "arial.ttf", root + "tahoma.ttf"}; + addExisting(paths, + root + "segoeui.ttf", // Latin, Cyrillic, Greek, Arabic, Hebrew, ... + root + "msyh.ttc", // Microsoft YaHei — Simplified Chinese + root + "msjh.ttc", // Microsoft JhengHei — Traditional Chinese + root + "yugothm.ttc", // Yu Gothic — Japanese + root + "msgothic.ttc", // MS Gothic — Japanese (older systems) + root + "malgun.ttf", // Malgun Gothic — Korean + root + "Nirmala.ttf", // Nirmala UI — Devanagari and other Indic scripts + root + "tahoma.ttf"); // extra Arabic/Hebrew coverage } else if (os.contains("mac") || os.contains("darwin")) { - candidates = new String[]{ - "/System/Library/Fonts/SFNS.ttf", + addExisting(paths, + "/System/Library/Fonts/SFNS.ttf", // San Francisco — Latin et al. "/System/Library/Fonts/SFNSText.ttf", - "/System/Library/Fonts/Helvetica.ttc", - "/System/Library/Fonts/Supplemental/Arial.ttf", - "/Library/Fonts/Arial.ttf"}; + "/Library/Fonts/Arial Unicode.ttf", // very broad multi-script + "/System/Library/Fonts/Supplemental/Arial Unicode.ttf", + "/System/Library/Fonts/PingFang.ttc", // CJK + "/System/Library/Fonts/Hiragino Sans GB.ttc", // CJK + "/System/Library/Fonts/AppleSDGothicNeo.ttc", // Korean + "/System/Library/Fonts/Kohinoor.ttc", // Devanagari + "/System/Library/Fonts/Supplemental/Devanagari Sangam MN.ttc", + "/System/Library/Fonts/Supplemental/Thonburi.ttc"); // Thai } else // Linux / other unix { - candidates = new String[]{ - "/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf", - "/usr/share/fonts/dejavu-sans-fonts/DejaVuSans.ttf", - "/usr/share/fonts/dejavu/DejaVuSans.ttf", - "/usr/share/fonts/TTF/DejaVuSans.ttf", - "/usr/share/fonts/google-noto/NotoSans-Regular.ttf", - "/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf", - "/usr/share/fonts/liberation/LiberationSans-Regular.ttf", - "/usr/share/fonts/truetype/liberation/LiberationSans-Regular.ttf"}; + // Linux resolves and loads its own fonts (fontconfig-driven, with STB-loadability checks). + addLinuxSystemFonts(bakeHeight, pixelPerfect, sizeScale, yOffset); + return; } - for (String path : candidates) + if (paths.isEmpty()) + System.err.println("TruetypeFontRenderer: no system fonts found for OS '" + os + "'"); + + for (String path : paths) + addFontFile(path, bakeHeight, pixelPerfect, sizeScale, yOffset); + } + + /** Adds each path that exists as a regular file to {@code out}, skipping the rest. */ + private static void addExisting(Set out, String... paths) + { + for (String p : paths) + if (new File(p).isFile()) + out.add(p); + } + + /** + * Resolves and loads broad-coverage Linux system fonts via fontconfig. For each representative + * language it takes fontconfig's best match ({@code fc-match}); if STB can't rasterize that file + * (e.g. a CFF2 font like the system Noto Sans CJK), it walks the fonts that actually cover the + * script ({@code fc-list}) and loads the first STB can use — typically a glyf alternative such as + * Droid Sans Fallback. If fontconfig is unavailable, or nothing usable is found, it falls back to + * scanning the standard font directories. + */ + private void addLinuxSystemFonts(int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + // (fontconfig language, representative BMP codepoint) for the major writing systems. We only + // pull in a font for a script when nothing loaded so far renders its sample character, and we + // verify a candidate actually contains that glyph: fontconfig's best match is often a CFF2 + // font STB can't use, and its coverage lists include near-misses. Picking by real coverage is + // what steps over the system's CFF2 Noto CJK to a glyf fallback (e.g. Droid Sans Fallback). + String[] langs = {"ru", "el", "zh", "ja", "ko", "hi", "bn", "ta", "te", "kn", "ml", "gu", + "pa", "or", "si", "ar", "he", "th", "my", "km", "lo", "ka", "hy", "am"}; + int[] samples = {0x0410, 0x0391, 0x4E00, 0x3042, 0xAC00, 0x0905, 0x0985, 0x0B85, 0x0C05, + 0x0C85, 0x0D05, 0x0A85, 0x0A05, 0x0B05, 0x0D85, 0x0627, 0x05D0, 0x0E01, 0x1000, + 0x1780, 0x0E81, 0x10D0, 0x0531, 0x1200}; + + Set added = new HashSet<>(); // files contributing glyphs to the chain + Set rejected = new HashSet<>(); // files STB can't use at all (e.g. CFF2) + + for (int s = 0; s < langs.length; s++) { - if (new File(path).isFile()) + int codepoint = samples[s]; + if (anyFontSupports(codepoint)) + continue; // already covered by Bullet or a font loaded for an earlier script + + List candidates; + try { - addFontFile(path, bakeHeight, pixelPerfect, sizeScale, yOffset); + // fontconfig's best match first (highest quality), then every font claiming to cover + // the script. + candidates = new ArrayList<>(runFontconfig("fc-match", "-f", "%{file}\n", ":lang=" + langs[s])); + candidates.addAll(runFontconfig("fc-list", ":lang=" + langs[s], "--format", "%{file}\n")); + } + catch (IOException notInstalled) + { + addFontsFromStandardDirs(bakeHeight, pixelPerfect, sizeScale, yOffset); return; } + + for (String file : candidates) + { + if (added.contains(file) || rejected.contains(file) || !new File(file).isFile()) + continue; + if (addFontFileCovering(file, codepoint, rejected, bakeHeight, pixelPerfect, sizeScale, yOffset)) + { + added.add(file); + break; + } + } + } + } + + /** True if any already-loaded font has a glyph for {@code codepoint}. */ + private boolean anyFontSupports(int codepoint) + { + for (TtfFontInfo font : fonts) + if (font.supportsCodepoint(codepoint)) + return true; + return false; + } + + /** + * Reads {@code filePath} and registers only the sub-fonts that STB can initialize and + * that contain a glyph for {@code requiredCodepoint}; returns true if at least one was added. + * Files STB can't use at all (e.g. CFF2) are recorded in {@code rejected} so other scripts skip + * them. This is what lets the resolver pass over the system's CFF2 Noto CJK to a glyf fallback. + */ + private boolean addFontFileCovering(String filePath, int requiredCodepoint, Set rejected, + int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + ByteBuffer buffer; + try + { + buffer = readFile(filePath); + } + catch (IOException e) + { + rejected.add(filePath); + return false; + } + + int count = stbtt_GetNumberOfFonts(buffer); + int initialized = 0; + int added = 0; + for (int i = 0; i < count; i++) + { + int offset = stbtt_GetFontOffsetForIndex(buffer, i); + if (offset < 0) + continue; + + TtfFontInfo info; + try + { + info = new TtfFontInfo(buffer, offset, bakeHeight, pixelPerfect, sizeScale, yOffset); + } + catch (Exception e) + { + continue; // STB couldn't initialize this sub-font (e.g. CFF2) + } + initialized++; + + if (info.supportsCodepoint(requiredCodepoint)) + { + fonts.add(info); + added++; + } + } + + if (initialized == 0) + { + rejected.add(filePath); + System.err.println("TruetypeFontRenderer: cannot use '" + filePath + "' — " + + (isOpenTypeCFF(buffer) ? "OpenType/CFF2 outlines unsupported by STB" : "no STB-loadable fonts")); } + if (added > 0) + System.out.println("TruetypeFontRenderer: loaded system font " + filePath); + + return added > 0; + } - System.err.println("TruetypeFontRenderer: no system default font found for OS '" + os + "'"); + /** Last-resort fallback when fontconfig is absent: load every font under the standard font dirs. */ + private void addFontsFromStandardDirs(int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) + { + Set scanned = new LinkedHashSet<>(); + for (String dir : new String[]{ + System.getProperty("user.home") + "/.local/share/fonts", + System.getProperty("user.home") + "/.fonts", + "/usr/share/fonts", + "/usr/local/share/fonts"}) + collectFontFiles(new File(dir), scanned, 0); + + for (String f : scanned) + addFontFile(f, bakeHeight, pixelPerfect, sizeScale, yOffset); + + if (scanned.isEmpty()) + System.err.println("TruetypeFontRenderer: no Linux system fonts found"); + } + + /** + * Runs a fontconfig command and returns its stdout as a list of non-blank, trimmed lines. + * Throws {@link IOException} if the binary isn't installed. + */ + private static List runFontconfig(String... command) throws IOException + { + Process p = new ProcessBuilder(command).start(); + + List lines = new ArrayList<>(); + try (BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream(), java.nio.charset.StandardCharsets.UTF_8))) + { + String line; + while ((line = r.readLine()) != null) + { + line = line.trim(); + if (!line.isEmpty()) + lines.add(line); + } + } + + try + { + p.waitFor(3, java.util.concurrent.TimeUnit.SECONDS); + } + catch (InterruptedException e) + { + Thread.currentThread().interrupt(); + } + p.destroy(); + + return lines; + } + + /** Recursively collects .ttf/.ttc/.otf files under {@code dir} (depth-bounded) into {@code out}. */ + private static void collectFontFiles(File dir, Set out, int depth) + { + if (depth > 6 || !dir.isDirectory()) + return; + + File[] entries = dir.listFiles(); + if (entries == null) + return; + + for (File f : entries) + { + if (f.isDirectory()) + collectFontFiles(f, out, depth + 1); + else + { + String n = f.getName().toLowerCase(Locale.ROOT); + if (n.endsWith(".ttf") || n.endsWith(".ttc") || n.endsWith(".otf")) + out.add(f.getAbsolutePath()); + } + } } @Override From 9794ae2520078f81b4bc51a5d71f08e2bd5c024d Mon Sep 17 00:00:00 2001 From: Parth Iyer Date: Mon, 25 May 2026 11:55:17 -0700 Subject: [PATCH 10/12] Remove .claude from git --- .claude/settings.local.json | 19 ------------------- 1 file changed, 19 deletions(-) delete mode 100644 .claude/settings.local.json diff --git a/.claude/settings.local.json b/.claude/settings.local.json deleted file mode 100644 index 80d76e85..00000000 --- a/.claude/settings.local.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "permissions": { - "allow": [ - "Bash(./gradlew clean:*)", - "Bash(python3:*)", - "WebSearch", - "WebFetch(domain:checkstyle.org)", - "WebFetch(domain:github.com)", - "WebFetch(domain:checkstyle.sourceforge.io)", - "Bash(./gradlew checkstyleMain:*)", - "Bash(./gradlew lineCount:*)", - "Bash(./gradlew lintCount:*)", - "Bash(find:*)", - "Bash(./gradlew compuleCheckstyleChecksJava)", - "Bash(head:*)", - "WebFetch(domain:www.jetbrains.com)" - ] - } -} From ce4a6fdfd03cdc474ac932e108b8dd307b8c9d88 Mon Sep 17 00:00:00 2001 From: Parth Iyer Date: Mon, 25 May 2026 14:58:45 -0700 Subject: [PATCH 11/12] Fix linting errors --- src/main/java/lwjglwindow/LWJGLWindow.java | 7 +- .../lwjglwindow/TruetypeFontRenderer.java | 69 ++++++++++++------- 2 files changed, 46 insertions(+), 30 deletions(-) diff --git a/src/main/java/lwjglwindow/LWJGLWindow.java b/src/main/java/lwjglwindow/LWJGLWindow.java index 81d2cd6f..ea365602 100644 --- a/src/main/java/lwjglwindow/LWJGLWindow.java +++ b/src/main/java/lwjglwindow/LWJGLWindow.java @@ -128,14 +128,9 @@ public void run() protected void init() { - // Fallback triage, in priority order: the game's bundled font, then the OS system fonts for - // broad offline coverage (CJK, Indic, Arabic, ...), then any font files (e.g. the downloaded - // Noto Sans .ttc) the user has under ~/.tanks/fonts. findFontForChar walks these in load - // order, so the first that has the glyph wins. TruetypeFontRenderer ttf = new TruetypeFontRenderer(this, "/fonts/default/Bullet.ttf", 128, true, 1.4, 0.3); - ttf.addSystemFonts(128, false, 1.4, 0.3); ttf.addFontsFromDirectory(System.getProperty("user.home") + "/.tanks/fonts", 128, false, 1.4, 0.3); - + ttf.addSystemFonts(128, false, 1.4, 0.3); this.fontRenderer = ttf; GLFWErrorCallback.createPrint(System.err).set(); diff --git a/src/main/java/lwjglwindow/TruetypeFontRenderer.java b/src/main/java/lwjglwindow/TruetypeFontRenderer.java index 9858a00c..af0e1194 100644 --- a/src/main/java/lwjglwindow/TruetypeFontRenderer.java +++ b/src/main/java/lwjglwindow/TruetypeFontRenderer.java @@ -9,7 +9,6 @@ import java.io.*; import java.nio.ByteBuffer; import java.nio.IntBuffer; - import java.nio.file.Files; import java.nio.file.Paths; import java.util.*; @@ -277,11 +276,8 @@ private int addFontsFromBuffer(ByteBuffer buffer, String label, int bakeHeight, // report the likely cause once per file instead of once per sub-font. if (failed > 0) { - String reason = isOpenTypeCFF(buffer) - ? "OpenType/CFF outlines (CFF2 variable fonts aren't supported by STB)" - : "STB could not initialize them"; - System.err.println("TruetypeFontRenderer: skipped " + failed + " of " + count - + " font(s) in '" + label + "' — " + reason); + String reason = isOpenTypeCFF(buffer) ? "OpenType/CFF outlines (CFF2 variable fonts aren't supported by STB)" : "STB could not initialize them"; + System.err.println("TruetypeFontRenderer: skipped " + failed + " of " + count + " font(s) in '" + label + "' — " + reason); } return loaded; @@ -294,8 +290,7 @@ private static boolean isOpenTypeCFF(ByteBuffer buffer) if (off < 0 || off + 4 > buffer.capacity()) return false; // 'OTTO' = 0x4F 0x54 0x54 0x4F - return buffer.get(off) == 0x4F && buffer.get(off + 1) == 0x54 - && buffer.get(off + 2) == 0x54 && buffer.get(off + 3) == 0x4F; + return buffer.get(off) == 0x4F && buffer.get(off + 1) == 0x54 && buffer.get(off + 2) == 0x54 && buffer.get(off + 3) == 0x4F; } /** @@ -349,7 +344,7 @@ public void addFontsFromDirectory(String dirPath, int bakeHeight, boolean pixelP return; Arrays.sort(files, Comparator.comparing(f -> f.getName().toLowerCase(Locale.ROOT))); - for (File f : files) + for (File f: files) addFontFile(f.getAbsolutePath(), bakeHeight, pixelPerfect, sizeScale, yOffset); } @@ -410,14 +405,14 @@ else if (os.contains("mac") || os.contains("darwin")) if (paths.isEmpty()) System.err.println("TruetypeFontRenderer: no system fonts found for OS '" + os + "'"); - for (String path : paths) + for (String path: paths) addFontFile(path, bakeHeight, pixelPerfect, sizeScale, yOffset); } /** Adds each path that exists as a regular file to {@code out}, skipping the rest. */ private static void addExisting(Set out, String... paths) { - for (String p : paths) + for (String p: paths) if (new File(p).isFile()) out.add(p); } @@ -437,11 +432,34 @@ private void addLinuxSystemFonts(int bakeHeight, boolean pixelPerfect, double si // verify a candidate actually contains that glyph: fontconfig's best match is often a CFF2 // font STB can't use, and its coverage lists include near-misses. Picking by real coverage is // what steps over the system's CFF2 Noto CJK to a glyf fallback (e.g. Droid Sans Fallback). - String[] langs = {"ru", "el", "zh", "ja", "ko", "hi", "bn", "ta", "te", "kn", "ml", "gu", - "pa", "or", "si", "ar", "he", "th", "my", "km", "lo", "ka", "hy", "am"}; - int[] samples = {0x0410, 0x0391, 0x4E00, 0x3042, 0xAC00, 0x0905, 0x0985, 0x0B85, 0x0C05, - 0x0C85, 0x0D05, 0x0A85, 0x0A05, 0x0B05, 0x0D85, 0x0627, 0x05D0, 0x0E01, 0x1000, - 0x1780, 0x0E81, 0x10D0, 0x0531, 0x1200}; + String[] langs = { "ru", "el", "zh", "ja", "ko", "hi", "bn", "ta", "te", "kn", "ml", "gu", "pa", "or", "si", "ar", "he", "th", "my", "km", "lo", "ka", "hy", "am" }; + int[] samples = + { + 0x0410, + 0x0391, + 0x4E00, + 0x3042, + 0xAC00, + 0x0905, + 0x0985, + 0x0B85, + 0x0C05, + 0x0C85, + 0x0D05, + 0x0A85, + 0x0A05, + 0x0B05, + 0x0D85, + 0x0627, + 0x05D0, + 0x0E01, + 0x1000, + 0x1780, + 0x0E81, + 0x10D0, + 0x0531, + 0x1200 + }; Set added = new HashSet<>(); // files contributing glyphs to the chain Set rejected = new HashSet<>(); // files STB can't use at all (e.g. CFF2) @@ -466,7 +484,7 @@ private void addLinuxSystemFonts(int bakeHeight, boolean pixelPerfect, double si return; } - for (String file : candidates) + for (String file: candidates) { if (added.contains(file) || rejected.contains(file) || !new File(file).isFile()) continue; @@ -482,7 +500,7 @@ private void addLinuxSystemFonts(int bakeHeight, boolean pixelPerfect, double si /** True if any already-loaded font has a glyph for {@code codepoint}. */ private boolean anyFontSupports(int codepoint) { - for (TtfFontInfo font : fonts) + for (TtfFontInfo font: fonts) if (font.supportsCodepoint(codepoint)) return true; return false; @@ -538,8 +556,8 @@ private boolean addFontFileCovering(String filePath, int requiredCodepoint, Set< if (initialized == 0) { rejected.add(filePath); - System.err.println("TruetypeFontRenderer: cannot use '" + filePath + "' — " - + (isOpenTypeCFF(buffer) ? "OpenType/CFF2 outlines unsupported by STB" : "no STB-loadable fonts")); + System.err.println("TruetypeFontRenderer: cannot use '" + filePath + "' — " + + (isOpenTypeCFF(buffer) ? "OpenType/CFF2 outlines unsupported by STB" : "no STB-loadable fonts")); } if (added > 0) System.out.println("TruetypeFontRenderer: loaded system font " + filePath); @@ -551,14 +569,17 @@ private boolean addFontFileCovering(String filePath, int requiredCodepoint, Set< private void addFontsFromStandardDirs(int bakeHeight, boolean pixelPerfect, double sizeScale, double yOffset) { Set scanned = new LinkedHashSet<>(); - for (String dir : new String[]{ + for (String dir: new String[] + { System.getProperty("user.home") + "/.local/share/fonts", System.getProperty("user.home") + "/.fonts", "/usr/share/fonts", - "/usr/local/share/fonts"}) + "/usr/local/share/fonts" + } + ) collectFontFiles(new File(dir), scanned, 0); - for (String f : scanned) + for (String f: scanned) addFontFile(f, bakeHeight, pixelPerfect, sizeScale, yOffset); if (scanned.isEmpty()) @@ -608,7 +629,7 @@ private static void collectFontFiles(File dir, Set out, int depth) if (entries == null) return; - for (File f : entries) + for (File f: entries) { if (f.isDirectory()) collectFontFiles(f, out, depth + 1); From 29e6dbea431691f6fb44761d6dc8e794ff61d5aa Mon Sep 17 00:00:00 2001 From: Parth Iyer Date: Fri, 29 May 2026 20:09:18 -0700 Subject: [PATCH 12/12] Fix font shaping to allow Hindi half letters with harffbuzz --- .gitignore | 1 + .../lwjglwindow/TruetypeFontRenderer.java | 421 ++++++++++++++---- src/main/resources/translations/hi.lang | 122 ++--- 3 files changed, 401 insertions(+), 143 deletions(-) diff --git a/.gitignore b/.gitignore index fd72c5ba..7a9c5627 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,4 @@ steam_app_id.txt libs.tar.gz chars .claude +.antigravitycli \ No newline at end of file diff --git a/src/main/java/lwjglwindow/TruetypeFontRenderer.java b/src/main/java/lwjglwindow/TruetypeFontRenderer.java index af0e1194..08b4f531 100644 --- a/src/main/java/lwjglwindow/TruetypeFontRenderer.java +++ b/src/main/java/lwjglwindow/TruetypeFontRenderer.java @@ -28,6 +28,8 @@ public static class TtfFontInfo public final boolean pixelPerfect; public final double sizeScale; public final double yOffset; + public final java.awt.Font awtFont; + public final double awtToStbScaleRatio; private final Map glyphTextures = new HashMap<>(); private final Map glyphMetrics = new HashMap<>(); @@ -64,6 +66,57 @@ public TtfFontInfo(ByteBuffer buffer, int fontOffset, int bakeHeight, boolean pi stbtt_GetFontVMetrics(stbInfo, a, d, lg); this.ascent = a.get(0); } + + java.awt.Font rawFont = null; + try + { + byte[] bytes = new byte[buffer.remaining()]; + int originalPos = buffer.position(); + buffer.get(bytes); + buffer.position(originalPos); + + rawFont = java.awt.Font.createFont(java.awt.Font.TRUETYPE_FONT, new java.io.ByteArrayInputStream(bytes)); + } + catch (Exception e) + { + System.err.println("TruetypeFontRenderer: failed to load AWT Font: " + e.getMessage()); + } + this.awtFont = (rawFont != null) ? rawFont.deriveFont((float) bakeHeight) : null; + + double ratio = 1.0; + if (this.awtFont != null) + { + char calChar = 'a'; + if (!supportsCodepoint(calChar)) + { + for (int c = 32; c < 65536; c++) + { + if (supportsCodepoint(c)) + { + calChar = (char) c; + break; + } + } + } + + try + { + java.awt.font.FontRenderContext frc = new java.awt.font.FontRenderContext(null, true, true); + java.awt.font.GlyphVector gv = this.awtFont.layoutGlyphVector(frc, new char[]{calChar}, 0, 1, java.awt.Font.LAYOUT_LEFT_TO_RIGHT); + double awtAdvance = gv.getGlyphPosition(1).getX(); + int[] stbMetrics = getGlyphMetrics(stbtt_FindGlyphIndex(stbInfo, calChar)); + double stbAdvance = stbMetrics[0] * this.fontScale; + if (awtAdvance > 0 && stbAdvance > 0) + { + ratio = stbAdvance / awtAdvance; + } + } + catch (Exception e) + { + // Keep ratio = 1.0 + } + } + this.awtToStbScaleRatio = ratio; } public boolean supportsCodepoint(int codepoint) @@ -73,31 +126,41 @@ public boolean supportsCodepoint(int codepoint) public int[] getMetrics(int codepoint) { - if (glyphMetrics.containsKey(codepoint)) - return glyphMetrics.get(codepoint); + return getGlyphMetrics(stbtt_FindGlyphIndex(stbInfo, codepoint)); + } + + public int[] getGlyphMetrics(int glyphId) + { + if (glyphMetrics.containsKey(glyphId)) + return glyphMetrics.get(glyphId); try (MemoryStack stack = MemoryStack.stackPush()) { IntBuffer adv = stack.mallocInt(1); IntBuffer lsb = stack.mallocInt(1); - stbtt_GetCodepointHMetrics(stbInfo, codepoint, adv, lsb); + stbtt_GetGlyphHMetrics(stbInfo, glyphId, adv, lsb); IntBuffer x0 = stack.mallocInt(1); IntBuffer y0 = stack.mallocInt(1); IntBuffer x1 = stack.mallocInt(1); IntBuffer y1 = stack.mallocInt(1); - stbtt_GetCodepointBitmapBox(stbInfo, codepoint, fontScale, fontScale, x0, y0, x1, y1); + stbtt_GetGlyphBitmapBox(stbInfo, glyphId, fontScale, fontScale, x0, y0, x1, y1); int[] m = new int[]{adv.get(0), x1.get(0) - x0.get(0), y1.get(0) - y0.get(0), x0.get(0), y0.get(0)}; - glyphMetrics.put(codepoint, m); + glyphMetrics.put(glyphId, m); return m; } } public int getOrCreateTexture(int codepoint) { - if (glyphTextures.containsKey(codepoint)) - return glyphTextures.get(codepoint); + return getOrCreateGlyphTexture(stbtt_FindGlyphIndex(stbInfo, codepoint)); + } + + public int getOrCreateGlyphTexture(int glyphId) + { + if (glyphTextures.containsKey(glyphId)) + return glyphTextures.get(glyphId); try (MemoryStack stack = MemoryStack.stackPush()) { @@ -106,11 +169,11 @@ public int getOrCreateTexture(int codepoint) IntBuffer xoff = stack.mallocInt(1); IntBuffer yoff = stack.mallocInt(1); - ByteBuffer bitmap = stbtt_GetCodepointBitmap(stbInfo, fontScale, fontScale, codepoint, w, h, xoff, yoff); + ByteBuffer bitmap = stbtt_GetGlyphBitmap(stbInfo, fontScale, fontScale, glyphId, w, h, xoff, yoff); if (bitmap == null || w.get(0) == 0 || h.get(0) == 0) { - glyphTextures.put(codepoint, 0); + glyphTextures.put(glyphId, 0); return 0; } @@ -145,9 +208,9 @@ public int getOrCreateTexture(int codepoint) stbtt_FreeBitmap(bitmap); - int[] m = new int[]{getMetrics(codepoint)[0], w.get(0), h.get(0), xoff.get(0), yoff.get(0)}; - glyphMetrics.put(codepoint, m); - glyphTextures.put(codepoint, texId); + int[] m = new int[]{getGlyphMetrics(glyphId)[0], w.get(0), h.get(0), xoff.get(0), yoff.get(0)}; + glyphMetrics.put(glyphId, m); + glyphTextures.put(glyphId, texId); return texId; } } @@ -475,8 +538,24 @@ private void addLinuxSystemFonts(int bakeHeight, boolean pixelPerfect, double si { // fontconfig's best match first (highest quality), then every font claiming to cover // the script. - candidates = new ArrayList<>(runFontconfig("fc-match", "-f", "%{file}\n", ":lang=" + langs[s])); - candidates.addAll(runFontconfig("fc-list", ":lang=" + langs[s], "--format", "%{file}\n")); + List rawCandidates = new ArrayList<>(runFontconfig("fc-match", "-f", "%{file}\n", ":lang=" + langs[s])); + rawCandidates.addAll(runFontconfig("fc-list", ":lang=" + langs[s], "--format", "%{file}\n")); + + // Prioritize static fonts over variable fonts because Java 8's AWT shaping + // does not work with modern OpenType variable fonts (.vf / [wght]). + List staticFonts = new ArrayList<>(); + List variableFonts = new ArrayList<>(); + for (String c : rawCandidates) + { + String lower = c.toLowerCase(); + if (lower.contains("[wght") || lower.contains("-vf") || lower.contains("google-noto-vf") || lower.contains("variable")) + variableFonts.add(c); + else + staticFonts.add(c); + } + candidates = new ArrayList<>(); + candidates.addAll(staticFonts); + candidates.addAll(variableFonts); } catch (IOException notInstalled) { @@ -737,49 +816,31 @@ public void drawString(double x, double y, double z, double sX, double sY, Strin double opacity = this.window.colorA; double curX = x; - char[] c = s.toCharArray(); double r0 = this.window.colorR; double g0 = this.window.colorG; double b0 = this.window.colorB; double a0 = this.window.colorA; - for (int i = 0; i < c.length; i++) + List runs = parseRuns(s); + for (ShapedRun run : runs) { - if (c[i] == 'Â') - continue; - else if (c[i] == '§') + if (run.isReset) { - if (s.length() <= i + 1) - continue; - - if (c[i + 1] == 'r') - { - i++; - this.window.setColor(r0 * 255, g0 * 255, b0 * 255, a0 * 255); - continue; - } - - if (s.length() <= i + 12) - continue; - - try - { - int r = Integer.parseInt(c[i + 1] + "" + c[i + 2] + "" + c[i + 3]); - int g = Integer.parseInt(c[i + 4] + "" + c[i + 5] + "" + c[i + 6]); - int b = Integer.parseInt(c[i + 7] + "" + c[i + 8] + "" + c[i + 9]); - int a = Integer.parseInt(c[i + 10] + "" + c[i + 11] + "" + c[i + 12]); - this.window.setColor(r, g, b, a * opacity); - } - catch (Exception e) + this.window.setColor(r0 * 255, g0 * 255, b0 * 255, a0 * 255); + } + else if (run.color != null) + { + this.window.setColor(run.color[0], run.color[1], run.color[2], run.color[3] * opacity); + } + else if (!run.text.isEmpty()) + { + List fontRuns = partitionByFont(run.text); + for (FontRun fontRun : fontRuns) { - continue; + curX += drawShapedString(curX, y, z, sX, sY, fontRun.text, fontRun.font, depth); } - - i += 12; } - else - curX += drawChar(curX, y, z, sX, sY, c[i], depth); } glDisable(GL_DEPTH_TEST); @@ -790,31 +851,143 @@ public void drawString(double x, double y, double sX, double sY, String s) { double opacity = this.window.colorA; double curX = x; - char[] c = s.toCharArray(); double r0 = this.window.colorR; double g0 = this.window.colorG; double b0 = this.window.colorB; double a0 = this.window.colorA; + List runs = parseRuns(s); + for (ShapedRun run : runs) + { + if (run.isReset) + { + this.window.setColor(r0 * 255, g0 * 255, b0 * 255, a0 * 255); + } + else if (run.color != null) + { + this.window.setColor(run.color[0], run.color[1], run.color[2], run.color[3] * opacity); + } + else if (!run.text.isEmpty()) + { + List fontRuns = partitionByFont(run.text); + for (FontRun fontRun : fontRuns) + { + curX += drawShapedString(curX, y, 0, sX, sY, fontRun.text, fontRun.font, false); + } + } + } + } + + @Override + public double getStringSizeX(double sX, String s) + { + double w = 0; + List runs = parseRuns(s); + for (ShapedRun run : runs) + { + if (!run.text.isEmpty()) + { + List fontRuns = partitionByFont(run.text); + for (FontRun fontRun : fontRuns) + { + w += getShapedStringSizeX(sX, fontRun.text, fontRun.font); + } + } + } + return w; + } + + private double getShapedStringSizeX(double sX, String text, TtfFontInfo font) + { + if (text.isEmpty()) + return 0; + + if (font.awtFont == null) + { + double w = 0; + for (int i = 0; i < text.length(); i++) + { + int[] m = font.getGlyphMetrics(stbtt_FindGlyphIndex(font.stbInfo, text.charAt(i))); + w += m[0] * font.fontScale * sX * 32.0 * font.sizeScale / font.bakeHeight; + } + return w; + } + + java.awt.font.FontRenderContext frc = new java.awt.font.FontRenderContext(null, true, true); + java.awt.font.GlyphVector gv = font.awtFont.layoutGlyphVector(frc, text.toCharArray(), 0, text.length(), java.awt.Font.LAYOUT_LEFT_TO_RIGHT); + double scaleX = sX * 32.0 * font.sizeScale / font.bakeHeight; + return gv.getGlyphPosition(gv.getNumGlyphs()).getX() * font.awtToStbScaleRatio * scaleX; + } + + @Override + public double getStringSizeY(double sY, String s) + { + return sY * 32; + } + + private static class ShapedRun + { + public final String text; + public final double[] color; // Null if no change, size 4 array if specified + public final boolean isReset; + + public ShapedRun(String text, double[] color, boolean isReset) + { + this.text = text; + this.color = color; + this.isReset = isReset; + } + } + + private static class FontRun + { + public final String text; + public final TtfFontInfo font; + + public FontRun(String text, TtfFontInfo font) + { + this.text = text; + this.font = font; + } + } + + private List parseRuns(String s) + { + List runs = new ArrayList<>(); + StringBuilder currentText = new StringBuilder(); + char[] c = s.toCharArray(); for (int i = 0; i < c.length; i++) { if (c[i] == 'Â') + { continue; + } else if (c[i] == '§') { if (s.length() <= i + 1) + { + currentText.append(c[i]); continue; + } if (c[i + 1] == 'r') { + if (currentText.length() > 0) + { + runs.add(new ShapedRun(currentText.toString(), null, false)); + currentText.setLength(0); + } + runs.add(new ShapedRun("", null, true)); i++; - this.window.setColor(r0 * 255, g0 * 255, b0 * 255, a0 * 255); continue; } if (s.length() <= i + 12) + { + currentText.append(c[i]); continue; + } try { @@ -822,60 +995,144 @@ else if (c[i] == '§') int g = Integer.parseInt(c[i + 4] + "" + c[i + 5] + "" + c[i + 6]); int b = Integer.parseInt(c[i + 7] + "" + c[i + 8] + "" + c[i + 9]); int a = Integer.parseInt(c[i + 10] + "" + c[i + 11] + "" + c[i + 12]); - this.window.setColor(r, g, b, a * opacity); + + if (currentText.length() > 0) + { + runs.add(new ShapedRun(currentText.toString(), null, false)); + currentText.setLength(0); + } + runs.add(new ShapedRun("", new double[]{r, g, b, a}, false)); + i += 12; } catch (Exception e) { - continue; + currentText.append(c[i]); } - - i += 12; } else - curX += drawChar(curX, y, 0, sX, sY, c[i], false); + { + currentText.append(c[i]); + } + } + if (currentText.length() > 0) + { + runs.add(new ShapedRun(currentText.toString(), null, false)); } + return runs; } - @Override - public double getStringSizeX(double sX, String s) + private List partitionByFont(String text) { - double w = 0; - char[] c = s.toCharArray(); + List runs = new ArrayList<>(); + if (text.isEmpty()) + return runs; - for (int i = 0; i < c.length; i++) + StringBuilder currentText = new StringBuilder(); + TtfFontInfo currentFont = findFontForChar(text.charAt(0)); + currentText.append(text.charAt(0)); + + for (int i = 1; i < text.length(); i++) { - if (c[i] == 'Â') - continue; - else if (c[i] == '§') + char c = text.charAt(i); + TtfFontInfo font = findFontForChar(c); + if (font == currentFont) { - if (s.length() <= i + 1) - continue; - - if (c[i + 1] == 'r') - { - i++; - continue; - } - - if (s.length() <= i + 12) - continue; - - i += 12; + currentText.append(c); } else { - TtfFontInfo font = findFontForChar(c[i]); - int[] m = font.getMetrics(c[i]); - w += m[0] * font.fontScale * sX * 32.0 * font.sizeScale / font.bakeHeight; + runs.add(new FontRun(currentText.toString(), currentFont)); + currentText.setLength(0); + currentFont = font; + currentText.append(c); } } - - return w; + if (currentText.length() > 0) + { + runs.add(new FontRun(currentText.toString(), currentFont)); + } + return runs; } - @Override - public double getStringSizeY(double sY, String s) + private double drawShapedString(double x, double y, double z, double sX, double sY, String text, TtfFontInfo font, boolean depthtest) { - return sY * 32; + if (text.isEmpty()) + return 0; + + if (font.awtFont == null) + { + double curX = x; + for (int i = 0; i < text.length(); i++) + { + curX += drawChar(curX, y, z, sX, sY, text.charAt(i), depthtest); + } + return curX - x; + } + + java.awt.font.FontRenderContext frc = new java.awt.font.FontRenderContext(null, true, true); + java.awt.font.GlyphVector gv = font.awtFont.layoutGlyphVector(frc, text.toCharArray(), 0, text.length(), java.awt.Font.LAYOUT_LEFT_TO_RIGHT); + + int numGlyphs = gv.getNumGlyphs(); + double scaleX = sX * 32.0 * font.sizeScale / font.bakeHeight; + double scaleY = sY * 32.0 * font.sizeScale / font.bakeHeight; + double baselineY = (y - sY * 16) + font.ascent * font.fontScale * scaleY + sY * 32 * font.yOffset; + + if (lwjglWindow.drawingShadow) + { + return gv.getGlyphPosition(numGlyphs).getX() * font.awtToStbScaleRatio * scaleX; + } + + for (int i = 0; i < numGlyphs; i++) + { + int glyphId = gv.getGlyphCode(i); + if (glyphId < 0) + continue; + + java.awt.geom.Point2D pos = gv.getGlyphPosition(i); + + int texId = font.getOrCreateGlyphTexture(glyphId); + int[] m = font.getGlyphMetrics(glyphId); + int bitmapW = m[1]; + int bitmapH = m[2]; + int xoff = m[3]; + int yoff = m[4]; + + double gx = x + (pos.getX() * font.awtToStbScaleRatio + xoff) * scaleX; + double gy = baselineY + (pos.getY() * font.awtToStbScaleRatio + yoff) * scaleY; + double gw = bitmapW * scaleX; + double gh = bitmapH * scaleY; + + if (texId != 0) + { + if (depthtest) + glEnable(GL_DEPTH_TEST); + + lwjglWindow.enableTexture(); + glEnable(GL_BLEND); + lwjglWindow.setTransparentBlendFunc(); + glDepthMask(false); + + glBindTexture(GL_TEXTURE_2D, texId); + + glBegin(GL_TRIANGLE_FAN); + glTexCoord2d(0, 0); + glVertex3d(gx, gy, z); + glTexCoord2d(0, 1); + glVertex3d(gx, gy + gh, z); + glTexCoord2d(1, 1); + glVertex3d(gx + gw, gy + gh, z); + glTexCoord2d(1, 0); + glVertex3d(gx + gw, gy, z); + glEnd(); + + glDepthMask(true); + lwjglWindow.disableTexture(); + + if (depthtest) + glDisable(GL_DEPTH_TEST); + } + } + + return gv.getGlyphPosition(numGlyphs).getX() * font.awtToStbScaleRatio * scaleX; } } diff --git a/src/main/resources/translations/hi.lang b/src/main/resources/translations/hi.lang index 24545b01..6fad50f1 100644 --- a/src/main/resources/translations/hi.lang +++ b/src/main/resources/translations/hi.lang @@ -3,36 +3,36 @@ Languages=भाषाएँ Tanks=टैंक्स The Crusades=क्रूसेड्स Play!=खेलें! -Options=विकल्प -About=के बारे में -Exit the game=खेल से बाहर निकलें -FPS=FPS +Options=सेटिंग्स +About=गेम के बारे में +Exit the game=गेम बंद करें +FPS=एफ पी एस Memory used=उपयोग की गई मेमोरी -Singleplayer=एकल खिलाड़ी +Singleplayer=सिंगल प्लेयर Multiplayer=मल्टीप्लेयर Select a game mode=खेल मोड चुनें Version=संस्करण Back=वापस Select a singleplayer game mode=एकल खिलाड़ी मोड चुनें -Random level=यादृच्छिक स्तर +Random level=रैंडम लेवल Crusades=क्रूसेड्स -My levels=मेरे स्तर +My levels=मेरे लेवल्स Tutorial=ट्यूटोरियल -Level time:=स्तर का समय: +Level time:=लेवल का समय: Deterministic mode=नियतात्मक मोड Continue playing=खेलना जारी रखें -Generate a new level=नया स्तर बनाएँ -Restart this level=इस स्तर को पुनः आरंभ करें -Quit to title=शीर्षक पर वापस जाएँ +Generate a new level=नया लेवल तैयार करें +Restart this level=यह लेवल दोबारा शुरू करें +Quit to title=होम स्क्रीन पर जाएँ Play=खेलें Edit=संपादित करें -Delete Level=स्तर हटाएँ -Level name=स्तर का नाम -Level size=स्तर का आकार +Delete Level=लेवल हटाएँ +Level name=लेवल का नाम +Level size=लेवल का आकार Background colors=पृष्ठभूमि के रंग Lighting=प्रकाश Teams=टीमें -Items=वस्तुएँ +Items=आइटम्स Time limit=समय सीमा Minutes=मिनट Seconds=सेकंड @@ -42,19 +42,19 @@ Shadow light=छाया प्रकाश Red=लाल Green=हरा Blue=नीला -Red randomness=लाल अनियमितता -Green randomness=हरी अनियमितता -Blue randomness=नीली अनियमितता +Red randomness=लाल रैंडमनेस +Green randomness=हरी रैंडमनेस +Blue randomness=नीली रैंडमनेस Width=चौड़ाई Height=ऊँचाई New team=नई टीम -ally=मित्र -enemy=शत्रु -Starting coins=प्रारंभिक सिक्के +ally=साथी +enemy=दुश्मन +Starting coins=शुरुआती सिक्के Shop=दुकान -Starting items=प्रारंभिक वस्तुएँ +Starting items=शुरुआती आइटम्स Rearrange items=वस्तुएँ पुनः व्यवस्थित करें -Add item=वस्तु जोड़ें +Add item=आइटम जोड़ें Bullet=गोली Mine=माइन Shield=ढाल @@ -76,7 +76,7 @@ Explosive bullet=विस्फोटक गोली Mini bullet=छोटी गोली Dark fire bullet=काली आग की गोली %d coins=%d सिक्के -Delete item=वस्तु हटाएँ +Delete item=आइटम हटाएँ Save to template=टेम्पलेट में सहेजें Name=नाम Icon=आइकन @@ -91,14 +91,14 @@ Size=आकार Cooldown=कूलडाउन Max live mines=अधिकतम सक्रिय माइनें Damage=क्षति -Previous page=पिछला पृष्ठ -Next page=अगला पृष्ठ +Previous page=पिछला पेज +Next page=अगला पेज Destroys blocks=ब्लॉक नष्ट करता है Yes=हाँ No=नहीं Ok=ठीक है -Page %d of %d=पृष्ठ %d में से %d -Recoil=पुनराघात +Page %d of %d=पेज %d में से %d +Recoil=रिकॉइल Heavy=भारी Type=प्रकार Effect=प्रभाव @@ -107,10 +107,10 @@ Max live bullets=अधिकतम सक्रिय गोलियाँ Bounces=उछाल Health boost=स्वास्थ्य वृद्धि Max extra health=अधिकतम अतिरिक्त स्वास्थ्य -Level options=स्तर विकल्प -Generate a random level to play=खेलने के लिए यादृच्छिक स्तर बनाएँ +Level options=लेवल ऑप्शंस +Generate a random level to play=खेलने के लिए एक रैंडम लेवल तैयार करें Fight battles in an order, and see how long you can survive!=क्रम से लड़ाइयाँ लड़ें, और देखें कि आप कब तक जीवित रह सकते हैं! -Create and play your own levels!=अपने स्तर बनाएँ और खेलें! +Create and play your own levels!=अपने खुद के लेवल्स बनाएँ और खेलें! Learn how to play Tanks!=टैंक्स खेलना सीखें! You can control the blue tank using the keyboard.=आप कीबोर्ड का उपयोग करके नीले टैंक को नियंत्रित कर सकते हैं। Move up: %d=ऊपर जाएँ: %d @@ -139,13 +139,13 @@ Stand back!=पीछे हटें! Your mines can destroy you!=आपकी माइनें आपको नष्ट कर सकती हैं! You were destroyed!=आप नष्ट हो गए! Try again=फिर से प्रयास करें -Back to title=शीर्षक पर वापस +Back to title=होम स्क्रीन पर जाएँ Watch out! This brown tank will shoot at you!=सावधान! यह भूरा टैंक आप पर गोली चलाएगा! Shoot it before it destroys you!=इससे पहले कि वह आपको नष्ट करे, उस पर फायर करें! Avoid all bullets and mines, including your own, as they can destroy you.=सभी गोलियों और माइनों से बचें, अपनी सहित, क्योंकि वे आपको नष्ट कर सकती हैं। If your tank is destroyed, you will have to start the level over!=यदि आपका टैंक नष्ट हो गया, तो आपको स्तर फिर से शुरू करना होगा! You can see your health, available bullets and mines, and remaining tanks by pressing Shift!=शिफ्ट दबाकर आप अपना स्वास्थ्य, उपलब्ध गोलियाँ और माइनें, और शेष टैंक देख सकते हैं! -Victory!=विजय! +Victory!=जीत! Info bar:=सूचना पट्टी: Shows the following information at the bottom of the screen=स्क्रीन के निचले हिस्से में निम्नलिखित जानकारी दिखाता है Game version=खेल संस्करण @@ -205,12 +205,12 @@ Lay mine=माइन रखें Trace aim=निशाना ट्रेस करें Hotbar=हॉटबार Toggle hotbar visibility=हॉटबार दृश्यता चालू/बंद करें -Item slot %d=वस्तु स्लॉट %d -Deselect item slot=वस्तु स्लॉट चयन रद्द करें +Item slot %d=आइटम स्लॉट %d +Deselect item slot=आइटम स्लॉट चयन रद्द करें editor=संपादक Editor controls=संपादक नियंत्रण Editor menu=संपादक मेनू -Object menu=वस्तु मेनू +Object menu=ऑब्जेक्ट मेनू Play level=स्तर खेलें Toggle on-screen buttons=ऑन-स्क्रीन बटन चालू/बंद करें Undo=पूर्ववत करें @@ -227,12 +227,12 @@ Adjust camera=कैमरा समायोजित करें Zoom in=ज़ूम इन करें Zoom out=ज़ूम आउट करें Re-center camera=कैमरा पुनः केंद्रित करें -Next object=अगली वस्तु -Previous object=पिछली वस्तु -Next object type=अगला वस्तु प्रकार -Previous object type=पिछला वस्तु प्रकार -Next object property=अगली वस्तु संपत्ति -Previous object property=पिछली वस्तु संपत्ति +Next object=अगला ऑब्जेक्ट +Previous object=पिछला ऑब्जेक्ट +Next object type=अगला ऑब्जेक्ट प्रकार +Previous object type=पिछला ऑब्जेक्ट प्रकार +Next object property=अगला ऑब्जेक्ट गुण +Previous object property=पिछला ऑब्जेक्ट गुण Select=चुनें Clear selection=चयन साफ़ करें Toggle square selection=वर्गाकार चयन चालू/बंद करें @@ -244,12 +244,12 @@ When enabled, your mouse pointer will be replaced by a target=सक्षम Graphics options=ग्राफ़िक्स विकल्प Terrain: =भूभाग: fast=तेज़ -fancy=उत्तम -Fancy terrain varies block and ground colors=उत्तम भूभाग ब्लॉक और ज़मीन के रंगों में विविधता लाता है +fancy=शानदार +Fancy terrain varies block and ground colors=शानदार भूभाग ब्लॉक और ज़मीन के रंगों में विविधता लाता है May impact performance on larger levels=बड़े स्तरों पर प्रदर्शन को प्रभावित कर सकता है Bullet trails: =गोली के निशान: Bullet trails show the paths of bullets=गोली के निशान गोलियों का मार्ग दिखाते हैं -Fancy bullet trails enable extra particle effects for certain bullet types=उत्तम गोली के निशान कुछ गोली प्रकारों के लिए अतिरिक्त कण प्रभाव सक्षम करते हैं +Fancy bullet trails enable extra particle effects for certain bullet types=शानदार गोली के निशान कुछ गोली प्रकारों के लिए अतिरिक्त पार्टिकल प्रभाव सक्षम करते हैं Glow effects: =चमक प्रभाव: Glow effects may significantly impact performance=चमक प्रभाव प्रदर्शन को महत्वपूर्ण रूप से प्रभावित कर सकते हैं Particle effects: =कण प्रभाव: @@ -297,7 +297,7 @@ Library licenses=लाइब्रेरी लाइसेंस What's new in %d:=%d में क्या नया है: New features:=नई सुविधाएँ: Levels:=स्तर: -Items:=वस्तुएँ: +Items:=आइटम्स: User interfaces:=उपयोगकर्ता इंटरफ़ेस: Graphics:=ग्राफ़िक्स: Audio:=ऑडियो: @@ -477,7 +477,7 @@ Press the arrow below!=नीचे का तीर दबाएँ! Finish of the battle by destroying that grey tank, but watch out - it can move!=उस ग्रे टैंक को नष्ट करके लड़ाई समाप्त करें, लेकिन सावधान - वह चल सकता है! Congratulations! You are now ready to play!=बधाई हो! अब आप खेलने के लिए तैयार हैं! Let's go!=चलिए शुरू करें! -Debug menu=डिबग मेनू +Debug menu=डीबग मेनू Test keyboard=कीबोर्ड परीक्षण Key test=कुंजी परीक्षण Press a key to show its code=उसका कोड दिखाने के लिए कोई कुंजी दबाएँ @@ -490,7 +490,7 @@ Trace rays:=किरणें ट्रेस करें: Immersive camera:=इमर्सिव कैमरा: First person:=प्रथम-पुरुष: Crusade name=क्रूसेड का नाम -Starting lives=प्रारंभिक जीवन +Starting lives=शुरुआती जीवन Bonus life frequency=बोनस जीवन आवृत्ति Level names:=स्तर के नाम: Crusade levels=क्रूसेड स्तर @@ -516,7 +516,7 @@ Attempts=प्रयास Clear time=पूर्ण समय Total time=कुल समय Total=कुल -Item=वस्तु +Item=आइटम Times used=उपयोग की बार Hits landed=लगे प्रहार Accuracy=शुद्धता @@ -528,7 +528,7 @@ Total deaths=कुल मौतें Time elapsed=बीता हुआ समय Coins spent=खर्च किए गए सिक्के Coins remaining=शेष सिक्के -Return to title=शीर्षक पर वापस +Return to title=होम स्क्रीन पर वापस जाएँ Minigames=मिनी-गेम्स Arcade Mode=आर्केड मोड Beat Arcade Mode=आर्केड मोड हराएँ @@ -638,17 +638,17 @@ Immersive camera: =इमर्सिव कैमरा: Improvements: =सुधार: Info bar: =सूचना पट्टी: Invite Steam friends=स्टीम मित्रों को आमंत्रित करें -Items: =वस्तुएँ: -Item slot 1=वस्तु स्लॉट 1 -Item slot 10=वस्तु स्लॉट 10 -Item slot 2=वस्तु स्लॉट 2 -Item slot 3=वस्तु स्लॉट 3 -Item slot 4=वस्तु स्लॉट 4 -Item slot 5=वस्तु स्लॉट 5 -Item slot 6=वस्तु स्लॉट 6 -Item slot 7=वस्तु स्लॉट 7 -Item slot 8=वस्तु स्लॉट 8 -Item slot 9=वस्तु स्लॉट 9 +Items: =आइटम्स: +Item slot 1=आइटम स्लॉट 1 +Item slot 10=आइटम स्लॉट 10 +Item slot 2=आइटम स्लॉट 2 +Item slot 3=आइटम स्लॉट 3 +Item slot 4=आइटम स्लॉट 4 +Item slot 5=आइटम स्लॉट 5 +Item slot 6=आइटम स्लॉट 6 +Item slot 7=आइटम स्लॉट 7 +Item slot 8=आइटम स्लॉट 8 +Item slot 9=आइटम स्लॉट 9 Join by IP=IP से जॉइन करें Join steam parties=स्टीम पार्टियाँ जॉइन करें Last modified---%s ago=अंतिम बार संशोधित---%s पहले