Code Monkey home page Code Monkey logo

mc-autotool's Introduction

mc-autotool

Build Status

This mod takes the first good tool for the thing you're trying to mine.
Put your best tools on your hotbar and just forget about it.

What does this mod do?

  • Mining? It takes your pickaxe.
  • Cutting woods? It takes your axe.
  • Digging? It takes your shovel.
  • Attacking? It takes your sword.
    • Having your sword in hand? It will attack efficiently if you target an entity in attack range.
  • Farming? Do it 9x faster, do it right.
    • Having a seed in your hand? It will plant the seed in large area and harvest only mature crops.

Once finished, it will go back to the last item you were holding.
(except for the sword, so that you are in attack mode)

Changelog

  • New 2023-03-13: Updated for 1.19.3
  • New 2021-11-24: Updated for 1.18
  • New 2021-06-26: Updated for 1.17
  • New 2020-10-01: Updated for 1.16.3
  • New 2020-09-02: Updated for 1.16.2
  • New 2020-06-29: Updated for 1.16
  • New 2020-04-30: Auto harvest with tools. If using a tool with fortune you get more harvest: reddit
  • New 2019-07-25: Auto harvesting/planting IF seeds on hand (still need some tweaks) AND IF looking at fully grown "plant" or farmland block.
  • New 2019-07-25: Auto attack entity if you have the sword pulled out and you can touch the entity.
  • New 2019-07-25: Now it always choose the best tool.

Installation

  • Fabric
    Be sure to have it (it creates a new profile on your minecraft launcher).
  • Fabric API
    Download a version appropriate for your minecraft version.
    Put the jar file on %appdata%\.minecraft\mods\.
  • This mod
    Again, download a version appropriate for your minecraft version.
    Note: autotool-mcv1.14.jar is equivalent to autotool.jar
    Put the jar file on %appdata%\.minecraft\mods\.

Details on the logic of the mod

It will take the best tool that is capable of breaking the block you are clicking at.
Example:
On your hand is currently some bread you found on a strange chest.
You are looking at a tree and you have a wooden axe and a iron axe, the tool will take the best tool, the wooden axe, once you click on the tree. When you release the click (either finished or don't want to cut some trees after all), you will get back the last thing on your hand, the mysterious piece of bread.

The behaviour is different for entities, if you look at a pig and want to kill it, once you click on it, you will take a sword from your hotbar, but it won't go back to the last item you were holding.
(this is something I need to figure out)
Then, the tool will use the sword (generally, but if you don't have a sword possibly it will take an axe).
If it is a sword, it will attack the entity every 625ms (the time the sword takes to fully "charge").

This mod definitly won't suit everyone.
There is no configuration and won't have any configuration.

Please take a look at the source code, it's only 387 LOC (spread on about 8 files).

Other

The code is on the other branches of this repo.
1.14
1.15
1.16
1.17
1.18
1.19

Inspiration

Thanks to the author of the ControlPack, it is a mod I discovered a long time ago (arround mc 1.9).
So far the best-mod-ever. True quality of life for Minecraft gameplay. https://github.com/uyjulian/ControlPack

Steps to update deps

debugging vscode sources and other

rm -rf .gradle bin build .project .classpath
./gradlew genSources

List of prefered mods

# mods 1.16
appleskin-mc1.16-fabric-1.0.11.jar
autotool-mcv1.16.jar
durabilityviewer-1.16.2-fabric0.17.2-1.8.6.jar
fabric-api-0.19.0+build.398-1.16.jar
fabricmod_VoxelMap-1.10.10_for_1.16.2.jar
modmenu-1.14.6+build.31.jar
modnametooltip_1.16.2-1.15.0.jar
mousewheelie-1.5.3+mc1.16.2-pre1.jar
optifabric-1.4.3.jar
OptiFine_1.16.2_HD_U_G3.jar

# shaders
Sildurs Vibrant Shaders v1.28 High-Motionblur.zip

# resource pack
realistico 8

# fov
100

# cool game rules to play with bebe
# see more here https://minecraft.gamepedia.com/Commands/gamerule
/gamerule mobGriefing false
/gamerule keepInventory true
/team add noff
/team modify noff friendlyFire false
/team join noff @a

# god stuff
# SWORD + TOOLS
/give @p netherite_sword{Unbreakable:1,Enchantments:[{id:sharpness,lvl:9},{id:fire_aspect,lvl:9},{id:looting,lvl:9},{id:sweeping,lvl:9}]}
/give @p netherite_sword{Unbreakable:1,Enchantments:[{id:sharpness,lvl:9999},{id:fire_aspect,lvl:9},{id:looting,lvl:9},{id:sweeping,lvl:9}]}
/give @p netherite_pickaxe{Unbreakable:1,Enchantments:[{id:efficiency,lvl:9},{id:fortune,lvl:9}]}
/give @p netherite_shovel{Unbreakable:1,Enchantments:[{id:efficiency,lvl:5},{id:fortune,lvl:9}]}
/give @p netherite_axe{Unbreakable:1,Enchantments:[{id:efficiency,lvl:9},{id:fortune,lvl:9}]}
/give @p netherite_hoe{Unbreakable:1,Enchantments:[{id:efficiency,lvl:9},{id:fortune,lvl:9}]}

# ARMOR WITH MODIFIED ELYTRA
/give @p netherite_helmet{Unbreakable:1,Enchantments:[{id:aqua_affinity,lvl:9},{id:blast_protection,lvl:9},{id:fire_protection,lvl:9},{id:projectile_protection,lvl:9},{id:protection,lvl:9},{id:respiration,lvl:9},{id:thorns,lvl:9}]}
/give @p elytra{Unbreakable:1,AttributeModifiers:[{AttributeName:"generic.armor",Amount:12,UUIDLeast:1,UUIDMost:1,Slot:"chest"}],Enchantments:[{id:fire_protection,lvl:9},{id:projectile_protection,lvl:9},{id:protection,lvl:9},{id:thorns,lvl:9}]}
/give @p netherite_boots{Unbreakable:1,Enchantments:[{id:blast_protection,lvl:9},{id:depth_strider,lvl:9},{id:feather_falling,lvl:9},{id:fire_protection,lvl:9},{id:projectile_protection,lvl:9},{id:protection,lvl:9},{id:thorns,lvl:9}]}
/give @p netherite_leggings{Unbreakable:1,Enchantments:[{id:blast_protection,lvl:9},{id:fire_protection,lvl:9},{id:projectile_protection,lvl:9},{id:protection,lvl:9},{id:thorns,lvl:9}]}
/give @p trident{Unbreakable:1,Enchantments:[{id:channeling,lvl:9},{id:impaling,lvl:9},{id:loyalty,lvl:9},{id:riptide,lvl:9},{id:sharpness,lvl:9},{id:looting,lvl:9}]}

# best used with elytra
/give @p minecraft:firework_rocket 128



/give @p netherite_boots{Unbreakable:1,Enchantments:[{id:blast_protection,lvl:9},{id:depth_strider,lvl:9},{id:feather_falling,lvl:9},{id:fire_protection,lvl:9},{id:frost_walker,lvl:9},{id:projectile_protection,lvl:9},{id:protection,lvl:9},{id:thorns,lvl:9}]}

# OTHER
/give @p bow{Unbreakable:1,Enchantments:[{id:infinity,lvl:9},{id:flame,lvl:9},{id:punch,lvl:9},{id:power,lvl:9},{id:looting,lvl:9},{id:multishot,lvl:10},{id:piercing,lvl:10},{id:quick_charge,lvl:10}]}
/give @p crossbow{Unbreakable:1,Enchantments:[{id:infinity,lvl:9},{id:flame,lvl:9},{id:punch,lvl:9},{id:power,lvl:9},{id:looting,lvl:9},{id:multishot,lvl:10},{id:piercing,lvl:10},{id:quick_charge,lvl:5}]}
/give @p fishing_rod{Unbreakable:1,Enchantments:[{id:lure,lvl:9},{id:luck_of_the_sea,lvl:9},{id:vanishing_curse,lvl:9}]}
/give @p spectral_arrow 64
/give @p enchanted_golden_apple 64

/give @p netherite_chestplate{Unbreakable:1,Enchantments:[{id:blast_protection,lvl:9},{id:fire_protection,lvl:9},{id:projectile_protection,lvl:9},{id:protection,lvl:9},{id:thorns,lvl:9}]}


# EFFECTS
/effect give @a haste 999999 255 true
/effect give @a luck 999999 255 true
/effect give @p night_vision 999999 255 true

/effect give @p haste 999999 255 true
/effect give @p luck 999999 255 true
/effect give @p regeneration 999999 255 true

/effect give @p invisibility 999999 255 true
/effect give @p water_breathing 999999 255 true
/effect give @p strength 999999 255 true
/effect give @p instant_health 999999 255 true
/effect give @p absorption 999999 255 true
/effect give @p conduit_power 999999 255 true
/effect give @p dolphins_grace 999999 255 true
/effect give @p health_boost 999999 255 true
/effect give @p speed 999999 255 true
/effect clear @p

Dropped ideas

  • TODO: Auto refill of coal and easy refill of chest if item is in inventory and the chest
# this idea looks like it is just not easily possible.

mc-autotool's People

Contributors

chneau avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

xenorio

mc-autotool's Issues

Go back to last item used once left click released

Somehow remember the last tool the player used for a block type, and go back to that tool instead of the first tool you find.

related to #2

so it does this:

  • I have my bread on my hand
  • looking at tree, nothing happend
  • clicking, i now have axe
  • releasing
  • got my bread back to my hand

[1.19.4] Crash when focusing a block

Crash Log

Show
  [07:55:55] [Render thread/ERROR]: Unreported exception thrown!
java.lang.NoSuchMethodError: 'void net.minecraft.class_2338.(net.minecraft.class_243)'
	at chneau.autotool.Util.getTargetedBlock(Util.java:20) ~[autotool.jar:?]
	at chneau.autotool.Autofarm.onEndTick(Autofarm.java:42) ~[autotool.jar:?]
	at net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents.lambda$static$2(ClientTickEvents.java:62) ~[fabric-lifecycle-events-v1-2.2.1+5da15ca1f4-82e44bf02244b555.jar:?]
	at net.minecraft.class_310.handler$zhh000$fabric-lifecycle-events-v1$onEndTick(class_310.java:5016) ~[client-intermediary.jar:?]
	at net.minecraft.class_310.method_1574(class_310.java:1958) ~[client-intermediary.jar:?]
	at net.minecraft.class_310.method_1523(class_310.java:1180) ~[client-intermediary.jar:?]
	at net.minecraft.class_310.method_1514(class_310.java:801) ~[client-intermediary.jar:?]
	at net.minecraft.client.main.Main.main(Main.java:237) ~[minecraft-1.19.4-client.jar:?]
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:462) ~[fabric-loader-0.14.18.jar:?]
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.14.18.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) ~[fabric-loader-0.14.18.jar:?]
	at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:88) ~[NewLaunch.jar:?]
	at org.prismlauncher.EntryPoint.listen(EntryPoint.java:126) ~[NewLaunch.jar:?]
	at org.prismlauncher.EntryPoint.main(EntryPoint.java:71) ~[NewLaunch.jar:?]
[07:55:55] [Render thread/INFO]: Stopping worker threads
---- Minecraft Crash Report ----
// Daisy, daisy...
Time: 2023-05-09 07:55:55
Description: Unexpected error
java.lang.NoSuchMethodError: 'void net.minecraft.class_2338.(net.minecraft.class_243)'
	at chneau.autotool.Util.getTargetedBlock(Util.java:20)
	at chneau.autotool.Autofarm.onEndTick(Autofarm.java:42)
	at net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents.lambda$static$2(ClientTickEvents.java:62)
	at net.minecraft.class_310.handler$zhh000$fabric-lifecycle-events-v1$onEndTick(class_310.java:5016)
	at net.minecraft.class_310.method_1574(class_310.java:1958)
	at net.minecraft.class_310.method_1523(class_310.java:1180)
	at net.minecraft.class_310.method_1514(class_310.java:801)
	at net.minecraft.client.main.Main.main(Main.java:237)
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:462)
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
	at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:88)
	at org.prismlauncher.EntryPoint.listen(EntryPoint.java:126)
	at org.prismlauncher.EntryPoint.main(EntryPoint.java:71)
A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------
-- Head --
Thread: Render thread
Stacktrace:
	at chneau.autotool.Util.getTargetedBlock(Util.java:20)
	at chneau.autotool.Autofarm.onEndTick(Autofarm.java:42)
	at net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents.lambda$static$2(ClientTickEvents.java:62)
	at net.minecraft.class_310.handler$zhh000$fabric-lifecycle-events-v1$onEndTick(class_310.java:5016)
-- Affected level --
Details:
	All players: 1 total; [class_746['Xenorio'/1057, l='ClientLevel', x=9.14, y=4.00, z=9.64]]
	Chunk stats: 4096, 228
	Level dimension: minecraft:overworld
	Level spawn location: World: (9,4,8), Section: (at 9,4,8 in 0,0,0; chunk contains blocks 0,-64,0 to 15,319,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,-64,0 to 511,319,511)
	Level time: 3019176 game time, 2394106 day time
	Server brand: Waterfall <- Paper
	Server type: Non-integrated multiplayer server
Stacktrace:
	at net.minecraft.class_638.method_8538(class_638.java:455)
	at net.minecraft.class_310.method_1587(class_310.java:2406)
	at net.minecraft.class_310.method_1514(class_310.java:825)
	at net.minecraft.client.main.Main.main(Main.java:237)
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:462)
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
	at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:88)
	at org.prismlauncher.EntryPoint.listen(EntryPoint.java:126)
	at org.prismlauncher.EntryPoint.main(EntryPoint.java:71)
-- Last reload --
Details:
	Reload number: 1
	Reload reason: initial
	Finished: Yes
	Packs: vanilla, Fabric Mods, file/VanillaTweaks_r694430.zip
-- System Details --
Details:
	Minecraft Version: 1.19.4
	Minecraft Version ID: 1.19.4
	Operating System: Linux (amd64) version 6.2.12-arch1-1
	Java Version: 17.0.7, N/A
	Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Oracle Corporation
	Memory: 677650120 bytes (646 MiB) / 1317011456 bytes (1256 MiB) up to 4294967296 bytes (4096 MiB)
	CPUs: 8
	Processor Vendor: GenuineIntel
	Processor Name: Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
	Identifier: Intel64 Family 6 Model 158 Stepping 9
	Microarchitecture: Kaby Lake
	Frequency (GHz): 2.80
	Number of physical packages: 1
	Number of physical CPUs: 4
	Number of logical CPUs: 8
	Graphics card #0 name: HD Graphics 630
	Graphics card #0 vendor: Intel Corporation (0x8086)
	Graphics card #0 VRAM (MB): 256.00
	Graphics card #0 deviceId: 0x591b
	Graphics card #0 versionInfo: unknown
	Virtual memory max (MB): 24300.33
	Virtual memory used (MB): 14058.87
	Swap memory total (MB): 16368.00
	Swap memory used (MB): 3180.48
	JVM Flags: 2 total; -Xms512m -Xmx4096m
	Fabric Mods: 
		architectury: Architectury 8.1.80
		autoclicker-fabric: Auto Clicker 1.19.4-1.6.1-build.22
		boostedbrightness: Boosted Brightness 2.1.3
		chneau_autotool: Autotool 1.0.0
		cloth-config: Cloth Config v10 10.0.96
			cloth-basic-math: cloth-basic-math 0.6.1
		dynamicfps: Dynamic FPS 2.2.0
			com_moandjiezana_toml_toml4j: toml4j 0.7.2
		fabric-api: Fabric API 0.76.0+1.19.4
			fabric-api-lookup-api-v1: Fabric API Lookup API (v1) 1.6.24+49abcf7ef4
			fabric-biome-api-v1: Fabric Biome API (v1) 13.0.6+348a9c64f4
			fabric-block-api-v1: Fabric Block API (v1) 1.0.5+e022e5d1f4
			fabric-blockrenderlayer-v1: Fabric BlockRenderLayer Registration (v1) 1.1.33+c2e6f674f4
			fabric-client-tags-api-v1: Fabric Client Tags 1.0.14+1134c5b8f4
			fabric-command-api-v1: Fabric Command API (v1) 1.2.25+f71b366ff4
			fabric-command-api-v2: Fabric Command API (v2) 2.2.4+ae0966baf4
			fabric-commands-v0: Fabric Commands (v0) 0.2.42+df3654b3f4
			fabric-containers-v0: Fabric Containers (v0) 0.1.52+df3654b3f4
			fabric-content-registries-v0: Fabric Content Registries (v0) 3.5.7+ae0966baf4
			fabric-convention-tags-v1: Fabric Convention Tags 1.4.0+9a7c5daaf4
			fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.2.14+aeb40ebef4
			fabric-data-generation-api-v1: Fabric Data Generation API (v1) 11.3.5+5da15ca1f4
			fabric-dimensions-v1: Fabric Dimensions API (v1) 2.1.44+7f87f8faf4
			fabric-entity-events-v1: Fabric Entity Events (v1) 1.5.12+e45f7c65f4
			fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.4.42+a1ccd7bff4
			fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.51+df3654b3f4
			fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.32+a1ccd7bff4
			fabric-item-api-v1: Fabric Item API (v1) 2.1.16+09a3510cf4
			fabric-item-group-api-v1: Fabric Item Group API (v1) 3.0.3+043f9acff4
			fabric-keybindings-v0: Fabric Key Bindings (v0) 0.2.30+df3654b3f4
			fabric-loot-api-v2: Fabric Loot API (v2) 1.1.25+75e98211f4
			fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.1.29+9e7660c6f4
			fabric-message-api-v1: Fabric Message API (v1) 5.1.0+1ee8be40f4
			fabric-mining-level-api-v1: Fabric Mining Level API (v1) 2.1.37+49abcf7ef4
			fabric-models-v0: Fabric Models (v0) 0.3.29+11ba9c3bf4
			fabric-networking-api-v1: Fabric Networking API (v1) 1.2.22+ca5f59aaf4
			fabric-networking-v0: Fabric Networking (v0) 0.3.39+df3654b3f4
			fabric-object-builder-api-v1: Fabric Object Builder API (v1) 7.0.1+63b515f4f4
			fabric-particles-v1: Fabric Particles (v1) 1.0.22+f1e4495bf4
			fabric-recipe-api-v1: Fabric Recipe API (v1) 1.0.6+a1ccd7bff4
			fabric-registry-sync-v0: Fabric Registry Sync (v0) 2.1.2+a383ab97f4
			fabric-renderer-api-v1: Fabric Renderer API (v1) 2.2.4+81e8c576f4
			fabric-renderer-indigo: Fabric Renderer - Indigo 1.1.0+81e8c576f4
			fabric-renderer-registries-v1: Fabric Renderer Registries (v1) 3.2.37+df3654b3f4
			fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.3.27+afca2f3ef4
			fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 3.0.20+f1e4495bf4
			fabric-rendering-v0: Fabric Rendering (v0) 1.1.40+df3654b3f4
			fabric-rendering-v1: Fabric Rendering (v1) 2.1.0+8f878217f4
			fabric-resource-conditions-api-v1: Fabric Resource Conditions API (v1) 2.3.0+e6c7d4eef4
			fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.3.18+5da15ca1f4
			fabric-sound-api-v1: Fabric Sound API (v1) 1.0.8+75e98211f4
			fabric-transfer-api-v1: Fabric Transfer API (v1) 3.0.1+9003cbe9f4
			fabric-transitive-access-wideners-v1: Fabric Transitive Access Wideners (v1) 3.0.2+63b515f4f4
		fabricloader: Fabric Loader 0.14.18
		java: OpenJDK 64-Bit Server VM 17
		lithium: Lithium 0.11.1
		logical_zoom: Logical Zoom 0.0.19
		minecraft: Minecraft 1.19.4
		modmenu: Mod Menu 6.1.0-rc.4
			fabric-api-base: Fabric API Base 0.4.23+9ff28bcef4
			fabric-key-binding-api-v1: Fabric Key Binding API (v1) 1.0.32+c477957ef4
			fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 2.2.14+5da15ca1f4
			fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.11.0+938a1d56f4
			fabric-screen-api-v1: Fabric Screen API (v1) 1.0.44+8c25edb4f4
		nochatreports: No Chat Reports 1.19.4-v2.1.1
		roughlyenoughitems: Roughly Enough Items 11.0.597
			error_notifier: Error Notifier 1.0.9
		sodium: Sodium 0.4.10+build.24
		starlight: Starlight 1.1.1+fabric.ae22326
	Launched Version: 1.19.4
	Backend library: LWJGL version 3.3.1 SNAPSHOT
	Backend API: NVIDIA GeForce GTX 1050 Ti/PCIe/SSE2 GL version 3.2.0 NVIDIA 530.41.03, NVIDIA Corporation
	Window size: 854x480
	GL Caps: Using framebuffer using OpenGL 3.2
	GL debug messages: 
	Using VBOs: Yes
	Is Modded: Definitely; Client brand changed to 'fabric'
	Type: Client (map_client.txt)
	Graphics mode: fancy
	Resource Packs: vanilla, fabric, file/VanillaTweaks_r694430.zip
	Current Language: en_us
	CPU: 8x Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
#@!@# Game crashed! Crash report saved to: #@!@# /home/xenorio/.local/share/PrismLauncher/instances/1.19.4/.minecraft/crash-reports/crash-2023-05-09_07.55.55-client.txt
Process exited with code 255.

Replication

  • Join any world (single- or multiplayer)
  • Put any tool into your main hand
  • Look at a block

Notes

The crash log shows a bunch of mods, but I have also tested this with all of them disabled except for Autotool, Mod Menu, and Fabric API.

Seems to originate from this line: https://github.com/chneau/mc-autotool/blob/0f4e42cf93318d9148885ce78f45aa298c358149/src/main/java/chneau/autotool/Util.java#LL20C26-L20C26

Maybe net.minecraft.util.math.BlockPos got removed/renamed at some point?

Version on the released jars

May I suggest you add the version to the mod file, like for example autotool-1.0.0.jar to make things easier for you and the players

Remember preferences

Are you treating ore blocks the same as stone blocks? It would be great if you could remember what a player last used for each ore block, for example, in the hotbar above I have one pick with silk touch and another without silktouch

Hard one,

Could be simplified to "silktouch" support.

Hotkey setting to disable/enable autotool

It would be nice to be able to set an hotkey to disable or enable autotool
For example, when I am removing some (dead) bushes, while a shovel is in my hotbar, it switches to it and destory the grass/sand under it also, because it goes extremely fast with efficiency of course.
So being able to set a hotkey to enable/disable the mod would be nice.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.