Skip to content

Commit 2aed46c

Browse files
committed
Fix Hacklist
1 parent 0db93ac commit 2aed46c

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
@@ -713,16 +713,11 @@ public void handleMouseScroll(double mouseX, double mouseY, double delta)
713713
if(handlePopupMouseScroll(mouseX, mouseY, delta))
714714
return;
715715

716-
int dWheel = (int)delta * 4;
717-
if(dWheel == 0)
718-
return;
719-
720716
for(int i = windows.size() - 1; i >= 0; i--)
721717
{
722718
Window window = windows.get(i);
723719

724-
if(!window.isScrollingEnabled() || window.isMinimized()
725-
|| window.isInvisible())
720+
if(window.isMinimized() || window.isInvisible())
726721
continue;
727722

728723
if(mouseX < window.getX() || mouseY < window.getY() + 13)
@@ -731,6 +726,19 @@ public void handleMouseScroll(double mouseX, double mouseY, double delta)
731726
|| mouseY >= window.getY() + window.getHeight())
732727
continue;
733728

729+
if(handleWindowComponentMouseScroll(window, mouseX, mouseY, delta))
730+
{
731+
closeInvalidPopups();
732+
break;
733+
}
734+
735+
int dWheel = (int)delta * 4;
736+
if(dWheel == 0)
737+
return;
738+
739+
if(!window.isScrollingEnabled())
740+
continue;
741+
734742
int scroll = window.getScrollOffset() + dWheel;
735743
scroll = Math.min(scroll, 0);
736744
scroll = Math.max(scroll,
@@ -751,17 +759,13 @@ public boolean handlePinnedMouseScroll(double mouseX, double mouseY,
751759
if(handlePinnedPopupMouseScroll(mouseX, mouseY, delta))
752760
return true;
753761

754-
int dWheel = (int)delta * 4;
755-
if(dWheel == 0)
756-
return false;
757-
758762
for(int i = windows.size() - 1; i >= 0; i--)
759763
{
760764
Window window = windows.get(i);
761765
if(!window.isPinned() || window.isInvisible())
762766
continue;
763767

764-
if(!window.isScrollingEnabled() || window.isMinimized())
768+
if(window.isMinimized())
765769
continue;
766770

767771
if(mouseX < window.getX() || mouseY < window.getY() + 13)
@@ -770,6 +774,19 @@ public boolean handlePinnedMouseScroll(double mouseX, double mouseY,
770774
|| mouseY >= window.getY() + window.getHeight())
771775
continue;
772776

777+
if(handleWindowComponentMouseScroll(window, mouseX, mouseY, delta))
778+
{
779+
closeInvalidPopups();
780+
return true;
781+
}
782+
783+
int dWheel = (int)delta * 4;
784+
if(dWheel == 0)
785+
return false;
786+
787+
if(!window.isScrollingEnabled())
788+
continue;
789+
773790
int scroll = window.getScrollOffset() + dWheel;
774791
scroll = Math.min(scroll, 0);
775792
scroll = Math.max(scroll,
@@ -1318,6 +1335,20 @@ private void handleComponentMouseClick(Window window, double mouseX,
13181335
}
13191336
}
13201337

1338+
private boolean handleWindowComponentMouseScroll(Window window,
1339+
double mouseX, double mouseY, double delta)
1340+
{
1341+
window.validate();
1342+
1343+
int cMouseX = (int)(mouseX - window.getX());
1344+
int cMouseY = (int)(mouseY - window.getY() - 13);
1345+
if(window.isScrollingEnabled())
1346+
cMouseY -= window.getScrollOffset();
1347+
1348+
return handleNavigatorComponentMouseScroll(cMouseX, cMouseY, delta,
1349+
window);
1350+
}
1351+
13211352
public void extractRenderState(GuiGraphicsExtractor context, int mouseX,
13221353
int mouseY, float partialTicks)
13231354
{

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)