[1.5.2] Создание моба, лука и печки.

Статус
В этой теме нельзя размещать новые ответы.
17
0
В этой теме буду спрашивать все, в чем сам не разобрался.

1. Учусь создавать мобов, все норм, яйцо спавна есть, моб спавнится в мире, но нет текстуры.
Порылся по нескольким гайдам и везде по разному.

Вот несколько вариантов (тут как у меня):
Код:
public class EntityBandit extends EntityMob
{
public EntityBandit(World par1World)
{
super(par1World);
this.texture = "m4Name/BigCraftMod:bandit1.png";

Вот из новой темы этого форума для 1.6.4: http://forum.mcmodding.ru/viewtopic.php?id=6
Код:
private static final ResourceLocation Your_Texture = new ResourceLocation("textures/entity/steve.png");
Подскажите что подкоректировать для отображения текстуры. Ни один из вариантов выше не работают.

2. Создан лук, есть текстуры, но!, он не проигрывает их поочереди:
Код:
public static final String[] bowPullIconNameArray = new String[] {"bowArtefact", "bowArtefact_pull_0", "bowArtefact_pull_1", "bowArtefact_pull_2"};

3. Пытаюсь создать печку, вот пара ошибок, не в курсе что делать и как исправить:
(Брал за пример с версии 1.5.1, т.к других примеров не нашел)

а. В файле TileEntityIronFurnace ругается на название:
Код:
public class TileEntityIronFurnace extends TileEntity implements ISidedInventory, net.minecraftforge.common.ISidedInventory

б. Ниже ругается на:
Код:
if (item instanceof ItemHoe && ((ItemHoe) item).func_77842_f().equals("WOOD")) return 200;

в. В классе Iron Furnace Recipes черкает запятые после HashMap
Код:
    private Map smeltingList = new HashMap();
    private Map experienceList = new HashMap();
    private HashMap, ItemStack> metaSmeltingList = new HashMap, ItemStack>();
    private HashMap, Float> metaExperience = new HashMap, Float>();

г. Чуть ниже в этом же классе орёт на meta Smelting List. и meta Experience.:
Код:
public void addSmelting(int itemID, int metadata, ItemStack itemstack, float experience)
    {
            metaSmeltingList.put(Arrays.asList(itemID, metadata), itemstack);
            metaExperience.put(Arrays.asList(itemID, metadata), experience);
    }

Тему прошу не удалять и не закрывать, пока не закончу разбираться с созданием мобов.
 
2,955
12
Насчет ресурсов моба:
пишешь:
Код:
private static final ResourceLocation Your_Texture = new ResourceLocation(ModInfo.modId,"textures/entity/steve.png");

Таким образом кидаешь текстуру steve.png в assets/твойМод/textures/entity/
3.
Код:
public class TileEntityIronFurnace extends TileEntity implements ISidedInventory

Вот так должно быть. А дальше тут скорей всего должно быть так:
Код:
 if (item instanceof ItemHoe && ((ItemHoe) item).getMaterialName().equals("WOOD")) return 200;
4. 
Ты же говоришь, что создаешь мап, а сам создаешь HashMap. Тут наврено тебе нужна HashMap. То есть не Map что_то_там = new HashMap(), а HashMap что_то_там = new HashMap.
 
771
5
HashMap реализует Map, так что разницы нет вообще.
Аналогично с листом: List l = new ArrayList();
А орет потому что ты слепой, и не заметил, что не хватает <>:
Код:
private HashMap<ItemStack> metaSmeltingList = new HashMap<ItemStack>();
private HashMap<Float> metaExperience = new HashMap<Float>();
 
17
0
1. Dragon, ты ведь пишешь как и в уроке для 1.6.4, а мне нужно для 1.5.2
Код:
private static final ResourceLocation Your_Texture = new ResourceLocation(ModInfo.modId,"textures/entity/steve.png");
Таким образом кидаешь текстуру steve.png в assets/твойМод/textures/entity/


3.а. от удаления: net.minecraftforge.common.ISidedInventory вот тут:
Код:
public class TileEntityIronFurnace extends TileEntity implements ISidedInventory, net.minecraftforge.common.ISidedInventory
ничего не меняется, все равно ругается на TileEntityIronFurnace

3.в. f1rSt1k, сделал как ты сказал:
Код:
private HashMap<ItemStack> metaSmeltingList = new HashMap<ItemStack>();
private HashMap<Float> metaExperience = new HashMap<Float>();
но теперь ругается на: HashMap
 
771
5
m4Name написал(а):
1. Dragon, ты ведь пишешь как и в уроке для 1.6.4, а мне нужно для 1.5.2
Код:
private static final ResourceLocation Your_Texture = new ResourceLocation(ModInfo.modId,"textures/entity/steve.png");
Таким образом кидаешь текстуру steve.png в assets/твойМод/textures/entity/


3.а. от удаления: net.minecraftforge.common.ISidedInventory вот тут:
Код:
public class TileEntityIronFurnace extends TileEntity implements ISidedInventory, net.minecraftforge.common.ISidedInventory
ничего не меняется, все равно ругается на TileEntityIronFurnace

3.в. f1rSt1k, сделал как ты сказал:
Код:
private HashMap<ItemStack> metaSmeltingList = new HashMap<ItemStack>();
private HashMap<Float> metaExperience = new HashMap<Float>();
но теперь ругается на: HashMap
Импорт делай.
 
17
0
Вот что выдает в TileEntityIronFurnace:
2.jpg


В классе IronFurnaceRecipes:
1.jpg

Чуть ниже:
3.jpg
 
2,955
12
Ну тебе же пишут.. Add unimplemented methods... ДОБАВИТЬ МЕТОДЫ ИЗ АБСТРАКТА.
Ты не пробовал нажимать на варианты?
 
17
0
Dragon2488 написал(а):
Ну тебе же пишут.. Add unimplemented methods... ДОБАВИТЬ МЕТОДЫ ИЗ АБСТРАКТА.
Ты не пробовал нажимать на варианты?
Ок, а как быть с остальными ошибками?

metaSmeltingList исправил: change to SmeltingList, вроде все норм, но вот с metaExperience не выходит.

4.jpg


Да и с HashMap ничего и не решил
 
17
0
Dragon2488 написал(а):
А ты вообще откуда берешь эту мету?
Из урока взял весь код, теперь вот допилил сам покуда смог, далее осталась пара этих ошибок и все. (урок этот для 1.5.1 версии, если что)
 
m4Name написал(а):
1. Dragon, ты ведь пишешь как и в уроке для 1.6.4, а мне нужно для 1.5.2
Код:
private static final ResourceLocation Your_Texture = new ResourceLocation(ModInfo.modId,"textures/entity/steve.png");
Таким образом кидаешь текстуру steve.png в assets/твойМод/textures/entity/
И на 1.5.2 должно подойти. Ты ведь текстуру не в рендере моба ставишь. А она должна быть там. На 1.6 точно.
 

timaxa007

Модератор
5,831
409
672
Ты пробовал это:
Код:
this.loadTexture("/mods/mod_id/textures/mobs/bandit.png");
? (Если не поможет, то есть ещё два варианта.)
 
17
0
Получилось вот так, но не в рендере:
6.jpg


И текстура на мобе простого стива, хотя для теста поставил текстуру зомби.
Если что отвечу завтра, ушел спать.
 

timaxa007

Модератор
5,831
409
672
m4Name, удачи тебе в изучении. (Она тебе точно пригодиться)
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху