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

333 lines
7.0 KiB
Smali

.class public Lcom/esotericsoftware/spine/Animation$ShearTimeline;
.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 = "ShearTimeline"
.end annotation
# direct methods
.method public constructor <init>(I)V
.locals 0
.line 528
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 532
sget-object v0, Lcom/esotericsoftware/spine/Animation$TimelineType;->shear: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$ShearTimeline;->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 5
.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 538
iget-object p1, p1, Lcom/esotericsoftware/spine/Skeleton;->b:Lcom/badlogic/gdx/utils/Array;
iget p2, p0, Lcom/esotericsoftware/spine/Animation$ShearTimeline;->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 539
iget-object p2, p0, Lcom/esotericsoftware/spine/Animation$ShearTimeline;->b:[F
const/4 p4, 0x0
.line 540
aget p4, p2, p4
cmpg-float p4, p3, p4
if-gez p4, :cond_0
.line 541
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 547
:pswitch_0
iget p2, p1, Lcom/esotericsoftware/spine/Bone;->j:F
iget-object p3, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p3, p3, Lcom/esotericsoftware/spine/BoneData;->j:F
iget p4, p1, Lcom/esotericsoftware/spine/Bone;->j:F
sub-float/2addr p3, p4
mul-float p3, p3, p5
add-float/2addr p2, p3
iput p2, p1, Lcom/esotericsoftware/spine/Bone;->j:F
.line 548
iget p2, p1, Lcom/esotericsoftware/spine/Bone;->k:F
iget-object p3, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p3, p3, Lcom/esotericsoftware/spine/BoneData;->k:F
iget p4, p1, Lcom/esotericsoftware/spine/Bone;->k:F
sub-float/2addr p3, p4
mul-float p3, p3, p5
add-float/2addr p2, p3
iput p2, p1, Lcom/esotericsoftware/spine/Bone;->k:F
goto :goto_0
.line 543
:pswitch_1
iget-object p2, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p2, p2, Lcom/esotericsoftware/spine/BoneData;->j:F
iput p2, p1, Lcom/esotericsoftware/spine/Bone;->j:F
.line 544
iget-object p2, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p2, p2, Lcom/esotericsoftware/spine/BoneData;->k:F
iput p2, p1, Lcom/esotericsoftware/spine/Bone;->k:F
return-void
:goto_0
return-void
.line 554
:cond_0
array-length p4, p2
const/4 p7, 0x3
sub-int/2addr p4, p7
aget p4, p2, p4
cmpl-float p4, p3, p4
if-ltz p4, :cond_1
.line 555
array-length p3, p2
add-int/lit8 p3, p3, -0x2
aget p3, p2, p3
.line 556
array-length p4, p2
add-int/lit8 p4, p4, -0x1
aget p2, p2, p4
goto :goto_1
.line 559
:cond_1
invoke-static {p2, p3, p7}, Lcom/esotericsoftware/spine/Animation;->a([FFI)I
move-result p4
add-int/lit8 p7, p4, -0x2
.line 560
aget p7, p2, p7
add-int/lit8 v0, p4, -0x1
.line 561
aget v0, p2, v0
.line 562
aget v1, p2, p4
.line 563
div-int/lit8 v2, p4, 0x3
add-int/lit8 v2, v2, -0x1
const/high16 v3, 0x3f800000 # 1.0f
sub-float/2addr p3, v1
add-int/lit8 v4, p4, -0x3
aget v4, p2, v4
sub-float/2addr v4, v1
div-float/2addr p3, v4
sub-float/2addr v3, p3
invoke-virtual {p0, v2, v3}, Lcom/esotericsoftware/spine/Animation$ShearTimeline;->a(IF)F
move-result p3
add-int/lit8 v1, p4, 0x1
.line 566
aget v1, p2, v1
sub-float/2addr v1, p7
mul-float v1, v1, p3
add-float/2addr p7, v1
add-int/lit8 p4, p4, 0x2
.line 567
aget p2, p2, p4
sub-float/2addr p2, v0
mul-float p2, p2, p3
add-float/2addr p2, v0
move p3, p7
.line 569
:goto_1
sget-object p4, Lcom/esotericsoftware/spine/Animation$MixPose;->setup:Lcom/esotericsoftware/spine/Animation$MixPose;
if-ne p6, p4, :cond_2
.line 570
iget-object p4, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p4, p4, Lcom/esotericsoftware/spine/BoneData;->j:F
mul-float p3, p3, p5
add-float/2addr p4, p3
iput p4, p1, Lcom/esotericsoftware/spine/Bone;->j:F
.line 571
iget-object p3, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p3, p3, Lcom/esotericsoftware/spine/BoneData;->k:F
mul-float p2, p2, p5
add-float/2addr p3, p2
iput p3, p1, Lcom/esotericsoftware/spine/Bone;->k:F
goto :goto_2
.line 573
:cond_2
iget p4, p1, Lcom/esotericsoftware/spine/Bone;->j:F
iget-object p6, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p6, p6, Lcom/esotericsoftware/spine/BoneData;->j:F
add-float/2addr p6, p3
iget p3, p1, Lcom/esotericsoftware/spine/Bone;->j:F
sub-float/2addr p6, p3
mul-float p6, p6, p5
add-float/2addr p4, p6
iput p4, p1, Lcom/esotericsoftware/spine/Bone;->j:F
.line 574
iget p3, p1, Lcom/esotericsoftware/spine/Bone;->k:F
iget-object p4, p1, Lcom/esotericsoftware/spine/Bone;->a:Lcom/esotericsoftware/spine/BoneData;
iget p4, p4, Lcom/esotericsoftware/spine/BoneData;->k:F
add-float/2addr p4, p2
iget p2, p1, Lcom/esotericsoftware/spine/Bone;->k:F
sub-float/2addr p4, p2
mul-float p4, p4, p5
add-float/2addr p3, p4
iput p3, p1, Lcom/esotericsoftware/spine/Bone;->k:F
:goto_2
return-void
nop
:pswitch_data_0
.packed-switch 0x1
:pswitch_1
:pswitch_0
.end packed-switch
.end method