.class public Lcom/esotericsoftware/spine/Animation$DeformTimeline; .super Lcom/esotericsoftware/spine/Animation$CurveTimeline; .source "Animation.java" # annotations .annotation system Ldalvik/annotation/EnclosingClass; value = Lcom/esotericsoftware/spine/Animation; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x9 name = "DeformTimeline" .end annotation # instance fields .field a:I .field b:Lcom/esotericsoftware/spine/attachments/VertexAttachment; .field private final c:[F .field private final d:[[F # direct methods .method public constructor (I)V .locals 1 .line 871 invoke-direct {p0, p1}, Lcom/esotericsoftware/spine/Animation$CurveTimeline;->(I)V .line 872 new-array v0, p1, [F iput-object v0, p0, Lcom/esotericsoftware/spine/Animation$DeformTimeline;->c:[F .line 873 new-array p1, p1, [[F iput-object p1, p0, Lcom/esotericsoftware/spine/Animation$DeformTimeline;->d:[[F return-void .end method # virtual methods .method public a()I .locals 2 .line 877 sget-object v0, Lcom/esotericsoftware/spine/Animation$TimelineType;->deform:Lcom/esotericsoftware/spine/Animation$TimelineType; invoke-virtual {v0}, Lcom/esotericsoftware/spine/Animation$TimelineType;->ordinal()I move-result v0 shl-int/lit8 v0, v0, 0x1b iget-object v1, p0, Lcom/esotericsoftware/spine/Animation$DeformTimeline;->b:Lcom/esotericsoftware/spine/attachments/VertexAttachment; invoke-virtual {v1}, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->j()I move-result v1 add-int/2addr v0, v1 iget v1, p0, Lcom/esotericsoftware/spine/Animation$DeformTimeline;->a:I add-int/2addr v0, v1 return v0 .end method .method public a(IF[F)V .locals 1 .line 912 iget-object v0, p0, Lcom/esotericsoftware/spine/Animation$DeformTimeline;->c:[F aput p2, v0, p1 .line 913 iget-object p2, p0, Lcom/esotericsoftware/spine/Animation$DeformTimeline;->d:[[F aput-object p3, p2, p1 return-void .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 919 iget-object p1, p1, Lcom/esotericsoftware/spine/Skeleton;->c:Lcom/badlogic/gdx/utils/Array; iget p2, p0, Lcom/esotericsoftware/spine/Animation$DeformTimeline;->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/Slot; .line 920 iget-object p2, p1, Lcom/esotericsoftware/spine/Slot;->e:Lcom/esotericsoftware/spine/attachments/Attachment; .line 921 instance-of p4, p2, Lcom/esotericsoftware/spine/attachments/VertexAttachment; if-eqz p4, :cond_f check-cast p2, Lcom/esotericsoftware/spine/attachments/VertexAttachment; iget-object p4, p0, Lcom/esotericsoftware/spine/Animation$DeformTimeline;->b:Lcom/esotericsoftware/spine/attachments/VertexAttachment; invoke-virtual {p2, p4}, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->a(Lcom/esotericsoftware/spine/attachments/VertexAttachment;)Z move-result p4 if-nez p4, :cond_0 goto/16 :goto_b .line 923 :cond_0 invoke-virtual {p1}, Lcom/esotericsoftware/spine/Slot;->e()Lcom/badlogic/gdx/utils/FloatArray; move-result-object p1 .line 924 iget p4, p1, Lcom/badlogic/gdx/utils/FloatArray;->b:I const/high16 p7, 0x3f800000 # 1.0f if-nez p4, :cond_1 const/high16 p5, 0x3f800000 # 1.0f .line 926 :cond_1 iget-object p4, p0, Lcom/esotericsoftware/spine/Animation$DeformTimeline;->d:[[F const/4 v0, 0x0 .line 927 aget-object v1, p4, v0 array-length v1, v1 .line 929 iget-object v2, p0, Lcom/esotericsoftware/spine/Animation$DeformTimeline;->c:[F .line 930 aget v3, v2, v0 cmpg-float v3, p3, v3 if-gez v3, :cond_5 .line 932 sget-object p3, Lcom/esotericsoftware/spine/Animation$1;->a:[I invoke-virtual {p6}, Lcom/esotericsoftware/spine/Animation$MixPose;->ordinal()I move-result p4 aget p3, p3, p4 packed-switch p3, :pswitch_data_0 goto :goto_2 :pswitch_0 cmpl-float p3, p5, p7 if-nez p3, :cond_2 .line 938 invoke-virtual {p1}, Lcom/badlogic/gdx/utils/FloatArray;->b()V return-void .line 941 :cond_2 invoke-virtual {p1, v1}, Lcom/badlogic/gdx/utils/FloatArray;->c(I)[F move-result-object p1 .line 942 invoke-virtual {p2}, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->g()[I move-result-object p3 if-nez p3, :cond_3 .line 944 invoke-virtual {p2}, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->h()[F move-result-object p2 :goto_0 if-ge v0, v1, :cond_4 .line 946 aget p3, p1, v0 aget p4, p2, v0 aget p6, p1, v0 sub-float/2addr p4, p6 mul-float p4, p4, p5 add-float/2addr p3, p4 aput p3, p1, v0 add-int/lit8 v0, v0, 0x1 goto :goto_0 :cond_3 sub-float/2addr p7, p5 :goto_1 if-ge v0, v1, :cond_4 .line 951 aget p2, p1, v0 mul-float p2, p2, p7 aput p2, p1, v0 add-int/lit8 v0, v0, 0x1 goto :goto_1 .line 934 :pswitch_1 invoke-virtual {p1}, Lcom/badlogic/gdx/utils/FloatArray;->b()V return-void :cond_4 :goto_2 return-void .line 957 :cond_5 invoke-virtual {p1, v1}, Lcom/badlogic/gdx/utils/FloatArray;->c(I)[F move-result-object p1 .line 959 array-length v3, v2 add-int/lit8 v3, v3, -0x1 aget v3, v2, v3 cmpl-float v3, p3, v3 if-ltz v3, :cond_a .line 960 array-length p3, v2 add-int/lit8 p3, p3, -0x1 aget-object p3, p4, p3 cmpl-float p4, p5, p7 if-nez p4, :cond_6 .line 963 invoke-static {p3, v0, p1, v0, v1}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V goto :goto_6 .line 964 :cond_6 sget-object p4, Lcom/esotericsoftware/spine/Animation$MixPose;->setup:Lcom/esotericsoftware/spine/Animation$MixPose; if-ne p6, p4, :cond_8 .line 966 invoke-virtual {p2}, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->g()[I move-result-object p4 if-nez p4, :cond_7 .line 968 invoke-virtual {p2}, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->h()[F move-result-object p2 :goto_3 if-ge v0, v1, :cond_9 .line 970 aget p4, p2, v0 .line 971 aget p6, p3, v0 sub-float/2addr p6, p4 mul-float p6, p6, p5 add-float/2addr p4, p6 aput p4, p1, v0 add-int/lit8 v0, v0, 0x1 goto :goto_3 :cond_7 :goto_4 if-ge v0, v1, :cond_9 .line 976 aget p2, p3, v0 mul-float p2, p2, p5 aput p2, p1, v0 add-int/lit8 v0, v0, 0x1 goto :goto_4 :cond_8 :goto_5 if-ge v0, v1, :cond_9 .line 981 aget p2, p1, v0 aget p4, p3, v0 aget p6, p1, v0 sub-float/2addr p4, p6 mul-float p4, p4, p5 add-float/2addr p2, p4 aput p2, p1, v0 add-int/lit8 v0, v0, 0x1 goto :goto_5 :cond_9 :goto_6 return-void .line 987 :cond_a invoke-static {v2, p3}, Lcom/esotericsoftware/spine/Animation;->a([FF)I move-result v3 add-int/lit8 v4, v3, -0x1 .line 988 aget-object v5, p4, v4 .line 989 aget-object p4, p4, v3 .line 990 aget v3, v2, v3 sub-float/2addr p3, v3 .line 991 aget v2, v2, v4 sub-float/2addr v2, v3 div-float/2addr p3, v2 sub-float p3, p7, p3 invoke-virtual {p0, v4, p3}, Lcom/esotericsoftware/spine/Animation$DeformTimeline;->a(IF)F move-result p3 cmpl-float p7, p5, p7 if-nez p7, :cond_b :goto_7 if-ge v0, v1, :cond_e .line 996 aget p2, v5, v0 .line 997 aget p5, p4, v0 sub-float/2addr p5, p2 mul-float p5, p5, p3 add-float/2addr p2, p5 aput p2, p1, v0 add-int/lit8 v0, v0, 0x1 goto :goto_7 .line 999 :cond_b sget-object p7, Lcom/esotericsoftware/spine/Animation$MixPose;->setup:Lcom/esotericsoftware/spine/Animation$MixPose; if-ne p6, p7, :cond_d .line 1001 invoke-virtual {p2}, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->g()[I move-result-object p6 if-nez p6, :cond_c .line 1003 invoke-virtual {p2}, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->h()[F move-result-object p2 :goto_8 if-ge v0, v1, :cond_e .line 1005 aget p6, v5, v0 aget p7, p2, v0 .line 1006 aget v2, p4, v0 sub-float/2addr v2, p6 mul-float v2, v2, p3 add-float/2addr p6, v2 sub-float/2addr p6, p7 mul-float p6, p6, p5 add-float/2addr p7, p6 aput p7, p1, v0 add-int/lit8 v0, v0, 0x1 goto :goto_8 :cond_c :goto_9 if-ge v0, v1, :cond_e .line 1011 aget p2, v5, v0 .line 1012 aget p6, p4, v0 sub-float/2addr p6, p2 mul-float p6, p6, p3 add-float/2addr p2, p6 mul-float p2, p2, p5 aput p2, p1, v0 add-int/lit8 v0, v0, 0x1 goto :goto_9 :cond_d :goto_a if-ge v0, v1, :cond_e .line 1018 aget p2, v5, v0 .line 1019 aget p6, p1, v0 aget p7, p4, v0 sub-float/2addr p7, p2 mul-float p7, p7, p3 add-float/2addr p2, p7 aget p7, p1, v0 sub-float/2addr p2, p7 mul-float p2, p2, p5 add-float/2addr p6, p2 aput p6, p1, v0 add-int/lit8 v0, v0, 0x1 goto :goto_a :cond_e return-void :cond_f :goto_b return-void nop :pswitch_data_0 .packed-switch 0x1 :pswitch_1 :pswitch_0 .end packed-switch .end method .method public b()[F .locals 1 .line 901 iget-object v0, p0, Lcom/esotericsoftware/spine/Animation$DeformTimeline;->c:[F return-object v0 .end method