@@ -1,7 +1,7 @@
|
||||

|
||||

|
||||
|
||||
[](https://discord.gg/HN5gf3m) [](https://travis-ci.org/runelite-extended/runelite)
|
||||
RuneLit is a fork of [RuneLite](https://github.com/runelite/runelite) that provides more functionality and less restrictions while staying open source. This is meant to directly compete with 3rd party RL clients that are trying to sell their code.
|
||||
RuneLitePlus is a fork of [RuneLite](https://github.com/runelite/runelite) that provides more functionality and less restrictions while staying open source. This is meant to directly compete with 3rd party RL clients that are trying to sell their code.
|
||||
|
||||
# Notable Features:
|
||||
|
||||
|
||||
@@ -213,7 +213,7 @@ public class RuneLite
|
||||
|
||||
if (options.has("flexo"))
|
||||
{
|
||||
System.out.println("[RuneLit] Flexo config enabled");
|
||||
System.out.println("[RuneLitePlus] Flexo config enabled");
|
||||
ConfigPanel.flexoConfigEnabled = true;
|
||||
}
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
*/
|
||||
|
||||
/*
|
||||
Modified java.awt.Robot for use with RuneLit. Hopefully we can make it stand far apart.
|
||||
Modified java.awt.Robot for use with RuneLitePlus. Hopefully we can make it stand far apart.
|
||||
Uses
|
||||
https://github.com/JoonasVali/NaturalMouseMotion
|
||||
for mouse motion.
|
||||
|
||||
@@ -45,6 +45,7 @@ import javax.swing.JPanel;
|
||||
import javax.swing.border.EmptyBorder;
|
||||
import javax.swing.event.HyperlinkEvent;
|
||||
import net.runelite.api.Client;
|
||||
import net.runelite.client.RuneLite;
|
||||
import net.runelite.client.events.SessionClose;
|
||||
import net.runelite.client.events.SessionOpen;
|
||||
import net.runelite.client.RuneLiteProperties;
|
||||
@@ -176,10 +177,10 @@ public class InfoPanel extends PluginPanel
|
||||
}
|
||||
});
|
||||
|
||||
actionsContainer.add(buildLinkPanel(GITHUB_ICON, "Report an issue or", "make a suggestion", runeLiteProperties.getGithubLink()));
|
||||
actionsContainer.add(buildLinkPanel(DISCORD_ICON, "Talk to us on our", "discord server", runeLiteProperties.getDiscordInvite()));
|
||||
actionsContainer.add(buildLinkPanel(PATREON_ICON, "Become a patron to", "help support RuneLite", runeLiteProperties.getPatreonLink()));
|
||||
actionsContainer.add(buildLinkPanel(WIKI_ICON, "Information about", "RuneLite and plugins", runeLiteProperties.getWikiLink()));
|
||||
//actionsContainer.add(buildLinkPanel(GITHUB_ICON, "Report an issue or", "make a suggestion", runeLiteProperties.getGithubLink()));
|
||||
//actionsContainer.add(buildLinkPanel(DISCORD_ICON, "Talk to us on our", "discord server", runeLiteProperties.getDiscordInvite()));
|
||||
//actionsContainer.add(buildLinkPanel(PATREON_ICON, "Become a patron to", "help support RuneLite", runeLiteProperties.getPatreonLink()));
|
||||
//actionsContainer.add(buildLinkPanel(WIKI_ICON, "Information about", "RuneLite and plugins", runeLiteProperties.getWikiLink()));
|
||||
|
||||
add(versionPanel, BorderLayout.NORTH);
|
||||
add(actionsContainer, BorderLayout.CENTER);
|
||||
@@ -285,9 +286,9 @@ public class InfoPanel extends PluginPanel
|
||||
}
|
||||
else
|
||||
{
|
||||
emailLabel.setContentType("text/html");
|
||||
emailLabel.setText("<a href=\"" + RUNELITE_LOGIN + "\">Login</a> to sync settings to the cloud.");
|
||||
loggedLabel.setText("Not logged in");
|
||||
//emailLabel.setContentType("text/html");
|
||||
//emailLabel.setText("<a href=\"" + RUNELITE_LOGIN + "\">Login</a> to sync settings to the cloud.");
|
||||
//loggedLabel.setText("Not logged in");
|
||||
actionsContainer.remove(syncPanel);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ import net.runelite.client.config.ConfigItem;
|
||||
|
||||
import java.awt.*;
|
||||
|
||||
@ConfigGroup("runelit")
|
||||
@ConfigGroup("pluginsorter")
|
||||
public interface PluginSorterConfig extends Config {
|
||||
|
||||
Color rlDefault = new Color(250, 155, 23);
|
||||
|
||||
@@ -22,7 +22,7 @@ import java.util.List;
|
||||
@PluginDescriptor(
|
||||
name = "Plugin Organizer",
|
||||
description = "Hides and colors 3rd party plugins for better control",
|
||||
tags = {"Fuck RL","Abex is shit :p"},
|
||||
tags = {"plugins","organizer"},
|
||||
type = PluginType.PLUGIN_ORGANIZER
|
||||
)
|
||||
public class PluginSorterPlugin extends Plugin {
|
||||
|
||||
@@ -183,7 +183,7 @@ public class ClientLoader
|
||||
if (!file.getValue().equals(ourHash))
|
||||
{
|
||||
if (hijackedClientFile.exists()) {
|
||||
Logger.getAnonymousLogger().warning("[RuneLit] Hash checking / Client patching skipped due to hijacked client.");
|
||||
Logger.getAnonymousLogger().warning("[RuneLitePlus] Hash checking / Client patching skipped due to hijacked client.");
|
||||
updateCheckMode = VANILLA;
|
||||
break;
|
||||
} else {
|
||||
@@ -239,17 +239,17 @@ public class ClientLoader
|
||||
hooks.projectileClass.equals("") ||
|
||||
hooks.actorClass.equals("") ||
|
||||
hooks.playerClass.equals("")) {
|
||||
System.out.println("[RuneLit] Bad hooks, re-scraping.");
|
||||
System.out.println("[RuneLitePlus] Bad hooks, re-scraping.");
|
||||
ByteCodePatcher.clientInstance = initHookScrape(ByteCodeUtils.injectedClientFile.getPath());
|
||||
ByteCodePatcher.findHooks(injectedClientFile.getPath());
|
||||
} else {
|
||||
ByteCodePatcher.clientInstance = hooks.clientInstance;
|
||||
ByteCodePatcher.applyHooks(ByteCodeUtils.injectedClientFile, hooks);
|
||||
System.out.println("[RuneLit] Loaded hooks");
|
||||
System.out.println("[RuneLitePlus] Loaded hooks");
|
||||
}
|
||||
|
||||
} else {
|
||||
System.out.println("[RuneLit] Hooks file not found, scraping hooks.");
|
||||
System.out.println("[RuneLitePlus] Hooks file not found, scraping hooks.");
|
||||
ByteCodePatcher.clientInstance = initHookScrape(ByteCodeUtils.injectedClientFile.getPath());
|
||||
ByteCodePatcher.hooks.protectedStuff = preotectedStuffs;
|
||||
ByteCodePatcher.findHooks(injectedClientFile.getPath());
|
||||
|
||||
@@ -127,7 +127,7 @@ public class ByteCodePatcher {
|
||||
Method method = current.getDeclaredMethod("setCombatInfo", new Class[] { int.class, int.class, int.class, int.class, int.class, int.class });
|
||||
if (method!=null) {
|
||||
hooks.actorClass = current.getName();
|
||||
System.out.println("[RuneLit] Transforming Actor at class: "+current.getName());
|
||||
System.out.println("[RuneLitePlus] Transforming Actor at class: "+current.getName());
|
||||
ActorTransform at = new ActorTransform();
|
||||
at.modify(current);
|
||||
}
|
||||
@@ -139,7 +139,7 @@ public class ByteCodePatcher {
|
||||
}
|
||||
|
||||
public static void transformActor(Class actor) {
|
||||
System.out.println("[RuneLit] Transforming Actor at class: "+actor.getName());
|
||||
System.out.println("[RuneLitePlus] Transforming Actor at class: "+actor.getName());
|
||||
ActorTransform at = new ActorTransform();
|
||||
at.modify(actor);
|
||||
}
|
||||
@@ -149,7 +149,7 @@ public class ByteCodePatcher {
|
||||
Method method = current.getDeclaredMethod("projectileMoved", new Class[] { int.class, int.class, int.class, int.class});
|
||||
if (method!=null) {
|
||||
hooks.projectileClass = current.getName();
|
||||
System.out.println("[RuneLit] Transforming Projectile at class: "+current.getName());
|
||||
System.out.println("[RuneLitePlus] Transforming Projectile at class: "+current.getName());
|
||||
ProjectileTransform pt = new ProjectileTransform();
|
||||
pt.modify(current);
|
||||
}
|
||||
@@ -161,7 +161,7 @@ public class ByteCodePatcher {
|
||||
}
|
||||
|
||||
public static void transformProjectile(Class projectile) {
|
||||
System.out.println("[RuneLit] Transforming Projectile at class: "+projectile.getName());
|
||||
System.out.println("[RuneLitePlus] Transforming Projectile at class: "+projectile.getName());
|
||||
ProjectileTransform pt = new ProjectileTransform();
|
||||
pt.modify(projectile);
|
||||
}
|
||||
@@ -171,7 +171,7 @@ public class ByteCodePatcher {
|
||||
Method method = current.getDeclaredMethod("getSkullIcon");
|
||||
if (method!=null) {
|
||||
hooks.playerClass = current.getName();
|
||||
System.out.println("[RuneLit] Transforming Player at class: "+current.getName());
|
||||
System.out.println("[RuneLitePlus] Transforming Player at class: "+current.getName());
|
||||
PlayerTransform pt = new PlayerTransform();
|
||||
pt.modify(current);
|
||||
}
|
||||
@@ -183,13 +183,13 @@ public class ByteCodePatcher {
|
||||
}
|
||||
|
||||
public static void transformPlayer(Class player) {
|
||||
System.out.println("[RuneLit] Transforming Player at class: "+player.getName());
|
||||
System.out.println("[RuneLitePlus] Transforming Player at class: "+player.getName());
|
||||
PlayerTransform pt = new PlayerTransform();
|
||||
pt.modify(player);
|
||||
}
|
||||
|
||||
public static void transformBlackjack(Class clazz) {
|
||||
System.out.println("[RuneLit] Transforming Blackjack at class: "+clazz.getName());
|
||||
System.out.println("[RuneLitePlus] Transforming Blackjack at class: "+clazz.getName());
|
||||
ClientTransform bt = new ClientTransform();
|
||||
bt.modify(clazz);
|
||||
}
|
||||
|
||||
@@ -17,13 +17,13 @@ public class ErrorTransform implements Transform {
|
||||
@Override
|
||||
public void modify(Class clazz) {
|
||||
try {
|
||||
System.out.println("[RuneLit] Transforming error method at class: "+ERROR_INSTANCE_CLASS);
|
||||
System.out.println("[RuneLitePlus] Transforming error method at class: "+ERROR_INSTANCE_CLASS);
|
||||
ct = ByteCodePatcher.classPool.get(ERROR_INSTANCE_CLASS);
|
||||
CtMethod error = ct.getDeclaredMethod(ERROR_INSTANCE_METHOD);
|
||||
ct.removeMethod(error);
|
||||
error = CtMethod.make("public static void a(String string, Throwable throwable, byte by) {"+
|
||||
" throwable.printStackTrace();"+
|
||||
" System.out.println(\"[RuneLit] Prevented preceeding stack trace from being sent to Jagex\");"+
|
||||
" System.out.println(\"[RuneLitePlus] Prevented preceeding stack trace from being sent to Jagex\");"+
|
||||
" }", ct);
|
||||
ct.addMethod(error);
|
||||
ByteCodePatcher.modifiedClasses.add(ct);
|
||||
|
||||
@@ -123,7 +123,7 @@ public class RuneLiteSplashScreen
|
||||
panel.add(version, versionConstraints);
|
||||
|
||||
// version
|
||||
final JLabel litVersion = new JLabel("Lit Version : PRE-" + RuneLite.RUNELIT_VERSION);
|
||||
final JLabel litVersion = new JLabel("Plus Version : PRE-" + RuneLite.RUNELIT_VERSION);
|
||||
litVersion.setForeground(Color.GREEN);
|
||||
litVersion.setFont(FontManager.getRunescapeSmallFont());
|
||||
litVersion.setForeground(litVersion.getForeground().darker());
|
||||
|
||||
Reference in New Issue
Block a user