Проблема с создание блока

31
0
Пытаюсь создать блок, но когда пишу setCreativeTabs(rpgMod.TestTab) или setBlockName(rpgMod.MODID....) ругается на rpgMod.
import assets.blocks.TestBlock;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;

@Mod(modid=rpgMod.MODID, name=rpgMod.NAME, version=rpgMod.VERSION)
public class rpgMod {
    public static final String MODID = "rpgmod";
    public static final String NAME = "rpg Mod";
    public static final String VERSION = "1.0.0";

    public static CreativeTabs testTab = new CreativeTabs("TestTab") {
        @SideOnly(Side.CLIENT)
        public Item getTabIconItem() {
            return Item.getItemFromBlock(Blocks.anvil);
        }
    };

    public static Block TestBlock;

    @EventHandler
    public void init(FMLInitializationEvent e){

    }
    @EventHandler
    public void preInit(FMLPreInitializationEvent e){
        TestBlock = new TestBlock(Material.rock);
        GameRegistry.registerBlock(TestBlock, "testblock");

    }

}
package assets.blocks;

import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;

public class TestBlock extends Block {
    public TestBlock (Material material){
        super(material);
        setCreativeTab(CreativeTabs.tabBlock);
        setBlockName(rpgMod.MODID + "." + "testblock");
    }
}
 
Ctrl+Shift+O (или Source - Organize Imports).
Пусть за кривые пакейджи тебя убивают другие.
 
Структура пакета нарушена дважды:1. Мод в папке assets
2. Не придерживаешься условных правил формирования пакетов.
Отгадай почему пакет майнкрафта net.minecraft потому что их сайт minecraft.net
Долго рассказывать, читай книжки и смотри видеоуроки.
 
Импортни класс, как сказал олдесткон.
Еще несколько ошибочек:
1. Классы всегда должны быть с большой буквы.
2. Пакеты всегда должны быть с маленькой буквы.
3. Поля всегда  должны быть с маленькой буквы.
4. НУ НЕ ПИХАЙТЕ ВЫ МОД В АССЕТС. АССЕТС - ПАПКА ДЛЯ РЕСУРСОВ МОДА, НЕ ДЛЯ КОДА.
 
Все все, ребят, успокойтесь. "Все мы не святые". Я ведь только на начальном уровне. Сейчас все исправлю. И использую IDEA.
[merge_posts_bbcode]Добавлено: 03.11.2014 15:37:00[/merge_posts_bbcode]

Изменил, но проблема то осталась.
1d6420c27378.png
 
Мы сейчас как бы говорим, как исправить setBlockName(RpgMod.MODID... чтобы работало.
 
мда, кстати, вопрос: если у мя мод в отдельном проекте, как мне его для выпуска компилить через gradle?
 
Назад
Сверху