[1.9] ForgeDirection.UNKNOW to 1.8/1.9
-
VALID_DIRECTIONS contenait tout sauf UNKNOWN.
Sachant que maintenant on utilise simplement null pour UNKNOWN, il suffit de faire un null check. VALID_DIRECTIONS n’est plus nécessaire.
Si tu n’utilisais dans une boucle for pour parcourir les différentes directions possible, tu as EnumFacing.VALUES. -
Le problème c’est que ici (voir dessous), je ne sais pas comment le mettre bien
public class EnergyNet { public void distributeEnergyToSurrounding(World world, int x, int y, int z, EnumFacing lastDirection, EnergyBar energyBar) { distributeEnergyToSurroundingWithLose(world, x, y, z, lastDirection, energyBar); } public void distributeEnergyToSurrounding(World world, int x, int y, int z, EnergyBar energyBar) { distributeEnergyToSurrounding(world, x, y, z, null, energyBar); } public static void distributeEnergyToSide(World world, BlockPos faces, EnumFacing direction, EnergyBar energyBar) { int x = x + direction.getFrontOffsetX(); int y = y + direction.getFrontOffsetY(); int z = z + direction.getFrontOffsetZ(); if (world.getTileEntity(faces.add(x, y, z)) instanceof IEnergy) { IEnergy energyTileOnSide = (IEnergy) world.getTileEntity(faces.add(x + direction.getFrontOffsetX(), y + direction.getFrontOffsetY(), z + direction.getFrontOffsetZ())); IEnergy thisEnergyTile = (IEnergy) world.getTileEntity(faces); EnumFacing invertedSide = EnumFacing. } } }Sur la toute dernière ligne “EnumFacing invertedSide = EnumFacing.” Normalement en 1.7, cette ligne c’est :
ForgeDirection invertedSide = ForgeDirection.VALID_DIRECTIONS[ForgeDirection.OPPOSITES[direction.ordinal()]];
mais je ne sais pas comment le mettre en remplacant tout en EnumFacing.
Surtout dans ma partis assez foireuse du “distributeEnergyToSide”
Yohann
-
tout simplement direction.getOpposite()
-
Du genre, comme ca ? (pour la derniere ligne)
EnumFacing invertedSide = direction.getOpposite(); -
oui
-
Ok, je te remercie
-
Bon ok, je crois que cette histoire de ForgeDirection m’as littéralement m’enerver.
Maintenant j’ai une erreur au niveau du :
for (EnumFacing direction : lastDirection.getOpposite())Erreur –> “Can only iterate over an array or an instance of java.lang.Iterable”
[java]
private void distributeEnergyToSurroundingWithLose(World world, int x, int y, int z, EnumFacing lastDirection,
EnergyBar energyBar)
{
int sides = 0;
boolean sidesCanOutput [] = new boolean [6];
for (EnumFacing direction : lastDirection.getOpposite())
{}
}[java]
-
lastDirection.getOpposite() est du type EnumFacing, ce n’est ni une liste, ni une array
-
Ba alors comment on met en place ca:
for (ForgeDirection direction : ForgeDirection.VALID_DIRECTIONS) { } -
Comme ça :
for(EnumFacing face : EnumFacing.VALUES) { } -
J’allais demander exactement si c’était bien ca.
j’ai checker enfaite dans la class et j’ai vus qu’il y avais deux listes.
Sinon, je te remercie
-
résolu ?
-
@‘SCAREX’:
résolu ?
Ha oui désole, j’avais oublier