Italian Modding: 1.5.1 Basic File

In questo tutorial ti mostrerò come creare i tuoi primissimi file basici.
La prima cosa che devi fare è creare un nuovo package dentro la cartella common di eclipse. Fallo cliccando col desto del mouse nella cartella common e cliccando New Package. Quando cliccherai una finestra spunterà fuori per chiederti che nome avrà il package. Può essere qualsiasi cosa, ma è furbo dargli un nome come questo: tutorial.
La prima parola dovrebbe essere il nome della tua mod, il secondo deve essere common.
Ora clicca il package col destroy. Questa volta clicca New Class. Ancora una volta ti verrà chiesto di inserire il nome del nuovo file che stai per creare. Il file che stai per creare è il file principale della mod. Conterrà le infomazioni più importanti della tua mod. Conterrà le ricette, blocchi, oggetti, e molto altro. Io suggerisco di dare al file il nome della tua mod.
Una volta creato il file dovrebbe sembrare così:

package tutorial;

public classTutorial {
}

La prima cosa che devi aggiungere sopra la linea public class Tutorial è qualcosa simile a questo:


@Mod(modid = Tutorial.modid, name = “Mod Name”, version = “1.0”)


La prima cosa tra le virgolette è il mod id della tua mod. Questo modid deve essere univoco per ogni singola mod, oppure MC crasharà. Adesso c’è un errore sotto modid, questo perché sta tentando di accedere ad una variabile che non esiste ancora. Ce ne occuperemo dopo.

La seconda cosa nelle parentesi è il nome della mod, quello che si vedrà in Minecraft.
L’ultima e la terza cosa è il numero della versione, anche questo si vedrà su Minecraft.
Probabilmente avrai degli errori anche sotto
@Mod. Per aggiustere il tutto premi Ctrl + Shift + O. Dovrebbe aggiungere questo codice sotto a quello dove si indica il package:

import cpw.mods.fml.common.Mod;


Se non lo fa, dovrai farlo da solo.

Ora dovresti creare una nuova variabile, aggiungendo questa linea tra le parentesi graffe, proprio dopo Tutorial.

public static final String modid= “YourName_ModName”;


L’unica cosa che devi cambiare è ciò che è tra le virgolette. Dovrai inserire il tuo nome + _ + il nome della mod.

La seconda linea di codice che ti serve va tra @Mod e public class. Dovrebbe sembrare esattamente come questo:

@NetworkMod(clientSideRequired = true, serverSideRequired = false)


Questa linea farà in modo che gente che sta usando questa mod potrà connettersi ad server senza ma se la persona senza mod si collega al server che ce l’ha allora non lo lascerà entrare. Devi avere questa linea oppure MC crasherà quando proverai a connetterti ad un server.

Riceverai un errore sotto @NetworkMod. Importa i file necessari con Ctrl+Shift+O. Se non lo fa aggiungi questa linea da solo:

import cpw.mods.fml.common.network.NetworkMod;


Or il file dovrebbe essere così:


package tutorial;

import cpw.mods.fml.common.Mod;
importcpw.mods.fml.common.network.NetworkMod;
@Mod(modid = Tutorial.modid, name = “Mod Name”, version = “1.0”)
@NetworkMod(clientSideRequired = true, serverSideRequired = false)
public classTutorial
{
       publicstatic finalString modid = “YourName_ModName”;
}

Avrai notato che ho messo le parentesi a capo, non è obbligatorio. A me piace così, è una maniera di scrivere codice. Ognuno ha la sua maniera.

La prossima cosa da aggiungere è questa: 


@Init

public voidload(FMLInitializationEvent event)
{
        
}

Deve essere aggiunto sotto le parentesi della linea ti public class. Il metodo public void load() è il primo metodo della tua mod. Un metodo è un pezzo di codice the può essere utilizzato da altri posto. L’@Init sopra fa in modo che forge lo chiami durante la fase di Init.

Dentro questo metodo ci sarà la maggior parte di codice della tua mod. E’ un metodo molto importante e diventerà molto grande.
Potresti ottenere degli errori su @Init e dentro le parentesi di load. Importa i file necessari con la combinazioni di tasti (Ctrl + Shit + O) oppure aggiungi queste 2 linee:

import cpw.mods.fml.common.Mod.Init;

importcpw.mods.fml.common.event.FMLInitializationEvent;

Ora l’intero file dovrebbe essere così:


package tutorial;

import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.Init;
importcpw.mods.fml.common.event.FMLInitializationEvent;
importcpw.mods.fml.common.network.NetworkMod;
@Mod(modid = Tutorial.modid, name = “Mod Name”, version = “1.0”)
@NetworkMod(clientSideRequired = true, serverSideRequired = false)
public classTutorial
{
       publicstatic finalString modid = “YourName_ModName”;
      
       @Init
       publicvoid load(FMLInitializationEvent event)
       {
        
       }
}

Se vuoi scaricare il codice source lo puoi fare qui: download

Non ti suggerisco di compiare il codice dal download e basta. Non ti farà imparare molto e non ti ricorderai il codice. Se vuoi farlo o vuoi capire come mai il tuo codice non funziona puoi scaricarlo. 

In the next tutorial I will show you how to add a basic block to Minecraft.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">