.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 (I)V .locals 0 .line 458 invoke-direct {p0, p1}, Lcom/esotericsoftware/spine/Animation$TranslateTimeline;->(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