Вопросы от новичка

Статус
В этой теме нельзя размещать новые ответы.
Я уже убрал часть красноты в коде)
 
Хмм. Как на версию 1.7 портировать этот код:
Код:
public boolean generate(World world, Random rand, int i, int j, int k)
       {
              if(world.getBlock(i, j, k)!= Block.grass.blockID || world.getBlock(i, j + 1, k)!= 0)
              {
                     return false;
              }
              world.setBlock(i, j, k, Block.chest.blockID, 0, 2);
              TileEntityChest tileentitychest = (TileEntityChest)world.getTileEntity(i, j, k);
              if (tileentitychest != null){
                  WeightedRandomChestContent.generateChestContents(rand, ChestGenHooks.getItems(ChestGenHooks.DUNGEON_CHEST, rand), tileentitychest, ChestGenHooks.getCount(ChestGenHooks.DUNGEON_CHEST, rand));
              }
              return true;
              }
[merge_posts_bbcode]Добавлено: 12.10.2014 16:23:57[/merge_posts_bbcode]

А именно как получать блоки?
 
В общем я почти портировал свой мод на 1.7, но возникли дополнительные вопросы:
Код:
MinecraftForge.setBlockHarvestLevel(umblock, "pickaxe", 2);
что-то я не могу найти аналог этого действия на 1.7
Часть кода из моего генератора руд:
Код:
for(int i = 0; i < 5; i++)
{
int randPosX=chunkX + random.nextInt(16);
int randPosY=random.nextInt(62);
int randPosZ=chunkZ + random.nextInt(16);
new WorldGenMinable(uranium,3).generate(world, random, randPosX, randPosY, randPosZ);
}
Ругаеться на uranium.
Выше была переменная:
Код:
int uranium = IC2Items.getItem("uraniumOre").blockID;
Т.к.  blockID больше не нужен я его стер и еще вместо int написал Block:
Код:
Block uranium = IC2Items.getItem("uraniumOre");
Ругаеться на IC2Items...
 
Мне нужно получить блок из IC2, При крафте работает так
Код:
GameRegistry.addShapelessRecipe(new ItemStack(IC2Items.getItem("iridiumOre").getItem(), 9), new Object[] {iridiumblock});
Крафт работает прекрасно.
Но Чтобы сгенерировать что либо в мире раньше можно было так:
Код:
int uranium = IC2Items.getItem("uraniumOre").blockID;
Сначала получили ид блока.
А потом его сгенерировали. Но как теперь это сделать?
 
Вместо:
Код:
MinecraftForge.setBlockHarvestLevel(umblock, "pickaxe", 2);

В конструкторе блока или из его переменной вызываешь:
Код:
setHarvestLevel("pickaxe", 2);
 
Есть люди, работающие с IC2 api?
 
Вот есть код генеарции руды. Как сгенерировать какой либо блок из IC2?
Код:
for(int i = 0; i < 5; i++)
{
int randPosX=chunkX + random.nextInt(16);
int randPosY=random.nextInt(62);
int randPosZ=chunkZ + random.nextInt(16);
new WorldGenMinable(uranium,3).generate(world, random, randPosX, randPosY, randPosZ);
Или вот тут код генерации структур, как в нем снегерировать например урановую руду или медную иди тот же самый дробитель?
Код:
package asdbiomemod.minilib.objects;
import java.util.Random;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
public class Stolb extends WorldGenerator{
       public Stolb()
       {             
       }       
       public boolean generate(World world, Random rand, int i, int j, int k)
       {
           if(world.getBlock(i, j, k)!= Blocks.grass || world.getBlock(i, j + 1, k)!= Blocks.air)
              {
                     return false;
              }
                    Block block = Blocks.sand;
                    Block ss = Blocks.fence;
                    world.setBlock(i, j, k, block);
                    world.setBlock(i, j + 1, k, ss);  
                    world.setBlock(i, j + 2, k, ss);
                    world.setBlock(i, j + 3, k, ss);
                    world.setBlock(i, j + 4, k, ss);
                    world.setBlock(i, j + 5, k, ss);
                    
                    return true;
       }   
    }
[merge_posts_bbcode]Добавлено: 13.10.2014 16:10:16[/merge_posts_bbcode]

Просто как я делал в 1.6.4 больше неработает.
 
И как компилироватьпроект на 1.7?
[merge_posts_bbcode]Добавлено: 13.10.2014 18:09:44[/merge_posts_bbcode]

Вот так вот я могу получить предмет ItemStack uran = IC2Items.getItem("uranium");
Но как получить блок?
 
Благодаря помощи Agravaine, я смог написать легендарный способ получения блока!
Код:
//Получам урановую руду
Item uranic = IC2Items.getItem("uraniumOre").getItem();
//Получаем блок по предмету
Block uran = Block.getBlockFromItem(uranic);
[merge_posts_bbcode]Добавлено: 13.10.2014 21:38:19[/merge_posts_bbcode]

Могу тутор на броню запилить 1.7, нужен?
 
Dragon2488 написал(а):
Не знаешь - Не лезь.
Ну почему же не знаю? Я все готовое именно оттуда и беру. Это проще, чем рыскать по всем файлам в поисках комплиятора. И кстати, с какого хера  фига ты меня забанил?
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху