[Library Turtle] - Gestion de l'inventaire pour les debutants

Voir le sujet précédent Voir le sujet suivant Aller en bas

[Library Turtle] - Gestion de l'inventaire pour les debutants

Message par Link712011 le Jeu 5 Mai - 16:01

Bonjour,

C'est avec une grade joie que j'ai remarqué que certains d'entre vous commençaient a s'intéresser aux turtles. Or une partie souvent négligée et pourtant extrêmement importante est la gestion de l'inventaire de vos turles.

En effet, quand une turtle va creuser, elle va placer ce bloc dans le slot sélectionné par la turtle. Si elle ne peut pas stacker dessus (slot plein ou bloc diffèrent), elle va le poser après. Sans parler du fait que de temps en temps elle doit changer de slot sélectionne pour effectuer une tache spécifique (refuel, planter un arbre, poser une torche...).

Cela peut donner des situations comme celle ci:


On voit clairement que la turtle ici n'a pas du tout l'inventaire plein, car une fois trié on a ceci:


Pour cela, je vais vous laisser la joie de lire la magnifique API de la turtle qui est très bien expliquée et complète, sur le wiki.

Toutefois, pour ne pas que ce soit un frein, je met a votre disposition quelques fonctions pratiques;
http://pastebin.com/jpiNf1Y7


Explication des fonctions:

- select_item(item, meta)
Prend un item en paramètre (exemple: "minecraft:coal") et un metadata (exemple: 0) et le sélectionné. Retourne true si elle l'a sélectionné, false si l'item demandé n'est pas présent dans l'inventaire de la turtle.

- select_fuel()
Sélectionne un seau de lave. S'il n'y en a pas, sélectionné du charbon de bois. Retourne true si elle l'a sélectionné, false si le carburant n'est pas présent dans l'inventaire de la turtle.
Requiert: select_item(item, meta)

- check_fuel()
Vérifie le carburant de la turtle. S'il n'y en a pas suffisamment, elle appelle select_fuel() et refuel la turtle. S'il n'y a plus de combustible dans l'inventaire de la turtle, elle bloque le programme en attendant qu'un joueur en ajoute.
Requiert: select_item(item, meta)
Requiert: select_fuel()

- select_next_item(slot, item)
Sélectionne l'item demande a partir du slot passe en paramètre. Retourne true si elle l'a sélectionné, false si l'item demandé n'est pas présent dans l'inventaire de la turtle après le slot demande.

- repack_item(item)
Stack l'item passe en paramètre en le rapprochant autant que possible du slot 1, soit une petite réorganisation de l'inventaire. N'échoue jamais, donc retourne true.
Requiert: select_next_item(slot, item)

- clean_inventory()
Complète réorganisation de l'inventaire, ici conçût pour une turtle de minage, repack tout ce qui est fuel/minerais et jette le reste.
Requiert: select_next_item(slot, item)
Requiert: repack_item(item)

Je mettrai peu être plus tard d'autres fonctions utiles. Pour le moment, a vos bloc-notes Very Happy
avatar
Link712011

Messages : 81
Date d'inscription : 04/04/2016
Age : 21
Localisation : Entre ma chaise et mon clavier

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum