Files
rr3-apk/smali_classes2/com/firemint/realracing/GlyphVector.smali
Daniel Elliott f3960ee359 Add Discord APKTool decompilation (Smali source for modding)
- Imported from https://github.com/supermegamestre/Project-Real-Resurrection-3
- APKTool decompilation (Smali bytecode) for modding and rebuilding APK
- Supports both 32-bit (armeabi-v7a) and 64-bit (arm64-v8a) architectures
- Includes full Smali source, resources, and native libraries
- Ready to rebuild APK after modifications with apktool b command
- Added comprehensive README-apktool.md with modding guide

This branch complements the JADX branches:
- Use JADX (main/discord-community) to UNDERSTAND code (readable Java)
- Use APKTool (this branch) to MODIFY and REBUILD APK (editable Smali)

Total: 44,417 files, 538.51 MB Smali source code
2026-02-18 16:13:44 -08:00

1978 lines
47 KiB
Smali

.class Lcom/firemint/realracing/GlyphVector;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static final fmParagraphAlignCentered:I = 0x2
.field public static final fmParagraphAlignJustified:I = 0x3
.field public static final fmParagraphAlignLeft:I = 0x0
.field public static final fmParagraphAlignNatural:I = 0x4
.field public static final fmParagraphAlignRight:I = 0x1
.field public static final fmParagraphCharWrap:I = 0x1
.field public static final fmParagraphClip:I = 0x2
.field public static final fmParagraphTruncateHead:I = 0x3
.field public static final fmParagraphTruncateMiddle:I = 0x5
.field public static final fmParagraphTruncateTail:I = 0x4
.field public static final fmParagraphWordWrap:I = 0x0
.field public static final fmParagraphWordWrapTruncate:I = 0x6
# instance fields
.field public boundsH:F
.field public boundsW:F
.field private m_bounds:Landroid/graphics/Rect;
.field private m_ellipsisLayout:Landroid/text/StaticLayout;
.field private m_ellipsisOffset:I
.field private m_layout:Landroid/text/Layout;
.field private m_paint:Landroid/text/TextPaint;
.field private m_text:Ljava/lang/String;
.field public numLines:I
.field public offsetX:F
.field public offsetY:F
.field public pixelBoundsH:F
.field public pixelBoundsW:F
.field public pixelTopOffset:F
.field public texHeight:I
.field public texId:I
.field public texWidth:I
# direct methods
.method public constructor <init>()V
.locals 2
.line 305
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->offsetX:F
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->offsetY:F
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->boundsW:F
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->boundsH:F
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->pixelBoundsW:F
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->pixelBoundsH:F
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->pixelTopOffset:F
const/4 v0, 0x0
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->numLines:I
const/4 v1, -0x1
iput v1, p0, Lcom/firemint/realracing/GlyphVector;->texId:I
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->texWidth:I
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->texHeight:I
const/4 v1, 0x0
iput-object v1, p0, Lcom/firemint/realracing/GlyphVector;->m_text:Ljava/lang/String;
iput-object v1, p0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
iput-object v1, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
iput-object v1, p0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisOffset:I
iput-object v1, p0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisLayout:Landroid/text/StaticLayout;
return-void
.end method
.method private sanitize(Ljava/lang/String;)Ljava/lang/String;
.locals 0
return-object p1
.end method
# virtual methods
.method public createTexture()Z
.locals 8
iget-object v0, p0, Lcom/firemint/realracing/GlyphVector;->m_text:Ljava/lang/String;
const/4 v1, 0x0
if-eqz v0, :cond_6
iget-object v0, p0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
if-eqz v0, :cond_6
iget-object v0, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
if-nez v0, :cond_0
goto/16 :goto_3
:cond_0
const/4 v0, 0x1
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->texWidth:I
:goto_0
iget v2, p0, Lcom/firemint/realracing/GlyphVector;->texWidth:I
iget-object v3, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 678
invoke-virtual {v3}, Landroid/graphics/Rect;->width()I
move-result v3
if-ge v2, v3, :cond_1
iget v2, p0, Lcom/firemint/realracing/GlyphVector;->texWidth:I
mul-int/lit8 v2, v2, 0x2
iput v2, p0, Lcom/firemint/realracing/GlyphVector;->texWidth:I
goto :goto_0
:cond_1
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->texHeight:I
:goto_1
iget v2, p0, Lcom/firemint/realracing/GlyphVector;->texHeight:I
iget-object v3, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 682
invoke-virtual {v3}, Landroid/graphics/Rect;->height()I
move-result v3
if-ge v2, v3, :cond_2
iget v2, p0, Lcom/firemint/realracing/GlyphVector;->texHeight:I
mul-int/lit8 v2, v2, 0x2
iput v2, p0, Lcom/firemint/realracing/GlyphVector;->texHeight:I
goto :goto_1
:cond_2
iget v2, p0, Lcom/firemint/realracing/GlyphVector;->texWidth:I
iget v3, p0, Lcom/firemint/realracing/GlyphVector;->texHeight:I
.line 685
sget-object v4, Landroid/graphics/Bitmap$Config;->ARGB_4444:Landroid/graphics/Bitmap$Config;
invoke-static {v2, v3, v4}, Landroid/graphics/Bitmap;->createBitmap(IILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap;
move-result-object v2
.line 686
new-instance v3, Landroid/graphics/Canvas;
invoke-direct {v3, v2}, Landroid/graphics/Canvas;-><init>(Landroid/graphics/Bitmap;)V
.line 687
invoke-static {v1, v1, v1, v1}, Landroid/graphics/Color;->argb(IIII)I
move-result v4
invoke-virtual {v2, v4}, Landroid/graphics/Bitmap;->eraseColor(I)V
iget-object v4, p0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
if-nez v4, :cond_3
iget-object v4, p0, Lcom/firemint/realracing/GlyphVector;->m_text:Ljava/lang/String;
iget-object v5, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 692
iget v6, v5, Landroid/graphics/Rect;->left:I
neg-int v6, v6
int-to-float v6, v6
iget v5, v5, Landroid/graphics/Rect;->top:I
neg-int v5, v5
int-to-float v5, v5
iget-object v7, p0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
invoke-virtual {v3, v4, v6, v5, v7}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V
goto :goto_2
:cond_3
iget-object v4, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 696
iget v4, v4, Landroid/graphics/Rect;->left:I
neg-int v4, v4
int-to-float v4, v4
iget v5, p0, Lcom/firemint/realracing/GlyphVector;->pixelTopOffset:F
neg-float v5, v5
invoke-virtual {v3, v4, v5}, Landroid/graphics/Canvas;->translate(FF)V
iget-object v4, p0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 697
invoke-virtual {v4, v3}, Landroid/text/Layout;->draw(Landroid/graphics/Canvas;)V
iget-object v4, p0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisLayout:Landroid/text/StaticLayout;
if-eqz v4, :cond_4
iget v4, p0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisOffset:I
int-to-float v4, v4
const/4 v5, 0x0
.line 701
invoke-virtual {v3, v5, v4}, Landroid/graphics/Canvas;->translate(FF)V
iget-object v4, p0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisLayout:Landroid/text/StaticLayout;
.line 702
invoke-virtual {v4, v3}, Landroid/text/Layout;->draw(Landroid/graphics/Canvas;)V
:cond_4
:goto_2
new-array v3, v0, [I
.line 708
sget-object v4, Lcom/firemint/realracing/MainActivity;->instance:Lcom/firemint/realracing/MainActivity;
invoke-virtual {v4}, Lcom/firemint/realracing/MainActivity;->getGLView()Lcom/firemint/realracing/GLView;
move-result-object v4
invoke-virtual {v4}, Lcom/firemint/realracing/GLView;->getGLContext()Ljavax/microedition/khronos/egl/EGLContext;
move-result-object v4
invoke-virtual {v4}, Ljavax/microedition/khronos/egl/EGLContext;->getGL()Ljavax/microedition/khronos/opengles/GL;
move-result-object v4
check-cast v4, Ljavax/microedition/khronos/opengles/GL10;
.line 709
invoke-interface {v4, v0, v3, v1}, Ljavax/microedition/khronos/opengles/GL10;->glGenTextures(I[II)V
aget v3, v3, v1
iput v3, p0, Lcom/firemint/realracing/GlyphVector;->texId:I
if-gez v3, :cond_5
.line 714
invoke-virtual {v2}, Landroid/graphics/Bitmap;->recycle()V
return v1
:cond_5
const/16 v5, 0xde1
.line 718
invoke-interface {v4, v5, v3}, Ljavax/microedition/khronos/opengles/GL10;->glBindTexture(II)V
const/16 v3, 0x2801
const v6, 0x46180400 # 9729.0f
.line 719
invoke-interface {v4, v5, v3, v6}, Ljavax/microedition/khronos/opengles/GL10;->glTexParameterf(IIF)V
const/16 v3, 0x2800
.line 720
invoke-interface {v4, v5, v3, v6}, Ljavax/microedition/khronos/opengles/GL10;->glTexParameterf(IIF)V
const/16 v3, 0x2802
const v6, 0x47012f00 # 33071.0f
.line 721
invoke-interface {v4, v5, v3, v6}, Ljavax/microedition/khronos/opengles/GL10;->glTexParameterf(IIF)V
const/16 v3, 0x2803
.line 722
invoke-interface {v4, v5, v3, v6}, Ljavax/microedition/khronos/opengles/GL10;->glTexParameterf(IIF)V
const/16 v3, 0xcf5
.line 724
invoke-interface {v4, v3, v0}, Ljavax/microedition/khronos/opengles/GL10;->glPixelStorei(II)V
.line 725
invoke-static {v5, v1, v2, v1}, Landroid/opengl/GLUtils;->texImage2D(IILandroid/graphics/Bitmap;I)V
.line 727
invoke-virtual {v2}, Landroid/graphics/Bitmap;->recycle()V
return v0
:cond_6
:goto_3
return v1
.end method
.method public findLayoutBounds(Landroid/text/Layout;)Landroid/graphics/Rect;
.locals 7
.line 633
invoke-virtual {p1}, Landroid/text/Layout;->getLineCount()I
move-result v0
.line 634
new-instance v1, Landroid/graphics/Rect;
invoke-direct {v1}, Landroid/graphics/Rect;-><init>()V
const/4 v2, 0x0
:goto_0
if-ge v2, v0, :cond_9
.line 638
new-instance v3, Landroid/graphics/Rect;
invoke-direct {v3}, Landroid/graphics/Rect;-><init>()V
.line 640
invoke-virtual {p1, v2}, Landroid/text/Layout;->getEllipsisCount(I)I
move-result v4
if-lez v4, :cond_0
.line 642
invoke-virtual {p1, v2}, Landroid/text/Layout;->getLineLeft(I)F
move-result v4
float-to-double v4, v4
invoke-static {v4, v5}, Ljava/lang/Math;->floor(D)D
move-result-wide v4
double-to-int v4, v4
iput v4, v3, Landroid/graphics/Rect;->left:I
.line 643
invoke-virtual {p1}, Landroid/text/Layout;->getEllipsizedWidth()I
move-result v5
add-int/2addr v4, v5
iput v4, v3, Landroid/graphics/Rect;->right:I
goto :goto_1
.line 647
:cond_0
invoke-virtual {p1, v2}, Landroid/text/Layout;->getLineLeft(I)F
move-result v4
float-to-double v4, v4
invoke-static {v4, v5}, Ljava/lang/Math;->floor(D)D
move-result-wide v4
double-to-int v4, v4
iput v4, v3, Landroid/graphics/Rect;->left:I
.line 648
invoke-virtual {p1, v2}, Landroid/text/Layout;->getLineRight(I)F
move-result v4
float-to-double v4, v4
invoke-static {v4, v5}, Ljava/lang/Math;->ceil(D)D
move-result-wide v4
double-to-int v4, v4
iput v4, v3, Landroid/graphics/Rect;->right:I
.line 651
:goto_1
invoke-virtual {p1, v2}, Landroid/text/Layout;->getLineTop(I)I
move-result v4
iput v4, v3, Landroid/graphics/Rect;->top:I
.line 652
invoke-virtual {p1, v2}, Landroid/text/Layout;->getLineBottom(I)I
move-result v4
iput v4, v3, Landroid/graphics/Rect;->bottom:I
if-eqz v2, :cond_1
iget v5, v3, Landroid/graphics/Rect;->left:I
iget v6, v1, Landroid/graphics/Rect;->left:I
if-ge v5, v6, :cond_2
:cond_1
iget v5, v3, Landroid/graphics/Rect;->left:I
iput v5, v1, Landroid/graphics/Rect;->left:I
:cond_2
if-eqz v2, :cond_3
iget v5, v3, Landroid/graphics/Rect;->top:I
iget v6, v1, Landroid/graphics/Rect;->top:I
if-ge v5, v6, :cond_4
:cond_3
iget v5, v3, Landroid/graphics/Rect;->top:I
iput v5, v1, Landroid/graphics/Rect;->top:I
:cond_4
if-eqz v2, :cond_5
iget v5, v3, Landroid/graphics/Rect;->right:I
iget v6, v1, Landroid/graphics/Rect;->right:I
if-le v5, v6, :cond_6
:cond_5
iget v3, v3, Landroid/graphics/Rect;->right:I
iput v3, v1, Landroid/graphics/Rect;->right:I
:cond_6
if-eqz v2, :cond_7
iget v3, v1, Landroid/graphics/Rect;->bottom:I
if-le v4, v3, :cond_8
:cond_7
iput v4, v1, Landroid/graphics/Rect;->bottom:I
:cond_8
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_9
return-object v1
.end method
.method public init(Lcom/firemint/realracing/Font;Ljava/lang/String;)V
.locals 4
.line 369
invoke-direct {p0, p2}, Lcom/firemint/realracing/GlyphVector;->sanitize(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
iput-object p2, p0, Lcom/firemint/realracing/GlyphVector;->m_text:Ljava/lang/String;
.line 372
new-instance v0, Landroid/text/TextPaint;
invoke-direct {v0}, Landroid/text/TextPaint;-><init>()V
iput-object v0, p0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
const/4 v1, -0x1
.line 373
invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setColor(I)V
iget-object v0, p0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
.line 374
invoke-virtual {p1}, Lcom/firemint/realracing/Font;->getTypeface()Landroid/graphics/Typeface;
move-result-object v1
invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setTypeface(Landroid/graphics/Typeface;)Landroid/graphics/Typeface;
iget-object v0, p0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
.line 375
invoke-virtual {p1}, Lcom/firemint/realracing/Font;->getSize()F
move-result v1
invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setTextSize(F)V
iget-object v0, p0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
.line 376
invoke-virtual {p1}, Lcom/firemint/realracing/Font;->getWidthScale()F
move-result p1
invoke-virtual {v0, p1}, Landroid/graphics/Paint;->setTextScaleX(F)V
iget-object p1, p0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
.line 377
sget-object v0, Landroid/graphics/Paint$Align;->LEFT:Landroid/graphics/Paint$Align;
invoke-virtual {p1, v0}, Landroid/graphics/Paint;->setTextAlign(Landroid/graphics/Paint$Align;)V
iget-object p1, p0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
const/4 v0, 0x1
.line 378
invoke-virtual {p1, v0}, Landroid/graphics/Paint;->setAntiAlias(Z)V
.line 380
new-instance p1, Landroid/graphics/Rect;
invoke-direct {p1}, Landroid/graphics/Rect;-><init>()V
iput-object p1, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
iget-object p1, p0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
.line 381
invoke-virtual {p2}, Ljava/lang/String;->length()I
move-result v1
iget-object v2, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
const/4 v3, 0x0
invoke-virtual {p1, p2, v3, v1, v2}, Landroid/graphics/Paint;->getTextBounds(Ljava/lang/String;IILandroid/graphics/Rect;)V
iget-object p1, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 383
iget p2, p1, Landroid/graphics/Rect;->top:I
sub-int/2addr p2, v0
iput p2, p1, Landroid/graphics/Rect;->top:I
.line 384
iget p2, p1, Landroid/graphics/Rect;->bottom:I
add-int/2addr p2, v0
iput p2, p1, Landroid/graphics/Rect;->bottom:I
.line 386
iget v1, p1, Landroid/graphics/Rect;->left:I
neg-int v1, v1
int-to-float v1, v1
iput v1, p0, Lcom/firemint/realracing/GlyphVector;->offsetX:F
neg-int p2, p2
int-to-float p2, p2
iput p2, p0, Lcom/firemint/realracing/GlyphVector;->offsetY:F
.line 388
invoke-virtual {p1}, Landroid/graphics/Rect;->width()I
move-result p1
int-to-float p1, p1
iput p1, p0, Lcom/firemint/realracing/GlyphVector;->boundsW:F
iget-object p1, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 390
invoke-virtual {p1}, Landroid/graphics/Rect;->height()I
move-result p1
int-to-float p1, p1
iput p1, p0, Lcom/firemint/realracing/GlyphVector;->boundsH:F
iget-object p1, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 391
invoke-virtual {p1}, Landroid/graphics/Rect;->width()I
move-result p1
int-to-float p1, p1
iput p1, p0, Lcom/firemint/realracing/GlyphVector;->pixelBoundsW:F
iget-object p1, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 392
invoke-virtual {p1}, Landroid/graphics/Rect;->height()I
move-result p1
int-to-float p1, p1
iput p1, p0, Lcom/firemint/realracing/GlyphVector;->pixelBoundsH:F
const/4 p1, 0x0
iput p1, p0, Lcom/firemint/realracing/GlyphVector;->pixelTopOffset:F
iput v0, p0, Lcom/firemint/realracing/GlyphVector;->numLines:I
return-void
.end method
.method public initWithParagraph(Lcom/firemint/realracing/Font;Ljava/lang/String;FFII)V
.locals 32
.annotation build Landroid/annotation/TargetApi;
value = 0x1d
.end annotation
move-object/from16 v0, p0
move-object/from16 v1, p2
move/from16 v2, p6
.line 401
invoke-direct {v0, v1}, Lcom/firemint/realracing/GlyphVector;->sanitize(Ljava/lang/String;)Ljava/lang/String;
move-result-object v13
iput-object v13, v0, Lcom/firemint/realracing/GlyphVector;->m_text:Ljava/lang/String;
.line 404
new-instance v1, Landroid/text/TextPaint;
invoke-direct {v1}, Landroid/text/TextPaint;-><init>()V
iput-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
const/4 v3, -0x1
.line 405
invoke-virtual {v1, v3}, Landroid/graphics/Paint;->setColor(I)V
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
.line 406
invoke-virtual/range {p1 .. p1}, Lcom/firemint/realracing/Font;->getTypeface()Landroid/graphics/Typeface;
move-result-object v3
invoke-virtual {v1, v3}, Landroid/graphics/Paint;->setTypeface(Landroid/graphics/Typeface;)Landroid/graphics/Typeface;
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
.line 407
invoke-virtual/range {p1 .. p1}, Lcom/firemint/realracing/Font;->getSize()F
move-result v3
invoke-virtual {v1, v3}, Landroid/graphics/Paint;->setTextSize(F)V
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
.line 408
invoke-virtual/range {p1 .. p1}, Lcom/firemint/realracing/Font;->getWidthScale()F
move-result v3
invoke-virtual {v1, v3}, Landroid/graphics/Paint;->setTextScaleX(F)V
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
const/4 v14, 0x1
.line 409
invoke-virtual {v1, v14}, Landroid/graphics/Paint;->setAntiAlias(Z)V
const/4 v15, 0x0
cmpg-float v1, p3, v15
if-gez v1, :cond_0
move v12, v15
goto :goto_0
:cond_0
move/from16 v12, p3
:goto_0
cmpg-float v1, p4, v15
if-gez v1, :cond_1
move v11, v15
goto :goto_1
:cond_1
move/from16 v11, p4
.line 418
:goto_1
sget-object v1, Landroid/text/Layout$Alignment;->ALIGN_NORMAL:Landroid/text/Layout$Alignment;
const/4 v3, 0x4
const/4 v10, 0x2
if-eqz v2, :cond_2
if-eq v2, v14, :cond_4
if-eq v2, v10, :cond_3
:cond_2
:goto_2
move-object/from16 v28, v1
goto :goto_3
.line 423
:cond_3
sget-object v1, Landroid/text/Layout$Alignment;->ALIGN_CENTER:Landroid/text/Layout$Alignment;
goto :goto_2
.line 424
:cond_4
sget-object v1, Landroid/text/Layout$Alignment;->ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
goto :goto_2
:goto_3
const/4 v9, 0x0
move/from16 v1, p5
if-ne v1, v14, :cond_5
const-string v1, "RealRacing3"
const-string v2, "Using unsupported text break style: fmParagraphCharWrap! Falling back to WordWrap."
.line 429
invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
move v8, v9
goto :goto_4
:cond_5
move v8, v1
:goto_4
const/4 v7, 0x6
if-eqz v8, :cond_c
if-eq v8, v14, :cond_c
if-eq v8, v10, :cond_c
if-eq v8, v7, :cond_c
.line 445
sget-object v1, Landroid/text/TextUtils$TruncateAt;->START:Landroid/text/TextUtils$TruncateAt;
const/4 v2, 0x3
if-eq v8, v2, :cond_6
if-eq v8, v3, :cond_8
const/4 v2, 0x5
if-eq v8, v2, :cond_7
:cond_6
:goto_5
move-object/from16 v16, v1
goto :goto_6
.line 450
:cond_7
sget-object v1, Landroid/text/TextUtils$TruncateAt;->MIDDLE:Landroid/text/TextUtils$TruncateAt;
goto :goto_5
.line 449
:cond_8
sget-object v1, Landroid/text/TextUtils$TruncateAt;->END:Landroid/text/TextUtils$TruncateAt;
goto :goto_5
:goto_6
const/16 v1, 0xa
const/16 v2, 0x20
.line 453
invoke-virtual {v13, v1, v2}, Ljava/lang/String;->replace(CC)Ljava/lang/String;
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
.line 456
invoke-static {v13, v1}, Landroid/text/BoringLayout;->isBoring(Ljava/lang/CharSequence;Landroid/text/TextPaint;)Landroid/text/BoringLayout$Metrics;
move-result-object v17
const/high16 v1, 0x40000000 # 2.0f
if-eqz v17, :cond_9
.line 459
new-instance v6, Landroid/text/BoringLayout;
iget-object v3, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
mul-float/2addr v1, v12
float-to-int v4, v1
const/high16 v18, 0x3f800000 # 1.0f
const/16 v19, 0x0
const/16 v20, 0x0
float-to-int v5, v12
move-object v1, v6
move-object v2, v13
move/from16 v21, v5
move-object/from16 v5, v28
move-object v15, v6
move/from16 v6, v18
move/from16 v7, v19
move/from16 v29, v8
move-object/from16 v8, v17
move/from16 v9, v20
move-object/from16 v10, v16
move/from16 v30, v11
move/from16 v11, v21
invoke-direct/range {v1 .. v11}, Landroid/text/BoringLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFLandroid/text/BoringLayout$Metrics;ZLandroid/text/TextUtils$TruncateAt;I)V
iput-object v15, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
move/from16 v31, v12
goto :goto_7
:cond_9
move/from16 v29, v8
move/from16 v30, v11
.line 463
new-instance v15, Landroid/text/StaticLayout;
const/4 v3, 0x0
invoke-virtual {v13}, Ljava/lang/String;->length()I
move-result v4
iget-object v5, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
mul-float/2addr v1, v12
float-to-int v6, v1
const/high16 v8, 0x3f800000 # 1.0f
const/4 v9, 0x0
const/4 v10, 0x0
float-to-int v11, v12
move-object v1, v15
move-object v2, v13
move-object/from16 v7, v28
move/from16 v17, v11
move-object/from16 v11, v16
move/from16 v31, v12
move/from16 v12, v17
invoke-direct/range {v1 .. v12}, Landroid/text/StaticLayout;-><init>(Ljava/lang/CharSequence;IILandroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFZLandroid/text/TextUtils$TruncateAt;I)V
iput-object v15, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
:goto_7
const/4 v9, 0x0
:goto_8
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 470
invoke-virtual {v1}, Landroid/text/Layout;->getLineCount()I
move-result v1
if-ge v9, v1, :cond_b
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 472
invoke-virtual {v1, v9}, Landroid/text/Layout;->getEllipsisCount(I)I
move-result v1
if-lez v1, :cond_a
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 474
invoke-virtual {v1, v9}, Landroid/text/Layout;->getLineStart(I)I
move-result v1
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
invoke-virtual {v2, v9}, Landroid/text/Layout;->getEllipsisStart(I)I
move-result v2
add-int/2addr v1, v2
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 475
invoke-virtual {v2}, Landroid/text/Layout;->getText()Ljava/lang/CharSequence;
move-result-object v2
invoke-interface {v2}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;
move-result-object v2
add-int/2addr v1, v14
const/4 v10, 0x0
invoke-virtual {v2, v10, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v13
.line 477
new-instance v1, Landroid/text/StaticLayout;
const/16 v18, 0x0
invoke-virtual {v13}, Ljava/lang/String;->length()I
move-result v19
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
move/from16 v15, v31
float-to-int v3, v15
const/high16 v23, 0x3f800000 # 1.0f
const/16 v24, 0x0
const/16 v25, 0x0
move-object/from16 v16, v1
move-object/from16 v17, v13
move-object/from16 v20, v2
move/from16 v21, v3
move-object/from16 v22, v28
invoke-direct/range {v16 .. v25}, Landroid/text/StaticLayout;-><init>(Ljava/lang/CharSequence;IILandroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFZ)V
iput-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
goto :goto_9
:cond_a
move/from16 v15, v31
const/4 v10, 0x0
add-int/lit8 v9, v9, 0x1
goto :goto_8
:cond_b
move/from16 v15, v31
const/4 v10, 0x0
goto :goto_9
:cond_c
move/from16 v29, v8
move v10, v9
move/from16 v30, v11
move v15, v12
.line 440
new-instance v9, Landroid/text/StaticLayout;
iget-object v3, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
float-to-int v4, v15
const/high16 v6, 0x3f800000 # 1.0f
const/4 v7, 0x0
const/4 v8, 0x0
move-object v1, v9
move-object v2, v13
move-object/from16 v5, v28
invoke-direct/range {v1 .. v8}, Landroid/text/StaticLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFZ)V
iput-object v9, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
:goto_9
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 488
invoke-virtual {v0, v1}, Lcom/firemint/realracing/GlyphVector;->findLayoutBounds(Landroid/text/Layout;)Landroid/graphics/Rect;
move-result-object v1
iput-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 489
invoke-virtual {v1}, Landroid/text/Layout;->getLineCount()I
move-result v1
iput v1, v0, Lcom/firemint/realracing/GlyphVector;->numLines:I
move/from16 v9, v29
const/4 v1, 0x2
move/from16 v2, v30
if-ne v9, v1, :cond_e
const/4 v1, 0x0
cmpl-float v3, v2, v1
if-lez v3, :cond_e
move v1, v10
:goto_a
iget v3, v0, Lcom/firemint/realracing/GlyphVector;->numLines:I
if-ge v1, v3, :cond_e
iget-object v3, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 496
invoke-virtual {v3, v1}, Landroid/text/Layout;->getLineBottom(I)I
move-result v3
iget-object v4, v0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
iget v4, v4, Landroid/graphics/Rect;->top:I
sub-int/2addr v3, v4
float-to-int v4, v2
if-le v3, v4, :cond_f
sub-int/2addr v1, v14
if-gez v1, :cond_d
move v1, v10
:cond_d
iget-object v3, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 501
invoke-virtual {v3, v1}, Landroid/text/Layout;->getLineVisibleEnd(I)I
move-result v19
.line 504
new-instance v1, Landroid/text/StaticLayout;
const/16 v18, 0x0
iget-object v3, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
float-to-int v4, v15
const/high16 v23, 0x3f800000 # 1.0f
const/16 v24, 0x0
const/16 v25, 0x0
move-object/from16 v16, v1
move-object/from16 v17, v13
move-object/from16 v20, v3
move/from16 v21, v4
move-object/from16 v22, v28
invoke-direct/range {v16 .. v25}, Landroid/text/StaticLayout;-><init>(Ljava/lang/CharSequence;IILandroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFZ)V
iput-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 505
invoke-virtual {v0, v1}, Lcom/firemint/realracing/GlyphVector;->findLayoutBounds(Landroid/text/Layout;)Landroid/graphics/Rect;
move-result-object v1
iput-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 506
invoke-virtual {v1}, Landroid/text/Layout;->getLineCount()I
move-result v1
iput v1, v0, Lcom/firemint/realracing/GlyphVector;->numLines:I
:cond_e
const/4 v1, 0x6
goto :goto_b
:cond_f
add-int/lit8 v1, v1, 0x1
goto :goto_a
:goto_b
if-ne v9, v1, :cond_15
const/4 v1, 0x0
cmpl-float v3, v2, v1
if-lez v3, :cond_15
move v9, v10
:goto_c
iget v1, v0, Lcom/firemint/realracing/GlyphVector;->numLines:I
if-ge v9, v1, :cond_15
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 518
invoke-virtual {v1, v9}, Landroid/text/Layout;->getLineBottom(I)I
move-result v1
iget-object v3, v0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
iget v3, v3, Landroid/graphics/Rect;->top:I
sub-int/2addr v1, v3
float-to-int v3, v2
if-le v1, v3, :cond_14
sub-int/2addr v9, v14
if-gez v9, :cond_10
move v9, v10
:cond_10
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 523
invoke-virtual {v1, v9}, Landroid/text/Layout;->getLineStart(I)I
move-result v18
.line 526
new-instance v1, Landroid/text/StaticLayout;
invoke-virtual {v13}, Ljava/lang/String;->length()I
move-result v19
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
float-to-int v3, v15
const/high16 v23, 0x3f800000 # 1.0f
const/16 v24, 0x0
const/16 v25, 0x0
sget-object v4, Landroid/text/TextUtils$TruncateAt;->END:Landroid/text/TextUtils$TruncateAt;
move-object/from16 v16, v1
move-object/from16 v17, v13
move-object/from16 v20, v2
move/from16 v21, v3
move-object/from16 v22, v28
move-object/from16 v26, v4
move/from16 v27, v3
invoke-direct/range {v16 .. v27}, Landroid/text/StaticLayout;-><init>(Ljava/lang/CharSequence;IILandroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFZLandroid/text/TextUtils$TruncateAt;I)V
iput-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisLayout:Landroid/text/StaticLayout;
.line 527
invoke-virtual {v0, v1}, Lcom/firemint/realracing/GlyphVector;->findLayoutBounds(Landroid/text/Layout;)Landroid/graphics/Rect;
move-result-object v1
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisLayout:Landroid/text/StaticLayout;
.line 530
invoke-virtual {v2}, Landroid/text/StaticLayout;->getLineCount()I
move-result v2
if-le v2, v14, :cond_12
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisLayout:Landroid/text/StaticLayout;
.line 533
invoke-virtual {v1, v10}, Landroid/text/StaticLayout;->getLineStart(I)I
move-result v1
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisLayout:Landroid/text/StaticLayout;
invoke-virtual {v2, v10}, Landroid/text/Layout;->getLineVisibleEnd(I)I
move-result v2
invoke-virtual {v13, v1, v2}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v1
const-string v2, "\u2026"
.line 534
invoke-virtual {v1, v2}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z
move-result v5
if-nez v5, :cond_11
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
:cond_11
move-object/from16 v17, v1
.line 537
new-instance v1, Landroid/text/StaticLayout;
const/16 v18, 0x0
invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->length()I
move-result v19
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
const/high16 v23, 0x3f800000 # 1.0f
const/16 v24, 0x0
const/16 v25, 0x0
move-object/from16 v16, v1
move-object/from16 v20, v2
move/from16 v21, v3
move-object/from16 v22, v28
move-object/from16 v26, v4
move/from16 v27, v3
invoke-direct/range {v16 .. v27}, Landroid/text/StaticLayout;-><init>(Ljava/lang/CharSequence;IILandroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFZLandroid/text/TextUtils$TruncateAt;I)V
iput-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisLayout:Landroid/text/StaticLayout;
.line 538
invoke-virtual {v0, v1}, Lcom/firemint/realracing/GlyphVector;->findLayoutBounds(Landroid/text/Layout;)Landroid/graphics/Rect;
move-result-object v1
:cond_12
if-lez v9, :cond_13
sub-int/2addr v9, v14
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 545
invoke-virtual {v2, v9}, Landroid/text/Layout;->getLineVisibleEnd(I)I
move-result v19
.line 548
new-instance v2, Landroid/text/StaticLayout;
const/16 v18, 0x0
iget-object v4, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
const/high16 v23, 0x3f800000 # 1.0f
const/16 v24, 0x0
const/16 v25, 0x0
move-object/from16 v16, v2
move-object/from16 v17, v13
move-object/from16 v20, v4
move/from16 v21, v3
move-object/from16 v22, v28
invoke-direct/range {v16 .. v25}, Landroid/text/StaticLayout;-><init>(Ljava/lang/CharSequence;IILandroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFZ)V
iput-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 549
invoke-virtual {v0, v2}, Lcom/firemint/realracing/GlyphVector;->findLayoutBounds(Landroid/text/Layout;)Landroid/graphics/Rect;
move-result-object v2
iput-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 552
invoke-virtual {v2}, Landroid/graphics/Rect;->height()I
move-result v2
iput v2, v0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisOffset:I
.line 553
invoke-virtual {v1, v10, v2}, Landroid/graphics/Rect;->offset(II)V
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 556
invoke-virtual {v2, v1}, Landroid/graphics/Rect;->union(Landroid/graphics/Rect;)V
iget-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 557
invoke-virtual {v1}, Landroid/text/Layout;->getLineCount()I
move-result v1
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisLayout:Landroid/text/StaticLayout;
invoke-virtual {v2}, Landroid/text/StaticLayout;->getLineCount()I
move-result v2
add-int/2addr v1, v2
iput v1, v0, Lcom/firemint/realracing/GlyphVector;->numLines:I
goto :goto_d
:cond_13
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisLayout:Landroid/text/StaticLayout;
iput-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
const/4 v3, 0x0
iput-object v3, v0, Lcom/firemint/realracing/GlyphVector;->m_ellipsisLayout:Landroid/text/StaticLayout;
iput-object v1, v0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 567
invoke-virtual {v2}, Landroid/text/Layout;->getLineCount()I
move-result v1
iput v1, v0, Lcom/firemint/realracing/GlyphVector;->numLines:I
goto :goto_d
:cond_14
add-int/lit8 v9, v9, 0x1
goto/16 :goto_c
.line 576
:cond_15
:goto_d
new-instance v1, Landroid/graphics/Rect;
invoke-direct {v1}, Landroid/graphics/Rect;-><init>()V
const v2, 0x989680
iput v2, v1, Landroid/graphics/Rect;->left:I
const v3, -0x989680
iput v3, v1, Landroid/graphics/Rect;->right:I
iput v2, v1, Landroid/graphics/Rect;->top:I
iput v3, v1, Landroid/graphics/Rect;->bottom:I
const/4 v2, 0x0
iput v2, v0, Lcom/firemint/realracing/GlyphVector;->pixelTopOffset:F
move v9, v10
:goto_e
iget v2, v0, Lcom/firemint/realracing/GlyphVector;->numLines:I
if-ge v9, v2, :cond_1b
.line 584
new-instance v2, Landroid/graphics/Rect;
invoke-direct {v2}, Landroid/graphics/Rect;-><init>()V
iget-object v3, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
iget-object v4, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 585
invoke-virtual {v4, v9}, Landroid/text/Layout;->getLineStart(I)I
move-result v4
iget-object v5, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
invoke-virtual {v5, v9}, Landroid/text/Layout;->getLineEnd(I)I
move-result v5
invoke-virtual {v3, v13, v4, v5, v2}, Landroid/graphics/Paint;->getTextBounds(Ljava/lang/String;IILandroid/graphics/Rect;)V
iget-object v3, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 586
invoke-virtual {v3, v9}, Landroid/text/Layout;->getLineBaseline(I)I
move-result v3
int-to-float v3, v3
if-nez v9, :cond_16
iget v4, v2, Landroid/graphics/Rect;->top:I
int-to-float v4, v4
add-float/2addr v4, v3
iget-object v5, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 589
invoke-virtual {v5, v9}, Landroid/text/Layout;->getLineTop(I)I
move-result v5
int-to-float v5, v5
sub-float/2addr v4, v5
iput v4, v0, Lcom/firemint/realracing/GlyphVector;->pixelTopOffset:F
:cond_16
iget v4, v2, Landroid/graphics/Rect;->top:I
int-to-float v4, v4
add-float/2addr v4, v3
float-to-int v4, v4
iput v4, v2, Landroid/graphics/Rect;->top:I
iget v5, v2, Landroid/graphics/Rect;->bottom:I
int-to-float v5, v5
add-float/2addr v5, v3
float-to-int v3, v5
iput v3, v2, Landroid/graphics/Rect;->bottom:I
iget v5, v2, Landroid/graphics/Rect;->left:I
iget v6, v1, Landroid/graphics/Rect;->left:I
if-ge v5, v6, :cond_17
iput v5, v1, Landroid/graphics/Rect;->left:I
:cond_17
iget v2, v2, Landroid/graphics/Rect;->right:I
iget v5, v1, Landroid/graphics/Rect;->right:I
if-le v2, v5, :cond_18
iput v2, v1, Landroid/graphics/Rect;->right:I
:cond_18
iget v2, v1, Landroid/graphics/Rect;->top:I
if-ge v4, v2, :cond_19
iput v4, v1, Landroid/graphics/Rect;->top:I
:cond_19
iget v2, v1, Landroid/graphics/Rect;->bottom:I
if-le v3, v2, :cond_1a
iput v3, v1, Landroid/graphics/Rect;->bottom:I
:cond_1a
add-int/lit8 v9, v9, 0x1
goto :goto_e
:cond_1b
if-lez v2, :cond_1d
const/4 v2, 0x0
iput v2, v0, Lcom/firemint/realracing/GlyphVector;->offsetX:F
.line 614
new-instance v2, Landroid/graphics/Rect;
invoke-direct {v2}, Landroid/graphics/Rect;-><init>()V
iget-object v3, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 615
invoke-virtual {v3}, Landroid/text/Layout;->getLineCount()I
move-result v3
sub-int/2addr v3, v14
iget-object v4, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
iget-object v5, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
.line 616
invoke-virtual {v5, v3}, Landroid/text/Layout;->getLineStart(I)I
move-result v5
iget-object v6, v0, Lcom/firemint/realracing/GlyphVector;->m_layout:Landroid/text/Layout;
invoke-virtual {v6, v3}, Landroid/text/Layout;->getLineEnd(I)I
move-result v3
invoke-virtual {v4, v13, v5, v3, v2}, Landroid/graphics/Paint;->getTextBounds(Ljava/lang/String;IILandroid/graphics/Rect;)V
const/16 v3, 0x1d
.line 618
invoke-static {v3}, Lcom/firemint/realracing/MainActivity;->IsAtLeastAPI(I)Z
move-result v3
if-eqz v3, :cond_1c
iget-object v3, v0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
.line 620
invoke-static {v3}, Lcom/firemint/realracing/GlyphVector$$ExternalSyntheticApiModelOutline0;->m(Landroid/text/TextPaint;)F
move-result v3
goto :goto_f
:cond_1c
const/4 v3, 0x0
:goto_f
iget v2, v2, Landroid/graphics/Rect;->bottom:I
int-to-float v2, v2
sub-float/2addr v2, v3
const/4 v3, 0x0
.line 622
invoke-static {v2, v3}, Ljava/lang/Math;->max(FF)F
move-result v2
iput v2, v0, Lcom/firemint/realracing/GlyphVector;->offsetY:F
:cond_1d
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 625
invoke-virtual {v2}, Landroid/graphics/Rect;->width()I
move-result v2
int-to-float v2, v2
iput v2, v0, Lcom/firemint/realracing/GlyphVector;->boundsW:F
iget-object v2, v0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 626
invoke-virtual {v2}, Landroid/graphics/Rect;->height()I
move-result v2
int-to-float v2, v2
iput v2, v0, Lcom/firemint/realracing/GlyphVector;->boundsH:F
iget v2, v1, Landroid/graphics/Rect;->right:I
iget v3, v1, Landroid/graphics/Rect;->left:I
sub-int/2addr v2, v3
int-to-float v2, v2
iput v2, v0, Lcom/firemint/realracing/GlyphVector;->pixelBoundsW:F
iget v2, v1, Landroid/graphics/Rect;->bottom:I
iget v1, v1, Landroid/graphics/Rect;->top:I
sub-int/2addr v2, v1
int-to-float v1, v2
iput v1, v0, Lcom/firemint/realracing/GlyphVector;->pixelBoundsH:F
return-void
.end method
.method public renderToTexture(IIIF)Z
.locals 9
iget-object v0, p0, Lcom/firemint/realracing/GlyphVector;->m_text:Ljava/lang/String;
const/4 v1, 0x0
if-eqz v0, :cond_1
iget-object v0, p0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
if-eqz v0, :cond_1
iget-object v0, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
if-nez v0, :cond_0
goto :goto_0
.line 736
:cond_0
sget-object v0, Landroid/graphics/Bitmap$Config;->ALPHA_8:Landroid/graphics/Bitmap$Config;
invoke-static {p2, p3, v0}, Landroid/graphics/Bitmap;->createBitmap(IILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap;
move-result-object v0
.line 737
new-instance v2, Landroid/graphics/Canvas;
invoke-direct {v2, v0}, Landroid/graphics/Canvas;-><init>(Landroid/graphics/Bitmap;)V
.line 738
invoke-static {v1, v1, v1, v1}, Landroid/graphics/Color;->argb(IIII)I
move-result v1
invoke-virtual {v0, v1}, Landroid/graphics/Bitmap;->eraseColor(I)V
int-to-float p3, p3
const/4 v1, 0x0
.line 741
invoke-virtual {v2, v1, p3}, Landroid/graphics/Canvas;->translate(FF)V
const/high16 v3, 0x3f800000 # 1.0f
const/high16 v4, -0x40800000 # -1.0f
.line 742
invoke-virtual {v2, v3, v4}, Landroid/graphics/Canvas;->scale(FF)V
int-to-float p2, p2
iget-object v3, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
.line 743
invoke-virtual {v3}, Landroid/graphics/Rect;->width()I
move-result v3
int-to-float v3, v3
mul-float/2addr v3, p4
sub-float/2addr p2, v3
const/high16 v3, 0x3f000000 # 0.5f
mul-float/2addr p2, v3
iget-object v4, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
iget v5, v4, Landroid/graphics/Rect;->left:I
int-to-float v5, v5
mul-float/2addr v5, p4
sub-float/2addr p2, v5
.line 744
invoke-virtual {v4}, Landroid/graphics/Rect;->height()I
move-result v4
int-to-float v4, v4
mul-float/2addr v4, p4
sub-float/2addr p3, v4
mul-float/2addr p3, v3
iget-object v3, p0, Lcom/firemint/realracing/GlyphVector;->m_bounds:Landroid/graphics/Rect;
iget v3, v3, Landroid/graphics/Rect;->top:I
int-to-float v3, v3
mul-float/2addr v3, p4
sub-float/2addr p3, v3
.line 743
invoke-virtual {v2, p2, p3}, Landroid/graphics/Canvas;->translate(FF)V
.line 747
invoke-virtual {v2, p4, p4}, Landroid/graphics/Canvas;->scale(FF)V
iget-object p2, p0, Lcom/firemint/realracing/GlyphVector;->m_text:Ljava/lang/String;
iget-object p3, p0, Lcom/firemint/realracing/GlyphVector;->m_paint:Landroid/text/TextPaint;
.line 748
invoke-virtual {v2, p2, v1, v1, p3}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V
.line 750
sget-object p2, Lcom/firemint/realracing/MainActivity;->instance:Lcom/firemint/realracing/MainActivity;
invoke-virtual {p2}, Lcom/firemint/realracing/MainActivity;->getGLView()Lcom/firemint/realracing/GLView;
move-result-object p2
invoke-virtual {p2}, Lcom/firemint/realracing/GLView;->getGLContext()Ljavax/microedition/khronos/egl/EGLContext;
move-result-object p2
invoke-virtual {p2}, Ljavax/microedition/khronos/egl/EGLContext;->getGL()Ljavax/microedition/khronos/opengles/GL;
move-result-object p2
check-cast p2, Ljavax/microedition/khronos/opengles/GL10;
const/16 p3, 0xde1
.line 751
invoke-interface {p2, p3, p1}, Ljavax/microedition/khronos/opengles/GL10;->glBindTexture(II)V
const/16 p1, 0xcf5
const/4 p3, 0x1
.line 752
invoke-interface {p2, p1, p3}, Ljavax/microedition/khronos/opengles/GL10;->glPixelStorei(II)V
const/16 v2, 0xde1
const/4 v3, 0x0
const/4 v4, 0x0
const/4 v5, 0x0
const/16 v7, 0x1909
const/16 v8, 0x1401
move-object v6, v0
.line 753
invoke-static/range {v2 .. v8}, Landroid/opengl/GLUtils;->texSubImage2D(IIIILandroid/graphics/Bitmap;II)V
.line 755
invoke-virtual {v0}, Landroid/graphics/Bitmap;->recycle()V
return p3
:cond_1
:goto_0
return v1
.end method