Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

zerofall

Members
  • Joined

  • Last visited

Everything posted by zerofall

  1. I have an item (Snow Pouch) that should refill snowballs when thrown, but it seems like the NBT data isn't syncing. In game, the slot of snowballs in my inventory goes back and forth between 15 and 16 every other throw (should stay at 16). The Snow Pouch shows total snowballs in the tooltip, but the number doesn't appear to change unless I pick it up from my inventory and put it back. What am I doing wrong? @SubscribeEvent public void onEntityJoinWorld(EntityJoinWorldEvent event) { if (event.entity instanceof EntitySnowball) { EntitySnowball snowball = (EntitySnowball)event.entity; if (!event.world.isRemote) { if (snowball.getThrower() instanceof EntityPlayer) { EntityPlayer player = (EntityPlayer)snowball.getThrower(); ItemStack snowPouch = getItemInHotbar(player, ZeroItems.snowPouch, 0); if (snowPouch != null && snowPouch.stackTagCompound != null) { int snowballs = snowPouch.stackTagCompound.getInteger("Snowballs"); if (snowballs > 0) { if (player.inventory.addItemStackToInventory(new ItemStack(Items.snowball))) { snowballs--; snowPouch.stackTagCompound.setInteger("Snowballs", snowballs); } } } } } } }
  2. I tried to add an access transformer as such: In my build.gradle file: jar { manifest { attributes 'FMLAT': 'ezstorage_at.cfg' } } In my META-INF folder, a file called "ezstorage_at.cfg": #Forge access transformer config file #GuiContainer public net.minecraft.client.gui.inventory.GuiContainer drawSlot(Lnet/minecraft/inventory/Slot;)V #renderSlot Then, I run "./gradlew setupDecompWorkspace eclipse" But, the drawSlot method is still private. This worked in 1.7.10... what am I doing wrong now?
  3. I have a custom GUI with a crafting grid in my mod, and I wanted to integrate NEI shift-clicking. I downloaded the recommended "dev" jars of CCC and NEI from here: http://chickenbones.net/Pages/links.html I added them to the "lib" folder of my project, and I also added them to the "mods" folder of my instance. Now when I try to run the project, I get errors just like this (not my log, but exact same problem): https://gist.github.com/OrionDevelopment/76baa2bc12ae70a85559 Am I doing this incorrectly?
  4. I am trying to get my TileEntity's BlockPos from the GUI (this.tileEntity.getPos() )... but the client-side version of my TileEntity has a BlockPos of 0,0,0 (which is wrong). Whats going on? Edit: see screenshot below during a debug session of my GUI constructor:
  5. Ok, I think I am close... but I am stuck on something. On the thread you linked is this message: On the packet handler, how can I access the current TileEntity/Container the player is interacting with without sending the coordinates through the packet? I assume is must be ctx.getServerHandler().playerEntity.something?
  6. Can you provide a code example of how to send/receive a custom packet?
  7. I have a TileEntity that I need to update from the GUI. I simply need to send an Integer from the client to the server-side TileEntity. I assume I need to use packets to do this, but I'm not sure how. My TileEntity can already handle packets: @Override public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity pkt) { readFromNBT(pkt.getNbtCompound()); } which works fine. I guess I need to figure out how to send a packet to the tile entity from the GUI. I tried this: NBTTagCompound nbtTag = new NBTTagCompound(); nbtTag.setInteger("MyInteger", myInteger); S35PacketUpdateTileEntity packet = new S35PacketUpdateTileEntity(this.tileEntity.getPos(), 1, nbtTag); this.mc.thePlayer.sendQueue.addToSendQueue(packet); but this doesn't work. What is the best way to do this?

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.