Construction Swap Fix (#442)

* Fix Construction.

* Fix CheckStyle
This commit is contained in:
Ganom
2019-05-30 02:29:29 -04:00
committed by Kyleeld
parent 4fef4c7328
commit 38a5aad4a0
2 changed files with 748 additions and 687 deletions

View File

@@ -544,7 +544,6 @@ public interface MenuEntrySwapperConfig extends Config
} }
@ConfigItem( @ConfigItem(
keyName = "removeObjects", keyName = "removeObjects",
name = "Remove Objects", name = "Remove Objects",
@@ -809,7 +808,7 @@ public interface MenuEntrySwapperConfig extends Config
//------------------------------------------------------------// //------------------------------------------------------------//
@ConfigItem( /* @ConfigItem(
keyName = "easyConstruction", keyName = "easyConstruction",
name = "Easy Construction", name = "Easy Construction",
description = "Makes 'Remove'/'Build' the default option for listed item ID's in build mode.<br>Tip: Use dev tools \"'Game Objects\" to find out the ID!", description = "Makes 'Remove'/'Build' the default option for listed item ID's in build mode.<br>Tip: Use dev tools \"'Game Objects\" to find out the ID!",
@@ -831,6 +830,33 @@ public interface MenuEntrySwapperConfig extends Config
unhide = "easyConstruction" unhide = "easyConstruction"
) )
default String getConstructionItems() default String getConstructionItems()
{
return "";
}*/
@ConfigItem(
keyName = "getTempConstruction",
name = "Easy Construction",
description = "Makes 'Remove'/'Build' the default option for listed items.",
position = 59,
group = "Skilling"
)
default boolean getTempConstruction()
{
return true;
}
@ConfigItem(
keyName = "getTempConstructionItems",
name = "Build Items",
description = "",
position = 60,
group = "Skilling",
hidden = true,
unhide = "getTempConstruction"
)
default String getTempConstructionItems()
{ {
return ""; return "";
} }

View File

@@ -52,6 +52,7 @@ import static net.runelite.api.MenuAction.WALK;
import net.runelite.api.MenuEntry; import net.runelite.api.MenuEntry;
import net.runelite.api.NPC; import net.runelite.api.NPC;
import net.runelite.api.Player; import net.runelite.api.Player;
import static net.runelite.api.Varbits.BUILDING_MODE;
import net.runelite.api.coords.WorldPoint; import net.runelite.api.coords.WorldPoint;
import net.runelite.api.events.ConfigChanged; import net.runelite.api.events.ConfigChanged;
import net.runelite.api.events.FocusChanged; import net.runelite.api.events.FocusChanged;
@@ -60,10 +61,9 @@ import net.runelite.api.events.MenuEntryAdded;
import net.runelite.api.events.MenuOpened; import net.runelite.api.events.MenuOpened;
import net.runelite.api.events.MenuOptionClicked; import net.runelite.api.events.MenuOptionClicked;
import net.runelite.api.events.PostItemComposition; import net.runelite.api.events.PostItemComposition;
import net.runelite.api.events.WidgetMenuOptionClicked;
import net.runelite.api.events.VarbitChanged; import net.runelite.api.events.VarbitChanged;
import net.runelite.api.events.WidgetMenuOptionClicked;
import net.runelite.api.widgets.WidgetInfo; import net.runelite.api.widgets.WidgetInfo;
import static net.runelite.api.Varbits.BUILDING_MODE;
import net.runelite.client.callback.ClientThread; import net.runelite.client.callback.ClientThread;
import net.runelite.client.config.ConfigManager; import net.runelite.client.config.ConfigManager;
import net.runelite.client.eventbus.Subscribe; import net.runelite.client.eventbus.Subscribe;
@@ -73,13 +73,13 @@ import net.runelite.client.input.KeyManager;
import net.runelite.client.menus.ComparableEntry; import net.runelite.client.menus.ComparableEntry;
import net.runelite.client.menus.MenuManager; import net.runelite.client.menus.MenuManager;
import net.runelite.client.menus.WidgetMenuOption; import net.runelite.client.menus.WidgetMenuOption;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.plugins.PluginType;
import net.runelite.client.plugins.menuentryswapper.util.FairyRingMode; import net.runelite.client.plugins.menuentryswapper.util.FairyRingMode;
import net.runelite.client.plugins.menuentryswapper.util.HouseMode; import net.runelite.client.plugins.menuentryswapper.util.HouseMode;
import net.runelite.client.plugins.menuentryswapper.util.ObeliskMode; import net.runelite.client.plugins.menuentryswapper.util.ObeliskMode;
import net.runelite.client.plugins.menuentryswapper.util.OccultAltarMode; import net.runelite.client.plugins.menuentryswapper.util.OccultAltarMode;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.plugins.PluginType;
import static net.runelite.client.util.MenuUtil.swap; import static net.runelite.client.util.MenuUtil.swap;
import net.runelite.client.util.MiscUtils; import net.runelite.client.util.MiscUtils;
import net.runelite.client.util.Text; import net.runelite.client.util.Text;
@@ -180,7 +180,8 @@ public class MenuEntrySwapperPlugin extends Plugin
public void startUp() public void startUp()
{ {
addSwaps(); addSwaps();
loadConstructionIDs(config.getConstructionItems()); //todo re-enable when fixed.
/*loadConstructionIDs(config.getConstructionItems());*/
if (config.shiftClickCustomization()) if (config.shiftClickCustomization())
{ {
@@ -194,7 +195,8 @@ public class MenuEntrySwapperPlugin extends Plugin
public void shutDown() public void shutDown()
{ {
disableCustomization(); disableCustomization();
loadConstructionIDs(""); //todo re-enable when fixed.
/*loadConstructionIDs("");*/
loadCustomSwaps(""); // Removes all custom swaps loadCustomSwaps(""); // Removes all custom swaps
removeSwaps(); removeSwaps();
} }
@@ -206,8 +208,9 @@ public class MenuEntrySwapperPlugin extends Plugin
{ {
return; return;
} }
//todo re-enable when fixed.
loadConstructionIDs(config.getConstructionItems()); /*loadConstructionIDs(config.getConstructionItems());*/
removeSwaps(); removeSwaps();
addSwaps(); addSwaps();
@@ -302,8 +305,9 @@ public class MenuEntrySwapperPlugin extends Plugin
{ {
return; return;
} }
//todo re-enable when fixed.
loadConstructionIDs(config.getConstructionItems()); /*loadConstructionIDs(config.getConstructionItems());*/
} }
@Subscribe @Subscribe
@@ -1189,6 +1193,36 @@ public class MenuEntrySwapperPlugin extends Plugin
{ {
swap(client, "teleport menu", option, target, true); swap(client, "teleport menu", option, target, true);
} }
if (config.getTempConstruction() && buildingMode)
{
if (event.getType() == WALK.getId())
{
MenuEntry[] menuEntries = client.getMenuEntries();
MenuEntry menuEntry = menuEntries[menuEntries.length - 1];
menuEntry.setType(MenuAction.WALK.getId() + MENU_ACTION_DEPRIORITIZE_OFFSET);
client.setMenuEntries(menuEntries);
}
swap(client, "Build", option, target);
MenuEntry[] entries = client.getMenuEntries();
for (int i = entries.length - 1; i >= 0; i--)
{
for (String temp : config.getTempConstructionItems().split(","))
{
if (temp.equalsIgnoreCase(Text.removeTags(entries[i].getTarget())))
{
if (entries[i].getType() == 3 || entries[i].getType() == 1002)
{
entries = ArrayUtils.remove(entries, i);
i--;
}
}
}
}
client.setMenuEntries(entries);
}
} }
@Subscribe @Subscribe
@@ -1409,8 +1443,9 @@ public class MenuEntrySwapperPlugin extends Plugin
return location.getRegionID() == PURO_PURO_REGION_ID; return location.getRegionID() == PURO_PURO_REGION_ID;
} }
} }
//todo re-enable when fixed.
private void loadConstructionIDs(String from) /* private void loadConstructionIDs(String from)
{ {
if (client.getGameState() != GameState.LOGGED_IN if (client.getGameState() != GameState.LOGGED_IN
|| Strings.isNullOrEmpty(from) && leftClickConstructionIDs.isEmpty()) || Strings.isNullOrEmpty(from) && leftClickConstructionIDs.isEmpty())
@@ -1449,7 +1484,7 @@ public class MenuEntrySwapperPlugin extends Plugin
} }
} }
} }
} }*/
void startShift() void startShift()
{ {