Skip to content

Commit 536e719

Browse files
authored
Merge pull request #190 from runejs/frame-renderers
refactor: create FrameRenderer interface, convert FrameRenderer to ResizableFrameRenderer
2 parents 48e2dc3 + 9c6e6bb commit 536e719

File tree

3 files changed

+44
-39
lines changed

3 files changed

+44
-39
lines changed
Lines changed: 1 addition & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,4 @@
11
package org.runejs.client.frame;
22

3-
import org.runejs.client.Game;
4-
import org.runejs.client.frame.tab.TabProducer;
5-
6-
public class FrameRenderer implements Runnable {
7-
private final Minimap minimap;
8-
private final TabProducer tabProducer;
9-
10-
public FrameRenderer(Minimap minimap, TabProducer tabProducer) {
11-
this.minimap = minimap;
12-
this.tabProducer = tabProducer;
13-
}
14-
15-
@Override
16-
public void run() {
17-
while(true){
18-
// System.out.println("Rendering");
19-
20-
if(Game.gameStatusCode <= 35 && Game.gameStatusCode >= 30){
21-
minimap.RenderResizableMiniMapArea(ScreenController.drawWidth - 210, 0);
22-
}
23-
if(Game.gameStatusCode <= 35 && Game.gameStatusCode >= 30){
24-
tabProducer.RenderResizableSideBarArea();
25-
}
26-
try {
27-
Thread.sleep(1);
28-
} catch(InterruptedException e) {
29-
e.printStackTrace();
30-
}
31-
32-
}
33-
}
3+
public interface FrameRenderer extends Runnable {
344
}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
package org.runejs.client.frame;
2+
3+
import org.runejs.client.Game;
4+
import org.runejs.client.frame.tab.TabProducer;
5+
6+
public class ResizableFrameRenderer implements FrameRenderer {
7+
private final Minimap minimap;
8+
private final TabProducer tabProducer;
9+
10+
public ResizableFrameRenderer(Minimap minimap, TabProducer tabProducer) {
11+
this.minimap = minimap;
12+
this.tabProducer = tabProducer;
13+
}
14+
15+
@Override
16+
public void run() {
17+
while(true){
18+
if(Game.gameStatusCode <= 35 && Game.gameStatusCode >= 30){
19+
minimap.RenderResizableMiniMapArea(ScreenController.drawWidth - 210, 0);
20+
}
21+
if(Game.gameStatusCode <= 35 && Game.gameStatusCode >= 30){
22+
tabProducer.RenderResizableSideBarArea();
23+
}
24+
try {
25+
Thread.sleep(1);
26+
} catch(InterruptedException e) {
27+
e.printStackTrace();
28+
}
29+
30+
}
31+
}
32+
}

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

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
import org.runejs.client.media.renderable.actor.Player;
1313
import org.runejs.client.message.outbound.chat.SetChatOptionsOutboundMessage;
1414
import org.runejs.client.net.OutgoingPackets;
15-
import org.runejs.client.scene.*;
1615
import org.runejs.client.*;
1716

1817
import java.awt.*;
@@ -125,14 +124,17 @@ public static void setBounds() {
125124
}
126125
}
127126

127+
/**
128+
* TODO (jkm) move all this to ResizableFrameRenderer
129+
*/
128130
public static void RenderResizableUI() {
129131
if (drawingThread == null) {
130-
renderer = new FrameRenderer(minimap, tabProducer);
132+
renderer = new ResizableFrameRenderer(minimap, tabProducer);
131133
drawingThread = new Thread(renderer);
132134
drawingThread.start();
133135
}
134136
minimap.drawResizableMiniMapArea(drawWidth - 210, 0);
135-
// RenderTabArea(drawWidth - 234, drawHeight - (337));
137+
RenderTabArea(drawWidth - 234, drawHeight - (337));
136138
RenderChatArea(0, drawHeight - (162));
137139

138140
tabProducer.drawResizableSideBarArea(drawWidth - 241, drawHeight - (334));
@@ -198,6 +200,9 @@ public static Dimension getInnerSize(Frame frame) {
198200
return size;
199201
}
200202

203+
/**
204+
* TODO (jkm) move all this to ResizableFrameRenderer
205+
*/
201206
public static void RenderTabArea(int x, int y) {
202207
// height 337
203208
// width 234
@@ -208,10 +213,11 @@ public static void RenderTabArea(int x, int y) {
208213
drawFramePieceCutout(MovedStatics.tabBottom, x, y + 300, MovedStatics.tabBottom.width - 35, MovedStatics.tabBottom.height, 35, 0);
209214
drawFramePieceCutout(MovedStatics.tabTop, x, y, MovedStatics.tabTop.width - 15, MovedStatics.tabTop.height - 6, 15, 6);
210215
drawFramePiece(MovedStatics.tabImageProducer, x + 22, y + 39);
211-
212-
213216
}
214217

218+
/**
219+
* TODO (jkm) move all this to ResizableFrameRenderer
220+
*/
215221
public static void RenderChatArea(int x, int y) {
216222
//width 516
217223
//height 184
@@ -223,8 +229,6 @@ public static void RenderChatArea(int x, int y) {
223229
// System.out.println(Class40_Sub5_Sub1.chatboxRight.height + (Class17.chatboxTop.height-3) + HuffmanEncoding.aProducingGraphicsBuffer_1541.height);
224230

225231
drawFramePieceCutout(MovedStatics.tabPieveLowerRight, x + 496, y + 16, 20, MovedStatics.tabPieveLowerRight.height, 0, 0);
226-
227-
228232
}
229233

230234
public static void drawFramePiece(ProducingGraphicsBuffer framePiece, int x, int y) {
@@ -235,7 +239,6 @@ public static void drawFramePieceCutout(ProducingGraphicsBuffer framePiece, int
235239
Rasterizer.copyPixelsCutOff(framePiece.pixels, framePiece.width, framePiece.height, x, y, width, height, offsetX, offsetY);
236240
}
237241

238-
239242
public static boolean isCoordinatesIn3dScreen(int x, int y) {
240243
if (frameMode == ScreenMode.FIXED) {
241244
return x > 4 && y > 4 && x < 516 && y < 338;

0 commit comments

Comments
 (0)