Merge pull request #3820 from deathbeam/fix-resizable-minimap
Use correct widget when hiding resizable minimap
This commit is contained in:
@@ -241,7 +241,12 @@ public class WidgetID
|
|||||||
|
|
||||||
static class Viewport
|
static class Viewport
|
||||||
{
|
{
|
||||||
static final int MINIMAP_WIDGET = 17;
|
static final int MINIMAP_RESIZABLE_WIDGET = 17;
|
||||||
|
static final int MINIMAP_RESIZABLE_CLICKBOX = 18;
|
||||||
|
static final int MINIMAP_RESIZABLE_DRAW_AREA = 25;
|
||||||
|
static final int MINIMAP_RESIZABLE_DECORATIONS = 27;
|
||||||
|
static final int MINIMAP_RESIZABLE_ORB_HOLDER = 28;
|
||||||
|
static final int MINIMAP_RESIZABLE_LOGOUT_BUTTON = 30;
|
||||||
static final int FIXED_VIEWPORT = 17;
|
static final int FIXED_VIEWPORT = 17;
|
||||||
static final int RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX = 12;
|
static final int RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX = 12;
|
||||||
static final int RESIZABLE_VIEWPORT_BOTTOM_LINE = 12;
|
static final int RESIZABLE_VIEWPORT_BOTTOM_LINE = 12;
|
||||||
|
|||||||
@@ -53,8 +53,6 @@ public enum WidgetInfo
|
|||||||
|
|
||||||
CLUE_SCROLL_TEXT(WidgetID.CLUE_SCROLL_GROUP_ID, WidgetID.Cluescroll.CLUE_TEXT),
|
CLUE_SCROLL_TEXT(WidgetID.CLUE_SCROLL_GROUP_ID, WidgetID.Cluescroll.CLUE_TEXT),
|
||||||
|
|
||||||
QUICK_PRAYER_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.QUICK_PRAYER_ORB),
|
|
||||||
|
|
||||||
EQUIPMENT(WidgetID.EQUIPMENT_GROUP_ID, 0),
|
EQUIPMENT(WidgetID.EQUIPMENT_GROUP_ID, 0),
|
||||||
EQUIPMENT_INVENTORY_ITEMS_CONTAINER(WidgetID.EQUIPMENT_INVENTORY_GROUP_ID, WidgetID.Equipment.INVENTORY_ITEM_CONTAINER),
|
EQUIPMENT_INVENTORY_ITEMS_CONTAINER(WidgetID.EQUIPMENT_INVENTORY_GROUP_ID, WidgetID.Equipment.INVENTORY_ITEM_CONTAINER),
|
||||||
|
|
||||||
@@ -129,8 +127,10 @@ public enum WidgetInfo
|
|||||||
|
|
||||||
RUNE_POUCH_ITEM_CONTAINER(WidgetID.RUNE_POUCH_GROUP_ID, 0),
|
RUNE_POUCH_ITEM_CONTAINER(WidgetID.RUNE_POUCH_GROUP_ID, 0),
|
||||||
|
|
||||||
|
MINIMAP_ORBS(WidgetID.MINIMAP_GROUP_ID, 0),
|
||||||
MINIMAP_XP_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.XP_ORB),
|
MINIMAP_XP_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.XP_ORB),
|
||||||
MINIMAP_PRAYER_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.PRAYER_ORB),
|
MINIMAP_PRAYER_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.PRAYER_ORB),
|
||||||
|
MINIMAP_QUICK_PRAYER_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.QUICK_PRAYER_ORB),
|
||||||
MINIMAP_RUN_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.RUN_ORB),
|
MINIMAP_RUN_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.RUN_ORB),
|
||||||
MINIMAP_HEALTH_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.HEALTH_ORB),
|
MINIMAP_HEALTH_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.HEALTH_ORB),
|
||||||
MINIMAP_SPEC_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.SPEC_ORB),
|
MINIMAP_SPEC_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.SPEC_ORB),
|
||||||
@@ -170,7 +170,19 @@ public enum WidgetInfo
|
|||||||
FIXED_VIEWPORT_EMOTES_ICON(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.EMOTES_ICON),
|
FIXED_VIEWPORT_EMOTES_ICON(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.EMOTES_ICON),
|
||||||
FIXED_VIEWPORT_MUSIC_ICON(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.MUSIC_ICON),
|
FIXED_VIEWPORT_MUSIC_ICON(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.MUSIC_ICON),
|
||||||
|
|
||||||
MINIMAP_WIDGET(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.Viewport.MINIMAP_WIDGET),
|
RESIZABLE_MINIMAP_WIDGET(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_WIDGET),
|
||||||
|
RESIZABLE_MINIMAP_CLICKBOX(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_CLICKBOX),
|
||||||
|
RESIZABLE_MINIMAP_DRAW_AREA(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_DRAW_AREA),
|
||||||
|
RESIZABLE_MINIMAP_DECORATIONS(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_DECORATIONS),
|
||||||
|
RESIZABLE_MINIMAP_ORB_HOLDER(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_ORB_HOLDER),
|
||||||
|
RESIZABLE_MINIMAP_LOGOUT_BUTTON(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_LOGOUT_BUTTON),
|
||||||
|
|
||||||
|
RESIZABLE_MINIMAP_STONES_WIDGET(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_WIDGET),
|
||||||
|
RESIZABLE_MINIMAP_STONES_CLICKBOX(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_CLICKBOX),
|
||||||
|
RESIZABLE_MINIMAP_STONES_DRAW_AREA(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_DRAW_AREA),
|
||||||
|
RESIZABLE_MINIMAP_STONES_DECORATIONS(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_DECORATIONS),
|
||||||
|
RESIZABLE_MINIMAP_STONES_ORB_HOLDER(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_ORB_HOLDER),
|
||||||
|
|
||||||
RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.Viewport.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX),
|
RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.Viewport.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX),
|
||||||
RESIZABLE_VIEWPORT_COMBAT_TAB(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.COMBAT_TAB),
|
RESIZABLE_VIEWPORT_COMBAT_TAB(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.COMBAT_TAB),
|
||||||
RESIZABLE_VIEWPORT_STATS_TAB(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.STATS_TAB),
|
RESIZABLE_VIEWPORT_STATS_TAB(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.STATS_TAB),
|
||||||
|
|||||||
@@ -67,13 +67,7 @@ public class MinimapPlugin extends Plugin
|
|||||||
@Override
|
@Override
|
||||||
protected void startUp() throws Exception
|
protected void startUp() throws Exception
|
||||||
{
|
{
|
||||||
Widget minimapWidget = client.getWidget(WidgetInfo.MINIMAP_WIDGET);
|
updateMinimapWidgetVisibility(config.hideMinimap());
|
||||||
|
|
||||||
if (minimapWidget != null)
|
|
||||||
{
|
|
||||||
minimapWidget.setHidden(config.hideMinimap());
|
|
||||||
}
|
|
||||||
|
|
||||||
storeOriginalDots();
|
storeOriginalDots();
|
||||||
replaceMapDots();
|
replaceMapDots();
|
||||||
}
|
}
|
||||||
@@ -81,13 +75,7 @@ public class MinimapPlugin extends Plugin
|
|||||||
@Override
|
@Override
|
||||||
protected void shutDown() throws Exception
|
protected void shutDown() throws Exception
|
||||||
{
|
{
|
||||||
Widget minimapWidget = client.getWidget(WidgetInfo.MINIMAP_WIDGET);
|
updateMinimapWidgetVisibility(false);
|
||||||
|
|
||||||
if (minimapWidget != null)
|
|
||||||
{
|
|
||||||
minimapWidget.setHidden(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
restoreOriginalDots();
|
restoreOriginalDots();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -101,6 +89,69 @@ public class MinimapPlugin extends Plugin
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Subscribe
|
||||||
|
public void configChanged(ConfigChanged event)
|
||||||
|
{
|
||||||
|
if (!event.getGroup().equals("minimap"))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (event.getKey().equals("hideMinimap"))
|
||||||
|
{
|
||||||
|
updateMinimapWidgetVisibility(config.hideMinimap());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
replaceMapDots();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Subscribe
|
||||||
|
public void onWidgetHiddenChange(WidgetHiddenChanged event)
|
||||||
|
{
|
||||||
|
updateMinimapWidgetVisibility(config.hideMinimap());
|
||||||
|
}
|
||||||
|
|
||||||
|
private void updateMinimapWidgetVisibility(boolean enable)
|
||||||
|
{
|
||||||
|
final Widget resizableStonesWidget = client.getWidget(WidgetInfo.RESIZABLE_MINIMAP_STONES_WIDGET);
|
||||||
|
|
||||||
|
if (resizableStonesWidget != null)
|
||||||
|
{
|
||||||
|
resizableStonesWidget.setHidden(enable);
|
||||||
|
}
|
||||||
|
|
||||||
|
final Widget resizableNormalWidget = client.getWidget(WidgetInfo.RESIZABLE_MINIMAP_WIDGET);
|
||||||
|
|
||||||
|
if (resizableNormalWidget != null && !resizableNormalWidget.isSelfHidden())
|
||||||
|
{
|
||||||
|
for (Widget widget : resizableNormalWidget.getStaticChildren())
|
||||||
|
{
|
||||||
|
if (widget.getId() != WidgetInfo.RESIZABLE_VIEWPORT_BOTTOM_LINE_LOGOUT_BUTTON.getId() &&
|
||||||
|
widget.getId() != WidgetInfo.RESIZABLE_MINIMAP_LOGOUT_BUTTON.getId())
|
||||||
|
{
|
||||||
|
widget.setHidden(enable);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void replaceMapDots()
|
||||||
|
{
|
||||||
|
SpritePixels[] mapDots = client.getMapDots();
|
||||||
|
|
||||||
|
if (mapDots == null)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Color[] minimapDotColors = getColors();
|
||||||
|
for (int i = 0; i < mapDots.length && i < minimapDotColors.length; ++i)
|
||||||
|
{
|
||||||
|
mapDots[i] = MinimapDot.create(this.client, minimapDotColors[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private Color[] getColors()
|
private Color[] getColors()
|
||||||
{
|
{
|
||||||
Color[] colors = new Color[NUM_MAPDOTS];
|
Color[] colors = new Color[NUM_MAPDOTS];
|
||||||
@@ -136,54 +187,4 @@ public class MinimapPlugin extends Plugin
|
|||||||
|
|
||||||
System.arraycopy(originalDotSprites, 0, mapDots, 0, mapDots.length);
|
System.arraycopy(originalDotSprites, 0, mapDots, 0, mapDots.length);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
@Subscribe
|
|
||||||
public void configChanged(ConfigChanged event)
|
|
||||||
{
|
|
||||||
if (!event.getGroup().equals("minimap"))
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (event.getKey().equals("hideMinimap"))
|
|
||||||
{
|
|
||||||
Widget minimapWidget = client.getWidget(WidgetInfo.MINIMAP_WIDGET);
|
|
||||||
|
|
||||||
if (minimapWidget != null)
|
|
||||||
{
|
|
||||||
minimapWidget.setHidden(config.hideMinimap());
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
replaceMapDots();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Subscribe
|
|
||||||
public void onWidgetHiddenChange(WidgetHiddenChanged event)
|
|
||||||
{
|
|
||||||
Widget minimapWidget = client.getWidget(WidgetInfo.MINIMAP_WIDGET);
|
|
||||||
|
|
||||||
if (event.getWidget() == minimapWidget)
|
|
||||||
{
|
|
||||||
minimapWidget.setHidden(config.hideMinimap());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void replaceMapDots()
|
|
||||||
{
|
|
||||||
SpritePixels[] mapDots = client.getMapDots();
|
|
||||||
|
|
||||||
if (mapDots == null)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
Color[] minimapDotColors = getColors();
|
|
||||||
for (int i = 0; i < mapDots.length && i < minimapDotColors.length; ++i)
|
|
||||||
{
|
|
||||||
mapDots[i] = MinimapDot.create(this.client, minimapDotColors[i]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -97,7 +97,7 @@ class PrayerDoseOverlay extends Overlay
|
|||||||
@Override
|
@Override
|
||||||
public Dimension render(Graphics2D graphics)
|
public Dimension render(Graphics2D graphics)
|
||||||
{
|
{
|
||||||
final Widget xpOrb = client.getWidget(WidgetInfo.QUICK_PRAYER_ORB);
|
final Widget xpOrb = client.getWidget(WidgetInfo.MINIMAP_QUICK_PRAYER_ORB);
|
||||||
if (xpOrb == null)
|
if (xpOrb == null)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ class PrayerFlickOverlay extends Overlay
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
Widget xpOrb = client.getWidget(WidgetInfo.QUICK_PRAYER_ORB);
|
Widget xpOrb = client.getWidget(WidgetInfo.MINIMAP_QUICK_PRAYER_ORB);
|
||||||
if (xpOrb == null)
|
if (xpOrb == null)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
Reference in New Issue
Block a user