Хук

Версия Minecraft
1.7.10
929
30
66
Всем привет.
Вопрос как можно хуком прибавить значение в player.dismountEntity , чтоб игрок когда вставал с Entity его дальше кидало.
Думал всё гораздо проще будет,но это не какой-то метод с возвратом.
 
929
30
66
Вот так,но прибавляю к X + 5 , но так же встаю как в ваниле
Java:
@Hook(returnCondition = ReturnCondition.ALWAYS, intReturnConstant = 100)
    public void dismountEntity(Entity p_110145_1_)
    {
        double d0 = p_110145_1_.posX;
        double d1 = p_110145_1_.boundingBox.minY + (double)p_110145_1_.height;
        double d2 = p_110145_1_.posZ;
        byte b0 = 1;

        for (int i = -b0; i <= b0; ++i)
        {
            for (int j = -b0; j < b0; ++j)
            {
                if (i != 0 || j != 0)
                {
                    int k = (int)(p_110145_1_.posX + (double)i);
                    int l = (int)(p_110145_1_.posZ + (double)j);
                    AxisAlignedBB axisalignedbb = p_110145_1_.boundingBox.getOffsetBoundingBox((double)i, 1.0D, (double)j);

                    if (p_110145_1_.worldObj.func_147461_a(axisalignedbb).isEmpty())
                    {
                        if (World.doesBlockHaveSolidTopSurface(p_110145_1_.worldObj, k, (int)p_110145_1_.posY, l))
                        {
                            p_110145_1_.setPosition(p_110145_1_.posX + (double)i, p_110145_1_.posY + 1.0D, p_110145_1_.posZ + (double)j);
                            return;
                        }

                        if (World.doesBlockHaveSolidTopSurface(p_110145_1_.worldObj, k, (int)p_110145_1_.posY - 1, l) || p_110145_1_.worldObj.getBlock(k, (int)p_110145_1_.posY - 1, l).getMaterial() == Material.water)
                        {
                            d0 = p_110145_1_.posX + 5 +(double)i;
                            d1 = p_110145_1_.posY + 1.0D;
                            d2 = p_110145_1_.posZ + (double)j;
                        }
                    }
                }
            }
        }

        p_110145_1_.setPosition(d0, d1, d2);
    }
 
Последнее редактирование:
7,099
324
1,510
Дебаг че-то дал? Хук вообще вызывается?
 
7,099
324
1,510
Значит, забыл сказать forge, что есть кормод:
-Dfml.coreMods.load=gloomyfolken.hooklib.example.ExampleHookLoader
Код:
Manifest-Version: 1.0
FMLCorePlugin: name.of.YourHookLoader
FMLCorePluginContainsFMLMod: true
Created-By: 1.7.0 (Oracle Corporation)
 
Сверху