1616import bleach .hack .setting .base .SettingToggle ;
1717import net .minecraft .block .CactusBlock ;
1818import net .minecraft .block .FireBlock ;
19+ import net .minecraft .fluid .LavaFluid ;
1920import net .minecraft .network .packet .c2s .play .PlayerMoveC2SPacket ;
2021import net .minecraft .network .packet .c2s .play .VehicleMoveC2SPacket ;
2122import net .minecraft .util .shape .VoxelShapes ;
@@ -27,34 +28,36 @@ public Avoid() {
2728 super ("Avoid" , KEY_UNBOUND , ModuleCategory .WORLD , "Adds collision boxes to certain blocks/areas" ,
2829 new SettingToggle ("Cactus" , true ).withDesc ("Adds a bigger collision box to cactuses" ),
2930 new SettingToggle ("Fire" , true ).withDesc ("Adds a collision box to fire" ),
31+ new SettingToggle ("Lava" , true ).withDesc ("Adds a collision box to lava" ),
3032 new SettingToggle ("Unloaded" , true ).withDesc ("Adds walls to unloaded chunks" ));
3133 }
3234
3335 @ BleachSubscribe
3436 public void onBlockShape (EventBlockShape event ) {
3537 if ((getSetting (0 ).asToggle ().state && event .getState ().getBlock () instanceof CactusBlock )
36- || (getSetting (1 ).asToggle ().state && event .getState ().getBlock () instanceof FireBlock )) {
38+ || (getSetting (1 ).asToggle ().state && event .getState ().getBlock () instanceof FireBlock )
39+ || (getSetting (2 ).asToggle ().state && event .getState ().getFluidState ().getFluid () instanceof LavaFluid )) {
3740 event .setShape (VoxelShapes .fullCube ());
3841 }
3942 }
4043
4144 @ BleachSubscribe
4245 public void onClientMove (EventClientMove event ) {
43- if ( getSetting ( 2 ). asToggle ().state
44- && ! mc .world . getChunkManager (). isChunkLoaded (
45- ( int ) ( mc . player . getX () + event . getVec ().x ) >> 4 , ( int ) ( mc .player . getZ () + event . getVec (). z ) >> 4 )) {
46+ int x = ( int ) ( mc . player . getX () + event . getVec ().x ) >> 4 ;
47+ int z = ( int ) ( mc .player . getZ () + event . getVec (). z ) >> 4 ;
48+ if ( getSetting ( 3 ). asToggle ().state && ! mc .world . getChunkManager (). isChunkLoaded ( x , z )) {
4649 event .setCancelled (true );
4750 }
4851 }
4952
5053 @ BleachSubscribe
5154 public void onSendPacket (EventSendPacket event ) {
52- if (getSetting (2 ).asToggle ().state ) {
55+ if (getSetting (3 ).asToggle ().state ) {
5356 if (event .getPacket () instanceof VehicleMoveC2SPacket ) {
5457 VehicleMoveC2SPacket packet = (VehicleMoveC2SPacket ) event .getPacket ();
5558 if (!mc .world .getChunkManager ().isChunkLoaded ((int ) packet .getX () >> 4 , (int ) packet .getZ () >> 4 )) {
56- event .setCancelled (true );
5759 mc .player .getVehicle ().updatePosition (mc .player .getVehicle ().prevX , mc .player .getVehicle ().prevY , mc .player .getVehicle ().prevZ );
60+ event .setCancelled (true );
5861 }
5962 } else if (event .getPacket () instanceof PlayerMoveC2SPacket ) {
6063 PlayerMoveC2SPacket packet = (PlayerMoveC2SPacket ) event .getPacket ();
0 commit comments