.2 : energy mechanic / api / "cable"
-
Ah ok, dans la classe block, il existe une fonction qui retourne le BlockState actuel en fonction des blocks autour (je sais malheuresement plus son nom), après tu fais un block state avec un boolean pour chaque face, et dans tes jsons, tu fais le rendu en fonction des booleans (et si tu veux pas passer ta vie dessus, y’a des logiciels pour en faire).
-
c’est quoi le nom du programme en question car oui ca va me souler sinon ?
et aussi faire le rendu via un json en fonction d"un boolean dsl mais je sais pas trop comment mit prendre
-
MrCrayfish je sais plus quoi il me semble, mais je regarde ce WE vu que je compte me repencher sur le mod que j’avais commencé y’a longtemps
-
avec Model Creator ?
-
Oui c’est ça.
-
T’es sur car je vois pas trop comment le faire avec ce logiciel
après je ne suis pas un expert des jsons -
Sais pas jamais utilisé, j’avais tout fait à la main (sauf que y’a une espèce de ligne blanche de glitch aux coins).
Sinon t’a d’autres programmes ici : http://minecraft.gamepedia.com/Programs_and_editors/3D_modeling. -
tu sais pas ou je pourrais trouver des exemples de jsons qui font ce genre de chose histoire d’ apprendre mieux leur fonctionnement ?
-
Je t’en donne ce we
-
Ok merci

-
Déjà il te faudra un property boolean pour chaque face du block, de la forme
java /** Whether this fence connects in the northern direction */ public static final PropertyBool NORTH = PropertyBool.create("north");que tu devras enregistrer comme nimporte quel blockstate, ensuite il faut mettre la fontion pour retourner le blockstate actuel donc : ```java
public boolean canConnectTo(IBlockAccess worldIn, BlockPos pos)
{
return worldIn.getTileEntity(pos) instanceof IPipes;
}
@Override
public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos)
{
return state.withProperty(NORTH, Boolean.valueOf(this.canConnectTo(worldIn, pos.north())))
.withProperty(EAST, Boolean.valueOf(this.canConnectTo(worldIn, pos.east())))
.withProperty(SOUTH, Boolean.valueOf(this.canConnectTo(worldIn, pos.south())))
.withProperty(WEST, Boolean.valueOf(this.canConnectTo(worldIn, pos.west())))
.withProperty(UP, Boolean.valueOf(this.canConnectTo(worldIn, pos.up())))
.withProperty(DOWN, Boolean.valueOf(this.canConnectTo(worldIn, pos.down())));
}Ensuite, il faudra le fichier json du blockstate (le mien fait 83 lignes :'(, et il faut que je le debug, vu que certaines connections marchent pas bien), regardes celui des fences (je m'en suis inspiré), il faut ajouter le haut et le bas), et pour les fichiers de model, il en faut un pour chaque nombre de connections, de 0 à 6 inclus. -
Sérieusement il on fumés quoi mojang quand il on eu l"idée de faire ces jsons (déjà que 3 pour un block c’est bien trop)
-
Ils ont juste voulu permettre aux créateurs de modpack de modifier un peu plus en profondeur le jeu.
Eux ils sont content
Ceci dis les jsons ça reste une idée plus correcte que les blockpos.
-
Oui les block pos c’est pas extra… En soit le jsons c’est bien, sinon pour le câble je serais passé par un tesr, moins long à faire, mais plus lourd pour le jeu.
-
Personnellement j’avais fait ça : https://www.minecraftforgefrance.fr/showthread.php?tid=3655#cable
Personne lit mes tutos … -
Ah oui ça va bien plus vite avec ça !
Je n’ai pas encore trop utilisé les jsons (je mod plus tellement ces derniers temps), il va falloir que je me renseigne sur ce que forge ajoute à ce niveau, car ça semble très complet !
(je l’ai déplacé dans la section bloc). -
C’est vrai que c’est une bonne idée d’utiliser ton tuto aussi ^^