Jump to content

[1.8] dissable rigthclick item swing animation What i doing wrong ?


perromercenary00

Recommended Posts

good

days

long ago i post this same question but let it behind unsolved for

things

 

create this 3d item and make it animated swiching json files,  when aim this drill at a block it begins to goin down and up like crazy, and thats anoing, worst is to see it  in  hand guns.

 

 

in this video if aim the drill to a block it begins to bounse but aiming to air works well, the shotgun goes down when shoot and its not suppouse to goin down when shoot , if aiming to a block it bounse mad as well. 

 

if i dont use playerIn.setItemInUse()  and EnumAction it swings even when aiming to air. 

Using the bow EnumAction,  i like the way it looks in thirth view but is shitti in first person, the animation stop until getMaxItemUseDuration() run out of time and restart

   

so help

how i stop the swing animations at item rigth click ?

the use i been using of playerIn.setItemInUse() is rigth? or Unnecessary

 

 

this is mi code i been geting the tics to switch the animations from the getModel() method to avoid mesing whith onUpdate() method and events

 


package mercenarymod.items.herraminetas;

import mercenarymod.materialesMercenarios;
import mercenarymod.Mercenary;
import net.minecraft.block.Block;
import net.minecraft.block.properties.PropertyDirection;
import net.minecraft.block.state.IBlockState;
import net.minecraft.client.resources.model.ModelResourceLocation;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.EnumAction;
import net.minecraft.item.ItemPickaxe;
import net.minecraft.item.ItemStack;
import net.minecraft.item.ItemSword;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.BlockPos;
import net.minecraft.util.ChatComponentText;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.IChatComponent;
import net.minecraft.world.World;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import mercenarymod.blocks.MercenaryModBlocks;
import mercenarymod.items.MercenaryModItems;
import mercenarymod.utilidades.chat;
import mercenarymod.utilidades.nbtMercenaria;

import java.lang.Math;
import java.util.ArrayList;
import java.util.List;


import mercenarymod.utilidades.util;



//############################################################################3
public class drillMercenario extends ItemPickaxe{

public static String name = "drillMercenario";

boolean giro=false;

int munitionMax=0;
static int munitionMax0=64;

int tick=0;
int textura;

boolean continuar=false;


public static ArrayList<Integer> coor0 = new ArrayList<Integer>(); 
public static final PropertyDirection FACING = PropertyDirection.create("facing");

//############################################################################3
public drillMercenario(){
super(materialesMercenarios.carbono_carbono());

setUnlocalizedName(Mercenary.MODID + "_" + name);
GameRegistry.registerItem(this, name);
setCreativeTab(Mercenary.herramientas);
this.maxStackSize = 1;
}


//######################################################################################3	
 @Override
public ModelResourceLocation getModel(ItemStack drill, EntityPlayer playerIn, int useRemaining){

ModelResourceLocation modelresourcelocation = new ModelResourceLocation("modmercenario:herramientas/drill/drillMercenario_04", "inventory");	 
animation(drill, playerIn,tick);

if ((tick%10)==0){

boolean animation=nbtMercenaria.getBooleantag(drill, "animation");
//System.out.println("animation="+animation);

if(!animation){
//animation(drill, playerIn,tick);
//textura=nbtMercenaria.getInttag(drill, "textura");

giro=false;

}
}

System.out.println("textura="+textura);
switch(textura){
    default:modelresourcelocation = new ModelResourceLocation("modmercenario:herramientas/drill/drillMercenario", "inventory") ;break;
case 1:modelresourcelocation = new ModelResourceLocation("modmercenario:herramientas/drill/drillMercenario_00", "inventory") ;break;
case 2:modelresourcelocation = new ModelResourceLocation("modmercenario:herramientas/drill/drillMercenario_01", "inventory") ; break;	
case 3:modelresourcelocation = new ModelResourceLocation("modmercenario:herramientas/drill/drillMercenario_02", "inventory") ;break;
case 4:modelresourcelocation = new ModelResourceLocation("modmercenario:herramientas/drill/drillMercenario_03", "inventory") ;break;        
case 5:modelresourcelocation = new ModelResourceLocation("modmercenario:herramientas/drill/drillMercenario_04", "inventory") ;break;        
                }



tick++;
if (tick>100){tick=0;nbtMercenaria.setBooleantag(drill, "animation",false);}
  	return modelresourcelocation;
  	
	}

//####################################################################################3	
void animation(ItemStack drill, EntityPlayer playerIn,int tick){	 

 if (giro){
 System.out.println("Giro="+tick);	 
 switch (tick){
 case 0: case 12: case 49:  textura=1;break;
 case 3: case 15: case 46:  textura=2;break;
 case 6: case 18: case 43:  textura=3;break;
 case 9: case 21: case 40:  textura=4;break;

 case 23: textura=5;break;

 case 33: if(continuar){this.tick=22;continuar=false;}break;

 case 52: textura=0;this.tick=0;nbtMercenaria.setBooleantag(drill, "animation",false);giro=false;break;
          }   }




}

//####################################################################################3		 
void inicializar(ItemStack drill){  //this do nothing for now

int munition=0;
int metadata=drill.getMetadata();

switch(metadata){
case 1: munition=munitionMax0/2;break;
case 2: munition=munitionMax0;break;
default:munition=0;break;
            	}

nbtMercenaria.setInttag(drill, "munition", munition);
nbtMercenaria.setBooleantag(drill, "animation", false);
nbtMercenaria.setBooleantag(drill, "liberar", false);
nbtMercenaria.setInttag(drill, "bulletClip", 0);
nbtMercenaria.setInttag(drill, "textura", 0);			


}
//####################################################################################3	 


public ItemStack onItemRightClick(ItemStack drill, World worldIn, EntityPlayer playerIn){


System.out.println("onItemRightClick");
playerIn.setItemInUse(drill, this.getMaxItemUseDuration(drill));

boolean animation=nbtMercenaria.getBooleantag(drill, "animation");	
if (!animation){	

System.out.println("if (!animation)");	
playerIn.setItemInUse(drill, this.getMaxItemUseDuration(drill));
int munition=nbtMercenaria.getInttag(drill,"munition");	

//if (munition>0){}


giro=true;
tick=0;
nbtMercenaria.setBooleantag(drill, "animation", true);
System.out.println("\n\n acivar");
	            
                }     


if (animation & giro){
continuar=true;	
                   	 }	


return drill;}
//############################################################################3
public int getMaxItemUseDuration(ItemStack stack)
{
    return 1;
}

public EnumAction getItemUseAction(ItemStack stack)
{
    return EnumAction.NONE;
}

//######################################################################################3	
@SideOnly(Side.CLIENT)
  public void addInformation(ItemStack drill, EntityPlayer player, List list, boolean aBoolean)
  {
int munition=nbtMercenaria.getInttag(drill, "munition");	

if((munition>9998)||(munition<0)){  //inicializar
	int metadata=drill.getMetadata();

	switch(metadata){
	case 1: munition=munitionMax0/2;break;
	case 2: munition=munitionMax0;break;
	default:munition=0;break;
	            	}

                                 }

String lore="redstone="+munition;	
String lore0="requiere suspencion de redstone para funcionar";

if(lore != "")
     {
        list.add(lore);
        list.add(lore0);
     }
  }

}//fin de la classe 

 

 

Link to comment
Share on other sites

  • 7 months later...

Hello everyone!

I found a very simple solution to this problem that has bothered me too.

In the class "ItemRender.java" in method "updateEquippedItem()" is an assignment to a variable named flag

flag = this.equippedItemSlot == entityclientplayermp.inventory.currentItem && itemstack == this.itemToRender;

To solve this problem, just replace that line with this

boolean flag;
if(itemstack == null) {
flag = this.equippedItemSlot == entityclientplayermp.inventory.currentItem && itemstack == this.itemToRender;
} else {
flag = this.equippedItemSlot == entityclientplayermp.inventory.currentItem && itemstack.itemID == this.itemToRender.itemID;
}

It worked, I'm using version 1.5.2.

 

Link to comment
Share on other sites

As said in the other post you posted on a old topic, your code is for 1.5. Now you can do it with Forge hooks. Nobody wants your code which they can't even use. It is for a MC version almost nobody uses anymore. And you posted on a topic made in February! Don't revive old threads like these anymore.

Don't PM me with questions. They will be ignored! Make a thread on the appropriate board for support.

 

1.12 -> 1.13 primer by williewillus.

 

1.7.10 and older versions of Minecraft are no longer supported due to it's age! Update to the latest version for support.

 

http://www.howoldisminecraft1710.today/

Link to comment
Share on other sites

Well, if you are using the latest build of Forge (or close to it) for 1.8, you can utilize the fix LexManos implemented a little while ago. Just override the method shouldCauseReequipAnimation() in your classes of the Item type and simply return false.

Development of Plugins [2012 - 2014] Development of Mods [2012 - Current]

Link to comment
Share on other sites

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...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Use Java 17 instead of java 21
    • By the way, the server says it pauses after it tells me done, I don't understand why.
    • C:\Users\Wil_Enp\Desktop\1>REM Forge requires a configured set of both JVM and program arguments. C:\Users\Wil_Enp\Desktop\1>REM Add custom JVM arguments to the user_jvm_args.txt C:\Users\Wil_Enp\Desktop\1>REM Add custom program arguments {such as nogui} to this file in the next line before the  or C:\Users\Wil_Enp\Desktop\1>REM  pass them to this script directly C:\Users\Wil_Enp\Desktop\1>java @user_jvm_args.txt @libraries/net/minecraftforge/forge/1.18.2-40.2.18/win_args.txt 2024-04-28 13:58:58,840 main WARN Advanced terminal features are not available in this environment [13:58:59] [main/INFO] [cp.mo.mo.Launcher/MODLAUNCHER]: ModLauncher running: args [--launchTarget, forgeserver, --fml.forgeVersion, 40.2.18, --fml.mcVersion, 1.18.2, --fml.forgeGroup, net.minecraftforge, --fml.mcpVersion, 20220404.173914] [13:58:59] [main/INFO] [cp.mo.mo.Launcher/MODLAUNCHER]: ModLauncher 9.1.3+9.1.3+main.9b69c82a starting: java version 21.0.2 by BellSoft [13:58:59] [main/INFO] [mixin/]: SpongePowered MIXIN Subsystem Version=0.8.5 Source=union:/C:/Users/Wil_Enp/Desktop/1/libraries/org/spongepowered/mixin/0.8.5/mixin-0.8.5.jar%2314!/ Service=ModLauncher Env=SERVER [13:58:59] [main/WARN] [ne.mi.fm.lo.mo.ModFileParser/LOADING]: Mod file C:\Users\Wil_Enp\Desktop\1\libraries\net\minecraftforge\fmlcore\1.18.2-40.2.18\fmlcore-1.18.2-40.2.18.jar is missing mods.toml file [13:58:59] [main/WARN] [ne.mi.fm.lo.mo.ModFileParser/LOADING]: Mod file C:\Users\Wil_Enp\Desktop\1\libraries\net\minecraftforge\javafmllanguage\1.18.2-40.2.18\javafmllanguage-1.18.2-40.2.18.jar is missing mods.toml file [13:58:59] [main/WARN] [ne.mi.fm.lo.mo.ModFileParser/LOADING]: Mod file C:\Users\Wil_Enp\Desktop\1\libraries\net\minecraftforge\lowcodelanguage\1.18.2-40.2.18\lowcodelanguage-1.18.2-40.2.18.jar is missing mods.toml file [13:58:59] [main/WARN] [ne.mi.fm.lo.mo.ModFileParser/LOADING]: Mod file C:\Users\Wil_Enp\Desktop\1\libraries\net\minecraftforge\mclanguage\1.18.2-40.2.18\mclanguage-1.18.2-40.2.18.jar is missing mods.toml file [13:58:59] [main/INFO] [ne.mi.fm.lo.mo.JarInJarDependencyLocator/]: No dependencies to load found. Skipping! [13:59:00] [main/INFO] [cp.mo.mo.LaunchServiceHandler/MODLAUNCHER]: Launching target 'forgeserver' with arguments [] [13:59:09] [modloading-worker-0/INFO] [ne.mi.co.ForgeMod/FORGEMOD]: Forge mod loading, version 40.2.18, for MC 1.18.2 with MCP 20220404.173914 [13:59:09] [modloading-worker-0/INFO] [ne.mi.co.MinecraftForge/FORGE]: MinecraftForge v40.2.18 Initialized [13:59:11] [main/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file C:\Users\Wil_Enp\Desktop\1\config\forge-common.toml is not correct. Correcting [13:59:11] [main/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key general was corrected from null to its default, SimpleCommentedConfig:{}. [13:59:11] [main/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key general.defaultWorldType was corrected from null to its default, default. [13:59:12] [Forge Version Check/INFO] [ne.mi.fm.VersionChecker/]: [forge] Starting version check at https://files.minecraftforge.net/net/minecraftforge/forge/promotions_slim.json [13:59:14] [Forge Version Check/INFO] [ne.mi.fm.VersionChecker/]: [forge] Found status: AHEAD Current: 40.2.18 Target: null [13:59:15] [main/ERROR] [minecraft/Settings]: Failed to load properties from file: server.properties [13:59:15] [main/INFO] [mojang/YggdrasilAuthenticationService]: Environment: authHost='https://authserver.mojang.com', accountsHost='https://api.mojang.com', sessionHost='https://sessionserver.mojang.com', servicesHost='https://api.minecraftservices.com', name='PROD' [13:59:15] [main/WARN] [minecraft/VanillaPackResources]: Assets URL 'union:/C:/Users/Wil_Enp/Desktop/1/libraries/net/minecraft/server/1.18.2-20220404.173914/server-1.18.2-20220404.173914-srg.jar%2341!/assets/.mcassetsroot' uses unexpected schema [13:59:15] [main/WARN] [minecraft/VanillaPackResources]: Assets URL 'union:/C:/Users/Wil_Enp/Desktop/1/libraries/net/minecraft/server/1.18.2-20220404.173914/server-1.18.2-20220404.173914-srg.jar%2341!/data/.mcassetsroot' uses unexpected schema [13:59:20] [main/WARN] [minecraft/Commands]: Ambiguity between arguments [teleport, location] and [teleport, destination] with inputs: [0.1 -0.5 .9, 0 0 0] [13:59:20] [main/WARN] [minecraft/Commands]: Ambiguity between arguments [teleport, location] and [teleport, targets] with inputs: [0.1 -0.5 .9, 0 0 0] [13:59:20] [main/WARN] [minecraft/Commands]: Ambiguity between arguments [teleport, destination] and [teleport, targets] with inputs: [Player, 0123, @e, dd12be42-52a9-4a91-a8a1-11c01849e498] [13:59:20] [main/WARN] [minecraft/Commands]: Ambiguity between arguments [teleport, targets] and [teleport, destination] with inputs: [Player, 0123, dd12be42-52a9-4a91-a8a1-11c01849e498] [13:59:21] [main/WARN] [minecraft/Commands]: Ambiguity between arguments [teleport, targets, location] and [teleport, targets, destination] with inputs: [0.1 -0.5 .9, 0 0 0] [13:59:23] [Worker-Main-18/INFO] [minecraft/RecipeManager]: Loaded 7 recipes [13:59:26] [Worker-Main-18/INFO] [minecraft/AdvancementList]: Loaded 1141 advancements [13:59:27] [Server thread/INFO] [minecraft/DedicatedServer]: Starting minecraft server version 1.18.2 [13:59:27] [Server thread/INFO] [minecraft/DedicatedServer]: Loading properties [13:59:27] [Server thread/INFO] [minecraft/DedicatedServer]: Default game type: SURVIVAL [13:59:27] [Server thread/INFO] [minecraft/MinecraftServer]: Generating keypair [13:59:27] [Server thread/INFO] [minecraft/DedicatedServer]: Starting Minecraft server on *:25565 [13:59:27] [Server thread/INFO] [minecraft/ServerConnectionListener]: Using default channel type [13:59:27] [Server thread/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file .\world\serverconfig\forge-server.toml is not correct. Correcting [13:59:27] [Server thread/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server was corrected from null to its default, SimpleCommentedConfig:{}. [13:59:27] [Server thread/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.removeErroringBlockEntities was corrected from null to its default, false. [13:59:27] [Server thread/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.removeErroringEntities was corrected from null to its default, false. [13:59:27] [Server thread/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.fullBoundingBoxLadders was corrected from null to its default, false. [13:59:27] [Server thread/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.zombieBaseSummonChance was corrected from null to its default, 0.1. [13:59:27] [Server thread/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.zombieBabyChance was corrected from null to its default, 0.05. [13:59:27] [Server thread/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.treatEmptyTagsAsAir was corrected from null to its default, false. [13:59:27] [Server thread/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.skipEmptyShapelessCheck was corrected from null to its default, true. [13:59:27] [Server thread/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.fixAdvancementLoading was corrected from null to its default, true. [13:59:27] [Server thread/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.permissionHandler was corrected from null to its default, forge:default_handler. [13:59:27] [Server thread/INFO] [minecraft/DedicatedServer]: Preparing level "world" [13:59:31] [Server thread/INFO] [minecraft/MinecraftServer]: Preparing start region for dimension minecraft:overworld [13:59:32] [Worker-Main-24/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 0% [13:59:32] [Worker-Main-22/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 0% [13:59:32] [Worker-Main-27/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 0% [13:59:33] [Worker-Main-28/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 1% [13:59:33] [Worker-Main-18/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 4% [13:59:34] [Worker-Main-29/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 6% [13:59:34] [Worker-Main-16/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 9% [13:59:35] [Worker-Main-29/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 12% [13:59:35] [Worker-Main-19/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 15% [13:59:36] [Worker-Main-26/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 19% [13:59:36] [Worker-Main-30/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 24% [13:59:37] [Worker-Main-19/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 30% [13:59:37] [Worker-Main-23/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 33% [13:59:38] [Worker-Main-20/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 39% [13:59:38] [Worker-Main-26/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 44% [13:59:39] [Worker-Main-18/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 49% [13:59:39] [Worker-Main-26/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 54% [13:59:40] [Worker-Main-30/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 58% [13:59:40] [Worker-Main-30/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 63% [13:59:41] [Worker-Main-23/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 68% [13:59:41] [Worker-Main-16/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 72% [13:59:42] [Worker-Main-29/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 77% [13:59:42] [Worker-Main-16/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 84% [13:59:43] [Worker-Main-19/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 88% [13:59:43] [Worker-Main-24/INFO] [minecraft/LoggerChunkProgressListener]: Preparing spawn area: 93% [13:59:44] [Server thread/INFO] [minecraft/LoggerChunkProgressListener]: Time elapsed: 12446 ms [13:59:44] [Server thread/INFO] [minecraft/DedicatedServer]: Done (16.942s)! For help, type "help" [13:59:44] [Server thread/INFO] [ne.mi.se.pe.PermissionAPI/]: Successfully initialized permission handler forge:default_handler stop [13:59:53] [Server thread/INFO] [minecraft/DedicatedServer]: Stopping the server [13:59:53] [Server thread/INFO] [minecraft/MinecraftServer]: Stopping server [13:59:53] [Server thread/INFO] [minecraft/MinecraftServer]: Saving players [13:59:53] [Server thread/INFO] [minecraft/MinecraftServer]: Saving worlds [13:59:53] [Server thread/INFO] [minecraft/MinecraftServer]: Saving chunks for level 'ServerLevel[world]'/minecraft:overworld [13:59:54] [Server thread/INFO] [minecraft/MinecraftServer]: Saving chunks for level 'ServerLevel[world]'/minecraft:the_end [13:59:54] [Server thread/INFO] [minecraft/MinecraftServer]: Saving chunks for level 'ServerLevel[world]'/minecraft:the_nether [13:59:54] [Server thread/INFO] [minecraft/MinecraftServer]: ThreadedAnvilChunkStorage (world): All chunks are saved [13:59:54] [Server thread/INFO] [minecraft/MinecraftServer]: ThreadedAnvilChunkStorage (DIM1): All chunks are saved [13:59:54] [Server thread/INFO] [minecraft/MinecraftServer]: ThreadedAnvilChunkStorage (DIM-1): All chunks are saved [13:59:54] [Server thread/INFO] [minecraft/MinecraftServer]: ThreadedAnvilChunkStorage: All dimensions are saved C:\Users\Wil_Enp\Desktop\1>pause Press any key to continue . . .     I've been trying to solve this for days, what is the error?
    • Add crash-reports with sites like https://paste.ee/ and paste the link to it here There is an issue with spectrelib - try other builds or remove this mod and the mods requiring it
  • Topics

×
×
  • Create New...

Important Information

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