Skip to content

Commit fb4e17c

Browse files
authored
Merge pull request #184 from runejs/scene-refactor
WIP Scene refactor
2 parents c557c36 + d454e0c commit fb4e17c

15 files changed

+499
-435
lines changed

src/main/java/org/runejs/client/Game.java

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1146,7 +1146,7 @@ public static void moveTowardsTarget() {
11461146

11471147
int i = camera.getMoveTo().y;
11481148
int i_3_ = camera.getMoveTo().x;
1149-
int i_4_ = Scene.getFloorDrawHeight(Player.worldLevel, i_3_, i) - camera.getMoveTo().z;
1149+
int i_4_ = Game.currentScene.getFloorDrawHeight(Player.worldLevel, i_3_, i) - camera.getMoveTo().z;
11501150

11511151
int newX = camera.getPosition().x;
11521152
int newY = camera.getPosition().y;
@@ -1189,7 +1189,7 @@ public static void moveTowardsTarget() {
11891189

11901190
i_3_ = camera.getLookAt().x;
11911191
i = camera.getLookAt().y;
1192-
i_4_ = Scene.getFloorDrawHeight(Player.worldLevel, i_3_, i) - camera.getLookAt().z;
1192+
i_4_ = Game.currentScene.getFloorDrawHeight(Player.worldLevel, i_3_, i) - camera.getLookAt().z;
11931193
int i_5_ = -newZ + i_4_;
11941194
int i_6_ = i - newY;
11951195
int i_7_ = i_3_ - newX;
@@ -1464,17 +1464,17 @@ else if(MovedStatics.menuActionRow > 0)
14641464
}
14651465
}
14661466

1467-
if(Scene.clickedTileX != -1) {
1468-
int i = Scene.clickedTileX;
1469-
int i_18_ = Scene.clickedTileY;
1467+
if(currentScene.clickedTileX != -1) {
1468+
int i = currentScene.clickedTileX;
1469+
int i_18_ = currentScene.clickedTileY;
14701470
boolean bool = Pathfinding.doTileWalkTo(Player.localPlayer.pathY[0], Player.localPlayer.pathX[0], i, i_18_);
14711471
if(bool) {
14721472
GameInterface.crossY = MouseHandler.clickY;
14731473
MovedStatics.crossIndex = 0;
14741474
GameInterface.crossX = MouseHandler.clickX;
14751475
MovedStatics.crossType = 1;
14761476
}
1477-
Scene.clickedTileX = -1;
1477+
currentScene.clickedTileX = -1;
14781478
}
14791479

14801480
if(MouseHandler.clickType == 1 && Native.clickToContinueString != null) {
@@ -1825,7 +1825,7 @@ private static void renderNPCs(boolean arg0) {
18251825
if(!npc.actorDefinition.isClickable) {
18261826
i_15_ += -2147483648;
18271827
}
1828-
currentScene.method134(Player.worldLevel, npc.worldX, npc.worldY, Scene.getFloorDrawHeight(Player.worldLevel, npc.worldX + (-1 + npc.size) * 64, npc.size * 64 + -64 + npc.worldY), -64 + npc.size * 64 + 60, npc, npc.anInt3118, i_15_, npc.aBoolean3105);
1828+
currentScene.method134(Player.worldLevel, npc.worldX, npc.worldY, Game.currentScene.getFloorDrawHeight(Player.worldLevel, npc.worldX + (-1 + npc.size) * 64, npc.size * 64 + -64 + npc.worldY), -64 + npc.size * 64 + 60, npc, npc.anInt3118, i_15_, npc.aBoolean3105);
18291829
}
18301830
}
18311831
}
@@ -1861,15 +1861,15 @@ private static void renderPlayers(int arg0, boolean arg1) {
18611861
if(tileX >= 0 && tileX < 104 && tileY >= 0 && tileY < 104) {
18621862
if(player.playerModel != null && player.anInt3283 <= MovedStatics.pulseCycle && MovedStatics.pulseCycle < player.anInt3274) {
18631863
player.aBoolean3287 = false;
1864-
player.anInt3276 = Scene.getFloorDrawHeight(Player.worldLevel, player.worldX, player.worldY);
1864+
player.anInt3276 = Game.currentScene.getFloorDrawHeight(Player.worldLevel, player.worldX, player.worldY);
18651865
currentScene.method112(Player.worldLevel, player.worldX, player.worldY, player.anInt3276, 60, player, player.anInt3118, i_1_, player.anInt3258, player.anInt3281, player.anInt3262, player.anInt3289);
18661866
} else {
18671867
if((0x7f & player.worldX) == 64 && (player.worldY & 0x7f) == 64) {
18681868
if(MovedStatics.anInt2628 == MovedStatics.anIntArrayArray1435[tileX][tileY])
18691869
continue;
18701870
MovedStatics.anIntArrayArray1435[tileX][tileY] = MovedStatics.anInt2628;
18711871
}
1872-
player.anInt3276 = Scene.getFloorDrawHeight(Player.worldLevel, player.worldX, player.worldY);
1872+
player.anInt3276 = Game.currentScene.getFloorDrawHeight(Player.worldLevel, player.worldX, player.worldY);
18731873
currentScene.method134(Player.worldLevel, player.worldX, player.worldY, player.anInt3276, 60, player, player.anInt3118, i_1_, player.aBoolean3105);
18741874
}
18751875
}
@@ -1998,7 +1998,7 @@ public static void calculateCameraPosition() {
19981998
originY += (-originY + localPlayer3dPosY) / 16;
19991999

20002000
// update the camera's Z origin - this wasn't originally here, but it makes sense to do it with the other origins
2001-
int cameraOriginZ = Scene.getFloorDrawHeight(Player.worldLevel, Player.localPlayer.worldX, Player.localPlayer.worldY) - 50;
2001+
int cameraOriginZ = Game.currentScene.getFloorDrawHeight(Player.worldLevel, Player.localPlayer.worldX, Player.localPlayer.worldY) - 50;
20022002

20032003
playerCamera.setOrigin(originX, originY, cameraOriginZ);
20042004

@@ -2031,7 +2031,7 @@ else if (MovedStatics.obfuscatedKeyStatus[99] && !Console.console.consoleOpen)
20312031
int i_3_ = 0;
20322032
int i_1_ = originY >> 7;
20332033
int i_2_ = originX >> 7;
2034-
int i_4_ = Scene.getFloorDrawHeight(Player.worldLevel, originX, originY);
2034+
int i_4_ = Game.currentScene.getFloorDrawHeight(Player.worldLevel, originX, originY);
20352035
if (i_2_ > 3 && i_1_ > 3 && i_2_ < 100 && i_1_ < 100) {
20362036
for (int i_5_ = -4 + i_2_; i_5_ <= 4 + i_2_; i_5_++) {
20372037
for (int i_6_ = -4 + i_1_; 4 + i_1_ >= i_6_; i_6_++) {
@@ -2085,7 +2085,7 @@ public static void renderProjectiles() {
20852085
if (projectile.entityIndex > 0) {
20862086
Npc npc = Player.npcs[-1 + projectile.entityIndex];
20872087
if (npc != null && npc.worldX >= 0 && npc.worldX < 13312 && npc.worldY >= 0 && npc.worldY < 13312)
2088-
projectile.trackTarget(MovedStatics.pulseCycle, 61 + -61, npc.worldY, Scene.getFloorDrawHeight(projectile.anInt2981, npc.worldX, npc.worldY) - projectile.endHeight, npc.worldX);
2088+
projectile.trackTarget(MovedStatics.pulseCycle, 61 + -61, npc.worldY, Game.currentScene.getFloorDrawHeight(projectile.anInt2981, npc.worldX, npc.worldY) - projectile.endHeight, npc.worldX);
20892089
}
20902090
if (projectile.entityIndex < 0) {
20912091
int i = -1 + -projectile.entityIndex;
@@ -2095,7 +2095,7 @@ public static void renderProjectiles() {
20952095
else
20962096
player = Player.localPlayer;
20972097
if (player != null && player.worldX >= 0 && player.worldX < 13312 && player.worldY >= 0 && player.worldY < 13312)
2098-
projectile.trackTarget(MovedStatics.pulseCycle, 0, player.worldY, Scene.getFloorDrawHeight(projectile.anInt2981, player.worldX, player.worldY) - projectile.endHeight, player.worldX);
2098+
projectile.trackTarget(MovedStatics.pulseCycle, 0, player.worldY, Game.currentScene.getFloorDrawHeight(projectile.anInt2981, player.worldX, player.worldY) - projectile.endHeight, player.worldX);
20992099
}
21002100
projectile.move(MovedStatics.anInt199);
21012101
currentScene.method134(Player.worldLevel, (int) projectile.currentX, (int) projectile.currentY, (int) projectile.currentHeight, 60, projectile, projectile.anInt3013, -1, false);

src/main/java/org/runejs/client/Landscape.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -213,9 +213,9 @@ public static void loadRegion() {
213213
if(z < -1 + Player.worldLevel)
214214
z = -1 + Player.worldLevel;
215215
if(!VertexNormal.lowMemory)
216-
Game.currentScene.setHeightLevel(0);
216+
Game.currentScene.setPlane(0);
217217
else
218-
Game.currentScene.setHeightLevel(lowestPlane);
218+
Game.currentScene.setPlane(lowestPlane);
219219
for(int x = 0; x < 104; x++) {
220220
for(int y = 0; y < 104; y++)
221221
MovedStatics.spawnGroundItem(y, x);
@@ -613,7 +613,7 @@ else if(s > 255)
613613
int i_72_ = 240;
614614
int i_73_ = -i_72_ + tile_height[i_68_][x][i_65_];
615615
int i_74_ = tile_height[i_67_][x][i_65_];
616-
Scene.createOccluder(plane, 1, 128 * x, 128 * x, 128 * i_65_, 128 + 128 * i_66_, i_73_, i_74_);
616+
Game.currentScene.createOccluder(plane, 1, 128 * x, 128 * x, 128 * i_65_, 128 + 128 * i_66_, i_73_, i_74_);
617617
for(int i_75_ = i_67_; i_75_ <= i_68_; i_75_++) {
618618
for(int i_76_ = i_65_; i_76_ <= i_66_; i_76_++)
619619
tileCullingBitsets[i_75_][x][i_76_] = BitUtils.bitWiseAND(tileCullingBitsets[i_75_][x][i_76_], renderRule1 ^ 0xffffffff);
@@ -652,7 +652,7 @@ else if(s > 255)
652652
int lowestOcclusionVertexHeight = tile_height[lowestOcclusionPlane][lowestOcclusionX][y];
653653
int highestOcclusionVertexHeightOffset = 240;
654654
int highestOcclusionVertexHeight = tile_height[highestOcclusionPlane][lowestOcclusionX][y] - highestOcclusionVertexHeightOffset;
655-
Scene.createOccluder(plane, 2, 128 * lowestOcclusionX, 128 * highestOcclusionX + 128, 128 * y, y * 128, highestOcclusionVertexHeight, lowestOcclusionVertexHeight);
655+
Game.currentScene.createOccluder(plane, 2, 128 * lowestOcclusionX, 128 * highestOcclusionX + 128, 128 * y, y * 128, highestOcclusionVertexHeight, lowestOcclusionVertexHeight);
656656
for(int occludedPlane = lowestOcclusionPlane; highestOcclusionPlane >= occludedPlane; occludedPlane++) {
657657
for(int occludedX = lowestOcclusionX; occludedX <= highestOcclusionX; occludedX++)
658658
tileCullingBitsets[occludedPlane][occludedX][y] = BitUtils.bitWiseAND(tileCullingBitsets[occludedPlane][occludedX][y], i_59_ ^ 0xffffffff);
@@ -688,7 +688,7 @@ else if(s > 255)
688688
}
689689
if((-i_89_ + i_90_ + 1) * (1 + i_92_ - i_91_) >= 4) {
690690
int i_95_ = tile_height[_plane][i_89_][i_91_];
691-
Scene.createOccluder(plane, 4, i_89_ * 128, i_90_ * 128 + 128, 128 * i_91_, i_92_ * 128 + 128, i_95_, i_95_);
691+
Game.currentScene.createOccluder(plane, 4, i_89_ * 128, i_90_ * 128 + 128, 128 * i_91_, i_92_ * 128 + 128, i_95_, i_95_);
692692
for(int i_96_ = i_89_; i_96_ <= i_90_; i_96_++) {
693693
for(int i_97_ = i_91_; i_92_ >= i_97_; i_97_++)
694694
tileCullingBitsets[_plane][i_96_][i_97_] = BitUtils.bitWiseAND(tileCullingBitsets[_plane][i_96_][i_97_], i_60_ ^ 0xffffffff);

src/main/java/org/runejs/client/MovedStatics.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -471,7 +471,7 @@ public static int getCutsceneCameraPlane() {
471471

472472
Point3d cameraPos = Game.cutsceneCamera.getPosition();
473473

474-
int i = Scene.getFloorDrawHeight(Player.worldLevel, cameraPos.x, cameraPos.y);
474+
int i = Game.currentScene.getFloorDrawHeight(Player.worldLevel, cameraPos.x, cameraPos.y);
475475
if (i + -cameraPos.z < 800 && (tile_flags[Player.worldLevel][cameraPos.x >> 7][cameraPos.y >> 7] & 0x4) != 0)
476476
return Player.worldLevel;
477477
return 3;
@@ -729,7 +729,7 @@ public static void method1013() {
729729
if (GameInterface.itemCurrentlySelected == 0 && Game.widgetSelected == 0) {
730730
String tileCoords = "";
731731
if (Configuration.DEBUG_CONTEXT) {
732-
tileCoords = MessageFormat.format("<col=8F8FFF>({0}, {1})</col>", Integer.toString(Scene.hoveredTileX + baseX), Integer.toString(Scene.hoveredTileY + baseY));
732+
tileCoords = MessageFormat.format("<col=8F8FFF>({0}, {1})</col>", Integer.toString(Game.currentScene.hoveredTileX + baseX), Integer.toString(Game.currentScene.hoveredTileY + baseY));
733733
}
734734

735735
addActionRow(English.walkHere, 0, MouseHandler.mouseX, MouseHandler.mouseY, ActionRowType.WALK_HERE.getId(), tileCoords);
@@ -1383,7 +1383,7 @@ public static Point2d getProjectedScreenPosition(int z, int y, int x) {
13831383
return null;
13841384
}
13851385

1386-
int drawHeight = Scene.getFloorDrawHeight(Player.worldLevel, x, y) - z;
1386+
int drawHeight = Game.currentScene.getFloorDrawHeight(Player.worldLevel, x, y) - z;
13871387

13881388
Point3d cameraPos = Game.getActiveCamera().getPosition();
13891389
CameraRotation rotation = Game.getActiveCamera().getRotation();
@@ -1898,7 +1898,7 @@ public static void spawnGroundItem(int arg1, int arg2) {
18981898
}
18991899
}
19001900
int i_37_ = 1610612736 + (arg1 << 7) + arg2;
1901-
Game.currentScene.addGroundItemTile(arg2, arg1, Player.worldLevel, Scene.getFloorDrawHeight(Player.worldLevel, 64 + 128 * arg2, 64 + 128 * arg1), i_37_, item, item_35_, item_34_);
1901+
Game.currentScene.addGroundItemTile(arg2, arg1, Player.worldLevel, Game.currentScene.getFloorDrawHeight(Player.worldLevel, 64 + 128 * arg2, 64 + 128 * arg1), i_37_, item, item_35_, item_34_);
19021902
}
19031903
}
19041904

src/main/java/org/runejs/client/frame/Minimap.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,14 @@ public class Minimap extends FramePieceRenderer {
3030
* Images for function icons on the minimap (e.g. quests, instructors)
3131
*/
3232
public static ImageRGB[] mapFunctionIcons;
33+
/**
34+
* Minimap tile rotations (move to Minimap class)
35+
*/
36+
public static int[][] anIntArrayArray121 = new int[][]{{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}, {12, 8, 4, 0, 13, 9, 5, 1, 14, 10, 6, 2, 15, 11, 7, 3}, {15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0}, {3, 7, 11, 15, 2, 6, 10, 14, 1, 5, 9, 13, 0, 4, 8, 12}};
37+
/**
38+
* Minimap tile masks (move to Minimap class)
39+
*/
40+
public static int[][] anIntArrayArray129 = new int[][]{new int[16], {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1}, {1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1}, {0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1}, {1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0}, {1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1}, {1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1}};
3341
private static int[] resizableMinimapOffsets1;
3442
private static int[] resizableMinimapOffsets2;
3543
private static ProducingGraphicsBuffer resizableMiniMapimage;

src/main/java/org/runejs/client/frame/ScreenController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ public static void setBounds() {
108108
}
109109

110110

111-
Scene.computeTileVisibilityMaps(500, 800, frameMode == ScreenMode.FIXED ? 512 : drawWidth, frameMode == ScreenMode.FIXED ? 334 : drawHeight, is);
111+
Game.currentScene.precalculateTileVisibility(500, 800, frameMode == ScreenMode.FIXED ? 512 : drawWidth, frameMode == ScreenMode.FIXED ? 334 : drawHeight, is);
112112
Game.gameCanvas.setSize(ScreenController.frameMode == ScreenMode.FIXED ? 512 : ScreenController.drawWidth, ScreenController.frameMode == ScreenMode.FIXED ? 334 : ScreenController.drawHeight);
113113

114114
if (Game.gameStatusCode <= 35 && Game.gameStatusCode >= 30) {

src/main/java/org/runejs/client/media/renderable/Model.java

Lines changed: 23 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import org.runejs.client.media.VertexNormal;
1010
import org.runejs.client.Class40_Sub5_Sub15;
1111
import org.runejs.OldEngine.ModelLoader;
12+
import org.runejs.client.scene.camera.CameraRotation;
1213

1314
public class Model extends Renderable {
1415
public static Model aClass40_Sub5_Sub17_Sub5_3170 = new Model();
@@ -734,17 +735,23 @@ public void method799() {
734735
}
735736
}
736737

737-
public void renderAtPoint(int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, int arg8) {
738+
public void renderAtPoint(int arg0, CameraRotation cameraRotation, int x, int z, int y, int arg8) {
738739
if(anInt3169 != 1)
739740
method799();
740-
int i = arg7 * arg4 - arg5 * arg3 >> 16;
741-
int i_4_ = arg6 * arg1 + i * arg2 >> 16;
742-
int i_5_ = diagonal2DAboveOrigin * arg2 >> 16;
741+
742+
int yawSine = cameraRotation.yawSine;
743+
int yawCosine = cameraRotation.yawCosine;
744+
int pitchSine = cameraRotation.pitchSine;
745+
int pitchCosine = cameraRotation.pitchCosine;
746+
747+
int i = y * yawCosine - x * yawSine >> 16;
748+
int i_4_ = z * pitchSine + i * pitchCosine >> 16;
749+
int i_5_ = diagonal2DAboveOrigin * pitchCosine >> 16;
743750
int i_6_ = i_4_ + i_5_;
744751
if(i_6_ <= 50/* || i_4_ >= 3500*/) {
745752
return;
746753
}
747-
int i_7_ = arg7 * arg3 + arg5 * arg4 >> 16;
754+
int i_7_ = y * yawSine + x * yawCosine >> 16;
748755
int i_8_ = i_7_ - diagonal2DAboveOrigin << 9;
749756
if(i_8_ / i_6_ >= Rasterizer3D.anInt2934) {
750757
return;
@@ -753,18 +760,18 @@ public void renderAtPoint(int arg0, int arg1, int arg2, int arg3, int arg4, int
753760
if(i_9_ / i_6_ <= Rasterizer3D.anInt2942) {
754761
return;
755762
}
756-
int i_10_ = arg6 * arg2 - i * arg1 >> 16;
757-
int i_11_ = diagonal2DAboveOrigin * arg1 >> 16;
763+
int i_10_ = z * pitchCosine - i * pitchSine >> 16;
764+
int i_11_ = diagonal2DAboveOrigin * pitchSine >> 16;
758765
int i_12_ = i_10_ + i_11_ << 9;
759766
if(i_12_ / i_6_ <= Rasterizer3D.anInt2935) {
760767
return;
761768
}
762-
int i_13_ = i_11_ + (modelHeight * arg2 >> 16);
769+
int i_13_ = i_11_ + (modelHeight * pitchCosine >> 16);
763770
int i_14_ = i_10_ - i_13_ << 9;
764771
if(i_14_ / i_6_ >= Rasterizer3D.anInt2941) {
765772
return;
766773
}
767-
int i_15_ = i_5_ + (modelHeight * arg1 >> 16);
774+
int i_15_ = i_5_ + (modelHeight * pitchSine >> 16);
768775
boolean bool = false;
769776
boolean bool_16_ = false;
770777
if(i_4_ - i_15_ <= 50)
@@ -815,14 +822,14 @@ public void renderAtPoint(int arg0, int arg1, int arg2, int arg3, int arg4, int
815822
i_29_ = i_29_ * i_25_ - i_27_ * i_24_ >> 16;
816823
i_27_ = i_30_;
817824
}
818-
i_27_ += arg5;
819-
i_28_ += arg6;
820-
i_29_ += arg7;
821-
int i_31_ = i_29_ * arg3 + i_27_ * arg4 >> 16;
822-
i_29_ = i_29_ * arg4 - i_27_ * arg3 >> 16;
825+
i_27_ += x;
826+
i_28_ += z;
827+
i_29_ += y;
828+
int i_31_ = i_29_ * yawSine + i_27_ * yawCosine >> 16;
829+
i_29_ = i_29_ * yawCosine - i_27_ * yawSine >> 16;
823830
i_27_ = i_31_;
824-
i_31_ = i_28_ * arg2 - i_29_ * arg1 >> 16;
825-
i_29_ = i_28_ * arg1 + i_29_ * arg2 >> 16;
831+
i_31_ = i_28_ * pitchCosine - i_29_ * pitchSine >> 16;
832+
i_29_ = i_28_ * pitchSine + i_29_ * pitchCosine >> 16;
826833
i_28_ = i_31_;
827834
vertexScreenZ[i_26_] = i_29_ - i_4_;
828835
if(i_29_ >= 50) {

src/main/java/org/runejs/client/media/renderable/Renderable.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
11
package org.runejs.client.media.renderable;
22

33
import org.runejs.client.node.CachedNode;
4+
import org.runejs.client.scene.camera.CameraRotation;
45

56
public abstract class Renderable extends CachedNode {
67
public int modelHeight = 1000;
78

8-
public void renderAtPoint(int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, int arg8) {
9+
public void renderAtPoint(int arg0, CameraRotation cameraRotation, int x, int z, int y, int arg8) {
910
Model class40_sub5_sub17_sub5 = getRotatedModel();
1011
if(class40_sub5_sub17_sub5 != null) {
1112
modelHeight = class40_sub5_sub17_sub5.modelHeight;
12-
class40_sub5_sub17_sub5.renderAtPoint(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);
13+
class40_sub5_sub17_sub5.renderAtPoint(arg0, cameraRotation, x, z, y, arg8);
1314
}
1415
}
1516

0 commit comments

Comments
 (0)