Weather/smali/com/esotericsoftware/spine/Animation$ScaleTimeline.smali
2021-05-10 10:13:34 +02:00

396 lines
8.2 KiB
Smali

.class public Lcom/esotericsoftware/spine/Animation$ScaleTimeline;
.super Lcom/esotericsoftware/spine/Animation$TranslateTimeline;
.source "Animation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/spine/Animation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ScaleTimeline"
.end annotation
# direct methods
.method public constructor <init>(I)V
.locals 0
.line 458
invoke-direct {p0, p1}, Lcom/esotericsoftware/spine/Animation$TranslateTimeline;-><init>(I)V
return-void
.end method
# virtual methods
.method public a()I
.locals 2
.line 462
sget-object v0, Lcom/esotericsoftware/spine/Animation$TimelineType;->scale:Lcom/esotericsoftware/spine/Animation$TimelineType;
invoke-virtual {v0}, Lcom/esotericsoftware/spine/Animation$TimelineType;->ordinal()I
move-result v0
shl-int/lit8 v0, v0, 0x18
iget v1, p0, Lcom/esotericsoftware/spine/Animation$ScaleTimeline;->a:I
add-int/2addr v0, v1
return v0
.end method
.method public a(Lcom/esotericsoftware/spine/Skeleton;FFLcom/badlogic/gdx/utils/Array;FLcom/esotericsoftware/spine/Animation$MixPose;Lcom/esotericsoftware/spine/Animation$MixDirection;)V
.locals 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/spine/Skeleton;",
"FF",
"Lcom/badlogic/gdx/utils/Array<",
"Lcom/esotericsoftware/spine/Event;",
">;F",
"Lcom/esotericsoftware/spine/Animation$MixPose;",
"Lcom/esotericsoftware/spine/Animation$MixDirection;",
")V"
}
.end annotation
.line 468
iget-object p1, p1, Lcom/esotericsoftware/spine/Skeleton;->b:Lcom/badlogic/gdx/utils/Array;
iget p2, p0, Lcom/esotericsoftware/spine/Animation$ScaleTimeline;->a:I
invoke-virtual {p1, p2}, Lcom/badlogic/gdx/utils/Array;->a(I)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/esotericsoftware/spine/Bone;
.line 469
iget-object p2, p0, Lcom/esotericsoftware/spine/Animation$ScaleTimeline;->b:[F
const/4 p4, 0x0
.line 470
aget p4, p2, p4
cmpg-float p4, p3, p4
if-gez p4, :cond_0
.line 471
sget-object p2, Lcom/esotericsoftware/spine/Animation$1;->a:[I
invoke-virtual {p6}, Lcom/esotericsoftware/spine/Animation$MixPose;->ordinal()I
move-result p3
aget p2, p2, p3
packed-switch p2, :pswitch_data_0
goto :goto_0
.line 477
:pswitch_0
iget p2, p1, Lcom/esotericsoftware/spine/Bone;->h:F
iget-object p3, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p3, p3, Lcom/esotericsoftware/spine/BoneData;->h:F
iget p4, p1, Lcom/esotericsoftware/spine/Bone;->h:F
sub-float/2addr p3, p4
mul-float p3, p3, p5
add-float/2addr p2, p3
iput p2, p1, Lcom/esotericsoftware/spine/Bone;->h:F
.line 478
iget p2, p1, Lcom/esotericsoftware/spine/Bone;->i:F
iget-object p3, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p3, p3, Lcom/esotericsoftware/spine/BoneData;->i:F
iget p4, p1, Lcom/esotericsoftware/spine/Bone;->i:F
sub-float/2addr p3, p4
mul-float p3, p3, p5
add-float/2addr p2, p3
iput p2, p1, Lcom/esotericsoftware/spine/Bone;->i:F
goto :goto_0
.line 473
:pswitch_1
iget-object p2, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p2, p2, Lcom/esotericsoftware/spine/BoneData;->h:F
iput p2, p1, Lcom/esotericsoftware/spine/Bone;->h:F
.line 474
iget-object p2, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p2, p2, Lcom/esotericsoftware/spine/BoneData;->i:F
iput p2, p1, Lcom/esotericsoftware/spine/Bone;->i:F
return-void
:goto_0
return-void
.line 484
:cond_0
array-length p4, p2
const/4 v0, 0x3
sub-int/2addr p4, v0
aget p4, p2, p4
const/high16 v1, 0x3f800000 # 1.0f
cmpl-float p4, p3, p4
if-ltz p4, :cond_1
.line 485
array-length p3, p2
add-int/lit8 p3, p3, -0x2
aget p3, p2, p3
iget-object p4, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p4, p4, Lcom/esotericsoftware/spine/BoneData;->h:F
mul-float p3, p3, p4
.line 486
array-length p4, p2
add-int/lit8 p4, p4, -0x1
aget p2, p2, p4
iget-object p4, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p4, p4, Lcom/esotericsoftware/spine/BoneData;->i:F
mul-float p2, p2, p4
goto :goto_1
.line 489
:cond_1
invoke-static {p2, p3, v0}, Lcom/esotericsoftware/spine/Animation;->a([FFI)I
move-result p4
add-int/lit8 v0, p4, -0x2
.line 490
aget v0, p2, v0
add-int/lit8 v2, p4, -0x1
.line 491
aget v2, p2, v2
.line 492
aget v3, p2, p4
.line 493
div-int/lit8 v4, p4, 0x3
add-int/lit8 v4, v4, -0x1
sub-float/2addr p3, v3
add-int/lit8 v5, p4, -0x3
aget v5, p2, v5
sub-float/2addr v5, v3
div-float/2addr p3, v5
sub-float p3, v1, p3
invoke-virtual {p0, v4, p3}, Lcom/esotericsoftware/spine/Animation$ScaleTimeline;->a(IF)F
move-result p3
add-int/lit8 v3, p4, 0x1
.line 496
aget v3, p2, v3
sub-float/2addr v3, v0
mul-float v3, v3, p3
add-float/2addr v0, v3
iget-object v3, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget v3, v3, Lcom/esotericsoftware/spine/BoneData;->h:F
mul-float v0, v0, v3
add-int/lit8 p4, p4, 0x2
.line 497
aget p2, p2, p4
sub-float/2addr p2, v2
mul-float p2, p2, p3
add-float/2addr v2, p2
iget-object p2, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p2, p2, Lcom/esotericsoftware/spine/BoneData;->i:F
mul-float p2, p2, v2
move p3, v0
:goto_1
cmpl-float p4, p5, v1
if-nez p4, :cond_2
.line 500
iput p3, p1, Lcom/esotericsoftware/spine/Bone;->h:F
.line 501
iput p2, p1, Lcom/esotericsoftware/spine/Bone;->i:F
goto :goto_4
.line 504
:cond_2
sget-object p4, Lcom/esotericsoftware/spine/Animation$MixPose;->setup:Lcom/esotericsoftware/spine/Animation$MixPose;
if-ne p6, p4, :cond_3
.line 505
iget-object p4, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p4, p4, Lcom/esotericsoftware/spine/BoneData;->h:F
.line 506
iget-object p6, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p6, p6, Lcom/esotericsoftware/spine/BoneData;->i:F
goto :goto_2
.line 508
:cond_3
iget p4, p1, Lcom/esotericsoftware/spine/Bone;->h:F
.line 509
iget p6, p1, Lcom/esotericsoftware/spine/Bone;->i:F
.line 512
:goto_2
sget-object v0, Lcom/esotericsoftware/spine/Animation$MixDirection;->out:Lcom/esotericsoftware/spine/Animation$MixDirection;
if-ne p7, v0, :cond_4
.line 513
invoke-static {p3}, Ljava/lang/Math;->abs(F)F
move-result p3
invoke-static {p4}, Ljava/lang/Math;->signum(F)F
move-result p7
mul-float p3, p3, p7
.line 514
invoke-static {p2}, Ljava/lang/Math;->abs(F)F
move-result p2
invoke-static {p6}, Ljava/lang/Math;->signum(F)F
move-result p7
mul-float p2, p2, p7
goto :goto_3
.line 516
:cond_4
invoke-static {p4}, Ljava/lang/Math;->abs(F)F
move-result p4
invoke-static {p3}, Ljava/lang/Math;->signum(F)F
move-result p7
mul-float p4, p4, p7
.line 517
invoke-static {p6}, Ljava/lang/Math;->abs(F)F
move-result p6
invoke-static {p2}, Ljava/lang/Math;->signum(F)F
move-result p7
mul-float p6, p6, p7
:goto_3
sub-float/2addr p3, p4
mul-float p3, p3, p5
add-float/2addr p4, p3
.line 519
iput p4, p1, Lcom/esotericsoftware/spine/Bone;->h:F
sub-float/2addr p2, p6
mul-float p2, p2, p5
add-float/2addr p6, p2
.line 520
iput p6, p1, Lcom/esotericsoftware/spine/Bone;->i:F
:goto_4
return-void
:pswitch_data_0
.packed-switch 0x1
:pswitch_1
:pswitch_0
.end packed-switch
.end method