Skip to content

Commit 12ef0d6

Browse files
authored
Merge pull request #128 from StenAL/features
More client deobfuscation
2 parents 641a3cb + 8a92d13 commit 12ef0d6

40 files changed

+1294
-1298
lines changed

client/src/main/java/agolf/AGolf.java

-8
This file was deleted.

client/src/main/java/agolf/GameApplet.java

+21-16
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,11 @@ public void initApplet(Parameters parameters) {
4949
this.aBoolean3773 = false;
5050
}
5151

52+
@Override
53+
public String getAppletInfo() {
54+
return "-= AGolf =-\nCopyright (c) 2002-2012 Playforia (www.playforia.info)\nProgramming: Pasi Laaksonen\nGraphics: Janne Matilainen";
55+
}
56+
5257
public void textsLoadedNotify(TextManager textManager) {
5358
this.gameContainer.textManager = textManager;
5459
}
@@ -59,25 +64,25 @@ public void defineSounds(SoundManager soundManager) {
5964

6065
public void defineImages(ImageManager imageManager, String var2) {
6166
this.gameContainer.imageManager = imageManager;
62-
imageManager.defineImage("bg-lobbyselect.gif");
63-
imageManager.defineImage("bg-lobby-single.gif");
64-
imageManager.defineImage("bg-lobby-single-fade.jpg");
65-
imageManager.defineImage("bg-lobby-dual.gif");
66-
imageManager.defineImage("bg-lobby-multi.gif");
67-
imageManager.defineImage("bg-lobby-multi-fade.jpg");
68-
imageManager.defineImage("bg-lobby-password.gif");
69-
imageManager.defineImage("shapes.gif");
70-
imageManager.defineImage("elements.gif");
71-
imageManager.defineImage("special.gif");
72-
imageManager.defineImage("balls.gif");
73-
imageManager.defineSharedImage("ranking-icons.gif"); // TODO
74-
imageManager.defineSharedImage("language-flags.png"); // TODO
75-
imageManager.defineSharedImage("credit-background.jpg"); // TODO
76-
imageManager.defineSharedImage("tf-background.gif"); // TODO
67+
imageManager.defineGameImage("bg-lobbyselect.gif");
68+
imageManager.defineGameImage("bg-lobby-single.gif");
69+
imageManager.defineGameImage("bg-lobby-single-fade.jpg");
70+
imageManager.defineGameImage("bg-lobby-dual.gif");
71+
imageManager.defineGameImage("bg-lobby-multi.gif");
72+
imageManager.defineGameImage("bg-lobby-multi-fade.jpg");
73+
imageManager.defineGameImage("bg-lobby-password.gif");
74+
imageManager.defineGameImage("shapes.gif");
75+
imageManager.defineGameImage("elements.gif");
76+
imageManager.defineGameImage("special.gif");
77+
imageManager.defineGameImage("balls.gif");
78+
imageManager.defineSharedImage("ranking-icons.gif");
79+
imageManager.defineSharedImage("language-flags.png");
80+
imageManager.defineSharedImage("credit-background.jpg");
81+
imageManager.defineSharedImage("tf-background.gif");
7782

7883
for (int i = 0; i < GameBackgroundCanvas.trackAdvertSize; ++i) {
7984
if (this.gameContainer.adverts[i] != null) {
80-
imageManager.defineImage("ad" + i, this.gameContainer.adverts[i]);
85+
imageManager.defineGameImage("ad" + i, this.gameContainer.adverts[i]);
8186
}
8287
}
8388
}

client/src/main/java/agolf/LobbySelectPanel.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ public void paint(Graphics g) {
5858
}
5959

6060
public void update(Graphics g) {
61-
g.drawImage(this.gameContainer.imageManager.getImage("bg-lobbyselect"), 0, 0, this);
61+
g.drawImage(this.gameContainer.imageManager.getGameImage("bg-lobbyselect"), 0, 0, this);
6262
g.setColor(Color.black);
6363
g.setFont(GameApplet.fontSerif26b);
6464
if (!this.gameContainer.disableSinglePlayer) {

client/src/main/java/agolf/SpriteManager.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@ protected void loadSprites() {
3131
for (int var1 = 0; var1 < GameBackgroundCanvas.trackAdvertSize; ++var1) {
3232
try {
3333
String var2 = "ad" + var1;
34-
Image var3 = this.imageManager.getIfAvailable(var2);
34+
Image var3 = this.imageManager.getGameImageIfLoaded(var2);
3535
if (var3 != null) {
36-
this.imageManager.unDefineImage(var2);
36+
this.imageManager.unloadGameImage(var2);
3737
this.anIntArrayArray968[var1] = this.imageManager.getPixels(
3838
var3,
3939
GameBackgroundCanvas.anIntArray78[var1] * 15,
@@ -101,8 +101,8 @@ public int[][] method1138() {
101101

102102
private Image[] parseSpriteSheet(
103103
String spriteSheetName, int spriteCount, int spritesPerRow, int spriteWidth, int spriteHeight) {
104-
Image spriteSheet = this.imageManager.getImage(spriteSheetName);
105-
this.imageManager.unDefineImage(spriteSheetName);
104+
Image spriteSheet = this.imageManager.getGameImage(spriteSheetName);
105+
this.imageManager.unloadGameImage(spriteSheetName);
106106
int sheetWidth = this.imageManager.getWidth(spriteSheet);
107107
int sheetHeight = this.imageManager.getHeight(spriteSheet);
108108

client/src/main/java/agolf/lobby/LobbyDualPlayerPanel.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ protected LobbyDualPlayerPanel(GameContainer gameContainer, int width, int heigh
6363
this.height = height;
6464
this.setSize(width, height);
6565
this.synchronizedObject = new Object();
66-
this.setBackground(gameContainer.imageManager.getImage("bg-lobby-dual"));
66+
this.setBackground(gameContainer.imageManager.getGameImage("bg-lobby-dual"));
6767
this.create();
6868
this.challengeFloodProtection = new ChallengeFloodProtection();
6969
}

client/src/main/java/agolf/lobby/LobbyGamePasswordPanel.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public void paint(Graphics g) {
4242
}
4343

4444
public synchronized void update(Graphics g) {
45-
g.drawImage(this.gameContainer.imageManager.getImage("bg-lobby-password"), 0, 0, this);
45+
g.drawImage(this.gameContainer.imageManager.getGameImage("bg-lobby-password"), 0, 0, this);
4646
}
4747

4848
public void keyPressed(KeyEvent evt) {

client/src/main/java/agolf/lobby/LobbyMultiPlayerPanel.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ public void update(Graphics g) {
7272

7373
this.graphics.setColor(GameApplet.colourGameBackground);
7474
this.graphics.fillRect(0, 0, this.width, this.height);
75-
this.graphics.drawImage(this.gameContainer.imageManager.getImage("bg-lobby-multi"), 0, 0, this);
75+
this.graphics.drawImage(this.gameContainer.imageManager.getGameImage("bg-lobby-multi"), 0, 0, this);
7676
Color var2 = new Color(76, 229, 255);
7777
this.graphics.setColor(GameApplet.colourTextBlack);
7878
this.graphics.setFont(GameApplet.fontSerif26b);
@@ -497,7 +497,7 @@ protected void create() {
497497
this.trackList = new MultiColorList(listTitles, var3, 1, this.width / 2 - 40, 125);
498498
this.trackList.setLocation(this.width / 2 + 20, 75);
499499
this.trackList.setBackgroundImage(
500-
this.gameContainer.imageManager.getImage("bg-lobby-multi-fade"), this.width / 2 + 20, 75);
500+
this.gameContainer.imageManager.getGameImage("bg-lobby-multi-fade"), this.width / 2 + 20, 75);
501501
this.trackList.setSelectable(1);
502502
this.trackList.addItemListener(this);
503503
trackList.setListListener(this);

client/src/main/java/agolf/lobby/LobbySinglePlayerPanel.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ public void update(Graphics g) {
6464

6565
this.graphics.setColor(GameApplet.colourGameBackground);
6666
this.graphics.fillRect(0, 0, this.width, this.height);
67-
this.graphics.drawImage(this.gameContainer.imageManager.getImage("bg-lobby-single"), 0, 0, this);
67+
this.graphics.drawImage(this.gameContainer.imageManager.getGameImage("bg-lobby-single"), 0, 0, this);
6868
Color trainingOutlineColour = new Color(14, 219, 14);
6969
Color championshipOutlineColour = new Color(0, 205, 0);
7070
this.graphics.setColor(GameApplet.colourTextBlack);
@@ -295,7 +295,7 @@ private void create() {
295295
this.trackSetList = new MultiColorList(trackSetListTitles, var2, 1, 250, 130);
296296
this.trackSetList.setLocation(this.width - 290, 130);
297297
this.trackSetList.setBackgroundImage(
298-
this.gameContainer.imageManager.getImage("bg-lobby-single-fade"), this.width - 290, 130);
298+
this.gameContainer.imageManager.getGameImage("bg-lobby-single-fade"), this.width - 290, 130);
299299
this.trackSetList.setSelectable(1);
300300
this.trackSetList.addItemListener(this);
301301
trackSetList.setListListener(this);

client/src/main/java/com/aapeli/applet/AApplet.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ public void update(Graphics graphics) {
169169
this.appletGraphics.setColor(backgroundColor);
170170
this.appletGraphics.fillRect(0, 0, this.appletWidth, this.appletHeight);
171171
if (this.imageManager != null && this.backgroundImageKey != null) {
172-
Image image = this.imageManager.getIfAvailable(this.backgroundImageKey);
172+
Image image = this.imageManager.getGameImageIfLoaded(this.backgroundImageKey);
173173
if (image != null) {
174174
this.appletGraphics.drawImage(image, this.backgroundXOffset, this.backgroundYOffset, this);
175175
}

client/src/main/java/com/aapeli/client/AutoPopups.java

+14-14
Original file line numberDiff line numberDiff line change
@@ -5,36 +5,36 @@
55

66
public class AutoPopups {
77

8-
private Class78 aClass78_1327;
9-
private Class88 aClass88_1328;
8+
private SignUpHandler signUpHandler;
9+
private TellFriendHandler tellFriendHandler;
1010
private long aLong1330;
1111
private static final String aString1331 = "facebook";
1212

1313
public AutoPopups(AApplet var1) {
1414
if (!var1.param.getSiteName().equalsIgnoreCase("facebook")) {
15-
this.aClass78_1327 = new Class78(var1);
16-
this.aClass88_1328 = new Class88(var1.param, var1.textManager, var1.imageManager);
15+
this.signUpHandler = new SignUpHandler(var1);
16+
this.tellFriendHandler = new TellFriendHandler(var1.param, var1.textManager, var1.imageManager);
1717
}
1818

1919
this.aLong1330 = 0L;
2020
}
2121

2222
public AutoPopups(Parameters var1, TextManager var2, ImageManager var3) {
2323
if (!var1.getSiteName().equalsIgnoreCase("facebook")) {
24-
this.aClass88_1328 = new Class88(var1, var2, var3);
24+
this.tellFriendHandler = new TellFriendHandler(var1, var2, var3);
2525
}
2626
}
2727

2828
public ColorButton getTellFriendButton() {
29-
return this.aClass88_1328 != null ? this.aClass88_1328.method1699() : null;
29+
return this.tellFriendHandler != null ? this.tellFriendHandler.method1699() : null;
3030
}
3131

3232
public void gameFinished(boolean var1) {
3333
synchronized (this) {
3434
if (this.method1561()) {
35-
if (this.aClass78_1327 != null && this.aClass78_1327.method1599(var1)) {
35+
if (this.signUpHandler != null && this.signUpHandler.method1599(var1)) {
3636
this.method1562();
37-
} else if (this.aClass88_1328 != null && this.aClass88_1328.method1700()) {
37+
} else if (this.tellFriendHandler != null && this.tellFriendHandler.method1700()) {
3838
this.method1562();
3939
}
4040
}
@@ -44,7 +44,7 @@ public void gameFinished(boolean var1) {
4444
public void personalRecord() {
4545
synchronized (this) {
4646
if (this.method1561()) {
47-
if (this.aClass78_1327 != null && this.aClass78_1327.method1600()) {
47+
if (this.signUpHandler != null && this.signUpHandler.method1600()) {
4848
this.method1562();
4949
}
5050
}
@@ -54,7 +54,7 @@ public void personalRecord() {
5454
public void rankingChanged(int var1, int var2) {
5555
synchronized (this) {
5656
if (this.method1561()) {
57-
if (this.aClass78_1327 != null && this.aClass78_1327.method1601(var1, var2)) {
57+
if (this.signUpHandler != null && this.signUpHandler.method1601(var1, var2)) {
5858
this.method1562();
5959
}
6060
}
@@ -63,12 +63,12 @@ public void rankingChanged(int var1, int var2) {
6363

6464
public void close() {
6565
synchronized (this) {
66-
if (this.aClass78_1327 != null) {
67-
this.aClass78_1327.method1602();
66+
if (this.signUpHandler != null) {
67+
this.signUpHandler.method1602();
6868
}
6969

70-
if (this.aClass88_1328 != null) {
71-
this.aClass88_1328.method1701();
70+
if (this.tellFriendHandler != null) {
71+
this.tellFriendHandler.method1701();
7272
}
7373
}
7474
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
package com.aapeli.client;
2+
3+
import java.awt.Image;
4+
5+
class BackgroundLoaderThread implements Runnable {
6+
7+
private IPanel panel;
8+
private ImageManager imageManager;
9+
private String backgroundKey;
10+
private int xOffset;
11+
private int yOffset;
12+
private boolean isSharedImage;
13+
private boolean running;
14+
private final IPanel anIPanel1415;
15+
16+
protected BackgroundLoaderThread(
17+
IPanel unused,
18+
IPanel panel,
19+
ImageManager imageManager,
20+
String backgroundKey,
21+
int xOffset,
22+
int yOffset,
23+
boolean isSharedImage) {
24+
this.anIPanel1415 = unused;
25+
this.panel = panel;
26+
this.imageManager = imageManager;
27+
this.backgroundKey = backgroundKey;
28+
this.xOffset = xOffset;
29+
this.yOffset = yOffset;
30+
this.isSharedImage = isSharedImage;
31+
this.running = true;
32+
Thread thread = new Thread(this);
33+
thread.setDaemon(true);
34+
thread.start();
35+
}
36+
37+
public void run() {
38+
Image image;
39+
if (!this.isSharedImage) {
40+
image = this.imageManager.getGameImage(this.backgroundKey);
41+
} else {
42+
image = this.imageManager.getShared(this.backgroundKey);
43+
}
44+
45+
if (this.running) {
46+
this.panel.setBackground(image, this.xOffset, this.yOffset);
47+
}
48+
}
49+
50+
protected void stop() {
51+
this.running = false;
52+
}
53+
}

0 commit comments

Comments
 (0)