Блок с 1 стороной.

Статус
В этой теме нельзя размещать новые ответы.
252
0
Всем Привет!
Делаю Мультитекстуру, но что то не догоняю никак, как поставить на нее текстурку, а если быть точнее то на 0 сторону...Что бы я не делал никак не выходит

IO7apHs3gK4.jpg
  
BpAshKgf0As.jpg
 вот так.
Код:
package ru.rockmod;

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.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.util.IIcon;

public class BlockROCK extends Block {
    public BlockROCK() {
        super(Material.rock);
        this.setCreativeTab(CreativeTabs.tabBlock);
        this.setBlockName("Rock");
        this.setHardness(1F);
        this.setResistance(2F);
        this.setHarvestLevel("pickaxe", 0);
        this.setLightLevel(0F);
        this.setBlockTextureName(Main.MODID + ":" + 22);


    }
    public Block setUnlocalizedName(String string){
     return null; }
        
     public IIcon[] icons = new IIcon[6];
     @Override
     public void registerBlockIcons(IIconRegister reg) {
         for (int i = 0; i < 6; i ++) {
             this.icons[i] = reg.registerIcon(this.textureName + "BlockROCK_22" + i);
            
             }
         }     @Override
     public IIcon getIcon(int side, int meta) {
                return this.icons[side];
            }}
 
1,976
68
220
Код:
> return null

-_-
Полностью краш кинь
[merge_posts_bbcode]Добавлено: 17.05.2016 12:36:12[/merge_posts_bbcode]

И что за дурацкий способ присвоения через цикл с 6ю строками вместо одной? Ты где такое нашёл?

[merge_posts_bbcode]Добавлено: 17.05.2016 12:37:09[/merge_posts_bbcode]

Ты так уверенно говоришь чем вызвана проблема, как будто знаешь. Хотя эта проблема вообще не связана с ошибками в каких-то там текстурах
 

mayakplay

SpringFlomaster
217
3
160
Код:
 @Override
    public void registerBlockIcons(IIconRegister reg) {
         for (int i = 0; i < 6; i ++) {
            this.icons[i] = (IIconRegister) reg.registerIcon(this.textureName + "_" + i);
         }
    }

Я вижу проблему в этом. По идее твои текстуры должны называться "name_(0-5)"
Также не понимаю, зачем тебе цикл, где 6 одинаковых строчек)
 
252
0
Торопился, забыл написать что мне надо использовать 1 сторону, на картинках это "0". Как мне это прописать?
 
1,976
68
220
IvanTur написал(а):
Торопился, забыл написать что мне надо использовать 1 сторону, на картинках это "0". Как мне это прописать?
Ты хочешь сказать, что ты пытаешь из МУЛЬТИТЕКСТУРЫ сделать ОДНООБРАЗНУЮ?!
[merge_posts_bbcode]Добавлено: 17.05.2016 22:03:40[/merge_posts_bbcode]

Код:
this.setTextureName(ModInfo.ModID + "Камушек");
 

timaxa007

Модератор
5,831
409
672
Код:
@Override
public IIcon getIcon(int side, int meta) {
    switch(side) {
    case 0:return this.icons[side];
    default:return super.getIcon(side, meta);
    }
}
 
252
0
Я еще смотрел в коде TFC. Мне надо по подобию как там же, камушки лежат на земле, кликаешь и они у тебя в инвентаре, но Если у меня это БЛОК то там это Item, есть ли там какая то разница?
 
1,137
5
3
>>но Если у меня это БЛОК то там это Item, есть ли там какая то разница
Что за, простите, ты хуйню сказал? В тфс свой рендер, скорее всего. Рисуется предмет, это просто. Тем более, тфс на гитхабе есть
 
252
0
Я даже на американских сайтах сидел, делал все по учебнику тоже не помогло...
Изменения были только в одном. Когда я разрушаю блок то из него выходят чистички лавы! А так же досих пор блок не отображается( 
Сам блок 
Код:
package ru.rockmod;

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.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.util.IIcon;

public class rockBlock extends Block {

    public rockBlock() {
        super(Material.rock);
        this.setCreativeTab(CreativeTabs.tabBlock);
        this.setBlockName("rock");
        this.setHardness(1F);
        this.setResistance(1F);
        this.setHarvestLevel("pickaxe", 0);
        this.setLightLevel(0F);
        
    }

        public IIcon[] icons = new IIcon[6];
    
        @Override
        public void registerBlockIcons(IIconRegister reg) {
            for (int i = 0; i < 6; i ++) {
                this.icons[i] = reg.registerIcon(this.textureName + "rockmod_0..5" + i);}}
            
        @Override
        public IIcon getIcon(int side, int meta) {
            switch(side) {
            case 0:return this.icons[side];
            default:return super.getIcon(side, meta);
            }
        }
            }

Main
Код:
package ru.rockmod;

import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.registry.GameRegistry;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;


@Mod(modid = Main.MODID, name = Main.NAME, version = Main.VERSION)
public class Main {
    

    public static final String
    MODID = "rockmod",
    NAME = "RockMod",
    VERSION = "0.9.2"
    ;



    @Mod.Instance(MODID) public static Main instance;

    @SidedProxy(serverSide= "ru.rockmod.ProxyCommon" , clientSide= "ru.rockmod.ProxyClient")
    public static ProxyCommon proxy;

 
    public static Block rock;

        
    @Mod.EventHandler
    public void preInit(cpw.mods.fml.common.event.FMLPreInitializationEvent event){
         
         rock = new rockBlock();
        GameRegistry.registerBlock(rock, "rockBlock");

            }
}
 
252
0
Закрывайте,  для меня еще не понятно....я нашел другой путь решения
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху