modelmixin: use verticesCount/trianglesCount instead of array lengths

This commit is contained in:
Lotto
2018-02-27 15:43:14 +01:00
parent cc8e8f7006
commit 141f5ac778
2 changed files with 9 additions and 3 deletions

View File

@@ -45,7 +45,7 @@ public abstract class RSModelMixin implements RSModel
List<Vertex> vertices = new ArrayList<Vertex>(); List<Vertex> vertices = new ArrayList<Vertex>();
for (int i = 0; i < verticesX.length; ++i) for (int i = 0; i < getVerticesCount(); ++i)
{ {
Vertex v = new Vertex( Vertex v = new Vertex(
verticesX[i], verticesX[i],
@@ -67,9 +67,9 @@ public abstract class RSModelMixin implements RSModel
int[] trianglesZ = getTrianglesZ(); int[] trianglesZ = getTrianglesZ();
List<Vertex> vertices = getVertices(); List<Vertex> vertices = getVertices();
List<Triangle> triangles = new ArrayList<Triangle>(trianglesX.length); List<Triangle> triangles = new ArrayList<Triangle>(getTrianglesCount());
for (int i = 0; i < trianglesX.length; ++i) for (int i = 0; i < getTrianglesCount(); ++i)
{ {
int triangleX = trianglesX[i]; int triangleX = trianglesX[i];
int triangleY = trianglesY[i]; int triangleY = trianglesY[i];

View File

@@ -29,6 +29,9 @@ import net.runelite.mapping.Import;
public interface RSModel extends RSRenderable, Model public interface RSModel extends RSRenderable, Model
{ {
@Import("verticesCount")
int getVerticesCount();
@Import("verticesX") @Import("verticesX")
int[] getVerticesX(); int[] getVerticesX();
@@ -38,6 +41,9 @@ public interface RSModel extends RSRenderable, Model
@Import("verticesZ") @Import("verticesZ")
int[] getVerticesZ(); int[] getVerticesZ();
@Import("indicesCount")
int getTrianglesCount();
@Import("indices1") @Import("indices1")
int[] getTrianglesX(); int[] getTrianglesX();