Передача данных о EntityThrowable блоку

Версия Minecraft
1.7.10
Нужно, чтобы при взрыве/касании EntityThrowable из моего мода передавалось блоку, то, что нужно изменить счётчик в TileEntity блока(то есть мой tile entity внутри со счётчиком), вот не знаю, как можно достать из класса моего энтити координаты и по его координатам изменить значение в Tile entity...

Если, кто знает, как решить проблему, лучше кодом, на словах я плохо понимаю :D
 
Решение
Первый и последний раз даю код тебе)0
Я тебе описал алгоритм, а ты все равно свою дичь городишь)
Java:
protected void onImpact(MovingObjectPosition pos){
    if(pos.typeOfHit == EnumMovingObjectType.BLOCK){
        TileEntity tile = worldObj.getTileEntity(pos.blockX, pos.blockY, pos.blockZ);
        if(tile instanceof TileEntityCounterPersonal){
            ((TileEntityCounterPersonal)tile).incrementCount();
        }
    }
}
3,005
192
592
Я тебе объяснил алгоритм на пальцах, код за тебя никто писать не будет.
нет, я понимаю, что ты объяснил, но я не знаю конкретных команд, которые могут например извлечь tile entity из блока внутри класса entity throwable
 
Энтити твое где спавнится? В мире наверное, логично? Значит у него должна быть ссылка на мир. Опа, нашли: worldObj!
TileEntity tile = worldObj.getTileEntity(x, y, z);

хм, написал такой вот код внутри OnImpact в моём энтити, но он не работает с моим блоком, однако, если убрать проверку блока, то врезаясь не в мой блок, т.е. например в раздатчик, который тоже имеет tileEntity, то майн благополучно вылетает из-за отсутствия метода .incrementCount(), то есть соответственно код написан правильно и tileEntity находит, но именно в моём блоке почему-то не находит собственно tileEntity... В чём я напортачил? :D, Могу скинуть полный код любого класса, если потребуется.

P.S. и прошу прощения, что со мной так возиться приходится)))..

Java:
int x = (int) (this.posX + this.motionX);
int y = (int) (this.posY + this.motionY);
int z = (int) (this.posZ + this.motionZ);
TileEntity tileEntity = worldObj.getTileEntity(x, y, z);
net.minecraft.block.Block block = worldObj.getBlock(x, y, z);
if (block == BlocksRegistry.forstess_block) {
    ((TileEntityCounterPersonal) tileEntity).incrementCount();
}
 

tox1cozZ

aka Agravaine
8,456
598
2,892
Первый и последний раз даю код тебе)0
Я тебе описал алгоритм, а ты все равно свою дичь городишь)
Java:
protected void onImpact(MovingObjectPosition pos){
    if(pos.typeOfHit == EnumMovingObjectType.BLOCK){
        TileEntity tile = worldObj.getTileEntity(pos.blockX, pos.blockY, pos.blockZ);
        if(tile instanceof TileEntityCounterPersonal){
            ((TileEntityCounterPersonal)tile).incrementCount();
        }
    }
}
 
Первый и последний раз даю код тебе)0
Я тебе описал алгоритм, а ты все равно свою дичь городишь)
Java:
protected void onImpact(MovingObjectPosition pos){
    if(pos.typeOfHit == EnumMovingObjectType.BLOCK){
        TileEntity tile = worldObj.getTileEntity(pos.blockX, pos.blockY, pos.blockZ);
        if(tile instanceof TileEntityCounterPersonal){
            ((TileEntityCounterPersonal)tile).incrementCount();
        }
    }
}

А нашёл, тут есть просто MovingObjectType. , но с ним тоже не работает...
 
Первый и последний раз даю код тебе)0
Я тебе описал алгоритм, а ты все равно свою дичь городишь)
Java:
protected void onImpact(MovingObjectPosition pos){
    if(pos.typeOfHit == EnumMovingObjectType.BLOCK){
        TileEntity tile = worldObj.getTileEntity(pos.blockX, pos.blockY, pos.blockZ);
        if(tile instanceof TileEntityCounterPersonal){
            ((TileEntityCounterPersonal)tile).incrementCount();
        }
    }
}

Короче, если я заплачу money, сможешь в дисе мне связаться, помочь? :D А то по этому модингу блин норм уроков в инете вообще нет, за исключением на этом сайте/форуме
 
Первый и последний раз даю код тебе)0
Я тебе описал алгоритм, а ты все равно свою дичь городишь)
Java:
protected void onImpact(MovingObjectPosition pos){
    if(pos.typeOfHit == EnumMovingObjectType.BLOCK){
        TileEntity tile = worldObj.getTileEntity(pos.blockX, pos.blockY, pos.blockZ);
        if(tile instanceof TileEntityCounterPersonal){
            ((TileEntityCounterPersonal)tile).incrementCount();
        }
    }
}

Стоп.... Только сейчас обнаружил, счётчик переключается, но не обновляется сам блок... щас сам попробую исправить, отпишусь
 

tox1cozZ

aka Agravaine
8,456
598
2,892
Сверху