bronzemanmode: update
bronzemanmode: update
This commit is contained in:
@@ -20,9 +20,20 @@ public interface BronzeManConfig extends Config
|
|||||||
}
|
}
|
||||||
|
|
||||||
@ConfigSection(
|
@ConfigSection(
|
||||||
name = "Chat Commands",
|
name = "Game Mode Options",
|
||||||
description = "",
|
description = "",
|
||||||
position = 1,
|
position = 1,
|
||||||
|
keyName = "gameModeOptions"
|
||||||
|
)
|
||||||
|
default boolean gameModeOptions()
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ConfigSection(
|
||||||
|
name = "Chat Commands",
|
||||||
|
description = "",
|
||||||
|
position = 2,
|
||||||
keyName = "chatCommands"
|
keyName = "chatCommands"
|
||||||
)
|
)
|
||||||
default boolean chatCommands()
|
default boolean chatCommands()
|
||||||
@@ -90,15 +101,39 @@ public interface BronzeManConfig extends Config
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "restoreCommand",
|
||||||
|
name = "Enable restoreunlocks command",
|
||||||
|
description = "Enables the !restoreunlocks command used for restoring your unlocked items file.",
|
||||||
|
position = 3,
|
||||||
|
section = "chatCommands"
|
||||||
|
)
|
||||||
|
default boolean restoreCommand()
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
@ConfigItem(
|
@ConfigItem(
|
||||||
keyName = "deleteCommand",
|
keyName = "deleteCommand",
|
||||||
name = "Enable deleteunlocks command",
|
name = "Enable deleteunlocks command",
|
||||||
description = "Enables the !deleteunlocks command used for deleting your unlocked items file.",
|
description = "Enables the !deleteunlocks command used for deleting your unlocked items file.",
|
||||||
position = 2,
|
position = 4,
|
||||||
section = "chatCommands"
|
section = "chatCommands"
|
||||||
)
|
)
|
||||||
default boolean deleteCommand()
|
default boolean deleteCommand()
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "hideTradeOption",
|
||||||
|
name = "Hide trade with option",
|
||||||
|
description = "Hides the trade with option from the player menu",
|
||||||
|
position = 0,
|
||||||
|
section = "gameModeOptions"
|
||||||
|
)
|
||||||
|
default boolean hideTradeOption()
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,18 +5,13 @@ import java.awt.image.BufferedImage;
|
|||||||
import java.io.BufferedReader;
|
import java.io.BufferedReader;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileReader;
|
import java.io.FileReader;
|
||||||
import java.io.InputStream;
|
|
||||||
import java.io.PrintWriter;
|
import java.io.PrintWriter;
|
||||||
import java.net.URL;
|
|
||||||
import java.nio.file.Files;
|
import java.nio.file.Files;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
import java.nio.file.Paths;
|
import java.nio.file.Paths;
|
||||||
import java.nio.file.StandardCopyOption;
|
import java.nio.file.StandardCopyOption;
|
||||||
import java.text.SimpleDateFormat;
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Calendar;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import javax.imageio.ImageIO;
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
import lombok.AccessLevel;
|
import lombok.AccessLevel;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
@@ -52,6 +47,7 @@ import net.runelite.client.plugins.Plugin;
|
|||||||
import net.runelite.client.plugins.PluginDescriptor;
|
import net.runelite.client.plugins.PluginDescriptor;
|
||||||
import net.runelite.client.plugins.PluginType;
|
import net.runelite.client.plugins.PluginType;
|
||||||
import net.runelite.client.ui.overlay.OverlayManager;
|
import net.runelite.client.ui.overlay.OverlayManager;
|
||||||
|
import net.runelite.client.util.ImageUtil;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Seth Davis
|
* @author Seth Davis
|
||||||
@@ -73,6 +69,9 @@ public class BronzemanPlugin extends Plugin
|
|||||||
private static final String COUNT_CHAT_COMMAND = "!countunlocks";
|
private static final String COUNT_CHAT_COMMAND = "!countunlocks";
|
||||||
private static final String DELETE_CHAT_COMMAND = "!deleteunlocks";
|
private static final String DELETE_CHAT_COMMAND = "!deleteunlocks";
|
||||||
private static final String RESET_CHAT_COMMAND = "!resetunlocks";
|
private static final String RESET_CHAT_COMMAND = "!resetunlocks";
|
||||||
|
private static final String RESTORE_CHAT_COMMAND = "!restoreunlocks";
|
||||||
|
|
||||||
|
private final BufferedImage UNLOCK_IMAGE = ImageUtil.getResourceStreamFromClass(getClass(), "item_unlocked.png");
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
ItemManager itemManager;
|
ItemManager itemManager;
|
||||||
@@ -95,6 +94,8 @@ public class BronzemanPlugin extends Plugin
|
|||||||
private boolean countCommand;
|
private boolean countCommand;
|
||||||
private boolean backupCommand;
|
private boolean backupCommand;
|
||||||
private boolean deleteCommand;
|
private boolean deleteCommand;
|
||||||
|
private boolean restoreCommand;
|
||||||
|
private boolean hideTradeOption;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Loads GrandExchange widgets for further manipulation of the interface
|
* Loads GrandExchange widgets for further manipulation of the interface
|
||||||
@@ -111,7 +112,11 @@ public class BronzemanPlugin extends Plugin
|
|||||||
@Override
|
@Override
|
||||||
protected void startUp()
|
protected void startUp()
|
||||||
{
|
{
|
||||||
loadUnlockImage();
|
/**
|
||||||
|
* Downloads the item-unlock png file to display unlocks
|
||||||
|
**/
|
||||||
|
unlockImage = UNLOCK_IMAGE;
|
||||||
|
|
||||||
unlockedItems = new ArrayList<>();
|
unlockedItems = new ArrayList<>();
|
||||||
overlayManager.add(bronzemanOverlay);
|
overlayManager.add(bronzemanOverlay);
|
||||||
updateConfig();
|
updateConfig();
|
||||||
@@ -320,26 +325,6 @@ public class BronzemanPlugin extends Plugin
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Downloads the item-unlock png file to display unlocks
|
|
||||||
**/
|
|
||||||
private void loadUnlockImage()
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
File imageFile = new File(RuneLite.RUNELITE_DIR, "item-unlocked.png");
|
|
||||||
if (!imageFile.exists())
|
|
||||||
{
|
|
||||||
InputStream in = new URL("https://i.imgur.com/KWVNlsq.png").openStream();
|
|
||||||
Files.copy(in, Paths.get(imageFile.getPath()));
|
|
||||||
}
|
|
||||||
unlockImage = ImageIO.read(imageFile);
|
|
||||||
}
|
|
||||||
catch (Exception e)
|
|
||||||
{
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Subscribe
|
@Subscribe
|
||||||
public void onChatMessage(ChatMessage chatMessage)
|
public void onChatMessage(ChatMessage chatMessage)
|
||||||
@@ -370,6 +355,10 @@ public class BronzemanPlugin extends Plugin
|
|||||||
{
|
{
|
||||||
deleteUnlocks();
|
deleteUnlocks();
|
||||||
}
|
}
|
||||||
|
if (this.restoreCommand && chatMessage.getMessage().toLowerCase().equals(RESTORE_CHAT_COMMAND))
|
||||||
|
{
|
||||||
|
restoreUnlocks();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void backupUnlocks()
|
private void backupUnlocks()
|
||||||
@@ -388,9 +377,7 @@ public class BronzemanPlugin extends Plugin
|
|||||||
Path originalPath = playerFile.toPath();
|
Path originalPath = playerFile.toPath();
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
Calendar cal = Calendar.getInstance();
|
Files.copy(originalPath, Paths.get(playerFile.getPath().replace(".txt", ".backup")),
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("MM_WW_HH_mm_ss");
|
|
||||||
Files.copy(originalPath, Paths.get(playerFolder.getPath() + "_" + sdf.format(cal.getTime()) + ".backup"),
|
|
||||||
StandardCopyOption.REPLACE_EXISTING);
|
StandardCopyOption.REPLACE_EXISTING);
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
@@ -401,6 +388,33 @@ public class BronzemanPlugin extends Plugin
|
|||||||
sendMessage("Successfully backed up current unlock file!");
|
sendMessage("Successfully backed up current unlock file!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void restoreUnlocks()
|
||||||
|
{
|
||||||
|
File playerFolder = new File(RuneLite.PROFILES_DIR, client.getUsername());
|
||||||
|
if (!playerFolder.exists())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
File playerFile = new File(playerFolder, "bronzeman-unlocks.backup");
|
||||||
|
if (!playerFile.exists())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Path originalPath = playerFile.toPath();
|
||||||
|
try
|
||||||
|
{
|
||||||
|
Files.copy(originalPath, Paths.get(playerFile.getPath().replace(".backup", ".txt")),
|
||||||
|
StandardCopyOption.REPLACE_EXISTING);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
e.printStackTrace();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
sendMessage("Successfully restored current unlock file!");
|
||||||
|
}
|
||||||
|
|
||||||
private void resetUnlocks()
|
private void resetUnlocks()
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
@@ -453,7 +467,7 @@ public class BronzemanPlugin extends Plugin
|
|||||||
{
|
{
|
||||||
String option = Text.removeTags(entry.getOption()).toLowerCase();
|
String option = Text.removeTags(entry.getOption()).toLowerCase();
|
||||||
|
|
||||||
if (option.contains("trade with"))
|
if (option.contains("trade with") && this.hideTradeOption)
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -483,6 +497,8 @@ public class BronzemanPlugin extends Plugin
|
|||||||
this.backupCommand = config.backupCommand();
|
this.backupCommand = config.backupCommand();
|
||||||
this.notifyChatUnlock = config.notifyChatUnlock();
|
this.notifyChatUnlock = config.notifyChatUnlock();
|
||||||
this.deleteCommand = config.deleteCommand();
|
this.deleteCommand = config.deleteCommand();
|
||||||
|
this.restoreCommand = config.restoreCommand();
|
||||||
|
this.hideTradeOption = config.hideTradeOption();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 7.2 KiB |
Reference in New Issue
Block a user