0
0
mirror of https://github.com/Wurst-Imperium/Wurst7.git synced 2024-09-20 01:12:13 +02:00

Further refactor AutoTotemHack

This commit is contained in:
Alexander01998 2024-05-20 14:14:55 +02:00
parent 97be44afe4
commit 0a4489e56e

View File

@ -84,11 +84,9 @@ public final class AutoTotemHack extends Hack implements UpdateListener
{ {
finishMovingTotem(); finishMovingTotem();
PlayerInventory inventory = MC.player.getInventory(); int nextTotemSlot = searchForTotems();
int nextTotemSlot = searchForTotems(inventory);
ItemStack offhandStack = inventory.getStack(40); if(isTotem(MC.player.getOffHandStack()))
if(isTotem(offhandStack))
{ {
totems++; totems++;
wasTotemInOffhand = true; wasTotemInOffhand = true;
@ -101,36 +99,37 @@ public final class AutoTotemHack extends Hack implements UpdateListener
wasTotemInOffhand = false; wasTotemInOffhand = false;
} }
if(nextTotemSlot == -1)
return;
float healthF = health.getValueF(); float healthF = health.getValueF();
if(healthF > 0 && MC.player.getHealth() > healthF * 2F) if(healthF > 0 && MC.player.getHealth() > healthF * 2F)
return; return;
// don't move items while a container is open
if(MC.currentScreen instanceof HandledScreen if(MC.currentScreen instanceof HandledScreen
&& !(MC.currentScreen instanceof AbstractInventoryScreen)) && !(MC.currentScreen instanceof AbstractInventoryScreen))
return; return;
if(nextTotemSlot == -1)
return;
if(timer > 0) if(timer > 0)
{ {
timer--; timer--;
return; return;
} }
moveTotem(nextTotemSlot, offhandStack); moveToOffhand(nextTotemSlot);
} }
private void moveTotem(int nextTotemSlot, ItemStack offhandStack) private void moveToOffhand(int itemSlot)
{ {
boolean offhandEmpty = offhandStack.isEmpty(); boolean offhandEmpty = MC.player.getOffHandStack().isEmpty();
IClientPlayerInteractionManager im = IMC.getInteractionManager(); IClientPlayerInteractionManager im = IMC.getInteractionManager();
im.windowClick_PICKUP(nextTotemSlot); im.windowClick_PICKUP(itemSlot);
im.windowClick_PICKUP(45); im.windowClick_PICKUP(45);
if(!offhandEmpty) if(!offhandEmpty)
nextTickSlot = nextTotemSlot; nextTickSlot = itemSlot;
} }
private void finishMovingTotem() private void finishMovingTotem()
@ -143,10 +142,11 @@ public final class AutoTotemHack extends Hack implements UpdateListener
nextTickSlot = -1; nextTickSlot = -1;
} }
private int searchForTotems(PlayerInventory inventory) private int searchForTotems()
{ {
totems = 0; PlayerInventory inventory = MC.player.getInventory();
int nextTotemSlot = -1; int nextTotemSlot = -1;
totems = 0;
for(int slot = 0; slot <= 36; slot++) for(int slot = 0; slot <= 36; slot++)
{ {