Crash Ticking Entity et ArrayIndexOutOfBoundsException sur EntityBullet de Flan's Mod
-
Toujours le même problème avec code classe de FlansMod:
package com.flansmod.common; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.io.InputStreamReader; import java.lang.reflect.Method; import java.util.ArrayList; import java.util.List; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; import java.util.zip.ZipInputStream; import com.flansmod.common.driveables.EntityPlane; import com.flansmod.common.driveables.EntitySeat; import com.flansmod.common.driveables.EntityVehicle; import com.flansmod.common.driveables.EntityWheel; import com.flansmod.common.driveables.ItemPlane; import com.flansmod.common.driveables.ItemVehicle; import com.flansmod.common.driveables.PlaneType; import com.flansmod.common.driveables.VehicleType; import com.flansmod.common.driveables.mechas.EntityMecha; import com.flansmod.common.driveables.mechas.ItemMecha; import com.flansmod.common.driveables.mechas.ItemMechaAddon; import com.flansmod.common.driveables.mechas.MechaItemType; import com.flansmod.common.driveables.mechas.MechaType; import com.flansmod.common.eventhandlers.PlayerDeathEventListener; import com.flansmod.common.guns.AAGunType; import com.flansmod.common.guns.AttachmentType; import com.flansmod.common.guns.BulletType; import com.flansmod.common.guns.EntityAAGun; import com.flansmod.common.guns.EntityBullet; import com.flansmod.common.guns.EntityGrenade; import com.flansmod.common.guns.EntityMG; import com.flansmod.common.guns.GrenadeType; import com.flansmod.common.guns.GunType; import com.flansmod.common.guns.ItemAAGun; import com.flansmod.common.guns.ItemAttachment; import com.flansmod.common.guns.ItemBullet; import com.flansmod.common.guns.ItemGrenade; import com.flansmod.common.guns.ItemGun; import com.flansmod.common.guns.boxes.BlockGunBox; import com.flansmod.common.guns.boxes.GunBoxType; import com.flansmod.common.network.PacketHandler; import com.flansmod.common.parts.ItemPart; import com.flansmod.common.parts.PartType; import com.flansmod.common.teams.ArmourBoxType; import com.flansmod.common.teams.ArmourType; import com.flansmod.common.teams.BlockArmourBox; import com.flansmod.common.teams.BlockSpawner; import com.flansmod.common.teams.ChunkLoadingHandler; import com.flansmod.common.teams.CommandTeams; import com.flansmod.common.teams.EntityFlag; import com.flansmod.common.teams.EntityFlagpole; import com.flansmod.common.teams.EntityGunItem; import com.flansmod.common.teams.EntityTeamItem; import com.flansmod.common.teams.ItemFlagpole; import com.flansmod.common.teams.ItemOpStick; import com.flansmod.common.teams.ItemTeamArmour; import com.flansmod.common.teams.Team; import com.flansmod.common.teams.TeamsManager; import com.flansmod.common.teams.TileEntitySpawner; import com.flansmod.common.tools.EntityParachute; import com.flansmod.common.tools.ItemTool; import com.flansmod.common.tools.ToolType; import com.flansmod.common.types.EnumType; import com.flansmod.common.types.InfoType; import com.flansmod.common.types.TypeFile; import cpw.mods.fml.client.event.ConfigChangedEvent; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; import cpw.mods.fml.common.SidedProxy; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPostInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.event.FMLServerStartedEvent; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import cpw.mods.fml.common.network.NetworkRegistry; import cpw.mods.fml.common.registry.EntityRegistry; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import fr.altiscraft.altiscraft.common.ModAltisCraft; import net.minecraft.block.material.Material; import net.minecraft.command.CommandHandler; import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.monster.EntitySkeleton; import net.minecraft.entity.monster.EntityZombie; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; import net.minecraftforge.common.ForgeChunkManager; import net.minecraftforge.common.config.Configuration; import net.minecraftforge.event.entity.item.ItemTossEvent; import net.minecraftforge.event.entity.living.LivingSpawnEvent; import net.minecraftforge.event.entity.player.PlayerDropsEvent; @Mod(modid = FlansMod.MODID, name = "Flan's Mod", version = FlansMod.VERSION, acceptableRemoteVersions = "@ALLOWEDVERSIONS@", guiFactory = "com.flansmod.client.gui.config.ModGuiFactory") public class FlansMod { //Core mod stuff public static boolean DEBUG = false; public static Configuration configFile; public static final String MODID = "flansmod"; public static final String VERSION = "@VERSION@"; @Instance(MODID) public static FlansMod INSTANCE; public static int generalConfigInteger = 32; public static String generalConfigString = "Hello!"; public static boolean addGunpowderRecipe = true; public static int teamsConfigInteger = 32; public static String teamsConfigString = "Hello!"; public static boolean teamsConfigBoolean = false; @SidedProxy(clientSide = "com.flansmod.client.ClientProxy", serverSide = "com.flansmod.common.CommonProxy") public static CommonProxy proxy; //A standardised ticker for all bits of the mod to call upon if they need one public static int ticker = 0; public static long lastTime; public static File flanDir; public static final float soundRange = 50F; public static final float driveableUpdateRange = 200F; public static final int numPlayerSnapshots = 20; public static float armourSpawnRate = 0.25F; /** The spectator team. Moved here to avoid a concurrent modification error */ public static Team spectators = new Team("spectators", "Spectators", 0x404040, '7'); //Handlers public static final PacketHandler packetHandler = new PacketHandler(); public static final PlayerHandler playerHandler = new PlayerHandler(); public static final TeamsManager teamsManager = new TeamsManager(); public static final CommonTickHandler tickHandler = new CommonTickHandler(); public static FlansHooks hooks = new FlansHooks(); //Items and creative tabs public static BlockFlansWorkbench workbench; public static BlockSpawner spawner; public static ItemOpStick opStick; public static ItemFlagpole flag; public static ArrayList <blockgunbox>gunBoxBlocks = new ArrayList<blockgunbox>(); public static ArrayList <itembullet>bulletItems = new ArrayList<itembullet>(); public static ArrayList <itemgun>gunItems = new ArrayList<itemgun>(); public static ArrayList <itemattachment>attachmentItems = new ArrayList<itemattachment>(); public static ArrayList <itempart>partItems = new ArrayList<itempart>(); public static ArrayList <itemplane>planeItems = new ArrayList<itemplane>(); public static ArrayList <itemvehicle>vehicleItems = new ArrayList<itemvehicle>(); public static ArrayList <itemmechaaddon>mechaToolItems = new ArrayList<itemmechaaddon>(); public static ArrayList <itemmecha>mechaItems = new ArrayList<itemmecha>(); public static ArrayList <itemaagun>aaGunItems = new ArrayList<itemaagun>(); public static ArrayList <itemgrenade>grenadeItems = new ArrayList<itemgrenade>(); public static ArrayList <itemtool>toolItems = new ArrayList<itemtool>(); public static ArrayList <itemteamarmour>armourItems = new ArrayList<itemteamarmour>(); public static ArrayList <blockarmourbox>armourBoxBlocks = new ArrayList<blockarmourbox>(); /** The mod pre-initialiser method */ @EventHandler public void preInit(FMLPreInitializationEvent event) { log("Pré-initialisation d'AltisCraft"); configFile = new Configuration(event.getSuggestedConfigurationFile()); syncConfig(); //TODO : Load properties //configuration = new Configuration(event.getSuggestedConfigurationFile()); //loadProperties(); flanDir = new File(event.getModConfigurationDirectory().getParentFile(), "/mods/AltisCraft.fr/"); if (!flanDir.exists()) { log("Flan folder not found. Creating empty folder."); log("You should get some content packs and put them in the Flan folder."); flanDir.mkdirs(); flanDir.mkdir(); } //Set up mod blocks and items workbench = (BlockFlansWorkbench)(new BlockFlansWorkbench(1, 0).setCreativeTab(ModAltisCraft.AltisCraft).setBlockName("flansWorkbench").setBlockTextureName("flansWorkbench").setCreativeTab(ModAltisCraft.AltisCraft)); GameRegistry.registerBlock(workbench, ItemBlockManyNames.class, "flansWorkbench"); opStick = new ItemOpStick(); GameRegistry.registerItem(opStick, "opStick", MODID); flag = (ItemFlagpole)(new ItemFlagpole().setUnlocalizedName("flagpole").setCreativeTab(ModAltisCraft.AltisCraft)); GameRegistry.registerItem(flag, "flagpole", MODID); spawner = (BlockSpawner)(new BlockSpawner(Material.iron).setBlockName("teamsSpawner").setBlockUnbreakable().setResistance(1000000F)); GameRegistry.registerBlock(spawner, ItemBlockManyNames.class, "teamsSpawner"); GameRegistry.registerTileEntity(TileEntitySpawner.class, "teamsSpawner"); EntityRegistry.registerModEntity(EntityBullet.class, "bullet", EntityRegistry.findGlobalUniqueEntityId(), FlansMod.INSTANCE, 300, 1, true); proxy.registerRenderers(); //Read content packs readContentPacks(event); //Do proxy loading proxy.load(); //Force Minecraft to reload all resources in order to load content pack resources. proxy.forceReload(); log("Preinitializing complete."); } /** The mod initialiser method */ @EventHandler public void init(FMLInitializationEvent event) { log("Initialising Flan's Mod."); //Initialising handlers packetHandler.initialise(); NetworkRegistry.INSTANCE.registerGuiHandler(this, new CommonGuiHandler()); // Recipes for (InfoType type : InfoType.infoTypes) { type.addRecipe(); } if(addGunpowderRecipe) { ItemStack charcoal = new ItemStack(Items.coal, 1, 1); GameRegistry.addShapelessRecipe(new ItemStack(Items.gunpowder), charcoal, charcoal, charcoal, new ItemStack(Items.glowstone_dust)); } log("Loaded recipes."); //Register teams mod entities EntityRegistry.registerGlobalEntityID(EntityFlagpole.class, "Flagpole", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityFlagpole.class, "Flagpole", 93, this, 40, 5, true); EntityRegistry.registerGlobalEntityID(EntityFlag.class, "Flag", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityFlag.class, "Flag", 94, this, 40, 5, true); EntityRegistry.registerGlobalEntityID(EntityTeamItem.class, "TeamsItem", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityTeamItem.class, "TeamsItem", 97, this, 100, 10000, true); EntityRegistry.registerGlobalEntityID(EntityGunItem.class, "GunItem", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityGunItem.class, "GunItem", 98, this, 100, 20, true); //Register driveables EntityRegistry.registerGlobalEntityID(EntityPlane.class, "Plane", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityPlane.class, "Plane", 90, this, 250, 3, false); EntityRegistry.registerGlobalEntityID(EntityVehicle.class, "Vehicle", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityVehicle.class, "Vehicle", 95, this, 250, 10, false); EntityRegistry.registerGlobalEntityID(EntitySeat.class, "Seat", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntitySeat.class, "Seat", 99, this, 250, 20, false); EntityRegistry.registerGlobalEntityID(EntityWheel.class, "Wheel", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityWheel.class, "Wheel", 103, this, 250, 20, false); EntityRegistry.registerGlobalEntityID(EntityParachute.class, "Parachute", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityParachute.class, "Parachute", 101, this, 40, 20, false); EntityRegistry.registerGlobalEntityID(EntityMecha.class, "Mecha", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityMecha.class, "Mecha", 102, this, 250, 20, false); //Register bullets and grenades //EntityRegistry.registerGlobalEntityID(EntityBullet.class, "Bullet", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityBullet.class, "Bullet", 96, this, 40, 100, false); EntityRegistry.registerGlobalEntityID(EntityGrenade.class, "Grenade", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityGrenade.class, "Grenade", 100, this, 40, 100, true); //Register MGs and AA guns EntityRegistry.registerGlobalEntityID(EntityMG.class, "MG", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityMG.class, "MG", 91, this, 40, 5, true); EntityRegistry.registerGlobalEntityID(EntityAAGun.class, "AAGun", EntityRegistry.findGlobalUniqueEntityId()); EntityRegistry.registerModEntity(EntityAAGun.class, "AAGun", 92, this, 40, 500, false); //Register the chunk loader //TODO : Re-do chunk loading ForgeChunkManager.setForcedChunkLoadingCallback(this, new ChunkLoadingHandler()); //Config FMLCommonHandler.instance().bus().register(INSTANCE); //Starting the EventListener new PlayerDeathEventListener(); log("Loading complete."); } /** The mod post-initialisation method */ @EventHandler public void postInit(FMLPostInitializationEvent event) { packetHandler.postInitialise(); hooks.hook(); /* TODO : ICBM isICBMSentryLoaded = Loader.instance().isModLoaded("ICBM|Sentry"); log("ICBM hooking complete."); */ } @SubscribeEvent public void playerDrops(PlayerDropsEvent event) { for(int i = event.drops.size() - 1; i >= 0; i–) { EntityItem ent = event.drops.get(i); InfoType type = InfoType.getType(ent.getEntityItem()); if(type != null && !type.canDrop) event.drops.remove(i); } } @SubscribeEvent public void playerDrops(ItemTossEvent event) { InfoType type = InfoType.getType(event.entityItem.getEntityItem()); if(type != null && !type.canDrop) event.setCanceled(true); } /** Teams command register method */ @EventHandler public void registerCommand(FMLServerStartedEvent e) { CommandHandler handler = ((CommandHandler)FMLCommonHandler.instance().getSidedDelegate().getServer().getCommandManager()); handler.registerCommand(new CommandTeams()); } @SubscribeEvent public void onConfigChanged(ConfigChangedEvent.OnConfigChangedEvent eventArgs) { if(eventArgs.modID.equals(MODID)) syncConfig(); } @SubscribeEvent public void onLivingSpecialSpawn(LivingSpawnEvent.CheckSpawn event) { double chance = event.world.rand.nextDouble(); if(chance < armourSpawnRate && event.entityLiving instanceof EntityZombie || event.entityLiving instanceof EntitySkeleton) { if(event.world.rand.nextBoolean() && ArmourType.armours.size() > 0) { //Give a completely random piece of armour ArmourType armour = ArmourType.armours.get(event.world.rand.nextInt(ArmourType.armours.size())); if(armour != null && armour.type != 2) event.entityLiving.setCurrentItemOrArmor(armour.type + 1, new ItemStack(armour.item)); } else if(Team.teams.size() > 0) { //Give a random set of armour Team team = Team.teams.get(event.world.rand.nextInt(Team.teams.size())); if(team.hat != null) event.entityLiving.setCurrentItemOrArmor(1, team.hat.copy()); if(team.chest != null) event.entityLiving.setCurrentItemOrArmor(2, team.chest.copy()); //if(team.legs != null) // event.entityLiving.setCurrentItemOrArmor(3, team.legs.copy()); if(team.shoes != null) event.entityLiving.setCurrentItemOrArmor(4, team.shoes.copy()); } } } /** Reads type files from all content packs */ private void getTypeFiles(List <file>contentPacks) { for (File contentPack : contentPacks) { if(contentPack.isDirectory()) { for(EnumType typeToCheckFor : EnumType.values()) { File typesDir = new File(contentPack, "/" + typeToCheckFor.folderName + "/"); if(!typesDir.exists()) continue; for(File file : typesDir.listFiles()) { try { BufferedReader reader = new BufferedReader(new FileReader(file)); String[] splitName = file.getName().split("/"); TypeFile typeFile = new TypeFile(typeToCheckFor, splitName[splitName.length - 1].split("\\.")[0]); for(;;) { String line = null; try { line = reader.readLine(); } catch (Exception e) { break; } if (line == null) break; typeFile.lines.add(line); } reader.close(); } catch(FileNotFoundException e) { e.printStackTrace(); } catch(IOException e) { e.printStackTrace(); } } } } else { try { ZipFile zip = new ZipFile(contentPack); ZipInputStream zipStream = new ZipInputStream(new FileInputStream(contentPack)); BufferedReader reader = new BufferedReader(new InputStreamReader(zipStream)); ZipEntry zipEntry = zipStream.getNextEntry(); do { zipEntry = zipStream.getNextEntry(); if(zipEntry == null) continue; TypeFile typeFile = null; for(EnumType type : EnumType.values()) { if(zipEntry.getName().startsWith(type.folderName + "/") && zipEntry.getName().split(type.folderName + "/").length > 1 && zipEntry.getName().split(type.folderName + "/")[1].length() > 0) { String[] splitName = zipEntry.getName().split("/"); typeFile = new TypeFile(type, splitName[splitName.length - 1].split("\\.")[0]); } } if(typeFile == null) { continue; } for(;;) { String line = null; try { line = reader.readLine(); } catch (Exception e) { break; } if (line == null) break; typeFile.lines.add(line); } } while(zipEntry != null); reader.close(); zip.close(); zipStream.close(); } catch(IOException e) { e.printStackTrace(); } } } } /** Content pack reader method */ private void readContentPacks(FMLPreInitializationEvent event) { // Icons, Skins, Models // Get the classloader in order to load the images ClassLoader classloader = (net.minecraft.server.MinecraftServer.class).getClassLoader(); Method method = null; try { method = (java.net.URLClassLoader.class).getDeclaredMethod("addURL", java.net.URL.class); method.setAccessible(true); } catch (Exception e) { log("Failed to get class loader. All content loading will now fail."); e.printStackTrace(); } List <file>contentPacks = proxy.getContentList(method, classloader); if (!event.getSide().equals(Side.CLIENT)) { //Gametypes (Server only) // TODO: gametype loader } getTypeFiles(contentPacks); for(EnumType type : EnumType.values()) { Class typeClass = type.getTypeClass(); for(TypeFile typeFile : TypeFile.files.get(type)) { try { InfoType infoType = (typeClass.getConstructor(TypeFile.class).newInstance(typeFile)); infoType.read(typeFile); switch(type) { case bullet : bulletItems.add((ItemBullet)new ItemBullet((BulletType)infoType).setUnlocalizedName(infoType.shortName)); break; case attachment : attachmentItems.add((ItemAttachment)new ItemAttachment((AttachmentType)infoType).setUnlocalizedName(infoType.shortName)); break; case gun : gunItems.add((ItemGun)new ItemGun((GunType)infoType).setUnlocalizedName(infoType.shortName)); break; case grenade : grenadeItems.add((ItemGrenade)new ItemGrenade((GrenadeType)infoType).setUnlocalizedName(infoType.shortName)); break; case part : partItems.add((ItemPart)new ItemPart((PartType)infoType).setUnlocalizedName(infoType.shortName)); break; case plane : planeItems.add((ItemPlane)new ItemPlane((PlaneType)infoType).setUnlocalizedName(infoType.shortName)); break; case vehicle : vehicleItems.add((ItemVehicle)new ItemVehicle((VehicleType)infoType).setUnlocalizedName(infoType.shortName)); break; case aa : aaGunItems.add((ItemAAGun)new ItemAAGun((AAGunType)infoType).setUnlocalizedName(infoType.shortName)); break; case mechaItem : mechaToolItems.add((ItemMechaAddon)new ItemMechaAddon((MechaItemType)infoType).setUnlocalizedName(infoType.shortName)); break; case mecha : mechaItems.add((ItemMecha)new ItemMecha((MechaType)infoType).setUnlocalizedName(infoType.shortName)); break; case tool : toolItems.add((ItemTool)new ItemTool((ToolType)infoType).setUnlocalizedName(infoType.shortName)); break; case box : gunBoxBlocks.add((BlockGunBox)new BlockGunBox((GunBoxType)infoType).setBlockName(infoType.shortName).setCreativeTab(ModAltisCraft.AltisCraft)); break; case armour : armourItems.add((ItemTeamArmour)new ItemTeamArmour((ArmourType)infoType).setUnlocalizedName(infoType.shortName)); break; case armourBox : armourBoxBlocks.add((BlockArmourBox)new BlockArmourBox((ArmourBoxType)infoType).setBlockName(infoType.shortName)); break; case playerClass : break; case team : break; default : log("Unrecognised type for " + infoType.shortName); break; } } catch(Exception e) { log("Failed to add " + type.name() + " : " + typeFile.name); e.printStackTrace(); } } log("Loaded " + type.name() + "."); } Team.spectators = spectators; } public static PacketHandler getPacketHandler() { return INSTANCE.packetHandler; } public static void syncConfig() { //generalConfigInteger = configFile.getInt("Config Integer", Configuration.CATEGORY_GENERAL, generalConfigInteger, 0, Integer.MAX_VALUE, "An Integer!"); //generalConfigString = configFile.getString("Config String", Configuration.CATEGORY_GENERAL, generalConfigString, "A String!"); addGunpowderRecipe = configFile.getBoolean("Gunpowder Recipe", Configuration.CATEGORY_GENERAL, addGunpowderRecipe, "Whether or not to add the extra gunpowder recipe (3 charcoal + 1 lightstone)"); //teamsConfigInteger = configFile.getInt("Config Integer", Configuration.CATEGORY_GENERAL, teamsConfigInteger, 0, Integer.MAX_VALUE, "An Integer!"); //teamsConfigString = configFile.getString("Config String", Configuration.CATEGORY_GENERAL, teamsConfigString, "A String!"); //teamsConfigBoolean = configFile.getBoolean("Config Boolean", Configuration.CATEGORY_GENERAL, teamsConfigBoolean, "A Boolean!"); if(configFile.hasChanged()) configFile.save(); } //TODO : Proper logger public static void log(String string) { System.out.println("[AltisCraft.fr] " + string); } }Et la classe bullet n’a pas bouger
des idées ?</file></file></blockarmourbox></blockarmourbox></itemteamarmour></itemteamarmour></itemtool></itemtool></itemgrenade></itemgrenade></itemaagun></itemaagun></itemmecha></itemmecha></itemmechaaddon></itemmechaaddon></itemvehicle></itemvehicle></itemplane></itemplane></itempart></itempart></itemattachment></itemattachment></itemgun></itemgun></itembullet></itembullet></blockgunbox></blockgunbox> -
Envoi le rapport d’erreur
-
Voilà :
–-- Minecraft Crash Report ----
// I just don’t know what went wrong
Time: 25/11/15 19:16
Description: Ticking entityjava.lang.ArrayIndexOutOfBoundsException: -2023999
at com.flansmod.common.guns.EntityBullet.func_70071_h_(EntityBullet.java:285)
at net.minecraft.world.World.func_72866_a(World.java:2629)
at net.minecraft.world.WorldServer.func_72866_a(WorldServer.java:837)
at net.minecraft.world.World.func_72870_g(World.java:2581)
at net.minecraft.world.World.func_72939_s(World.java:2405)
at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:669)
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:954)
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669)
at java.lang.Thread.run(Unknown Source)A detailed walkthrough of the error, its code path and all known details is as follows:
– Head –
Stacktrace:
at com.flansmod.common.guns.EntityBullet.func_70071_h_(EntityBullet.java:285)
at net.minecraft.world.World.func_72866_a(World.java:2629)
at net.minecraft.world.WorldServer.func_72866_a(WorldServer.java:837)
at net.minecraft.world.World.func_72870_g(World.java:2581)– Entity being ticked –
Details:
Entity Type: flansmod.bullet (com.flansmod.common.guns.EntityBullet)
Entity ID: 8421
Entity Name: entity.flansmod.bullet.name
Entity’s Exact location: -2487,58, 90,79, -7888,66
Entity’s Block location: World: (-2488,90,-7889), Chunk: (at 8,5,15 in -156,-494; contains blocks -2496,0,-7904 to -2481,255,-7889), Region: (-5,-16; contains chunks -160,-512 to -129,-481, blocks -2560,0,-8192 to -2049,255,-7681)
Entity’s Momentum: -0,67, -0,12, 9,88
Stacktrace:
at net.minecraft.world.World.func_72939_s(World.java:2405)
at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:669)– Affected level –
Details:
Level name: AltisCraft
All players: 30 total; [EntityPlayerMP[‘WarzyXx’/60, l=‘AltisCraft’, x=-8491,33, y=33,00, z=-3755,51](WarzyXx at -8491.333209989414,33.0,-3755.5119653420506), EntityPlayerMP[‘abys’/724, l=‘AltisCraft’, x=-1102,53, y=34,00, z=-1818,31](abys at -1102.529346807387,34.0,-1818.3132175427775), EntityPlayerMP[‘FuNiMaX’/845, l=‘AltisCraft’, x=-8530,77, y=33,00, z=-3762,05](FuNiMaX at -8530.766751679066,33.0,-3762.046462854882), EntityPlayerMP[‘corentin’/805, l=‘AltisCraft’, x=-8507,95, y=33,36, z=-3768,31](corentin at -8507.945970883686,33.36075,-3768.3123765484024), EntityPlayerMP[‘geforce07’/883, l=‘AltisCraft’, x=-9157,41, y=20,00, z=-2640,55](geforce07 at -9157.406910702693,20.0,-2640.547818395628), EntityPlayerMP[‘ItsEnergix_’/894, l=‘AltisCraft’, x=-8507,30, y=33,00, z=-3737,89](ItsEnergix_ at -8507.295838167498,33.0,-3737.8861951226963), EntityPlayerMP[‘Angel_S’/1425, l=‘AltisCraft’, x=-8573,22, y=33,00, z=-3619,97](Angel_S at -8573.223984596425,33.0,-3619.9689064286777), EntityPlayerMP[‘DEmoNiiAkOO’/1454, l=‘AltisCraft’, x=-8486,12, y=37,00, z=-3720,41](DEmoNiiAkOO at -8486.11538581527,37.0,-3720.4147530430146), EntityPlayerMP[‘Eric_Adams’/1499, l=‘AltisCraft’, x=-8482,24, y=53,73, z=-3756,07](Eric_Adams at -8482.23619693377,53.73079337471755,-3756.0682574714924), EntityPlayerMP[‘link64000’/2170, l=‘AltisCraft’, x=-8485,03, y=33,79, z=-3776,78](link64000 at -8485.03432040487,33.78502770378924,-3776.7783353562595), EntityPlayerMP[‘Baptiste_Grein’/2424, l=‘AltisCraft’, x=-3434,88, y=26,83, z=-2803,72](Baptiste_Grein at -3434.877399082775,26.834925920310987,-2803.720999135037), EntityPlayerMP[‘REX302002’/2434, l=‘AltisCraft’, x=-8527,83, y=33,00, z=-3756,53](REX302002 at -8527.82734976698,33.0,-3756.5347219078417), EntityPlayerMP[‘Kenzi_iZi’/2757, l=‘AltisCraft’, x=-8500,63, y=33,00, z=-3731,88](Kenzi_iZi at -8500.630356172425,33.0,-3731.8790848298377), EntityPlayerMP[‘kalipso1000’/2766, l=‘AltisCraft’, x=0,00, y=99,00, z=0,00](kalipso1000 at 0.0,99.0,0.0), EntityPlayerMP[‘komi43’/2780, l=‘AltisCraft’, x=-8513,95, y=34,25, z=-3758,27](komi43 at -8513.947210079801,34.24918707874468,-3758.2658365502325), EntityPlayerMP[‘ilyas_2003’/3182, l=‘AltisCraft’, x=-2484,37, y=88,00, z=-7908,13](ilyas_2003 at -2484.3723565447067,88.0,-7908.132955163231), EntityPlayerMP[‘Theo_Toilette’/3518, l=‘AltisCraft’, x=-1060,31, y=35,15, z=-1834,72](Theo_Toilette at -1060.3068408088047,35.14514205324103,-1834.722712335524), EntityPlayerMP[‘Micka31140’/3843, l=‘AltisCraft’, x=-8485,01, y=58,67, z=-4155,70](Micka31140 at -8485.012231967165,58.6705856109038,-4155.699936974048), EntityPlayerMP[‘Eclipse_Prod’/3865, l=‘AltisCraft’, x=-3434,23, y=12,00, z=-2813,47](Eclipse_Prod at -3434.233345773888,12.0,-2813.466487750833), EntityPlayerMP[‘JulienixFR’/4192, l=‘AltisCraft’, x=-8716,02, y=17,00, z=-3044,55](JulienixFR at -8716.024273794248,17.0,-3044.550793321056), EntityPlayerMP[‘Andy20’/4593, l=‘AltisCraft’, x=-2680,83, y=51,00, z=-3625,61](Andy20 at -2680.828653235005,51.0,-3625.6147115028075), EntityPlayerMP[‘irise3’/4634, l=‘AltisCraft’, x=-8635,95, y=17,25, z=-3195,97](irise3 at -8635.954595141682,17.24918707874468,-3195.969888406509), EntityPlayerMP[‘ak_19’/4649, l=‘AltisCraft’, x=-8503,59, y=33,00, z=-3737,68](ak_19 at -8503.589437987344,33.0,-3737.6801945162283), EntityPlayerMP[‘Benji01’/5785, l=‘AltisCraft’, x=-8335,88, y=33,00, z=-3659,43](Benji01 at -8335.883772835083,33.0,-3659.4269708806405), EntityPlayerMP[‘Sir_Moustache’/5796, l=‘AltisCraft’, x=-8497,63, y=33,00, z=-3727,53](Sir_Moustache at -8497.627152921586,33.0,-3727.525239783499), EntityPlayerMP[‘X_proHard’/5807, l=‘AltisCraft’, x=-8484,32, y=56,36, z=-4137,92](X_proHard at -8484.31553556025,56.358467906713486,-4137.917810700834), EntityPlayerMP[‘Azitox’/5832, l=‘AltisCraft’, x=-4218,42, y=45,00, z=-3292,68](Azitox at -4218.419413711785,45.0,-3292.6807378684744), EntityPlayerMP[‘jamygaming’/6481, l=‘AltisCraft’, x=-8507,03, y=33,00, z=-3773,50](jamygaming at -8507.026943283194,33.0,-3773.503300377579), EntityPlayerMP[‘ArcticLov’/7166, l=‘AltisCraft’, x=-2482,01, y=88,00, z=-7910,59](ArcticLov at -2482.01219088651,88.0,-7910.586337369956), EntityPlayerMP[‘Jean_Cerien’/8343, l=‘AltisCraft’, x=-2487,61, y=89,25, z=-7888,10](Jean_Cerien at -2487.6054390004615,89.24918707874468,-7888.097183586911)]
Chunk stats: ServerChunkCache: 5304 Drop: 0
Level seed: 27594263
Level generator: ID 02 - largeBiomes, ver 0. Features enabled: false
Level generator options:
Level spawn location: World: (0,99,0), Chunk: (at 0,6,0 in 0,0; contains blocks 0,0,0 to 15,255,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511)
Level time: 333381802 game time, 345973894 day time
Level dimension: 0
Level storage version: 0x04ABD - Anvil
Level weather: Rain time: 35447 (now: false), thunder time: 74765 (now: false)
Level game mode: Game mode: survival (ID 0). Hardcore: false. Cheats: false
Stacktrace:
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:954)
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669)
at java.lang.Thread.run(Unknown Source)– System Details –
Details:
Minecraft Version: 1.7.10
KCauldron Version: pw.prok:KCauldron:1.7.10-1492.155
Operating System: Windows Server 2012 R2 (amd64) version 6.3
Java Version: 1.8.0_65, Oracle Corporation
Java VM Version: Java HotSpot
64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 13295984432 bytes (12680 MB) / 15696658432 bytes (14969 MB) up to 15696658432 bytes (14969 MB)
JVM Flags: 2 total; -Xms13G -Xmx15G
AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
IntCache: cache: 0, tcache: 0, allocated: 13, tallocated: 103
FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1492 11 mods loaded, 11 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] (OpenMod-Prov2.jar)
UCHIJAAAA Forge{10.13.4.1492} [Minecraft Forge] (OpenMod-Prov2.jar)
UCHIJAAAA kimagine{0.1} [KImagine] (minecraft.jar)
UCHIJAAAA CarpentersBlocks{0.0.1 Beta} [AltisCraft.fr] (AltisCraft.fr.jar)
UCHIJAAAA flansmod{@VERSION@} [Flan’s Mod] (AltisCraft.fr.jar)
UCHIJAAAA thirstmod{1.8.14} [Thirst Mod] (AltisCraft.fr.jar)
UCHIJAAAA t4pro{1.0.1} [Project] (AltisCraft.fr.jar)
UCHIJAAAA altiscraft.MODID{1.0.0} [AltisCraft.fr] (AltisCraft.fr.jar)
UCHIJAAAA Backpack{2.0.1} [Backpack] (backpack-2.0.1-1.7.x.jar)
UCHIJAAAA gvc{0.6.1} [§aGliby’s§f Voice Chat Mod] (GlibysVC-1.7.10-0.6.1.jar)
Profiler Position: N/A (disabled)
Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
Player Count: 30 / 100; [EntityPlayerMP[‘WarzyXx’/60, l=‘AltisCraft’, x=-8491,33, y=33,00, z=-3755,51](WarzyXx at -8491.333209989414,33.0,-3755.5119653420506), EntityPlayerMP[‘abys’/724, l=‘AltisCraft’, x=-1102,53, y=34,00, z=-1818,31](abys at -1102.529346807387,34.0,-1818.3132175427775), EntityPlayerMP[‘FuNiMaX’/845, l=‘AltisCraft’, x=-8530,77, y=33,00, z=-3762,05](FuNiMaX at -8530.766751679066,33.0,-3762.046462854882), EntityPlayerMP[‘corentin’/805, l=‘AltisCraft’, x=-8507,95, y=33,36, z=-3768,31](corentin at -8507.945970883686,33.36075,-3768.3123765484024), EntityPlayerMP[‘geforce07’/883, l=‘AltisCraft’, x=-9157,41, y=20,00, z=-2640,55](geforce07 at -9157.406910702693,20.0,-2640.547818395628), EntityPlayerMP[‘ItsEnergix_’/894, l=‘AltisCraft’, x=-8507,30, y=33,00, z=-3737,89](ItsEnergix_ at -8507.295838167498,33.0,-3737.8861951226963), EntityPlayerMP[‘Angel_S’/1425, l=‘AltisCraft’, x=-8573,22, y=33,00, z=-3619,97](Angel_S at -8573.223984596425,33.0,-3619.9689064286777), EntityPlayerMP[‘DEmoNiiAkOO’/1454, l=‘AltisCraft’, x=-8486,12, y=37,00, z=-3720,41](DEmoNiiAkOO at -8486.11538581527,37.0,-3720.4147530430146), EntityPlayerMP[‘Eric_Adams’/1499, l=‘AltisCraft’, x=-8482,24, y=53,73, z=-3756,07](Eric_Adams at -8482.23619693377,53.73079337471755,-3756.0682574714924), EntityPlayerMP[‘link64000’/2170, l=‘AltisCraft’, x=-8485,03, y=33,79, z=-3776,78](link64000 at -8485.03432040487,33.78502770378924,-3776.7783353562595), EntityPlayerMP[‘Baptiste_Grein’/2424, l=‘AltisCraft’, x=-3434,88, y=26,83, z=-2803,72](Baptiste_Grein at -3434.877399082775,26.834925920310987,-2803.720999135037), EntityPlayerMP[‘REX302002’/2434, l=‘AltisCraft’, x=-8527,83, y=33,00, z=-3756,53](REX302002 at -8527.82734976698,33.0,-3756.5347219078417), EntityPlayerMP[‘Kenzi_iZi’/2757, l=‘AltisCraft’, x=-8500,63, y=33,00, z=-3731,88](Kenzi_iZi at -8500.630356172425,33.0,-3731.8790848298377), EntityPlayerMP[‘kalipso1000’/2766, l=‘AltisCraft’, x=0,00, y=99,00, z=0,00](kalipso1000 at 0.0,99.0,0.0), EntityPlayerMP[‘komi43’/2780, l=‘AltisCraft’, x=-8513,95, y=34,25, z=-3758,27](komi43 at -8513.947210079801,34.24918707874468,-3758.2658365502325), EntityPlayerMP[‘ilyas_2003’/3182, l=‘AltisCraft’, x=-2484,37, y=88,00, z=-7908,13](ilyas_2003 at -2484.3723565447067,88.0,-7908.132955163231), EntityPlayerMP[‘Theo_Toilette’/3518, l=‘AltisCraft’, x=-1060,31, y=35,15, z=-1834,72](Theo_Toilette at -1060.3068408088047,35.14514205324103,-1834.722712335524), EntityPlayerMP[‘Micka31140’/3843, l=‘AltisCraft’, x=-8485,01, y=58,67, z=-4155,70](Micka31140 at -8485.012231967165,58.6705856109038,-4155.699936974048), EntityPlayerMP[‘Eclipse_Prod’/3865, l=‘AltisCraft’, x=-3434,23, y=12,00, z=-2813,47](Eclipse_Prod at -3434.233345773888,12.0,-2813.466487750833), EntityPlayerMP[‘JulienixFR’/4192, l=‘AltisCraft’, x=-8716,02, y=17,00, z=-3044,55](JulienixFR at -8716.024273794248,17.0,-3044.550793321056), EntityPlayerMP[‘Andy20’/4593, l=‘AltisCraft’, x=-2680,83, y=51,00, z=-3625,61](Andy20 at -2680.828653235005,51.0,-3625.6147115028075), EntityPlayerMP[‘irise3’/4634, l=‘AltisCraft’, x=-8635,95, y=17,25, z=-3195,97](irise3 at -8635.954595141682,17.24918707874468,-3195.969888406509), EntityPlayerMP[‘ak_19’/4649, l=‘AltisCraft’, x=-8503,59, y=33,00, z=-3737,68](ak_19 at -8503.589437987344,33.0,-3737.6801945162283), EntityPlayerMP[‘Benji01’/5785, l=‘AltisCraft’, x=-8335,88, y=33,00, z=-3659,43](Benji01 at -8335.883772835083,33.0,-3659.4269708806405), EntityPlayerMP[‘Sir_Moustache’/5796, l=‘AltisCraft’, x=-8497,63, y=33,00, z=-3727,53](Sir_Moustache at -8497.627152921586,33.0,-3727.525239783499), EntityPlayerMP[‘X_proHard’/5807, l=‘AltisCraft’, x=-8484,32, y=56,36, z=-4137,92](X_proHard at -8484.31553556025,56.358467906713486,-4137.917810700834), EntityPlayerMP[‘Azitox’/5832, l=‘AltisCraft’, x=-4218,42, y=45,00, z=-3292,68](Azitox at -4218.419413711785,45.0,-3292.6807378684744), EntityPlayerMP[‘jamygaming’/6481, l=‘AltisCraft’, x=-8507,03, y=33,00, z=-3773,50](jamygaming at -8507.026943283194,33.0,-3773.503300377579), EntityPlayerMP[‘ArcticLov’/7166, l=‘AltisCraft’, x=-2482,01, y=88,00, z=-7910,59](ArcticLov at -2482.01219088651,88.0,-7910.586337369956), EntityPlayerMP[‘Jean_Cerien’/8343, l=‘AltisCraft’, x=-2487,61, y=89,25, z=-7888,10](Jean_Cerien at -2487.6054390004615,89.24918707874468,-7888.097183586911)]
Is Modded: Definitely; Server brand changed to ‘kcauldron,cauldron,craftbukkit,mcpc,fml,forge’
Type: Dedicated Server (map_server.txt) -
Un truc que je ne comprends pas : si la variable ping représente le temps de latence entre le serveur et le joueur concerné, pourquoi celui-ci n’est-il pas mis à jour toutes les secondes et pourquoi utiliser le ping ?
-
Je ne sais pas c’est le code source de flansmod qui bug

-
Si ce n’est pas ton propre code, je vois pas en quoi on peut t’aider car pour moi le seul moyen c’est de vérifier que le ping n’est pas négatif
-
Je n’ai pas très bien manié les tableaux si s’en est les [] j’ai essayé ce code ? Me le recommande tu ou j’ai écris n’importe quoi ?
if(data.snapshots[0].toString().startsWith(“-”))
data.snapshots[0] = data.snapshots[0]; -
Les tableaux sont juste une liste avec une taille fixée avec plusieurs variables dedans, donc en l’occurrence, vu que je ne sais pas du tout à quoi sert le code, je ne peux pas te dire si ça pourrait marcher
-
Je vois… Pas moyen de résoudre mon problème ?

-
Qu’est-ce que tu essaies de faire concrètement. J’ai beau relire plusieurs fois de suite le poste, je ne comprends pas pourquoi tu te sers du code de Flan’s mod

Si tu veux juste créer une nouvelle EntityBullet, recommence de 0 car là, j’ai l’impression que le code que tu utilises est bcp trop complexe pour toi, tu ne le comprends même pas ^^’
Réexplique moi ce que tu souhaites faire, et je verrai ce qui serait le mieux alors
-
Non juste je prends le code Flan’s Mod pour avoir ce mod mais pour un peu le personnaliser mais il crashait enfin bon c’est réglé j’ai changé d’hébergeur et l’ancien laguait ce qui peut expliquez des pings négatifs et donc le crash mais j’ai un nouveau crash :') voici:
–-- Minecraft Crash Report ----
// I just don’t know what went wrong
Time: 11/29/15 1:13 PM
Description: Exception in server tick loopjava.lang.IllegalArgumentException: Don’t know how to add class com.flansmod.common.driveables.EntityVehicle! Report this error to mod author.
at net.minecraft.entity.EntityTrackerEntry.func_151260_c(EntityTrackerEntry.java:717)
at net.minecraft.entity.EntityTrackerEntry.func_73117_b(EntityTrackerEntry.java:434)
at net.minecraft.entity.EntityTracker.func_72788_a(EntityTracker.java:296)
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:978)
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669)
at java.lang.Thread.run(Thread.java:745)A detailed walkthrough of the error, its code path and all known details is as follows:
– System Details –
Details:
Minecraft Version: 1.7.10
KCauldron Version: pw.prok:KCauldron:1.7.10-1492.155
Operating System: Linux (amd64) version 3.14.32-xxxx-grs-ipv6-64
Java Version: 1.7.0_80, Oracle Corporation
Java VM Version: Java HotSpot
64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 1151561816 bytes (1098 MB) / 2377265152 bytes (2267 MB) up to 17126195200 bytes (16332 MB)
JVM Flags: 35 total; -Xincgc -Xmx16384M -Xms1024M -Xmn512M -XX:MaxPermSize=4096M -XX:+OptimizeStringConcat -XX:+UseStringCache -XX:MaxTenuringThreshold=15 -XX:+UseNUMA -XX:+UseBiasedLocking -XX:-UseGCOverheadLimit -XX:+UseAdaptiveGCBoundary -XX:MaxGCPauseMillis=50 -XX:NewRatio=3 -Xrs -XX:+UseThreadPriorities -XX:CMSFullGCsBeforeCompaction=1 -XX:SoftRefLRUPolicyMSPerMB=2048 -XX:+CMSParallelRemarkEnabled -XX:+UseParNewGC -XX:+DisableExplicitGC -Xnoclassgc -Xoss4M -Xss4M -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseConcMarkSweepGC -XX:UseSSE=4 -XX:UseSSE=3 -XX:+UseCMSCompactAtFullCollection -XX:ParallelGCThreads=1 -Xcheck:jni -Xverify:all -XX:+AggressiveOpts
AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
IntCache: cache: 0, tcache: 0, allocated: 13, tallocated: 103
FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1492 12 mods loaded, 12 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] (OpenMod-Prov2.jar)
UCHIJAAAA Forge{10.13.4.1492} [Minecraft Forge] (OpenMod-Prov2.jar)
UCHIJAAAA kimagine{0.1} [KImagine] (minecraft.jar)
UCHIJAAAA CarpentersBlocks{0.0.1 Beta} [AltisCraft.fr] (AltisCraft.fr.jar)
UCHIJAAAA flansmod{@VERSION@} [Flan’s Mod] (AltisCraft.fr.jar)
UCHIJAAAA thirstmod{1.8.14} [Thirst Mod] (AltisCraft.fr.jar)
UCHIJAAAA t4pro{1.0.1} [Project] (AltisCraft.fr.jar)
UCHIJAAAA altiscraft.MODID{1.0.0} [AltisCraft.fr] (AltisCraft.fr.jar)
UCHIJAAAA Backpack{2.0.1} [Backpack] (backpack-2.0.1-1.7.x.jar)
UCHIJAAAA Dynmap{2.2-143} [Dynmap] (Dynmap-2.2-forge-1.7.10.jar)
UCHIJAAAA gvc{0.6.1} [�aGliby’s�f Voice Chat Mod] (GlibysVC-1.7.10-0.6.1.jar)
Profiler Position: N/A (disabled)
Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
Player Count: 48 / 100; [EntityPlayerMP[‘Benjamin_Loison’/12838, l=‘AltisCraft’, x=-4270.89, y=59.34, z=-3425.18](Benjamin_Loison at -4270.89239069695,59.34474153480463,-3425.1776250263574), EntityPlayerMP[‘Yoan_Verquion’/17877, l=‘AltisCraft’, x=-8549.70, y=22.00, z=-3332.30](Yoan_Verquion at -8549.699999988079,22.0,-3332.2977487215003), EntityPlayerMP[‘misterjules123’/21101, l=‘AltisCraft’, x=-8514.91, y=33.00, z=-3726.96](misterjules123 at -8514.913209562646,33.0,-3726.9571212760666), EntityPlayerMP[‘TheBangz0r’/46443, l=‘AltisCraft’, x=-3802.24, y=61.17, z=-3253.37](TheBangz0r at -3802.242979943406,61.166109260938214,-3253.3675302769334), EntityPlayerMP[‘juango67’/73478, l=‘AltisCraft’, x=-8504.77, y=33.00, z=-3745.99](juango67 at -8504.766319338401,33.0,-3745.9896602286176), EntityPlayerMP[‘XxBildoxX’/89882, l=‘AltisCraft’, x=-8335.70, y=64.00, z=-3980.16](XxBildoxX at -8335.703717703336,64.0,-3980.1624243184697), EntityPlayerMP[‘Snow_ice34’/97367, l=‘AltisCraft’, x=-8503.30, y=33.00, z=-3745.04](Snow_ice34 at -8503.300000011921,33.0,-3745.037937829804), EntityPlayerMP[‘cocox8’/98035, l=‘AltisCraft’, x=-8501.16, y=33.00, z=-3744.58](cocox8 at -8501.159258307687,33.0,-3744.579515442605), EntityPlayerMP[‘Zykwata’/99306, l=‘AltisCraft’, x=-1475.70, y=61.00, z=-8444.70](Zykwata at -1475.699999988079,61.0,-8444.697791160275), EntityPlayerMP[‘dylanadvanger’/102399, l=‘AltisCraft’, x=-3903.17, y=49.00, z=-3256.30](dylanadvanger at -3903.172383940468,49.0,-3256.300000011921), EntityPlayerMP[‘zozo27520’/104863, l=‘AltisCraft’, x=-8635.76, y=25.17, z=-3043.06](zozo27520 at -8635.764410189353,25.171935379505157,-3043.0626853283493), EntityPlayerMP[‘Fratge’/105342, l=‘AltisCraft’, x=-8494.35, y=33.00, z=-3800.22](Fratge at -8494.34860910844,33.0,-3800.2159291417015), EntityPlayerMP[‘Fortrude’/110169, l=‘AltisCraft’, x=-8636.09, y=25.17, z=-3041.99](Fortrude at -8636.092169693671,25.171935379505157,-3041.9864888962356), EntityPlayerMP[‘Stroxz’/111088, l=‘AltisCraft’, x=-8484.02, y=33.00, z=-3831.76](Stroxz at -8484.018734872849,33.0,-3831.759167651616), EntityPlayerMP[‘blackinfinity950’/113527, l=‘AltisCraft’, x=-8512.88, y=34.00, z=-3920.20](blackinfinity950 at -8512.884785573064,34.0,-3920.195865874873), EntityPlayerMP[‘komi43’/117770, l=‘AltisCraft’, x=-3448.44, y=18.00, z=-2813.60](komi43 at -3448.4415051647816,18.0,-2813.5987905177867), EntityPlayerMP[‘EpsilonMattz’/120442, l=‘AltisCraft’, x=-8490.84, y=33.00, z=-3802.66](EpsilonMattz at -8490.843508253834,33.0,-3802.6648119612373), EntityPlayerMP[‘manondu17’/121533, l=‘AltisCraft’, x=-8483.52, y=33.00, z=-3737.25](manondu17 at -8483.521062010408,33.0,-3737.2498160824957), EntityPlayerMP[‘thomasroussel’/121534, l=‘AltisCraft’, x=-8446.17, y=33.31, z=-3939.56](thomasroussel at -8446.16908120066,33.31250001490116,-3939.563665854931), EntityPlayerMP[‘ARC753’/122266, l=‘AltisCraft’, x=-8489.92, y=33.00, z=-3802.30](ARC753 at -8489.924273220742,33.0,-3802.301303829582), EntityPlayerMP[‘Dagmart76’/131637, l=‘AltisCraft’, x=-8494.54, y=33.00, z=-3791.06](Dagmart76 at -8494.542120506041,33.0,-3791.0592018756333), EntityPlayerMP[‘vbdu56’/133733, l=‘AltisCraft’, x=-3895.31, y=49.00, z=-3256.65](vbdu56 at -3895.3064512649294,49.0,-3256.6513210292987), EntityPlayerMP[‘caslol974’/133829, l=‘AltisCraft’, x=-8438.03, y=33.31, z=-3571.88](caslol974 at -8438.0251515803,33.3063932210207,-3571.881564580848), EntityPlayerMP[‘onyxdu68’/134507, l=‘AltisCraft’, x=-8580.68, y=33.00, z=-3612.27](onyxdu68 at -8580.678880856656,33.0,-3612.265722642813), EntityPlayerMP[‘MrNicolas51’/135547, l=‘AltisCraft’, x=-8438.51, y=33.09, z=-3571.94](MrNicolas51 at -8438.511111750926,33.09301359206438,-3571.940455355694), EntityPlayerMP[‘DarkZidix’/137824, l=‘AltisCraft’, x=-2239.02, y=58.91, z=-1958.38](DarkZidix at -2239.0198755528604,58.90570995556482,-1958.379569764249), EntityPlayerMP[‘dare20048’/138471, l=‘AltisCraft’, x=-8445.56, y=33.31, z=-3938.62](dare20048 at -8445.563160304726,33.31250001490116,-3938.615781414509), EntityPlayerMP[‘Wolfy_Girl2700’/139208, l=‘AltisCraft’, x=-8503.30, y=33.00, z=-3746.08](Wolfy_Girl2700 at -8503.300000011921,33.0,-3746.0819560237483), EntityPlayerMP[‘DrtsA’/139859, l=‘AltisCraft’, x=-8385.86, y=36.17, z=-3614.49](DrtsA at -8385.855338157118,36.170787077218804,-3614.48599140678), EntityPlayerMP[‘DEmoNiiAkOO’/139862, l=‘AltisCraft’, x=-8452.58, y=33.00, z=-3938.74](DEmoNiiAkOO at -8452.577151482288,33.0,-3938.7414500352425), EntityPlayerMP[‘TheHardTrox’/139861, l=‘AltisCraft’, x=-8582.27, y=17.00, z=-3082.78](TheHardTrox at -8582.267028030197,17.0,-3082.7777979597186), EntityPlayerMP[‘Arnie4’/141251, l=‘AltisCraft’, x=-8482.10, y=33.00, z=-3963.92](Arnie4 at -8482.09626498275,33.0,-3963.9246873514257), EntityPlayerMP[‘Winox’/141253, l=‘AltisCraft’, x=-8503.30, y=33.00, z=-3742.81](Winox at -8503.300000011921,33.0,-3742.8060482124865), EntityPlayerMP[‘Vallemal’/141254, l=‘AltisCraft’, x=-8422.64, y=33.50, z=-3573.09](Vallemal at -8422.64256023985,33.500047117471695,-3573.0880227984667), EntityPlayerMP[‘cosmos’/141935, l=‘AltisCraft’, x=0.00, y=99.00, z=0.00](cosmos at 0.0,99.0,0.0), EntityPlayerMP[‘AvenParkx’/143441, l=‘AltisCraft’, x=-8541.93, y=34.02, z=-3739.22](AvenParkx at -8541.9320226174,34.015555072702206,-3739.224045246397), EntityPlayerMP[‘Jawad_hebergeur’/143496, l=‘AltisCraft’, x=-8540.80, y=33.00, z=-3719.83](Jawad_hebergeur at -8540.797063482516,33.0,-3719.833523367713), EntityPlayerMP[‘BELZUNCE2004’/144237, l=‘AltisCraft’, x=-8570.26, y=33.00, z=-3781.25](BELZUNCE2004 at -8570.256816865382,33.0,-3781.247510664757), EntityPlayerMP[‘Fluxx_Mister’/144369, l=‘AltisCraft’, x=-8542.79, y=33.00, z=-3718.50](Fluxx_Mister at -8542.785325659328,33.0,-3718.5031837460983), EntityPlayerMP[‘Andrew_Layd’/145283, l=‘AltisCraft’, x=-8446.97, y=33.00, z=-3941.62](Andrew_Layd at -8446.96839099495,33.0,-3941.6151804284023), EntityPlayerMP[‘Theo_Toilette’/145438, l=‘AltisCraft’, x=-7493.25, y=95.46, z=-4786.50](Theo_Toilette at -7493.25289525703,95.46007774368371,-4786.497389556717), EntityPlayerMP[‘HmidouDeLaRue’/146268, l=‘AltisCraft’, x=-4261.19, y=45.00, z=-3251.25](HmidouDeLaRue at -4261.185459360685,45.0,-3251.247178031824), EntityPlayerMP[‘Kiliaoa’/146279, l=‘AltisCraft’, x=-8505.50, y=33.00, z=-3748.29](Kiliaoa at -8505.503989843784,33.0,-3748.293043379558), EntityPlayerMP[‘Mat11145’/121517, l=‘AltisCraft’, x=0.50, y=99.02, z=0.50](Mat11145 at 0.5,99.01999998092649,0.5), EntityPlayerMP[‘corsairg’/147748, l=‘AltisCraft’, x=-4250.76, y=46.25, z=-3145.03](corsairg at -4250.759316079397,46.24918707874468,-3145.0335859875095), EntityPlayerMP[‘John_Escobar’/147755, l=‘AltisCraft’, x=-2661.50, y=51.00, z=-3625.50](John_Escobar at -2661.5,51.0,-3625.5), EntityPlayerMP[‘Plasma22’/148255, l=‘AltisCraft’, x=1.11, y=99.00, z=1.70](Plasma22 at 1.105310547179983,99.0,1.699999988079071), EntityPlayerMP[‘FzF_WoKSiz_’/148991, l=‘AltisCraft’, x=0.00, y=101.00, z=0.00](FzF_WoKSiz_ at 0.0,101.0,0.0)]
Is Modded: Definitely; Server brand changed to ‘kcauldron,cauldron,craftbukkit,mcpc,fml,forge’
Type: Dedicated Server (map_server.txt) -
Tu codes toi même les armes à feu et puis on en parle plus, c’est pas sorcier de créer un item qui lance des entités non ?
-
Une item 3D qui se recharge, se personnalise etc ? Si c’est sorcier…
-
A vrai dire, même moi qui ne pipe rien à rien, à force de voir du code, je vois un peu mieux où est la difficulté.
Même si tu ne fais pas des choses grandiose, le modèle 3D de l’arme est simple à faire, le rendu en jeu ça va avec, l’animation je ne me prononce pas mais je pense que ça aussi s’apprend vite tout comme la modélisation.Pour coder l’item de façon à tirer c’est la méthode MaxDurationTruc (bref le temps pendant lequel appuyer sur le clic gauche équivaut pour une action), chaque action appelée devra tirer une balle, c’est à dire faire spawn une entité qui ressemblera à une balle ou autre (pour ça c’est facile de fait une petite recherche en regardant en ce qui concerne les grenades).
Pour mémoriser le nombre de balles dans un chargeur ça doit passer par des NBTtag je suppose, qui est aussi appelé sur un GUI (en tout cas le truc qui affichera au joueur le statut du chargeur).
Reste l’animation de rechargement qui doit être appelée quand le charge est vide (et donc calculer le nombre de fois à laquelle la méthode pour tirer des balles devra être appelée).
Faut simplement s’y mettre, voir où ça bute et au pire demander.
Chui un peu en train de me motiver pour faire ça, mais actuellement mon serveur n’a pas vraiment besoin d’ajout d’armes, ça se fera peut être pour du contenu exclusif un jour. -
Non mais ce problème est résolu :X merci quand même mais regardez mon nouveau crash report qui pète un cable avec les classes…

-
Problèmes résolues, meilleur CPU et RAM et recoder avec des null checks et des positive checks
