Jump to content
Search In
  • More options...
Find results that contain...
Find results in...


  • Posts

  • Joined

  • Last visited

  • Days Won


Dzuchun last won the day on July 18 2020

Dzuchun had the most liked content!


  • Gender
  • URL
  • Location
    Kyiv, Ukraine
  • ICQ
  • AIM
  • Personal Text

Recent Profile Visitors

1698 profile views

Dzuchun's Achievements

Stone Miner

Stone Miner (3/8)



  1. CowModel class and, I think, all the classes implementing EntityModel class (not sure) Also, check blockbench.
  2. isRemote is not a static field, which means you need get it for a world object instance, not for a world class. All entity objects have a "world" field, which contains a world they exist in. So, in you context you should check for p.world.isRemote. And yea, this is a pretty basic java, you need more practice to start modding.
  3. I have no idea why, but it works now. Seems like all i've changed is canBeCollidedWith return value to true.
  4. I looked through your code, and I feel like you need to check IBlockReader::rayTraceBlocks and ProjectileHelper::rayTraceEnitities methods.
  5. If blender is too hard for you, you may use Blockbench.
  6. Look at NetherCaveCarver class. As I can see, it perfectly overrides a set of carvable blocks (Nether blocks are not listed in default one). So, you may use this carver as a template for yours.
  7. Of course, I set the size, that's why Also, I call recalculateSize method inside entity constructor (after calling superclass constructor). It seem to recenter bounding box as well.
  8. It's a several matrix objects that forming a stack. Each matrix defines some translation (movement) and rotation within all 3 axes. Stack form is very useful, because it allows you to divide massive and unreadable math into more easy-to-understand operations. You should not create empty matrix stack, it makes no sense. In any render method matrixStack is passed or you can perform same operations with GL* methods(not sure). All you need to do is .push(), then translate and rotate where you need to and .pop() in the end. push-pop may be done inside as well. As Novârch said, EntityRenderer:renderName shows perfect example of rendering text in world.
  9. I'm creating a custom entity now. I've overriden attackEntityFrom(DamageSource, float) method for it, but it seems like it is never called, even if I hit my entity in creative mode. Then, for debug purposes, I subscribed to some client tick event and logged Minecraft.objectMouseOver.getType().toString(). As expected, my entity is just ignored by raytracing. F3+B overlay shows a perfect 1x1x1 box around my entity, that I obviously should hit. Entity exists on both client and server (I can /kill it and it's rendered). So, here comes a question: what should I define for raytracing to notice my entity?
  10. Please, keep this forum in English. 1.8.9 is no longer supported, sorry.
  11. Actually, if you really need to send entire capability with network package, you may write your capability into CompoundNBT tag and then write this tag into PacketBuffer. But as poopoodice said, avoid excess synchronization.
  12. Here you don't need this to execute something on button click. Listening is already handled by LWJGL (not sure), so all you need is to specify function that should be executed once button is pressed. (p_213070_1_) -> { this.minecraft.displayGuiScreen((Screen)null); this.minecraft.mouseHelper.grabMouse(); } Here is this function. This format is called lambda-expression. Check source code for more context, this code is located at IngameMenuScreen class.
  13. For any diagnostic you should provide debug.log file. Please, don't directly copy it's content here, because it can be several thousand lines long. File is located in log folder. Also, check pinned post.
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.