Gli utensili sono essenziali per la sopravvivenza e l'avanzamento, poiché permettono ai giocatori di raccogliere risorse, costruire edifici, e difendere se stessi.
Creare un Materiale dell'Utensile
Puoi creare un materiale degli utensili istanziando un nuovo oggetto ToolMaterial e memorizzandolo in un attributo da usare dopo per creare gli oggetti degli utensili che usano il materiale.
java
public static final ToolMaterial GUIDITE_TOOL_MATERIAL = new ToolMaterial(
BlockTags.INCORRECT_FOR_WOODEN_TOOL,
455,
5.0F,
1.5F,
22,
GuiditeArmorMaterial.REPAIRS_GUIDITE_ARMOR
);1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
Il costruttore di ToolMaterial accetta i parametri seguenti, in questo ordine:
| Parametro | Descrizione |
|---|---|
incorrectBlocksForDrops | Se un blocco è nel tag incorrectBlocksForDrops, significa che quando si usa un'utensile fatto di questo ToolMaterial su quel blocco, il blocco non dropperà alcun oggetto. |
durability | La durabilità di tutti gli utensili fatti di questo ToolMaterial. |
speed | La velocità con cui tutti gli utensili fatti di questo ToolMaterial rompono, per esempio, i blocchi. |
attackDamageBonus | Il danno aggiuntivo in attacco che avranno gli utensili di questo ToolMaterial. |
enchantmentValue | L'"incantabilità" degli utensili fatti di questo ToolMaterial. |
repairItems | Tutti gli oggetti in questo tag possono essere usati per riparare utensili di questo ToolMaterial in un'incudine. |
Se fai fatica a determinare valori adatti per ciascuno dei parametri numerici, considera le costanti dei materiali di utensili vanilla, tra cui ToolMaterial.STONE o ToolMaterial.DIAMOND.
Creare Oggetti per gli Utensili
Con la stessa funzione di utilità della guida Creare il Tuo Primo Oggetto, puoi creare gli oggetti dei tuoi utensili:
java
public static final Item GUIDITE_SWORD = register(
"guidite_sword",
settings -> new SwordItem(GUIDITE_TOOL_MATERIAL, 1f, 1f, settings),
new Item.Settings()
);1
2
3
4
5
2
3
4
5
I due valori float (1f, 1f) fanno riferimento al danno in attacco dell'utensile e alla sua velocità d'attacco rispettivamente.
Ricorda di aggiungerli ad un gruppo di oggetti se vuoi accedere ad essi dall'inventario in creativa!
java
ItemGroupEvents.modifyEntriesEvent(ItemGroups.TOOLS)
.register((itemGroup) -> itemGroup.add(ModItems.GUIDITE_SWORD));1
2
2
Dovrai anche aggiungere una texture, una traduzione e un modello per l'oggetto. Tuttavia, per i modelli, dovrai usare il modello item/handheld come genitore, invece del solito item/generated.
Per questo esempio, useremo il modello e la texture seguenti per l'oggetto "Spada di Guidite":
json
{
"parent": "minecraft:item/handheld",
"textures": {
"layer0": "fabric-docs-reference:item/guidite_sword"
}
}1
2
3
4
5
6
2
3
4
5
6
Questo è praticamente tutto! Se passi al gioco dovresti vedere gli oggetti dei tuoi strumenti nella scheda utensili dell'inventario in creativa.



