Skip to content

Commit

Permalink
BPS:
Browse files Browse the repository at this point in the history
 + New Event for counting (might fix random showing fake 30 bps)
  • Loading branch information
May2Beez committed Apr 14, 2024
1 parent c139a3f commit 8738f1e
Show file tree
Hide file tree
Showing 4 changed files with 39 additions and 12 deletions.
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@ baseGroup=com.jelly.farmhelperv2
mcVersion=1.8.9
modid=farmhelperv2
modName=FarmHelper
version=2.5.19
version=2.5.20
shouldRelease=true
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package com.jelly.farmhelperv2.event;

import net.minecraft.block.Block;
import net.minecraft.util.BlockPos;
import net.minecraft.util.EnumFacing;
import net.minecraftforge.fml.common.eventhandler.Event;

public class PlayerDestroyBlockEvent extends Event {
public final BlockPos pos;
public final EnumFacing facing;
public final Block block;

public PlayerDestroyBlockEvent(BlockPos pos, EnumFacing facing, Block block) {
this.pos = pos;
this.facing = facing;
this.block = block;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.jelly.farmhelperv2.config.FarmHelperConfig;
import com.jelly.farmhelperv2.event.ClickedBlockEvent;
import com.jelly.farmhelperv2.event.MillisecondEvent;
import com.jelly.farmhelperv2.event.PlayerDestroyBlockEvent;
import com.jelly.farmhelperv2.event.ReceivePacketEvent;
import com.jelly.farmhelperv2.event.UpdateScoreboardLineEvent;
import com.jelly.farmhelperv2.failsafe.impl.LowerAvgBpsFailsafe;
Expand Down Expand Up @@ -326,48 +326,49 @@ public void onScoreboardUpdate(UpdateScoreboardLineEvent event) {
}

@SubscribeEvent
public void onBlockChange(ClickedBlockEvent event) {
public void onBlockChange(PlayerDestroyBlockEvent event) {
if (!MacroHandler.getInstance().isMacroToggled()) return;
if (!GameStateHandler.getInstance().inGarden()) return;
LogUtils.sendDebug("Block broken: " + event.block.getLocalizedName());

switch (MacroHandler.getInstance().getCrop()) {
case NETHER_WART:
case CARROT:
case POTATO:
case WHEAT:
if (event.getBlock() instanceof BlockCrops ||
event.getBlock() instanceof BlockNetherWart) {
if (event.block instanceof BlockCrops ||
event.block instanceof BlockNetherWart) {
blocksBroken++;
}
break;
case SUGAR_CANE:
if (event.getBlock() instanceof BlockReed) {
if (event.block instanceof BlockReed) {
blocksBroken++;
}
break;
case MELON:
if (event.getBlock().equals(Blocks.melon_block)) {
if (event.block.equals(Blocks.melon_block)) {
blocksBroken++;
}
break;
case PUMPKIN:
if (event.getBlock().equals(Blocks.pumpkin)) {
if (event.block.equals(Blocks.pumpkin)) {
blocksBroken++;
}
break;
case CACTUS:
if (event.getBlock().equals(Blocks.cactus)) {
if (event.block.equals(Blocks.cactus)) {
blocksBroken++;
}
break;
case COCOA_BEANS:
if (event.getBlock().equals(Blocks.cocoa)) {
if (event.block.equals(Blocks.cocoa)) {
blocksBroken++;
}
break;
case MUSHROOM:
if (event.getBlock().equals(Blocks.red_mushroom) ||
event.getBlock().equals(Blocks.brown_mushroom)) {
if (event.block.equals(Blocks.red_mushroom) ||
event.block.equals(Blocks.brown_mushroom)) {
blocksBroken++;
}
break;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import com.jelly.farmhelperv2.config.FarmHelperConfig;
import com.jelly.farmhelperv2.event.ClickedBlockEvent;
import com.jelly.farmhelperv2.event.PlayerDestroyBlockEvent;
import com.jelly.farmhelperv2.handler.MacroHandler;
import net.minecraft.block.Block;
import net.minecraft.block.BlockCactus;
Expand Down Expand Up @@ -52,4 +53,11 @@ public void clickBlock(BlockPos loc, EnumFacing face, CallbackInfoReturnable<Boo
MinecraftForge.EVENT_BUS.post(event);
}
}

@Inject(method = {"onPlayerDestroyBlock"}, at = {@At(value = "HEAD")})
public void onPlayerDestroyBlock(BlockPos pos, EnumFacing side, CallbackInfoReturnable<Boolean> cir) {
Block block = this.mc.theWorld.getBlockState(pos).getBlock();
PlayerDestroyBlockEvent event = new PlayerDestroyBlockEvent(pos, side, block);
MinecraftForge.EVENT_BUS.post(event);
}
}

0 comments on commit 8738f1e

Please sign in to comment.