-
Posts
11 -
Joined
-
Last visited
Converted
-
Gender
Undisclosed
-
Location
Somewhere...
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
creepersgalore's Achievements
Tree Puncher (2/8)
0
Reputation
-
It's not the Y... The X and Z are the problem. The findGroundY() is my own, I know it works from doing this non-biome dependently. The top block is the Biome top block. Some screenshots. The lighter color is the Plains Island top block, darker is Barren top block.
-
For some reason, my biomes (not the actual biomes, the topblock gen) seems to be inverted. My Code: for (int i = 0; i < 16; i++) { for (int j = 0; j < 16; j++) { //Replace top blocks int i1 = (x * 16 + i) & 15; //Probably unneccesary, same result as before int j1 = (z * 16 + j) & 15; //Probably unneccesary, same result as before int biomeIndex = j + i * 16; Biome biome = biomesIn[biomeIndex]; int groundY = findGroundY(primer, i1, j1); if (groundY > 0) { primer.setBlockState(i1, groundY, j1, biome.topBlock); } } } The calling method: public Chunk generateChunk(int x, int z) { this.chunkX = x; this.chunkZ = z; this.rand.setSeed((long) x * 341873128712L + (long) z * 132897987541L); ChunkPrimer chunkprimer = new ChunkPrimer(); this.setBlocksInChunk(x, z, chunkprimer); this.biomesForGeneration = this.worldObj.getBiomeProvider().getBiomes(this.biomesForGeneration, x * 16, z * 16, 16, 16); this.replaceBiomeBlocks(x, z, chunkprimer, this.biomesForGeneration); Chunk chunk = new Chunk(this.worldObj, chunkprimer, x, z); byte[] abyte = chunk.getBiomeArray(); for (int i = 0; i < abyte.length; ++i) { abyte[i] = (byte) Biome.getIdForBiome(this.biomesForGeneration[i]); } chunk.generateSkylightMap(); return chunk; } Before doing this, I looked at ChunkGeneratorOverworld, and almost-kind-of copied some of the code (the this.worldObj.getBiomeProvider... in generateChunk() and the replaceBiomeBlocks() method). That made it from no top blocks to strange top blocks, my current state.
-
Strange... Adding the missing files fixed it. Well, I hope that my solution will help others!
-
I forgot to mention that... I didn't make any files for those. I am ignoring those errors, and focusing on the missing blockstate thing. Missing files shouldn't cause that... Right? I'll do some testing.
-
Exception loading model for variant greenvoidislands:double_tall_island_grass#facing=north,half=lower,variant=double_grass for blockstate "greenvoidislands:double_tall_island_grass[facing=north,half=lower,variant=double_grass]" But I have the blockstate! { "variants": { "facing=north,half=lower,variant=double_grass": { "model": "greenvoidislands:double_grass_bottom" }, "facing=north,half=upper,variant=double_grass": { "model": "greenvoidislands:double_grass_top" }, "facing=south,half=lower,variant=double_grass": { "model": "greenvoidislands:double_grass_bottom" }, "facing=south,half=upper,variant=double_grass": { "model": "greenvoidislands:double_grass_top" }, "facing=east,half=lower,variant=double_grass": { "model": "greenvoidislands:double_grass_bottom" }, "facing=east,half=upper,variant=double_grass": { "model": "greenvoidislands:double_grass_top" }, "facing=west,half=lower,variant=double_grass": { "model": "greenvoidislands:double_grass_bottom" }, "facing=west,half=upper,variant=double_grass": { "model": "greenvoidislands:double_grass_top" } } } All the Errors:
-
OpenGL not detected?(crash)
creepersgalore replied to Derpyninja476's topic in Support & Bug Reports
It could be Optifine, but most likely your MC installation is corrupted. Try removing Optifine and/or reinstalling Forge. (but I might not be right, just looking to help) -
Custom Dimension Music using MusicType Enum?
creepersgalore replied to creepersgalore's topic in Modder Support
Tried that and got this problem: My code, before any init methods or anything: public static MusicTicker.MusicType musicType = EnumHelper.addEnum(MusicTicker.MusicType.class, "GVI", new Class[]{SoundEvent.class, Integer.class, Integer.class}, GVISoundManager.gvi_music, 270, 540); I haven't used EnumHelper much before. The MusicTicker.MusicType Enum constructor uses a SoundEvent, and two ints. My code, before any init methods or anything: public static MusicTicker.MusicType musicType = EnumHelper.addEnum(MusicTicker.MusicType.class, "GVI", new Class[]{SoundEvent.class, Integer.class, Integer.class}, GVISoundManager.gvi_music, 270, 540); I haven't used EnumHelper much before. The MusicTicker.MusicType Enum constructor uses a SoundEvent, and two ints. private MusicType(SoundEvent musicLocationIn, int minDelayIn, int maxDelayIn) { this.musicLocation = musicLocationIn; this.minDelay = minDelayIn; this.maxDelay = maxDelayIn; } I am using Forge 1.12.2-14.23.2.2611. According to the changelog, they fixed the MusicType error. http://www.minecraftforge.net/forum/topic/62903-forge-14232-minecraft-1122/?tab=comments#comment-296005 -
I need to use this method to have custom music for my dimension. @Nullable @SideOnly(Side.CLIENT) public MusicTicker.MusicType getMusicType() { return MusicTicker.MusicType.<?>; } The <?> is not in the actual code, I'm just using CREATIVE as a placeholder. Formerly I used the PlaySoundEvent and it (kind of) worked, but the music was overlapping, and I spotted this method. But now, I need to add a custom MusicType enum constant, but I don't know how to do this ().
-
It works now.
-
I tried that. Didn't work.
-
I need help with an event handler. Before you ask, my problem is not having an unregistered event handler. Here is the code: My aim is to play my custom music when Minecraft says "Play ambient music", then stop that music from playing and replace it with my own music.