.class public Lcom/esotericsoftware/spine/attachments/VertexAttachment; .super Lcom/esotericsoftware/spine/attachments/Attachment; .source "VertexAttachment.java" # static fields .field private static final b:Ljava/util/concurrent/atomic/AtomicInteger; # instance fields .field private final c:I .field f:[I .field g:[F .field h:I # direct methods .method static constructor ()V .locals 1 .line 43 new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger; invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicInteger;->()V sput-object v0, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->b:Ljava/util/concurrent/atomic/AtomicInteger; return-void .end method .method public constructor (Ljava/lang/String;)V .locals 1 .line 51 invoke-direct {p0, p1}, Lcom/esotericsoftware/spine/attachments/Attachment;->(Ljava/lang/String;)V .line 45 sget-object p1, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->b:Ljava/util/concurrent/atomic/AtomicInteger; invoke-virtual {p1}, Ljava/util/concurrent/atomic/AtomicInteger;->getAndIncrement()I move-result p1 const v0, 0xffff and-int/2addr p1, v0 shl-int/lit8 p1, p1, 0xb iput p1, p0, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->c:I return-void .end method # virtual methods .method public a(Lcom/esotericsoftware/spine/Slot;II[FII)V .locals 20 move-object/from16 v0, p0 shr-int/lit8 v1, p3, 0x1 mul-int v1, v1, p6 add-int v1, p5, v1 .line 67 invoke-virtual/range {p1 .. p1}, Lcom/esotericsoftware/spine/Slot;->c()Lcom/esotericsoftware/spine/Skeleton; move-result-object v3 .line 68 invoke-virtual/range {p1 .. p1}, Lcom/esotericsoftware/spine/Slot;->e()Lcom/badlogic/gdx/utils/FloatArray; move-result-object v4 .line 69 iget-object v5, v0, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->g:[F .line 70 iget-object v6, v0, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->f:[I if-nez v6, :cond_2 .line 72 iget v3, v4, Lcom/badlogic/gdx/utils/FloatArray;->b:I if-lez v3, :cond_0 iget-object v5, v4, Lcom/badlogic/gdx/utils/FloatArray;->a:[F .line 73 :cond_0 invoke-virtual/range {p1 .. p1}, Lcom/esotericsoftware/spine/Slot;->b()Lcom/esotericsoftware/spine/Bone; move-result-object v3 .line 74 invoke-virtual {v3}, Lcom/esotericsoftware/spine/Bone;->i()F move-result v4 invoke-virtual {v3}, Lcom/esotericsoftware/spine/Bone;->j()F move-result v6 .line 75 invoke-virtual {v3}, Lcom/esotericsoftware/spine/Bone;->e()F move-result v7 invoke-virtual {v3}, Lcom/esotericsoftware/spine/Bone;->f()F move-result v8 invoke-virtual {v3}, Lcom/esotericsoftware/spine/Bone;->g()F move-result v9 invoke-virtual {v3}, Lcom/esotericsoftware/spine/Bone;->h()F move-result v3 move/from16 v10, p2 move/from16 v2, p5 :goto_0 if-ge v2, v1, :cond_1 .line 77 aget v11, v5, v10 add-int/lit8 v12, v10, 0x1 aget v12, v5, v12 mul-float v13, v11, v7 mul-float v14, v12, v8 add-float/2addr v13, v14 add-float/2addr v13, v4 .line 78 aput v13, p4, v2 add-int/lit8 v13, v2, 0x1 mul-float v11, v11, v9 mul-float v12, v12, v3 add-float/2addr v11, v12 add-float/2addr v11, v6 .line 79 aput v11, p4, v13 add-int/lit8 v10, v10, 0x2 add-int v2, v2, p6 goto :goto_0 :cond_1 return-void :cond_2 const/4 v7, 0x0 move/from16 v7, p2 const/4 v8, 0x0 const/4 v9, 0x0 const/4 v10, 0x0 :goto_1 if-ge v8, v7, :cond_3 .line 85 aget v11, v6, v9 add-int/lit8 v12, v11, 0x1 add-int/2addr v9, v12 add-int/2addr v10, v11 add-int/lit8 v8, v8, 0x2 goto :goto_1 .line 89 :cond_3 invoke-virtual {v3}, Lcom/esotericsoftware/spine/Skeleton;->g()Lcom/badlogic/gdx/utils/Array; move-result-object v3 iget-object v3, v3, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; .line 90 iget v7, v4, Lcom/badlogic/gdx/utils/FloatArray;->b:I const/4 v8, 0x0 if-nez v7, :cond_5 mul-int/lit8 v10, v10, 0x3 move/from16 v2, p5 :goto_2 if-ge v2, v1, :cond_7 add-int/lit8 v4, v9, 0x1 .line 93 aget v7, v6, v9 add-int/2addr v7, v4 move v9, v4 const/4 v4, 0x0 const/4 v11, 0x0 :goto_3 if-ge v9, v7, :cond_4 .line 96 aget v12, v6, v9 aget-object v12, v3, v12 check-cast v12, Lcom/esotericsoftware/spine/Bone; .line 97 aget v13, v5, v10 add-int/lit8 v14, v10, 0x1 aget v14, v5, v14 add-int/lit8 v15, v10, 0x2 aget v15, v5, v15 .line 98 invoke-virtual {v12}, Lcom/esotericsoftware/spine/Bone;->e()F move-result v16 mul-float v16, v16, v13 invoke-virtual {v12}, Lcom/esotericsoftware/spine/Bone;->f()F move-result v17 mul-float v17, v17, v14 add-float v16, v16, v17 invoke-virtual {v12}, Lcom/esotericsoftware/spine/Bone;->i()F move-result v17 add-float v16, v16, v17 mul-float v16, v16, v15 add-float v4, v4, v16 .line 99 invoke-virtual {v12}, Lcom/esotericsoftware/spine/Bone;->g()F move-result v16 mul-float v13, v13, v16 invoke-virtual {v12}, Lcom/esotericsoftware/spine/Bone;->h()F move-result v16 mul-float v14, v14, v16 add-float/2addr v13, v14 invoke-virtual {v12}, Lcom/esotericsoftware/spine/Bone;->j()F move-result v12 add-float/2addr v13, v12 mul-float v13, v13, v15 add-float/2addr v11, v13 add-int/lit8 v9, v9, 0x1 add-int/lit8 v10, v10, 0x3 goto :goto_3 .line 101 :cond_4 aput v4, p4, v2 add-int/lit8 v4, v2, 0x1 .line 102 aput v11, p4, v4 add-int v2, v2, p6 goto :goto_2 .line 105 :cond_5 iget-object v4, v4, Lcom/badlogic/gdx/utils/FloatArray;->a:[F mul-int/lit8 v7, v10, 0x3 shl-int/lit8 v10, v10, 0x1 move/from16 v2, p5 :goto_4 if-ge v2, v1, :cond_7 add-int/lit8 v11, v9, 0x1 .line 108 aget v9, v6, v9 add-int/2addr v9, v11 const/4 v12, 0x0 const/4 v13, 0x0 :goto_5 if-ge v11, v9, :cond_6 .line 111 aget v14, v6, v11 aget-object v14, v3, v14 check-cast v14, Lcom/esotericsoftware/spine/Bone; .line 112 aget v15, v5, v7 aget v16, v4, v10 add-float v15, v15, v16 add-int/lit8 v16, v7, 0x1 aget v16, v5, v16 add-int/lit8 v17, v10, 0x1 aget v17, v4, v17 add-float v16, v16, v17 add-int/lit8 v17, v7, 0x2 aget v17, v5, v17 .line 113 invoke-virtual {v14}, Lcom/esotericsoftware/spine/Bone;->e()F move-result v18 mul-float v18, v18, v15 invoke-virtual {v14}, Lcom/esotericsoftware/spine/Bone;->f()F move-result v19 mul-float v19, v19, v16 add-float v18, v18, v19 invoke-virtual {v14}, Lcom/esotericsoftware/spine/Bone;->i()F move-result v19 add-float v18, v18, v19 mul-float v18, v18, v17 add-float v12, v12, v18 .line 114 invoke-virtual {v14}, Lcom/esotericsoftware/spine/Bone;->g()F move-result v18 mul-float v15, v15, v18 invoke-virtual {v14}, Lcom/esotericsoftware/spine/Bone;->h()F move-result v18 mul-float v16, v16, v18 add-float v15, v15, v16 invoke-virtual {v14}, Lcom/esotericsoftware/spine/Bone;->j()F move-result v14 add-float/2addr v15, v14 mul-float v15, v15, v17 add-float/2addr v13, v15 add-int/lit8 v11, v11, 0x1 add-int/lit8 v7, v7, 0x3 add-int/lit8 v10, v10, 0x2 goto :goto_5 .line 116 :cond_6 aput v12, p4, v2 add-int/lit8 v9, v2, 0x1 .line 117 aput v13, p4, v9 add-int v2, v2, p6 move v9, v11 goto :goto_4 :cond_7 return-void .end method .method public a([I)V .locals 0 .line 137 iput-object p1, p0, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->f:[I return-void .end method .method public a(Lcom/esotericsoftware/spine/attachments/VertexAttachment;)Z .locals 0 if-ne p0, p1, :cond_0 const/4 p1, 0x1 goto :goto_0 :cond_0 const/4 p1, 0x0 :goto_0 return p1 .end method .method public b(I)V .locals 0 .line 158 iput p1, p0, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->h:I return-void .end method .method public b([F)V .locals 0 .line 148 iput-object p1, p0, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->g:[F return-void .end method .method public g()[I .locals 1 .line 132 iget-object v0, p0, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->f:[I return-object v0 .end method .method public h()[F .locals 1 .line 144 iget-object v0, p0, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->g:[F return-object v0 .end method .method public i()I .locals 1 .line 154 iget v0, p0, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->h:I return v0 .end method .method public j()I .locals 1 .line 163 iget v0, p0, Lcom/esotericsoftware/spine/attachments/VertexAttachment;->c:I return v0 .end method