matt1999rd
Members-
Posts
133 -
Joined
-
Last visited
Everything posted by matt1999rd
-
Do you want to have a behaviour like the bucket item ? If it is the case you should look in the class BucketItem available using ctrl n with intellij. The function used is : Item#use.
-
Hello everyone, I try to use Tesselator class to render some icons on a screen. But it doesn't work and I don't see why because I am just using the same code as AbstractGui#innerBlit with float parameters. I linked here the texture of the icons to display and the texture of the gui container. here is the code of the class where the rendering is done : private void renderQuad(MatrixStack stack, Vector2f origin, Vector2f end, Vector2f uvOrigin, Vector2f uvEnd){ Tessellator tessellator = Tessellator.getInstance(); BufferBuilder bufferbuilder = tessellator.getBuilder(); RenderSystem.enableBlend(); bufferbuilder.begin(7, DefaultVertexFormats.POSITION_TEX); Matrix4f matrix4f = stack.last().pose(); bufferbuilder.vertex(matrix4f, origin.x, origin.y, (float)0).uv(uvOrigin.x, uvOrigin.y).endVertex(); bufferbuilder.vertex(matrix4f, origin.x, end.y, (float)0).uv(uvOrigin.x, uvEnd.y).endVertex(); bufferbuilder.vertex(matrix4f, end.x, end.y, (float)0).uv(uvEnd.x, uvEnd.y).endVertex(); bufferbuilder.vertex(matrix4f, end.x, origin.y, (float)0).uv(uvEnd.x, uvOrigin.y).endVertex(); tessellator.end(); } I have already tried to reverse the position of the vertex. GUI of the block / icons to display :
-
yes it is the same modid but not the same registry name. The thing I want to do is to replace all occurrences of the block in the world. I tried to do it using the WorldEvent.Load function but I am not sure I can redefine all block especially the ones that are far away from the spawning position. (edit start) I can do it using ChunkEvent.Load but I am not sure of whether this event is reached when loading the world.(edit stop) The solution of replacing the block does not satisfy me as it keeps the bad block in the delivered mods jar file.
-
hello everyone, I have done a mod in version 1.14 and 1.15 and I am actually updating it to version 1.16.5. But in this process I want to replace some block in it. How can I replace block before loading the world (after clicking on play button on the main menu screen). My block are some simple switchrail (see picture below) that have only two states : the axis of the straight line and the switch position of the block (straight or turn). After this modification, there must be three property : facing, hinge( if the switch turn is on right or left ), switch position.
-
Hello everyone, I am making a mod that place specific sign in Minecraft. I decided to make a first gui that allow the user to select a specific form of sign (see fig 1). Then I create a second screen for the sign with a little white arrow (located on the right in the middle). However, when placing one of this and retrying to create the same sign it did initialise the screen (of fig 2) but is unable to render it. I will add as detail that the screen is rendered using a loop of networking call : first the user click on the block which send to the server a message to open the GUI. Then when on the first GUI if we click on the specific button, it send to server a message to open the second GUI. Here is the link to my git repository : https://github.com/matt1999rd/SignMod. To place this sign it is mandatory to place support and grid connecting support) and click on grid. (2 by 3 grid mandatory) fig 1 : first screen always displayed fig 2 : second screen that can be initialised without being rendered
-
[SOLVED][1.14-1.15] TER : how can I visualised my model ?
matt1999rd replied to matt1999rd's topic in Modder Support
it was not working because of the model json that was not placed. But now it works well thank you -
what do you mean by pre-computed ? is a tab with model for each possibilities created when using multipart ? for my mod I deleted the attributes. Another strange bug happened with lag in loading in minecraft : when I add .doesnotblockmovement to my blocks it is loading really slowly.
-
Hello everyone, I am doing a mod involving a panel block class. This block has multiple blockstateproperties : @Override protected void fillStateContainer(StateContainer.Builder<Block, BlockState> builder) { builder.add( BlockStateProperties.HORIZONTAL_FACING, GridSupport.ROTATED, GRID, NORTH_EAST, NORTH_WEST, SOUTH_EAST, SOUTH_WEST, BlockStateProperties.NORTH, BlockStateProperties.SOUTH, BlockStateProperties.WEST, BlockStateProperties.EAST ); } I decided to add a new properties scale that do not change rendering of block. this property is a integer property that allow 4 values : 0,1,2,3 each for modifying pixel length when modifying panel image. Before doing it, minecraft was launching normally but after that it is not working at all and minecraft stop launching after this line : [18:43:11] [Client thread/INFO] [minecraft/AtlasTexture]: Created: 512x512 textures-atlas I don't know if there is any reason why it is suddenly lagging. Here is the commit of my code before adding scale with all others features implying it : https://github.com/matt1999rd/SignMod
-
I solve this issues myself and I forget the alpha layer. However I really wander what Tesselator use and how I can use it in TER or gui ?
-
Hello everyone, I am a total beginner in display code and I want in my new mode to fill a square of a screen with a color that is saved in my screen field. I try to use AbstractGui#fill but it seems not to work. I have seen many time the instance Tesselator that was used but I don't see what this do and how I should use it. In the same idea openGL is used backward and I would like to know where I can find tutorial to understand basic functionnalities of this software. Here is the Screen I want to implement it looks alike the one in ichttt mod because I want to implement something of this kind with more options : https://github.com/matt1999rd/SignMod/blob/master/src/main/java/fr/mattmouss/signs/gui/DrawingScreen.java
-
[SOLVED][1.14-1.15] TER : how can I visualised my model ?
matt1999rd replied to matt1999rd's topic in Modder Support
ok right but I don't know how to manage it and in fact it does not look right because when I place my block it replace the support by air instead of PanelBlock I don't understand why. I have done this both server and client side to avoid side problem and still the problem occurs. You can see here the code of my Registration : https://github.com/matt1999rd/SignMod/blob/master/src/main/java/fr/mattmouss/signs/fixedpanel/PanelRegister.java I put the block in the Packet send to server : https://github.com/matt1999rd/SignMod/blob/master/src/main/java/fr/mattmouss/signs/networking/PacketPlacePanel.java -
Hello everyone, in my new mod I am trying the TER implementation and I have started an empty TE with a TER and run it to see if anythings happened but it looks like nothing is done. Here is the links to all my staff : https://github.com/matt1999rd/SignMod/tree/master/src/main/java/fr/mattmouss/signs/tileentity I register this TER into the proxy as you can see here : https://github.com/matt1999rd/SignMod/tree/master/src/main/java/fr/mattmouss/signs/setup I don't know what I need to add to make sure it render even incorrectly
-
[1.16.5] new block window not rendering correctly
matt1999rd replied to matt1999rd's topic in Modder Support
I am returning to this topic because I am about to upload my mod and the function does not work for 1.14.4 unfortunately do someone have an idea of how to do it ? -
I finally found the error it was java error. In my te I am searching into the Map using HashMap#forEach and inside it I remove value in this same map. This is logically impossible and it crashes. I found the solution on using a List from outside function that register the value to delete. Thanks for your answer that was simplier than expected
-
Hello everyone, in my mod, I am modifying a map to update it client side. At each tick, I am checking worldSavedData to match it with my te map on server side and then I put it to the client using a packet. But as I destroy two block I run into a very strange exception : ConcurentModificationException. Here is the code of the tile entity : Tile Entity I am using hashMap and here is the complete crash report : ---- Minecraft Crash Report ---- // Daisy, daisy... Time: 25/04/20 10:36 Description: Ticking block entity java.util.ConcurrentModificationException: null at java.util.HashMap.forEach(HashMap.java:1292) ~[?:1.8.0_231] {} at fr.mattmouss.gates.tileentity.CardGetterTileEntity.lambda$tick$7(CardGetterTileEntity.java:145) ~[?:?] {re:classloading} at net.minecraftforge.common.util.LazyOptional.ifPresent(LazyOptional.java:161) ~[?:?] {re:classloading} at fr.mattmouss.gates.tileentity.CardGetterTileEntity.tick(CardGetterTileEntity.java:137) ~[?:?] {re:classloading} at net.minecraft.world.World.tickBlockEntities(World.java:473) ~[?:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.world.server.ServerWorld.tick(ServerWorld.java:368) ~[?:?] {re:classloading} at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:841) ~[?:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:776) ~[?:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:112) ~[?:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:634) [?:?] {re:classloading,pl:accesstransformer:B} at java.lang.Thread.run(Thread.java:748) [?:1.8.0_231] {} A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Server thread Stacktrace: at java.util.HashMap.forEach(HashMap.java:1292) at fr.mattmouss.gates.tileentity.CardGetterTileEntity.lambda$tick$7(CardGetterTileEntity.java:145) at net.minecraftforge.common.util.LazyOptional.ifPresent(LazyOptional.java:161) at fr.mattmouss.gates.tileentity.CardGetterTileEntity.tick(CardGetterTileEntity.java:137) -- Block entity being ticked -- Details: Name: gates:card_getter // fr.mattmouss.gates.tileentity.CardGetterTileEntity Block: Block{gates:card_getter}[facing=west] Block location: World: (51,4,153), Chunk: (at 3,0,9 in 3,9; contains blocks 48,0,144 to 63,255,159), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511) Block: Block{gates:card_getter}[facing=west] Block location: World: (51,4,153), Chunk: (at 3,0,9 in 3,9; contains blocks 48,0,144 to 63,255,159), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511) Stacktrace: at net.minecraft.world.World.tickBlockEntities(World.java:473) at net.minecraft.world.server.ServerWorld.tick(ServerWorld.java:368) -- Affected level -- Details: All players: 1 total; [ServerPlayerEntity['Dev'/276, l='New World', x=46.12, y=4.00, z=155.12]] Chunk stats: ServerChunkCache: 3019 Level dimension: DimensionType{minecraft:overworld} Level name: New World Level seed: -4566557193619946920 Level generator: ID 01 - flat, ver 0. Features enabled: true Level generator options: {} Level spawn location: World: (48,4,160), Chunk: (at 0,0,0 in 3,10; contains blocks 48,0,160 to 63,255,175), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511) Level time: 5794 game time, 5794 day time Level storage version: 0x04ABD - Anvil Level weather: Rain time: 127319 (now: false), thunder time: 47119 (now: false) Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: true Stacktrace: at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:841) at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:776) at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:112) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:634) at java.lang.Thread.run(Thread.java:748) -- System Details -- Details: Minecraft Version: 1.15.1 Minecraft Version ID: 1.15.1 Operating System: Windows 10 (amd64) version 10.0 Java Version: 1.8.0_231, Oracle Corporation Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation Memory: 459278856 bytes (438 MB) / 1008205824 bytes (961 MB) up to 1411383296 bytes (1346 MB) CPUs: 4 JVM Flags: 1 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump ModLauncher: 5.0.0-milestone.4+67+b1a340b ModLauncher launch target: fmluserdevclient ModLauncher naming: mcp ModLauncher services: /eventbus-2.0.0-milestone.1-service.jar eventbus PLUGINSERVICE /forge-1.15.1-30.0.51_mapped_snapshot_20200213-1.15.1-launcher.jar object_holder_definalize PLUGINSERVICE /forge-1.15.1-30.0.51_mapped_snapshot_20200213-1.15.1-launcher.jar runtime_enum_extender PLUGINSERVICE /accesstransformers-2.0.0-milestone.1-shadowed.jar accesstransformer PLUGINSERVICE /forge-1.15.1-30.0.51_mapped_snapshot_20200213-1.15.1-launcher.jar capability_inject_definalize PLUGINSERVICE /forge-1.15.1-30.0.51_mapped_snapshot_20200213-1.15.1-launcher.jar runtimedistcleaner PLUGINSERVICE /forge-1.15.1-30.0.51_mapped_snapshot_20200213-1.15.1-launcher.jar fml TRANSFORMATIONSERVICE FML: 30.0 Forge: net.minecraftforge:30.0.51 FML Language Providers: [email protected] minecraft@1 Mod List: client-extra.jar Minecraft {[email protected] DONE} main Gates {[email protected] DONE} forge-1.15.1-30.0.51_mapped_snapshot_20200213-1.15.1.jar Forge {[email protected] DONE} Player Count: 1 / 8; [ServerPlayerEntity['Dev'/276, l='New World', x=46.12, y=4.00, z=155.12]] Data Packs: vanilla, mod:forge (incompatible), mod:gates Type: Integrated Server (map_client.txt) Is Modded: Definitely; Client brand changed to 'forge'
-
I don't know why but I change the order of the different part of the obj model and it works : maybe it is due to placement of block
-
yes that is very good idea I have done it and it looks like it is reading the v part and the vn part of each part but it is reading all vertex for one of the not displayed part and I don't understand why it is not considering the others part. On the other hand I don't know why I need to move my block origin in blockbench to 8 8 8 instead of doing it with normal origin at 0 0 0. For further information I give you the obj file here (turn_stile_main.obj) and the followed json file model associated (turn_stile_main_0.json) turn_stile_main_0.obj turn_stile_main_0.json
-
Hello everyone, I have implemented a obj file for the rendering of my block but the OBJLoader seems to only register the first part and ignoring the others three. I am very need to all this so I don't know how to modify obj file to let it work. I put here the rendering of my block and the rendering that I wanted with blockbench. what I want what I get...
-
[1.14-1.15] [Solved]Problem in display name : yellow letter
matt1999rd replied to matt1999rd's topic in Modder Support
for this mod I have not upload it on git hub. I have posted it just now : https://github.com/matt1999rd/switchrail the block concerned is SwitchLever and oneWayPoweredRail. For switchLever it is using Rarity.UNCOMMON. That is it I have modified the rarity and I have change it to COMMON for the oneWayPoweredRail thank you ! -
Hello everyone, in the update of one of my mod I want to add one direction powered rail but as I look at vanilla code I find really complex function especially in abstractMinecartEntity. Does anyone knows : 1.how to move a minecart on rail using onMinecartPass 2. how to stop a minecart when it is on a slope I try various things but nothing was really efficient.
-
Hello everyone, I want to make a turn stile with BakedModel. The objective is to make two rotation to get something like this : The problem is that two rotation are not supportedby json model so I don't know how to make it with bakedModel. I have looked at a tutorial that is not usable anymore. I don't know if I can possibly load obj file in order not to have any complex code to implement.
-
AlpVax are you sure this works ? because I try it in my mod (without condition on context and entity) and it did not work...