Fuel database

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

Fuel database

Message par skypop le Lun 1 Aoû - 20:29

à prétexte d'optimisation, voici une base de données des combustibles/carburants.
C'est à employer comme une API, même si à la base je voyais ça comme une simple base de données.
En fin de compte c'est les deux en même temps.

Code:
pastebin get 5g2DntXx dbFuel

L'idée derrière tout ça, c'est que ça peut permettre de rationaliser la ressource.
Sinon de permettre de rationner l'espace disponible dans l'inventaire d'une Turtle.

Tous les items indiqués comme "Fuel" par Just enough items sont référencés, sur la base de leur id (indiqué dans le tooltip).
C'est à dire :
  • minecraft:planks pour les planches (toutes)
  • minecraft:sapling pour les pousses d'arbres (toutes)
  • minecraft:lava_bucket pour un seau de lave
  • minecraft:coal pour le charbon mineral et charbon végétal (coal et charcoal, c'est le même id)
  • etc.

dbFuel.query(fuelName)
Renvoi les données (brutes) du carburant indiqué par fuelName.
Renvoi false si ça n'est pas un id référencé.

Format des données d'un carburant :
Code:
{
  burnTime=300,
  CC_fuelValue=15,
}
  • burnTime c'est le potentiel dans un four. Avec 300 par exemple, vous pouvez cuire 1,5 poulet. Pour le calculer faites :
    Code:
    (quantité / burnTime*.5))*100
  • CC_fuelValue c'est le gain en fuel pour une Turtle. Avec 15, la Turtle peut traverser 15 blocs.


Quelques fonctions plus pratiques :

dbFuel.isFuel(name)
Renvoi true si cet item est référencé, false si ce n'est pas le cas (si ce n'est pas du fuel)

dbFuel.smelt(fuelName,qty)
Calcule la quantité de carburant nécessaire pour cuire la quantité d'item indiqué avec le combustible indiqué.
Exemple : dbFuel.smelt("minecraft:sapling",64) renvoi le nombre de pousses d'arbre nécessaire pour cuire un stack
La valeur retournée est le produit exact du calcul. Utilisez math.ceil() pour avoir la quantité exacte à utiliser.

dbFuel.turtle(fuelName,distance)
Calcule la quantité de fuel nécessaire à une Turtle pour parcourir la distance indiquée, avec le fuel indiqué.
Exemple: dbFuel.turtle("minecraft:planks",16) renvoi combien de planches seraient nécessaire pour traverser un chunk (16 blocs)
On peut aussi l'utiliser comme ça :
dbFuel.turtle("minecraft:lava_bucket",16*16*16) pour savoir combien de seau de lave seraient nécessaires pour parcourir toutes les cases d'un chunk.
La valeur retournée est le produit exact du calcul. Utilisez math.ceil() pour avoir la quantité exacte à utiliser.

debugMode(true)
Active le mode de débogage
debugMode(false)
Désactive le mode de débogage (il est désactivé par défaut)

Le mode de débogage générera des messages d'erreur. S'il est désactivé, les fonctions retourneront juste false en cas d'échec.

Astuce :
Avec une Turtle, pour vérifier qu'un item peut être utilisé comme fuel on peut toujours faire ça :
Code:
turtle.select(slot)
if turtle.refuel(0) then
  print("L'item dans le slot "..slot.." est bien du fuel")
else
  print("L'item dans le slot "..slot.." n'est pas du fuel")
end
avatar
skypop

Messages : 95
Date d'inscription : 25/07/2016

Revenir en haut Aller en bas

Re: Fuel database

Message par cedmeu le Mer 3 Aoû - 15:01

Sympa Smile Merci pour le partage.

cedmeu
Admin

Messages : 493
Date d'inscription : 28/03/2016

http://forum.computercraft.fr

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