Skip to content
fishstiz edited this page Mar 12, 2025 · 8 revisions

Important

The Minecraft Cursor Wiki has moved to:
https://fishstiz.github.io/minecraft-cursor-wiki/.

This page will no longer be updated.



Minecraft Cursor is a Minecraft mod that replaces the default cursor with a configurable and adaptive Minecraft-themed cursor. It features adaptive cursors that change dynamically when hovering over elements or in specific contexts.

How it works

Note: For Mojang Mappings: Element = GuiEventListener, and ParentElement = ContainerEventListener

The mod uses an element registration system that maps Minecraft elements (Element) to a cursor type function, which determines the cursor type when the mouse hovers over the element.

It detects elements through the ParentElement#children() method on the current screen and recursively traverses nested parent elements—those that are instances of ParentElement—with the same method to locate deeper nested elements. When an element is detected, its Element#isMouseOver(mouseX, mouseY) method is invoked. If it returns true, the mapped cursor type function for that element is executed to determine the cursor type to apply.

Resource Pack Support

Create your own theme, customize and animate cursor designs, and configure each setting with resource packs.

Get started through the Minecraft Cursor Wiki here or by navigating the sidebar.

Java API

Minecraft Cursor provides a Java API for developers to:

  • Create custom cursor types.
  • Register elements with custom cursor type functions.
  • Use an interface-based approach as an alternative to element registration, allowing elements to implement a getCursorType() method to declare their cursor type without manual registration.
  • Directly change the cursor, bypassing the element-based system, for full control when the element hierarchy is too complex or unnecessary.

Get started through the Minecraft Cursor Wiki here or by navigating the sidebar.

JavaDocs: https://minecraft-cursor.bitbucket.io

Clone this wiki locally