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.

Would Block Interaction stats be desirable 2 members have voted

  1. 1. Would Block Interaction stats be desirable

    • Yes, definitely.
      0
    • Yes, but probably outside the scope of forge. It should be a mod.
      1
    • No, they are unneeded. They can be added for individual blocks, just like in vanilla.
      1

Please sign in or register to vote in this poll.

Featured Replies

Posted

There are currently stats for block mined, and ("custom") interaction stats for the vanilla crafting blocks.

Spoiler

Class net.minecraft.stats.Stats

public static final ResourceLocation INTERACT_WITH_BLAST_FURNACE = registerCustom("interact_with_blast_furnace", IStatFormatter.DEFAULT);

public static final ResourceLocation INTERACT_WITH_SMOKER = registerCustom("interact_with_smoker", IStatFormatter.DEFAULT);

public static final ResourceLocation INTERACT_WITH_LECTERN = registerCustom("interact_with_lectern", IStatFormatter.DEFAULT);

public static final ResourceLocation INTERACT_WITH_CAMPFIRE = registerCustom("interact_with_campfire", IStatFormatter.DEFAULT);

public static final ResourceLocation INTERACT_WITH_CARTOGRAPHY_TABLE = registerCustom("interact_with_cartography_table", IStatFormatter.DEFAULT);

public static final ResourceLocation INTERACT_WITH_LOOM = registerCustom("interact_with_loom", IStatFormatter.DEFAULT);

public static final ResourceLocation INTERACT_WITH_STONECUTTER = registerCustom("interact_with_stonecutter", IStatFormatter.DEFAULT);

All of these are manually implemented.

Further there are item use stats, which are manually implemented for clicking on air, but in `ItemStack#onItemUse(context, callback)` (called when clicking a block with an item) the item use stats are incremented if the click is successful.

 

Would people be interested in having a similar system for blocks used (as in interacted with in world)? We could hook into `PlayerInteractionManager#func_219441_a` (the same method `ForgeHooks::onRightClickBlock` is called from) to determine whether stats should be added.

 

The reason why I was looking for something like this is because I was looking to see how easy it would be to determine how many times a player has harvested crops, but I know that right clicking crops to harvest them is quite popular, which presumably doesn't actually add the block mined stat. Also, just basing off block mined would be inaccurate, as it would count non-fully grown blocks. I could always go down the events route, but ideally I would like to be able to retroactively use the stat (i.e. before the mod was installed).

Edited by Alpvax

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

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.