Проблема отрисовки текстуры блока

Знаю этот канал) Надо будет повнимательнее посмотреть...спасибо за подсказку)
 
Сделал все в точности по уроку и ...получилось.
Но есть проблема с нелокализированным именем блоков..

Вот создал блок:
Код:
public static Block brickColoredClay;

brickColoredClay = new BrickColoredClay().setBlockName("Bricks");

GameRegistry.registerBlock(brickColoredClay,ItemBrickColoredClay.class, brickColoredClay.getUnlocalizedName().substring(5));

А вот ItemBrickColoredClay.class
Код:
import net.minecraft.block.Block;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
public class ItemBrickColoredClay extends ItemBlock{
 final static String[] subBlocks = new String[]{"blackClay","blueClay","brownClay","cyanClay","grayClay","greenClay","lightBlueClay","limeClay","magnetaClay","orangeClay","pinkClay","purpleClay","redClay","silverClay","whiteClay","yellowClay"};
 
 public ItemBrickColoredClay(Block block) {
  super(block);
  
  this.setHasSubtypes(true);
 }
 
 public String getUnlocalizetName(ItemStack itemstack){
  int i = itemstack.getItemDamage();
  if(i < 0 || i >= subBlocks.length){
   i = 0;
  }
  return super.getUnlocalizedName() + "." + subBlocks[i];
  
 }
 public int getMetadata(int meta){
  return meta;
 }
 
}


В игре, по идее, у блоков должно показываться такое имя: 
tile.Bricks.blackClay.name, tile.Bricks.blueClay.name       и тд... 
но показывает так:
tile.Bricks.name  у всех 16-ти блоков.


Сам туториал 3 раза пересмотрел на наличие у меня ошибок, сам пробовал исправлять, ничего не получается.
Не подскажете в чем проблема?

[merge_posts_bbcode]Добавлено: 05.07.2016 14:11:21[/merge_posts_bbcode]

Текстуры отображает правильно
 
769
1
42
Вот это
Код:
final static String[] subBlocks = new String[]{"blackClay","blueClay","brownClay","cyanClay","grayClay","greenClay","lightBlueClay","limeClay","magnetaClay","orangeClay","pinkClay","purpleClay","redClay","silverClay","whiteClay","yellowClay"};

И есть названия твоих блоков. В регистрации не нужно давать имя, т. к. это метадата. Попробуй написать так:
Код:
public static Block brickColoredClay;

brickColoredClay = new BrickColoredClay(2500);//лучше с ID, поэтому и поставил

GameRegistry.registerBlock(brickColoredClay, ItemBrickColoredClay.class, "brickColoredClay");
[merge_posts_bbcode]Добавлено: 05.07.2016 14:50:47[/merge_posts_bbcode]

Если не ошибаюсь, то вот это "brickColoredClay" должно отображаться в имени твоих блоков
 
tile.null.name в итоге
[merge_posts_bbcode]Добавлено: 05.07.2016 15:53:36[/merge_posts_bbcode]

А вот я сделал цикл крафта блоков с метадатой..
Код:
public void brickColoredClayCrafter(){
  for(int i = 0; i < subBlocks.length; i++ ){
   GameRegistry.addShapelessRecipe(new ItemStack(MainSB.brickColoredClay, 1, i), new Object[] 
     {new ItemStack(Blocks.stained_hardened_clay,1,i),new ItemStack(MainSB.brickPattern, 1, OreDictionary.WILDCARD_VALUE), new ItemStack(MainSB.toolChisel, 1, OreDictionary.WILDCARD_VALUE)});
      
  }
 }
 
Попробовал сделать так:
Код:
final static String[] subBlocks = new String[]{"whiteClay","orangeClay","magnetaClay","lightblueClay","yellowClay","limeClay","pinkClay","grayClay","silverClay","cyanClay","purpleClay","blueClay","brownClay","greenClay","redClay","blackClay"};



for(int i = 0; i < subBlocks.length; i++){
      brickColoredClay = new BrickColoredClay().setBlockName("brick_" + subBlocks[i]);

все равно не получается,
все блоки называются brick_blackClay
 
1,137
5
3
EssenXmax написал(а):
Код:
import net.minecraft.block.Block;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
public class ItemBrickColoredClay extends ItemBlock{
 final static String[] subBlocks = new String[]{"blackClay","blueClay","brownClay","cyanClay","grayClay","greenClay","lightBlueClay","limeClay","magnetaClay","orangeClay","pinkClay","purpleClay","redClay","silverClay","whiteClay","yellowClay"};
 
 public ItemBrickColoredClay(Block block) {
  super(block);
  
  this.setHasSubtypes(true);
 }
 
 public String getUnlocalizetName(ItemStack itemstack){
  int i = itemstack.getItemDamage();
  if(i < 0 || i >= subBlocks.length){
   i = 0;
  }
  return super.getUnlocalizedName() + "." + subBlocks[i];
  
 }
 public int getMetadata(int meta){
  return meta;
 }
 
}
Не подскажете в чем проблема?
Здесь всё верно. За исключением метода getUnlocalizetNamу
 
Что именно там не верно?
 
1,239
2
24
у меня так
Код:
public static ItemStack getName(String name, int count) {
 int ind = -1;
 for (int i = 0; i < subBlocks.length; i++) {
 if (subBlocks.equals(name)) {
 ind = i;
 break;
 }
 }
 return new ItemStack(ссылка на переменную блока(там где регаешь) , count, index);
}
 
Ничего не работает и не понимаю почему..
[merge_posts_bbcode]Добавлено: 05.07.2016 22:08:04[/merge_posts_bbcode]

Вот код еще раз
Код:
public static Block brickColoredClay;
    final static String[] subBlocks = new String[]{"whiteClay","orangeClay","magnetaClay","lightblueClay","yellowClay","limeClay","pinkClay","grayClay","silverClay","cyanClay","purpleClay","blueClay","brownClay","greenClay","redClay","blackClay"};


brickColoredClay = new BrickColoredClay().setBlockName("subBlocks");


brickColoredClay = new BrickColoredClay().setBlockName("subBlocks");

BrickColoredClay.class
Код:
public class BrickColoredClay extends Block{
 @SideOnly(Side.CLIENT)
 private IIcon[] texture;
 
 final static String[] subBlocks = new String[]{"whiteClay","orangeClay","magnetaClay","lightblueClay","yellowClay","limeClay","pinkClay","grayClay","silverClay","cyanClay","purpleClay","blueClay","brownClay","greenClay","redClay","blackClay"};
 
 public BrickColoredClay() {
  super(Material.rock);
  
  this.setCreativeTab(MainSB.tabShapedBlocks);
  this.setHardness(3.5F);
 
 
 }
 
 @SideOnly(Side.CLIENT)
 public void registerBlockIcons(IIconRegister iconRegister){
  texture = new IIcon[subBlocks.length];
  for (int i = 0; i < subBlocks.length; i++){
   texture[i] = iconRegister.registerIcon(MainSB.MODID +":" + "brick_" + subBlocks[i]);
  }
 }
 
 @SideOnly(Side.CLIENT)
 public void getSubBlocks(Item block, CreativeTabs creativeTabs, List list){
  for(int i=0; i<subBlocks.length; i++){
   list.add(new ItemStack(block, 1, i));
  }
 }
 @SideOnly(Side.CLIENT)
 public IIcon getIcon(int side, int meta){
  return texture[meta];
 }
 
 public int damageDropped(int meta){
  return meta;
 }
 
}

[merge_posts_bbcode]Добавлено: 05.07.2016 22:09:28[/merge_posts_bbcode]

Код:
public class ItemBrickColoredClay extends ItemBlock{
 final static String[] subBlocks = new String[]{"whiteClay","orangeClay","magnetaClay","lightblueClay","yellowClay","limeClay","pinkClay","grayClay","silverClay","cyanClay","purpleClay","blueClay","brownClay","greenClay","redClay","blackClay"};
 
 public ItemBrickColoredClay(Block block) {
  super(block);
  
  this.setHasSubtypes(true);
 }
 
 
 
 
 
 public String getUnlocalizetName(ItemStack itemstack){
  
  
  
  int i = itemstack.getItemDamage();
  if(i < 0 || i >= subBlocks.length){
   i = 0;
  }
  return super.getUnlocalizedName() + "." + subBlocks[i];
  
 }
 public int getMetadata(int meta){
  return meta;
 }
 
}

[merge_posts_bbcode]Добавлено: 05.07.2016 22:10:17[/merge_posts_bbcode]

ну пол дня убил на решение этой проблемы..от туториалов голова уже болит
и ничего не помогает
 
769
1
42
Блин, давай я покажу тебе как сделал я.
Регистрация
Код:
/**
    Vacuum Horizon[1.6.4]
    Addon for Galacticraft 2 by @RonFall
 */

package vacuum.planets.core;

public class PlanetsBlocks {

public static Block planetTop;

public static void initBlocks() {       
  planetTop = new PlanetsBlockTop(3200);
}
public static void registerBlocks() {
  GameRegistry.registerBlock(planetTop, PlanetsTop.class, "planetTop");
}
}
Блок
Код:
/**
    Vacuum Horizon[1.6.4]
    Addon for Galacticraft 2 by @RonFall
 */

package vacuum.planets.blocks;

import java.util.List;

import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Icon;
import vacuum.core.VacuumHorizon;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;

public class PlanetsBlockTop extends Block {

    public static final String[] top = new String[] {
        "top_Mercury",
        "top_Venus",
        "top_Ceres",
        "top_Pluto",
        "top_Makemake",
        "top_Eris"
    };

    @SideOnly(Side.CLIENT)
    private Icon[] icon_array;

    public PlanetsBlockTop(int id) {
        super(id, Material.rock);
        setCreativeTab(VacuumHorizon.Blocks);
        setHardness(1.5F);
        setResistance(0.5F);
        setTextureName(VacuumHorizon.TEXTURE + ":top");
        setUnlocalizedName("block");
    }

    @Override
    public int damageDropped(int metadata) {
        return metadata;
    }

    @SideOnly(Side.CLIENT)
    public Icon getIcon(int side, int metadata) {
        if (metadata >= 0 && metadata < PlanetsBlockTop.top.length) {
            return icon_array[metadata];
        }
        return super.getIcon(side, metadata);
    }

    @SideOnly(Side.CLIENT)
    public void getSubBlocks(int id, CreativeTabs table, List list) {
        for (int j = 0; j < top.length; ++j) {
            list.add(new ItemStack(id, 1, j));
        }
    }

    @SideOnly(Side.CLIENT)
    public void registerIcons(IconRegister ir) {
        super.registerIcons(ir);
        icon_array = new Icon[top.length];
        for (int i = 0; i < top.length; ++i) {
            icon_array[i] = ir.registerIcon(getTextureName() + "/" + top[i]);
        }
    }

}
[merge_posts_bbcode]Добавлено: 05.07.2016 22:17:51[/merge_posts_bbcode]

ИтемБлок
Код:
/**
    Vacuum Horizon[1.6.4]
    Addon for Galacticraft 2 by @RonFall
 */

package vacuum.planets.items.itemBlock;

import net.minecraft.item.ItemMultiTextureTile;
import vacuum.planets.blocks.PlanetsBlockTop;
import vacuum.planets.core.PlanetsBlocks;

public class PlanetsTop extends ItemMultiTextureTile {

    public PlanetsTop(int id) {
        super(id, PlanetsBlocks.planetTop, PlanetsBlockTop.top);
    }

}
 
имя в игре у блоков теперь tile.bricks.blackClay.name  (и всех остальных цветов как я и хотел), но теперь текстура пропала..бред:lol: :lol:
Ладно,буду завтра дальше разбираться..всем большое спасибо за помощь!!
[merge_posts_bbcode]Добавлено: 05.07.2016 23:27:18[/merge_posts_bbcode]

Только что решил все вопросы..еще раз всем спасибо огромное)
 
Уже наверно заколебал со своими вопросами, но на ближайшее время это последний:)
Не локализируется имя в игре (к примеру):
Код:
itemGroup.Shaped Blocks = Shaped Blocks
item.toolChisel.name = Chisel
tile.brick.whiteClay.name = White Stained Clay (Brick)
Файл en_US.lang находится в пакете assets.mod.lang в папке scr/main/recources
Все нелокализированные имена написаны правильно (сверил с кодом и в самой игре)
Название самого файла вроде правильное
MODID в главном классе соответствует MODID в названии пакета

Какие еще могут быть проблемы, о которых я не знаю, из-за которых локализация не работает?
Подскажите пожалуйста!
 
1,976
68
220
без пробелов
[merge_posts_bbcode]Добавлено: 06.07.2016 13:04:15[/merge_posts_bbcode]

оно переводит "item.toolChisel.name ", а такого нет
 
Вот я лупень блин, точно! И все заработало) Спасибо)
 
Что за бред с компиляцией?
E:\Programing\Mod Creating\ShapedBlocks (EX) 1.7.10>gradlew.bat build pause
****************************
 Powered By MCP:
 http://modcoderpack.com/
 Searge, ProfMobius, Fesh0r,
 R4wk, ZeuX, IngisKahn, bspkrs
 MCP Data version : unknown
****************************
FAILURE: Build failed with an exception.
* What went wrong:
Task 'pause' not found in root project 'ShapedBlocks (EX) 1.7.10'.
* Try:
Run gradlew tasks to get a list of available tasks. Run with --stacktrace option to get the stack trace. Run with --info                                                                                                                        or                                                                                                                     --debug                                                                                                                  option to get more log output.
BUILD FAILED
Total time: 12.867 secs
E:\Programing\Mod Creating\ShapedBlocks (EX) 1.7.10>
 
Сверху