Създавам много основно разширение на ItemBow
. В момента просто се опитвам да сменя текстурите за моя нов лък. Имам иконата за "готовност", работеща правилно, но когато стрелям с лък, не получавам иконите за "дърпане", които да преминават през анимацията.
По-долу е малък скрийнкаст на липсата на анимация. Както можете да видите, иконата "готовност" присъства през целия кадър. Анимацията никога не преминава през 3-те икони за "дърпане".
http://screencast-o-matic.com/watch/c2lfr0e0Ze
Ето моят клас:
package com.swatkins.firstmod;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemBow;
import net.minecraft.util.IIcon;
public class DiamondBow extends ItemBow {
public static final String[] bowPullIconNameArray = new String[] {"diamond_bow_pulling_0", "diamond_bow_pulling_1", "diamond_bow_pulling_2"};
@SideOnly(Side.CLIENT)
private IIcon[] iconArray;
public DiamondBow()
{
setUnlocalizedName(FirstMod.MODID + "_" + "diamond_bow");
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister p_94581_1_)
{
this.itemIcon = p_94581_1_.registerIcon(FirstMod.MODID + ":" + "diamond_bow_standby");
this.iconArray = new IIcon[bowPullIconNameArray.length];
for (int i = 0; i < this.iconArray.length; ++i)
{
this.iconArray[i] = p_94581_1_.registerIcon(FirstMod.MODID + ":" + bowPullIconNameArray[i]);
}
}
}
Знам, че има метод getItemIconForUseDuration
, но той никога не се извиква, когато задържите десния бутон на мишката, за да стреляте с лъка. Опитах също да внедря метод getIcon
, но той също не се извиква.
Може ли някой да ми помогне да накарам тази анимация да работи? Оценявам вашата помощ!
FYI: Публикувах това във форумите на minecraft forge, но там изглежда мъртво.