• Potions = Crash

    1.7.10
    14
    0 Votes
    14 Messages
    2k Vues
    ?
    ah ok
  • Changer la texture d'une entité en jeu, depuis une url

    1.10.x
    6
    0 Votes
    6 Messages
    2k Vues
    robin4002R
    Oui c’est bien ça. Justement pour les data watchers je ne sais pas trop. Il faut voir s’il existe une fonction qui est appelé lors du changement d’une valeur. Sinon une solution serait de faire un variable lastTextureName, et si la valeur de lastTextureName != valeur du data watcher, alors lastTextureName prend la valeur du data watcher et tu applique le téléchargement de la texture. Mais ce n’est pas très propre car il faudrait faire la vérification à chaque tick …
  • Sauvegarde NBTTagList Player Capabilities

    1.10.x
    32
    0 Votes
    32 Messages
    5k Vues
    AmaA
    Justement, j’ai un problème à ce niveau là, si quelqu’un peux me filer un coup de main je dis pas non ! Classe du packet client: ::: package fr.caminelot.common.network; import fr.caminelot.common.capability.ISpells; import fr.caminelot.common.capability.SpellsProvider; import io.netty.buffer.ByteBuf; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.fml.client.FMLClientHandler; import net.minecraftforge.fml.common.network.ByteBufUtils; import net.minecraftforge.fml.common.network.simpleimpl.IMessage; import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler; import net.minecraftforge.fml.common.network.simpleimpl.MessageContext; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; public class PacketUpdateCapabilityClient implements IMessage {    private NBTTagCompound tag;    private String         playerName;    public PacketUpdateCapabilityClient() {}    public PacketUpdateCapabilityClient(ISpells cap, EntityPlayer player) {        this.tag = (NBTTagCompound) SpellsProvider.SPELLS_CAP.getStorage().writeNBT(SpellsProvider.SPELLS_CAP, cap, null);        this.playerName = player.getGameProfile().getName();    }    @Override    public void fromBytes(ByteBuf buf) {        this.tag = ByteBufUtils.readTag(buf);        this.playerName = ByteBufUtils.readUTF8String(buf);    }    @Override    public void toBytes(ByteBuf buf) {        ByteBufUtils.writeTag(buf, this.tag);        ByteBufUtils.writeUTF8String(buf, this.playerName);    }    public static class Handler implements IMessageHandler <packetupdatecapabilityclient, imessage="">{        @Override        @SideOnly(Side.CLIENT)        public IMessage onMessage(PacketUpdateCapabilityClient message, MessageContext ctx) {            for (final EntityPlayer player : FMLClientHandler.instance().getClient().theWorld.playerEntities)                if (player.getGameProfile().getName().equals(message.playerName)) {                    SpellsProvider.SPELLS_CAP.getStorage().readNBT(SpellsProvider.SPELLS_CAP, player.getCapability(SpellsProvider.SPELLS_CAP, null),                            null, message.tag);                    break;                }            return null;        }    } } :::</packetupdatecapabilityclient,>
  • Gradlew build plante

    5
    0 Votes
    5 Messages
    1k Vues
    robin4002R
    Salut, Il faudrait les logs complets. (fichier gradle.log dans le dossier .gradle)
  • Créer un NPC avec menu relier à un plugins

    1.7.10
    5
    0 Votes
    5 Messages
    2k Vues
    GabsG
    Installe le plugin ChestCommand sur ton serveur, puis met le MOD Custom NPC . Puis avec les NPC (pnj) tu exécute la commande avec le chestcommand que tu as créer tout simplement.
  • Gérer le spawn de mobs customs

    1.7.10
    3
    0 Votes
    3 Messages
    934 Vues
    DCEDOD
    @‘robin4002’: Salut, Ce n’est pas compliqué à faire, dans la fonction update de ton entité tu get le nombre d’entité du même type qui se trouve sur un certains rayon, si c’est inférieur à 7 tu en fais spawn une nouvelle. Je n’ai aucune connaissance pure, je n’ai fait que suivre tes tutoriels et les “recopier”. Si quelqu’un est partant pour me dicter la marche à suivre ou me donner les codes, je veux bien.
  • Communiquer par packets entre un mod Forge et un plugin Sponge

    1.10.x
    8
    0 Votes
    8 Messages
    2k Vues
    AymericRedA
    Je sais pas si c’est le meilleur moyen, mais c’est possible de faire ça oui.
  • Eclipse ne détecte pas mon JDK.

    16
    0 Votes
    16 Messages
    3k Vues
    robin4002R
    Désinstalles tous les versions de java que tu as, redémarres ton pc puis installes le dernier jdk en date : http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html (il installe en même temps le jre).
  • Génération d'items dans le coffre d'une structure

    1.7.10
    22
    0 Votes
    22 Messages
    4k Vues
    jglrxavpokJ
    Avant de mettre ton bloc, vérifie que tu n’as pas déjà un coffre à cette position, il est possible (je dis ça de vieilles mémoires) que Minecraft essaie de génèrer plusieurs fois ton coffre au même endroit, cassant ainsi le bloc précédant.
  • Savoir le joueur est connecter sur quelle serveur graçe au f3

    1.7.10
    25
    0 Votes
    25 Messages
    5k Vues
    ?
    Oui je comptais bien revenir dessus un de ces jours car sa pourrait m’être utile.
  • Crash coffre

    1.7.10
    15
    0 Votes
    15 Messages
    3k Vues
    darkvince37D
    @‘robin4002’: C’est pas normal, vu le code dans ton container :      int i;      for(i = 0; i < 3; ++i)      {          for(int j = 0; j < 9; ++j)          {              this.addSlotToContainer(new Slot(inventory, j + i * 9 + 9, 8 + j * 18, 86 + i * 18));          }      } Le dernier slot devrait être 8 + 9 * 2 = 26. Ça ne devrait pas atteindre 36. Ajoutes-tu des slots autre-part ? Non j’ai juste se que j’ai donner Edit j’ai remis a 72 car c’est la valeur que je veut réelement –-- Minecraft Crash Report ---- // I let you down. Sorry :( Time: 05/01/17 19:32 Description: Unexpected error java.lang.IndexOutOfBoundsException: Index: 45, Size: 45 at java.util.ArrayList.rangeCheck(Unknown Source) at java.util.ArrayList.get(Unknown Source) at net.minecraft.inventory.Container.getSlot(Container.java:130) at net.minecraft.inventory.Container.putStacksInSlots(Container.java:558) at net.minecraft.client.network.NetHandlerPlayClient.handleWindowItems(NetHandlerPlayClient.java:1202) at net.minecraft.network.play.server.S30PacketWindowItems.processPacket(S30PacketWindowItems.java:70) at net.minecraft.network.play.server.S30PacketWindowItems.processPacket(S30PacketWindowItems.java:78) at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:241) at net.minecraft.client.multiplayer.PlayerControllerMP.updateController(PlayerControllerMP.java:317) at net.minecraft.client.Minecraft.runTick(Minecraft.java:1693) at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1039) at net.minecraft.client.Minecraft.run(Minecraft.java:962) at net.minecraft.client.main.Main.main(Main.java:164) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) at net.minecraft.launchwrapper.Launch.main(Launch.java:28) at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) at GradleStart.main(Unknown Source) A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Stacktrace: at java.util.ArrayList.rangeCheck(Unknown Source) at java.util.ArrayList.get(Unknown Source) at net.minecraft.inventory.Container.getSlot(Container.java:130) at net.minecraft.inventory.Container.putStacksInSlots(Container.java:558) at net.minecraft.client.network.NetHandlerPlayClient.handleWindowItems(NetHandlerPlayClient.java:1202) at net.minecraft.network.play.server.S30PacketWindowItems.processPacket(S30PacketWindowItems.java:70) at net.minecraft.network.play.server.S30PacketWindowItems.processPacket(S30PacketWindowItems.java:78) at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:241) at net.minecraft.client.multiplayer.PlayerControllerMP.updateController(PlayerControllerMP.java:317) -- Affected level -- Details: Level name: MpServer All players: 1 total; [EntityClientPlayerMP['Player450'/336, l='MpServer', x=32,75, y=69,62, z=-326,01]] Chunk stats: MultiplayerChunkCache: 289, 289 Level seed: 0 Level generator: ID 00 - default, ver 1\. Features enabled: false Level generator options: Level spawn location: World: (33,64,-321), Chunk: (at 1,4,15 in 2,-21; contains blocks 32,0,-336 to 47,255,-321), Region: (0,-1; contains chunks 0,-32 to 31,-1, blocks 0,0,-512 to 511,255,-1) Level time: 10104 game time, 10104 day time Level dimension: 0 Level storage version: 0x00000 - Unknown? Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false) Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false Forced entities: 100 total; [EntitySkeleton['Skeleton'/50, l='MpServer', x=-20,63, y=19,00, z=-385,41], EntitySpider['Spider'/51, l='MpServer', x=-30,56, y=20,00, z=-396,06], EntitySkeleton['Skeleton'/52, l='MpServer', x=-20,59, y=18,00, z=-396,44], EntitySkeleton['Skeleton'/53, l='MpServer', x=-19,77, y=19,00, z=-386,45], EntitySkeleton['Skeleton'/54, l='MpServer', x=-26,21, y=56,00, z=-386,50], EntityZombie['Zombie'/55, l='MpServer', x=-16,50, y=22,00, z=-373,91], EntityCreeper['Creeper'/56, l='MpServer', x=-17,00, y=18,00, z=-383,59], EntityCreeper['Creeper'/57, l='MpServer', x=-27,00, y=60,00, z=-295,56], EntitySkeleton['Skeleton'/62, l='MpServer', x=-1,97, y=41,00, z=-403,34], EntitySkeleton['Skeleton'/63, l='MpServer', x=-3,22, y=41,00, z=-404,84], EntitySkeleton['Skeleton'/65, l='MpServer', x=-1,97, y=41,00, z=-404,16], EntityZombie['Zombie'/66, l='MpServer', x=-2,31, y=41,00, z=-402,31], EntityZombie['Zombie'/67, l='MpServer', x=-4,94, y=17,00, z=-398,38], EntityCreeper['Creeper'/68, l='MpServer', x=-11,44, y=55,00, z=-395,09], EntityZombie['Zombie'/69, l='MpServer', x=-10,94, y=54,00, z=-391,50], EntityZombie['Zombie'/70, l='MpServer', x=-6,53, y=58,00, z=-394,94], EntitySkeleton['Skeleton'/71, l='MpServer', x=-8,31, y=56,00, z=-394,53], EntityZombie['Zombie'/72, l='MpServer', x=-8,84, y=55,00, z=-393,44], EntityZombie['Zombie'/73, l='MpServer', x=-5,31, y=58,00, z=-396,53], EntityBat['Bat'/74, l='MpServer', x=-0,75, y=37,10, z=-373,31], EntityBat['Bat'/75, l='MpServer', x=-0,03, y=36,02, z=-376,69], EntitySkeleton['Skeleton'/76, l='MpServer', x=-4,06, y=24,00, z=-328,53], EntitySkeleton['Skeleton'/77, l='MpServer', x=-11,38, y=29,00, z=-289,84], EntityZombie['Zombie'/78, l='MpServer', x=-8,50, y=19,00, z=-290,03], EntityCreeper['Creeper'/79, l='MpServer', x=-8,00, y=18,00, z=-288,50], EntityCreeper['Creeper'/80, l='MpServer', x=-11,16, y=18,00, z=-290,38], EntityClientPlayerMP['Player450'/336, l='MpServer', x=32,75, y=69,62, z=-326,01], EntityCreeper['Creeper'/81, l='MpServer', x=-4,50, y=53,00, z=-297,50], EntityZombie['Zombie'/82, l='MpServer', x=-13,00, y=16,85, z=-286,47], EntityCreeper['Creeper'/83, l='MpServer', x=-11,50, y=18,00, z=-285,50], EntitySkeleton['Skeleton'/94, l='MpServer', x=12,34, y=36,00, z=-388,00], EntityBat['Bat'/95, l='MpServer', x=5,25, y=56,10, z=-388,66], EntityZombie['Zombie'/96, l='MpServer', x=15,59, y=55,00, z=-392,31], EntityCreeper['Creeper'/97, l='MpServer', x=13,33, y=32,00, z=-372,42], EntityCreeper['Creeper'/98, l='MpServer', x=9,19, y=32,00, z=-372,42], EntityZombie['Zombie'/99, l='MpServer', x=6,63, y=27,00, z=-309,91], EntitySkeleton['Skeleton'/100, l='MpServer', x=7,86, y=27,00, z=-309,77], EntityCreeper['Creeper'/101, l='MpServer', x=4,30, y=27,20, z=-300,70], EntitySkeleton['Skeleton'/102, l='MpServer', x=3,38, y=52,36, z=-292,50], EntitySkeleton['Skeleton'/103, l='MpServer', x=-1,02, y=21,00, z=-277,50], EntityBat['Bat'/104, l='MpServer', x=15,03, y=28,18, z=-275,75], EntityBat['Bat'/105, l='MpServer', x=12,34, y=30,26, z=-276,16], EntityBat['Bat'/106, l='MpServer', x=8,63, y=32,10, z=-274,16], EntityBat['Bat'/110, l='MpServer', x=23,91, y=28,95, z=-302,34], EntitySkeleton['Skeleton'/111, l='MpServer', x=25,53, y=28,00, z=-298,91], EntitySpider['Spider'/112, l='MpServer', x=23,72, y=28,00, z=-299,97], EntityBat['Bat'/113, l='MpServer', x=17,63, y=33,82, z=-269,78], EntityBat['Bat'/124, l='MpServer', x=45,44, y=31,10, z=-404,28], EntityZombie['Zombie'/125, l='MpServer', x=39,66, y=21,00, z=-401,88], EntityZombie['Zombie'/127, l='MpServer', x=47,56, y=18,00, z=-387,47], EntitySkeleton['Skeleton'/128, l='MpServer', x=46,66, y=20,00, z=-381,31], EntitySkeleton['Skeleton'/129, l='MpServer', x=46,56, y=20,00, z=-382,56], EntitySkeleton['Skeleton'/130, l='MpServer', x=39,94, y=24,00, z=-372,47], EntitySkeleton['Skeleton'/131, l='MpServer', x=39,16, y=25,00, z=-369,31], EntitySkeleton['Skeleton'/132, l='MpServer', x=43,66, y=23,03, z=-377,64], EntityWitch['Witch'/133, l='MpServer', x=47,22, y=21,00, z=-379,47], EntityZombie['Zombie'/134, l='MpServer', x=46,22, y=19,00, z=-386,32], EntityCreeper['Creeper'/135, l='MpServer', x=33,44, y=32,00, z=-323,03], EntitySpider['Spider'/136, l='MpServer', x=47,04, y=57,37, z=-292,28], EntitySpider['Spider'/137, l='MpServer', x=43,73, y=58,00, z=-296,55], EntitySpider['Spider'/138, l='MpServer', x=41,71, y=58,00, z=-293,71], EntitySpider['Spider'/139, l='MpServer', x=45,28, y=58,00, z=-292,84], EntitySpider['Spider'/140, l='MpServer', x=45,36, y=58,00, z=-294,83], EntitySkeleton['Skeleton'/141, l='MpServer', x=42,63, y=53,00, z=-302,31], EntitySpider['Spider'/142, l='MpServer', x=43,40, y=58,00, z=-294,84], EntitySkeleton['Skeleton'/143, l='MpServer', x=41,56, y=53,00, z=-303,94], EntityWitch['Witch'/159, l='MpServer', x=48,48, y=21,00, z=-383,38], EntityWitch['Witch'/160, l='MpServer', x=52,38, y=21,00, z=-386,13], EntityCreeper['Creeper'/161, l='MpServer', x=48,63, y=21,00, z=-382,41], EntityZombie['Zombie'/162, l='MpServer', x=51,53, y=34,00, z=-326,22], EntityZombie['Zombie'/163, l='MpServer', x=50,53, y=32,00, z=-323,25], EntityCreeper['Creeper'/177, l='MpServer', x=72,44, y=30,00, z=-395,31], EntityZombie['Zombie'/178, l='MpServer', x=65,53, y=28,00, z=-397,94], EntityMooshroom['Mooshroom'/179, l='MpServer', x=75,63, y=72,00, z=-397,38], EntityMooshroom['Mooshroom'/180, l='MpServer', x=68,63, y=72,00, z=-332,78], EntityBat['Bat'/181, l='MpServer', x=78,75, y=39,10, z=-295,59], EntityBat['Bat'/182, l='MpServer', x=73,44, y=27,10, z=-250,13], EntityZombie['Zombie'/184, l='MpServer', x=85,75, y=12,00, z=-401,31], EntitySkeleton['Skeleton'/185, l='MpServer', x=86,69, y=12,00, z=-402,38], EntityCreeper['Creeper'/186, l='MpServer', x=86,50, y=17,00, z=-401,03], EntityEnderman['Enderman'/188, l='MpServer', x=83,03, y=14,00, z=-399,35], EntityCreeper['Creeper'/189, l='MpServer', x=83,94, y=14,00, z=-400,04], EntitySkeleton['Skeleton'/190, l='MpServer', x=85,50, y=25,00, z=-394,50], EntityMooshroom['Mooshroom'/191, l='MpServer', x=94,28, y=79,00, z=-320,69], EntityMooshroom['Mooshroom'/192, l='MpServer', x=95,47, y=76,00, z=-333,63], EntityMinecartChest['entity.MinecartChest.name'/193, l='MpServer', x=80,50, y=26,50, z=-257,50], EntityBat['Bat'/194, l='MpServer', x=90,25, y=29,00, z=-255,25], EntityBat['Bat'/195, l='MpServer', x=90,50, y=29,00, z=-255,28], EntityBat['Bat'/196, l='MpServer', x=82,38, y=48,10, z=-253,25], EntityMooshroom['Mooshroom'/199, l='MpServer', x=102,22, y=66,00, z=-386,69], EntityMooshroom['Mooshroom'/204, l='MpServer', x=110,63, y=70,00, z=-339,22], EntityMooshroom['Mooshroom'/205, l='MpServer', x=103,47, y=72,00, z=-333,81], EntityMooshroom['Mooshroom'/206, l='MpServer', x=112,13, y=77,00, z=-310,80], EntityMooshroom['Mooshroom'/207, l='MpServer', x=111,25, y=72,00, z=-300,28], EntityMooshroom['Mooshroom'/208, l='MpServer', x=111,66, y=72,00, z=-291,28], EntityMooshroom['Mooshroom'/209, l='MpServer', x=114,53, y=63,00, z=-276,41], EntityMooshroom['Mooshroom'/210, l='MpServer', x=101,38, y=66,00, z=-269,47], EntityMooshroom['Mooshroom'/214, l='MpServer', x=112,47, y=63,00, z=-400,28], EntityMooshroom['Mooshroom'/215, l='MpServer', x=112,25, y=65,00, z=-390,47], EntityMooshroom['Mooshroom'/221, l='MpServer', x=112,78, y=70,00, z=-334,75]] Retry entities: 0 total; [] Server brand: fml,forge Server type: Integrated singleplayer server Stacktrace: at net.minecraft.client.multiplayer.WorldClient.addWorldInfoToCrashReport(WorldClient.java:415) at net.minecraft.client.Minecraft.addGraphicsAndWorldToCrashReport(Minecraft.java:2566) at net.minecraft.client.Minecraft.run(Minecraft.java:991) at net.minecraft.client.main.Main.main(Main.java:164) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) at net.minecraft.launchwrapper.Launch.main(Launch.java:28) at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) at GradleStart.main(Unknown Source) – System Details -- Details: Minecraft Version: 1.7.10 Operating System: Windows 10 (x86) version 10.0 Java Version: 1.8.0_111, Oracle Corporation Java VM Version: Java HotSpot(TM) Client VM (mixed mode), Oracle Corporation Memory: 859898744 bytes (820 MB) / 1037959168 bytes (989 MB) up to 1037959168 bytes (989 MB) JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used IntCache: cache: 11, tcache: 0, allocated: 13, tallocated: 95 FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1558 5 mods loaded, 5 mods active States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored UCHIJAAAA mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) UCHIJAAAA FML{7.10.99.99} [Forge Mod Loader] (forgeSrc-1.7.10-10.13.4.1558-1.7.10.jar) UCHIJAAAA Forge{10.13.4.1558} [Minecraft Forge] (forgeSrc-1.7.10-10.13.4.1558-1.7.10.jar) UCHIJAAAA ultrav2{1.0.0} [Ultrafight V2] (bin) UCHIJAAAA ModCustomMenu{1.0} [ModCustomMenu] (bin) GL info: ' Vendor: 'NVIDIA Corporation' Version: '4.5.0 NVIDIA 372.90' Renderer: 'GeForce GTX 750 Ti/PCIe/SSE2' Launched Version: 1.7.10 LWJGL: 2.9.1 OpenGL: GeForce GTX 750 Ti/PCIe/SSE2 GL version 4.5.0 NVIDIA 372.90, NVIDIA Corporation GL Caps: Using GL 1.3 multitexturing. Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported. Anisotropic filtering is supported and maximum anisotropy is 16. Shaders are available because OpenGL 2.1 is supported. Is Modded: Definitely; Client brand changed to 'fml,forge' Type: Client (map_client.txt) Resource Packs: [] Current Language: English (US) Profiler Position: N/A (disabled) Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used Anisotropic Filtering: Off (1) C’est le crash que j’avais mis plus haut mais le truc c’est que 72 sa devrai passez c’est pas trop grand
  • Surcouche de texture

    1.7.10
    7
    0 Votes
    7 Messages
    1k Vues
    BrigamersB
    D’accord, pour + de 100 block, fréquemment utilisés, c’est les TESR
  • Bloquer item ec

    5
    0 Votes
    5 Messages
    1k Vues
    ?
    si tu fait en skript tu fait que quand il y a l’id 683:4  qui essaye d’être mis dans un EnderChest (exemple) tu cancel l’event
  • FlenixCityes Core en 1.8.9 (depuis la 1.7.10)

    1.8.9
    7
    0 Votes
    7 Messages
    2k Vues
    ph1823P
    Bonjour, je reviens car j’ai un soucis avec l’escalier (gros up excuser moi j’ai pas voulue réouvrire un sujet :/), sur MrCrayfish’s Model Creator il rend bien, sauf que lorsque je le met en json que je le register il ne marche pas, j’ai pourtant bien register ect… car j’ai testé avec le RightCorner (un autre block) et la l’escalier s’afifche bien, donc j’ai copié la classe, voici ma classe ou je l’enregistre : [font=Courier Newpackage ]fr.ph1823.MyLife%(#cc7832)[; ] import com.silvaniastudios.cities.core.CoreBlocks%(#cc7832)[; ]import com.silvaniastudios.cities.core.CoreItems%(#cc7832)[; ]import net.minecraft.item.Item%(#cc7832)[; ]import net.minecraftforge.fml.common.FMLLog%(#cc7832)[; ]import tv.twitch.Core%(#cc7832)[; ] import static fr.ph1823.MyLife.GloryRP.*%(#cc7832)[; ] %(#629755)[*/** *]%(#629755)[* * Created by ph1823 - Minecraft on 29/12/2016. *]%(#629755)[* */ *]public class CoreTexture {    public static void registerBlock() {        *itemNewLife*()%(#cc7832)[; ]        *itemFlenix*()%(#cc7832)[; ]        *blockNewLife*()%(#cc7832)[; ]    }    static void blockNewLife() {        *proxyClient*.registerItemTexture(*cannabisSeed*, "cannabis_seed")%(#cc7832)[; ]        %(#808080)[//proxyClient.registerItemTexture(CoreItems.atmScreen, "atmBlock"); ]    }    static void itemNewLife() {        *proxyClient*.registerBlockTexture(*cannabisPlant*, "cannabisb")%(#cc7832)[; ]        *proxyClient*.registerBlockTexture(*RightTurnsign*, "rightcorner")%(#cc7832)[; ]        *proxyClient*.registerBlockTexture(*stopsign*, "stopsign")%(#cc7832)[; ]        *proxyClient*.registerBlockTexture(*yieldsign*, "yieldsign")%(#cc7832)[; ]        *proxyClient*.registerBlockTexture(*trafficcone*, "trafficcone")%(#cc7832)[; ]    }    static  void itemFlenix() {       %(#808080)[// proxyClient.registerBlockTexture(CoreBlocks.atmBlock, "atmBlock"); ]        *proxyClient*.registerBlockTexture(CoreBlocks.*oakWalkwayStairs*, "oakWalkwayStairs")%(#cc7832)[; ]    } } (la texture, et voici comme Flenix fait le rendue -> https://github.com/Flenix/FlenixCitiesCore/tree/master/src/main/java/com/silvaniastudios/cities/core/client/renders) , mais la n’es pas le problème, lorsque je le place, il ne ce place pas comme il faut, la aussi j’ai cherché et je n’ai pas trouvé, voici donc ma classe pour l’instant : [font=Courier Newpackage ]com.silvaniastudios.cities.core.blocks%(#cc7832)[; ] import java.util.List%(#cc7832)[; ] import com.silvaniastudios.cities.core.FlenixCities_Core%(#cc7832)[; ] import fr.ph1823.MyLife.Proxy.ClientProxy%(#cc7832)[; ]import net.minecraft.block.Block%(#cc7832)[; ]import net.minecraft.block.material.Material%(#cc7832)[; ]import net.minecraft.block.state.IBlockState%(#cc7832)[; ]import net.minecraft.entity.Entity%(#cc7832)[; ]import net.minecraft.entity.EntityLivingBase%(#cc7832)[; ]import net.minecraft.item.ItemStack%(#cc7832)[; ]import net.minecraft.util.*%(#cc7832)[; ]import net.minecraft.world.IBlockAccess%(#cc7832)[; ]import net.minecraft.world.World%(#cc7832)[; ]import net.minecraftforge.fml.relauncher.Side%(#cc7832)[; ]import net.minecraftforge.fml.relauncher.SideOnly%(#cc7832)[; ] import net.minecraft.block.Block.SoundType%(#cc7832)[; ]public class BlockWalkwayStairs extends Block {   String textureName%(#cc7832)[; ]   String oversizeName%(#cc7832)[; ]   %(#808080)[//getBlockState().getBaseState() ]     public BlockWalkwayStairs(Material mat, SoundType sound, String icon, String icon2) {      super(mat)%(#cc7832)[; ]      this.setCreativeTab(FlenixCities_Core.*tabCity*)%(#cc7832)[; ]      this.textureName = icon%(#cc7832)[; ]      this.oversizeName = icon2%(#cc7832)[; ]      this.setStepSound(sound)%(#cc7832)[; ]      this.setHardness(2.0F)%(#cc7832)[; ]      this.setResistance(12.0F)%(#cc7832)[; ]   }   %(#bbb529)[@Override ]   public void onBlockPlacedBy(World world, BlockPos blockPos, IBlockState state, EntityLivingBase entity, ItemStack stack) {       int direction = MathHelper.*floor_double*((entity.rotationYaw * 4F) / 360F + 0.5D) & 3%(#cc7832)[; ]      world.setBlockState(blockPos, getBlockState().getBlock().getStateFromMeta(direction),0)%(#cc7832)[; ]   %(#808080)[//    world.setBlockMetadataWithNotify(blockPos, direction, 0); ]   }   %(#bbb529)[@Override ]   public void addCollisionBoxesToList(World world, BlockPos blockPos, IBlockState state, AxisAlignedBB mask, List <axisalignedbb>list, Entity entity) {      boolean hasCollision = %(#cc7832)[false; ]      int meta = world.getBlockState(blockPos).getBlock().getMetaFromState(state)%(#cc7832)[; ]      if (!(world.getBlockState(blockPos.add(0,-1,0)).getBlock() instanceof BlockWalkwayStairs)) {         hasCollision = %(#cc7832)[true; ]                 if (meta == 0) { %(#808080)[//South-facing ]            setBlockBounds(0.0F, 0.0F,  0.0F,  1.0F, 0.0625F, 0.25F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]            setBlockBounds(0.0F, 0.25F, 0.25F, 1.0F, 0.3125F, 0.50F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]            setBlockBounds(0.0F, 0.50F, 0.50F, 1.0F, 0.5625F, 0.75F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]            setBlockBounds(0.0F, 0.75F, 0.75F, 1.0F, 0.8125F, 1.0F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]         } else if (meta == 1) { %(#808080)[//West-facing ]            setBlockBounds(0.75F, 0.0F, 0.0F,  1.00F, 0.0625F, 1.0F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]            setBlockBounds(0.50F, 0.25F, 0.0F, 0.75F, 0.3125F, 1.0F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]            setBlockBounds(0.25F, 0.50F, 0.0F, 0.50F, 0.5625F, 1.0F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]            setBlockBounds(0.0F,  0.75F, 0.0F, 0.25F, 0.8125F, 1.0F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]         } else if (meta == 2) { %(#808080)[//North-facing ]            setBlockBounds(0.0F, 0.0F, 0.75F,  1.0F, 0.0625F, 1.0F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]            setBlockBounds(0.0F, 0.25F, 0.50F, 1.0F, 0.3125F, 0.75F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]            setBlockBounds(0.0F, 0.50F, 0.25F, 1.0F, 0.5625F, 0.50F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]            setBlockBounds(0.0F, 0.75F, 0.0F,  1.0F, 0.8125F, 0.25F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]         } else if (meta == 3) { %(#808080)[//East-facing ]            setBlockBounds(0.0F, 0.0F, 0.0F, 0.25F, 0.0625F, 1.0F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]            setBlockBounds(0.25F, 0.25F, 0.0F, 0.50F, 0.3125F, 1.0F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]            setBlockBounds(0.50F, 0.50F, 0.0F, 0.75F, 0.5625F, 1.0F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]            setBlockBounds(0.75F, 0.75F, 0.0F, 1.00F, 0.8125F, 1.0F)%(#cc7832)[; ]            super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]         }      }      boolean connectNorth = checkConnections(world, blockPos.add(0,0,-1), - 1); %(#808080)[//z-1 ]      boolean connectEast  = checkConnections(world, blockPos.add(1,0,0), - 1);  %(#808080)[//x+1 ]      boolean connectSouth = checkConnections(world, blockPos.add(0,0,1), - 1); %(#808080)[//z+1 ]      boolean connectWest  = checkConnections(world, blockPos.add(-1,0,0), - 1);  %(#808080)[//x-1 ]            boolean hitboxNorth = %(#cc7832)[false; ]      boolean hitboxEast  = %(#cc7832)[false; ]      boolean hitboxSouth = %(#cc7832)[false; ]      boolean hitboxWest  = %(#cc7832)[false; ]            if (meta == 0 || meta == 2) {         if (!connectEast) { hitboxEast = true; }         if (!connectWest) { hitboxWest = true; }      } else if (meta == 1 || meta == 3) {         if (!connectNorth) { hitboxNorth = true; }         if (!connectSouth) { hitboxSouth = true; }      }      if (hitboxNorth) {         hasCollision = %(#cc7832)[true; ]         setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 2.25F, 0.0625F)%(#cc7832)[; ]         super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]      }      if (hitboxSouth) {         hasCollision = %(#cc7832)[true; ]         setBlockBounds(0.0F, 0.0F, 0.9375F, 1.0F, 2.25F, 1.0F)%(#cc7832)[; ]         super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]      }      if (hitboxEast) {         hasCollision = %(#cc7832)[true; ]         setBlockBounds(0.9375F, 0.0F, 0.0625F, 1.0F, 2.25F, 1.0F)%(#cc7832)[; ]         super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]      }      if (hitboxWest) {         hasCollision = %(#cc7832)[true; ]         setBlockBounds(0.0F, 0.0F, 0.0F, 0.0625F, 2.25F, 1.0F)%(#cc7832)[; ]         super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]      }      if (!hasCollision) {         setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F)%(#cc7832)[; ]         super.addCollisionBoxesToList(world, blockPos,state, mask, list, entity)%(#cc7832)[; ]      }      setBlockBoundsForItemRender()%(#cc7832)[; ]   }   %(#bbb529)[@Override ]   public void setBlockBoundsForItemRender() {      setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F)%(#cc7832)[; ]   }   public boolean checkConnections(World world, BlockPos blockPos, int targetMeta) {      if (world.getBlockState(blockPos).getBlock().isNormalCube(world, blockPos)) {         %(#cc7832)[return true; ]      }      if (world.getBlockState(blockPos).getBlock() instanceof BlockWalkwayStairs) {         %(#cc7832)[return true; ]      }      if (targetMeta >= 0) {         if (world.getBlockState(blockPos.add(0,-1,0)).getBlock() instanceof BlockWalkwayStairs) {%(#808080)[//y-1 ]            int meta = world.getBlockState(blockPos).getBlock().getMetaFromState(world.getBlockState(blockPos))%(#cc7832)[; ]            if (meta == targetMeta || meta == (targetMeta + 2)) {               %(#cc7832)[return true; ]            }         }      }      %(#cc7832)[return false; ]   }      %(#808080)[//blockIcon = iconRegister.registerIcon(FlenixCities_Core.modid + ":" + textureName); ]%(#808080)[      //oversizeIcon = iconRegister.registerIcon(FlenixCities_Core.modid + ":" + oversizeName); ]   @SideOnly(Side.*CLIENT*)   public boolean shouldSideBeRendered(IBlockAccess world, BlockPos pos, EnumFacing side) {      %(#cc7832)[return true; ]   } } Voila j’espère avoir expliqué clairement mon problème, a et aussi, il y a plusieurs type d’escalier, je dois donc register plus .json? Merci pour vos futur réponse, si vous avez besoin de plus de code, ou que j’espliqué mieux dite le moi =)</axisalignedbb>
  • NPE : Saving entity NBT

    1.11.x
    3
    0 Votes
    3 Messages
    1k Vues
    BrokenSwingB
    Salut, J’enregistre les données concernant mes events dans les tags NBT du monde donc j’ai des WorldSavedData. Ça pourrait venir d’un WorldSavedData#markDirty appelé trop souvent ? (Ça serait bizarre mais bon). Sachant que j’appelle WorldSavedData#markDirty lors de la création de l’event et qu’à cette étape ci je n’ai aucun problème. Tient, le code du TickHandler : @SubscribeEvent public static void onServerTick(TickEvent.ServerTickEvent event) { ArrayList <event>finishedEvents = new ArrayList<event>(); for(Event e : events) { if(e.isFinished()) { e.onFinished(); finishedEvents.add(e); } else if(e.isStopped()) { finishedEvents.add(e); } else { e.update(); } EventMaker.save(); //Fait un appelle direct de WorldSavedData#markDirty, rien d'autre } for(Event e : finishedEvents) { events.remove(e); } } Si tu veux le voir un peu ce qui il y a dans le code, le mod est sur github : https://github.com/MFFbrokenSwing/EventMod, là c’est le code pour la 1.8 mais si tu veux je peux mettre le code que j’ai fait actuellement (j’ai rien ajouté, juste fait l’autocomplétition et changé ce qu’il faut pour être en accords avec les changement de la 1.11)</event></event>
  • Compiler son mod avec des libs

    1.7.10
    3
    0 Votes
    3 Messages
    952 Vues
    BrokenSwingB
    Sois tu ajoutes les sources de la librairie directement avec les tiennes et tu build. Sois tu télécharges la lib et tu la met dans le même dossier que ton mod (dossier mods quoi)
  • Soucis Block Type Coffre

    1.7.10
    4
    0 Votes
    4 Messages
    987 Vues
    robin4002R
    Le problème là c’est que ton tile entity est null. Ce qui dans le tile entity peut être null dans le cas il n’y a pas d’item, c’est un cas prévus. Le fait que le tile entity soit null n’est pas un cas prévu, d’où le crash. Il faut trouver pourquoi c’est null alors que ça ne devrait pas. Pour ça tu peux utiliser des points d’arrêt + le debug d’eclipse, ou print la valeur du tile entity dans la console a différent endroit du code pour trouver où c’est null, et ensuite comprendre pourquoi.
  • Comment cree un livre ?!

    1.9.4
    5
    0 Votes
    5 Messages
    1k Vues
    TituyaT
    Euhhhhhhh ok mais tu peu me montrer comment on fait ? Au pire fait moi (si tu a le temps) un exemple pour un item nommé “bookT” car je sais pas du tout utilisé ce genre de fonction…. je débute 
  • Drops

    1.7.10
    11
    0 Votes
    11 Messages
    2k Vues
    robin4002R
    Supprimes cette ligne : public static final Item ItemCocaine = null; Et dans ta classe BlockPeche, mets plutot : return Modsyvlain.itemsylvain; dans la fonction getItemDropped
  • Craft de machine type four.

    1.7.10
    12
    0 Votes
    12 Messages
    3k Vues
    SpyManS
    Je vais voir cela plus en détail quand j’aurais un peu plus de temps tout ce que je sais c’est qu’il faut récupérer les itemstacks du craft et verif si en fonction du craft le stacksize de l’itemstack est supérieure ou égale a la quantité désiré, le check de la quantié doit se derouler dans dans la class du craft de la machine en question dans la fonction isSameKey si je me souviens bien et il faut par conséquent modifier aussi la fonction getSmeltingResult pour pouvoir recuperer de stacksize de chaque itemstack dans chaque slot de la mahine