DarkShuper
-
Posts
3 -
Joined
-
Last visited
Posts posted by DarkShuper
-
-
The mousePress of EntityLivingHandler's onPLayerLiving method is not processed.
Help me!
"if (InfinitelyTrade.flag == 1)" is working.
※ This post uses Google Translate.
InfinitelyTrade.java (Main class)
package com.infinitelytrade.infinitely_trade; import org.lwjgl.input.Keyboard; import net.minecraft.client.settings.KeyBinding; import net.minecraftforge.fml.client.registry.ClientRegistry; import net.minecraftforge.fml.common.FMLCommonHandler; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.gameevent.InputEvent; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; @Mod(modid = InfinitelyTrade.MODID, name = InfinitelyTrade.NAME, version = InfinitelyTrade.VERSION) public class InfinitelyTrade { public static final String MODID = "infinitely_trade"; public static final String NAME = "InfinitelyTrade Mod"; public static final String VERSION = "1.12.2-1.0"; public static int flag = 0; @SideOnly(Side.CLIENT) public static final KeyBinding inputKey = new KeyBinding("KEY_J", Keyboard.KEY_J, "Auto Swing"); @Mod.EventHandler public void preInit(FMLPreInitializationEvent event) { //MinecraftForge.EVENT_BUS.register(new EntityLivingHandler()); } @Mod.EventHandler public void init(FMLInitializationEvent event) { if(event.getSide() == Side.CLIENT) { ClientRegistry.registerKeyBinding(inputKey); } FMLCommonHandler.instance().bus().register(this); } @SideOnly(Side.CLIENT) @SubscribeEvent public void inputKetEvent(InputEvent.KeyInputEvent event) { if(this.inputKey.isPressed()) { if(flag == 0) { flag = 1; }else if(flag == 1) { flag = 0; } } } }
EntityLivingHandler.java
package com.infinitelytrade.infinitely_trade.events; import java.awt.AWTException; import java.awt.Robot; import java.awt.event.InputEvent; import com.infinitelytrade.infinitely_trade.InfinitelyTrade; import net.minecraft.entity.passive.EntityVillager; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.village.MerchantRecipe; import net.minecraft.village.MerchantRecipeList; import net.minecraftforge.event.entity.living.LivingEvent; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; @Mod.EventBusSubscriber public final class EntityLivingHandler { @SubscribeEvent public static void onEntityLiving(LivingEvent.LivingUpdateEvent event) { if(event.getEntityLiving().getEntityWorld().isRemote) { return; } if(event.getEntityLiving() instanceof EntityVillager) { EntityVillager villager = (EntityVillager) event.getEntityLiving(); EntityPlayer player = null; MerchantRecipeList list = villager.getRecipes(player); if(list != null) { for(Object obj : list) { MerchantRecipe recipe = (MerchantRecipe) obj; if(recipe.isRecipeDisabled()) recipe.increaseMaxTradeUses(999999); } } } } @SubscribeEvent public static void onPlayerLiving(LivingEvent.LivingUpdateEvent event) { if(event.getEntityLiving().getEntityWorld().isRemote) return; Robot robot = null; try { robot = new Robot(); } catch (AWTException e) { e.printStackTrace(); } if(event.getEntityLiving() instanceof EntityPlayer) { EntityPlayer player = (EntityPlayer) event.getEntityLiving(); float swing_speed = player.getCooledAttackStrength(0.0F); //if(swing_speed < 1.0F && InfinitelyTrade.flag == 1) { if(InfinitelyTrade.flag == 1) { //player.sendMessage(new TextComponentString("この関数は動作しています")); robot.mousePress(InputEvent.getMaskForButton(1)); robot.mouseRelease(InputEvent.getMaskForButton(1)); } } } }
-
I want to be able to trade infinitely with the villagers.
I don't know what to do.
Can I help me?
I'm sorry, I used Google Translate
[1.12.2]Why does the Robot class mousePress not work?
in Modder Support
Posted
Nah...InputEvent is working...
The problem is that mousePress is not working.
And the Robot class is a class for keyboard and mouse automation.