Skip to content

Commit bcf465e

Browse files
committed
Fix Hacklist
1 parent 9d81e6d commit bcf465e

2 files changed

Lines changed: 67 additions & 12 deletions

File tree

src/main/java/net/wurstclient/clickgui/ClickGui.java

Lines changed: 42 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -704,16 +704,11 @@ public void handleMouseScroll(double mouseX, double mouseY, double delta)
704704
if(handlePopupMouseScroll(mouseX, mouseY, delta))
705705
return;
706706

707-
int dWheel = (int)delta * 4;
708-
if(dWheel == 0)
709-
return;
710-
711707
for(int i = windows.size() - 1; i >= 0; i--)
712708
{
713709
Window window = windows.get(i);
714710

715-
if(!window.isScrollingEnabled() || window.isMinimized()
716-
|| window.isInvisible())
711+
if(window.isMinimized() || window.isInvisible())
717712
continue;
718713

719714
if(mouseX < window.getX() || mouseY < window.getY() + 13)
@@ -722,6 +717,19 @@ public void handleMouseScroll(double mouseX, double mouseY, double delta)
722717
|| mouseY >= window.getY() + window.getHeight())
723718
continue;
724719

720+
if(handleWindowComponentMouseScroll(window, mouseX, mouseY, delta))
721+
{
722+
closeInvalidPopups();
723+
break;
724+
}
725+
726+
int dWheel = (int)delta * 4;
727+
if(dWheel == 0)
728+
return;
729+
730+
if(!window.isScrollingEnabled())
731+
continue;
732+
725733
int scroll = window.getScrollOffset() + dWheel;
726734
scroll = Math.min(scroll, 0);
727735
scroll = Math.max(scroll,
@@ -742,17 +750,13 @@ public boolean handlePinnedMouseScroll(double mouseX, double mouseY,
742750
if(handlePinnedPopupMouseScroll(mouseX, mouseY, delta))
743751
return true;
744752

745-
int dWheel = (int)delta * 4;
746-
if(dWheel == 0)
747-
return false;
748-
749753
for(int i = windows.size() - 1; i >= 0; i--)
750754
{
751755
Window window = windows.get(i);
752756
if(!window.isPinned() || window.isInvisible())
753757
continue;
754758

755-
if(!window.isScrollingEnabled() || window.isMinimized())
759+
if(window.isMinimized())
756760
continue;
757761

758762
if(mouseX < window.getX() || mouseY < window.getY() + 13)
@@ -761,6 +765,19 @@ public boolean handlePinnedMouseScroll(double mouseX, double mouseY,
761765
|| mouseY >= window.getY() + window.getHeight())
762766
continue;
763767

768+
if(handleWindowComponentMouseScroll(window, mouseX, mouseY, delta))
769+
{
770+
closeInvalidPopups();
771+
return true;
772+
}
773+
774+
int dWheel = (int)delta * 4;
775+
if(dWheel == 0)
776+
return false;
777+
778+
if(!window.isScrollingEnabled())
779+
continue;
780+
764781
int scroll = window.getScrollOffset() + dWheel;
765782
scroll = Math.min(scroll, 0);
766783
scroll = Math.max(scroll,
@@ -1309,6 +1326,20 @@ private void handleComponentMouseClick(Window window, double mouseX,
13091326
}
13101327
}
13111328

1329+
private boolean handleWindowComponentMouseScroll(Window window,
1330+
double mouseX, double mouseY, double delta)
1331+
{
1332+
window.validate();
1333+
1334+
int cMouseX = (int)(mouseX - window.getX());
1335+
int cMouseY = (int)(mouseY - window.getY() - 13);
1336+
if(window.isScrollingEnabled())
1337+
cMouseY -= window.getScrollOffset();
1338+
1339+
return handleNavigatorComponentMouseScroll(cMouseX, cMouseY, delta,
1340+
window);
1341+
}
1342+
13121343
public void extractRenderState(GuiGraphicsExtractor context, int mouseX,
13131344
int mouseY, float partialTicks)
13141345
{

src/main/java/net/wurstclient/other_features/HackListOtf.java

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ public final class HackListOtf extends OtherFeature
5959
@Override
6060
public void update()
6161
{
62+
syncHiddenHackStates();
6263
refreshGui();
6364
}
6465
};
@@ -172,6 +173,7 @@ public HackListOtf()
172173
public void loadHiddenHacksFile()
173174
{
174175
hiddenHacksFile.load();
176+
syncHiddenHackStates();
175177
}
176178

177179
public boolean isHidden(Hack hack)
@@ -193,6 +195,7 @@ public void setHidden(Hack hack, boolean hidden)
193195
hiddenHacks.remove(hack);
194196

195197
hiddenHacksFile.save();
198+
syncHackState(hack);
196199
refreshGui();
197200
}
198201

@@ -218,6 +221,27 @@ private void refreshGui()
218221
{}
219222
}
220223

224+
private void syncHiddenHackStates()
225+
{
226+
var hud = WURST.getHud();
227+
if(hud == null)
228+
return;
229+
230+
var hackList = hud.getHackList();
231+
for(net.wurstclient.Feature feature : hiddenHacks)
232+
if(feature instanceof Hack hack)
233+
hackList.updateState(hack);
234+
}
235+
236+
private void syncHackState(Hack hack)
237+
{
238+
var hud = WURST.getHud();
239+
if(hud == null)
240+
return;
241+
242+
hud.getHackList().updateState(hack);
243+
}
244+
221245
private List<Hack> getSortedHacks()
222246
{
223247
return WURST.getHax().getAllHax().stream()
@@ -434,7 +458,7 @@ public boolean handleMouseScroll(double mouseX, double mouseY,
434458
int visibleRows = Math.max(1, getHeight() / ROW_HEIGHT);
435459
int maxOffset = Math.max(0, hacks.size() - visibleRows);
436460
if(maxOffset <= 0)
437-
return true;
461+
return false;
438462

439463
int direction = (int)Math.signum(delta);
440464
if(direction == 0)

0 commit comments

Comments
 (0)