Update Entity,Bloc Machine
-
boolean flag = this.power > 0;par contre l’autre boolean tu veux parler de this.power?
-
Ok, tu n’as rien compris.
Comme ça :public void updateEntity() { boolean flag = this.power > 0; boolean flag1 = false; if (hasPower() && isMacerating()) { this.power–; } if (!this.worldObj.isRemote) { if(this.power !=0 ||this.slots[0] != null){ if (this.power == 0 && this.canSmelt()){ if (this.power > 0) { flag1 = true; } } if (this.canSmelt() && this.hasPower() ) { ++this.cookTime; if (this.cookTime == this.maceratingSpeed) { this.cookTime = 0; this.smeltItem(); flag1 = true; } } else { this.cookTime = 0; } } System.out.println("flag ? " + flag); System.out.println("power > 0 ? " + Boolean.valueOf(power > 0)); if (flag != power > 0) { flag1 = true; PlateMachine.updateFurnaceBlockState(this.power > 0,this.worldObj, this.xCoord, this.yCoord, this.zCoord); } } if (flag1) { this.markDirty(); } if (!addedToEnet) onLoaded(); }Et je veux savoir ce qui s’affiche dans la console.
-
ah ok je n’avait vraiment pas compris x)
bon ça me spam:
flag ? true
power > 0 ? true -
Je trouve çà bizarre le “flag != power > 0”. çà veut dire qu’il faut que les 2 soit différents (par exemple l’un à true et l’autre à false) pour que la condition soit exécutée, que veux-tu faire vraiment ?
-
power > 0 est sur true même quand il n’y a rien dans ta machine ?
SCAREX -> c’est normal. flag vaut power > 0 au début de la fonction, donc lorsque la machine arrive à la fin, flag sera true et power > 0 sera faux, donc ça change. Et au début c’est l’inverse, flag faux false et power > 0 vaut true. Ça c’est le fonctionnement normal de ce code.
Or chez lui il y a un problème. -
Oui il est sur true même quand il n’y a rien
-
Dans ce cas il faut trouver pourquoi power est toujours supérieur à 0. Envoies ta classe entière.
-
le code entier http://pastebin.com/MEUewhyQ
-
public double injectEnergy(ForgeDirection forgeDirection, double v,
double v2) {
Tu appel cette fonction où ? Ton bloc fonctionne comment ?
Car s’il est fait de tel sorte que power est toujours > 0 il faut revoir la façon de détecter si ça fonctionne.
Le code du four ne correspond pas à ce que tu veux faire dans ce cas. -
Bon enfaite j’utilise IC2 api,mon bloc fonctionne avec leur energie.
Du coup on peux peut-être essayer avec le cooktime?
EDIT : le cookTime fonctionne