Go to file
2018-09-30 19:14:41 +02:00
registry add durability table 2018-09-22 17:57:36 +02:00
screenshots add golden hammer 2018-09-22 17:40:16 +02:00
system allow custom hammer textures 2018-09-30 19:14:41 +02:00
textures create documentation 2018-09-22 17:28:08 +02:00
depends.txt support for moreores 2018-09-22 16:21:32 +02:00
init.lua optimize and extend replacement table 2018-09-22 17:33:55 +02:00
license.txt init 2018-09-22 01:15:44 +02:00
mod.conf init 2018-09-22 01:15:44 +02:00
README.md allow custom hammer textures 2018-09-30 19:14:41 +02:00

“Universal Hammers” adds various hammers that can be used to crush nodes.

Default usage

The mod registers various hammers. Those hammers can be crafted from sticks and their respective material. Different material hammers can be used different times before they break.

hammers and the needed materials

Crafting the hammers needs two sticks and two of the material as shown in the image above. Crafting is then done very similar to the other tools.

example hammer crafting

The recipe shape is always the same, just interchange the head material. If the moreores mod is installed and loaded hammers can be crafted from the mods ores in the same way as shown above.

Default functionality

The hammers added by this mod can be used to crush material into “softer” material.

stone crushing process

The three default sandstone types can be crushed into the corresponding three default sand types, too.

Durability

The durability is based on personal opinion.

Hammer Material Mod Durability (uses)
Wood default 10
Stone default 50
Gold default 80
Bronze default 100
Steel default 150
Silver moreores 200
Diamond default 250
Mese default 300
Obsidian default 350
Mithril moreores 400

Feel free to suggest changes.

API usage

The Universal Hammer API can be used by calling the uniham.register_hammer function. This function takes two parameters, the ID and the definition table.

uniham.register_hammer('my_cool_id', {
    name = 'My Cool Hammer',
    head = 'mymod_my_cool_head_base_texture.png',
    --- Alternative to `head`, see description below
    -- texture = 'mymod_my_cool_hammer_texture.png',
    craft = 'mymod:my_cool_item',
    uses = 200
})

This registers a hammer with the name “My Cool Hammer” that has the ID mymod:my_cool_id. The head base texture is mymod_my_cool_texture.png and the texture is automatically masked to form a hammer head.

If instead of head the value texture is provided then the automatic texture generation is disabled and the hammer will get the texture defined by the texture value. If both values are added then the texture value is given precedence.

The hammer is crafted like the provided hammers with two sticks and two of the items provided for craft.

uses defines how often the hammer can be used. The value also gets stored in the tools definition as _uniham.uses that can be used by a custom on_use function for example

The registration table allows another, absolutely optional, parameter on_use. This parameter has to be a function being, well, an on_use function as defined by the Minetest API. This overrides the built-in on_use function that replaces the nodes as described. Custom on_use function have to handle wear and itemstack returning.