hohserg написал(а):Если твой блок, то onEntityWalking
hohserg написал(а):Второй метод когда пробуешь - проверяй, что игрок сверху(по коордам)
virysD написал(а):>Или onEntityCollidedWithBlock
P_bI_L_E_S_O_S написал(а):virysD написал(а):>Или onEntityCollidedWithBlock
это если игрок входит в границы блока
P_bI_L_E_S_O_S написал(а):"onEntityCollidedWithBlock Пашет, когда ты сверху на блоке стоишь" чет не пашет.. пашет когда входит игрок в boundы блока
Я ему пол года ответ писал, а ты взял и опередил меня.Крокодил написал(а):P_bI_L_E_S_O_S написал(а):"onEntityCollidedWithBlock Пашет, когда ты сверху на блоке стоишь" чет не пашет.. пашет когда входит игрок в boundы блока
Предположим, что y+1 = координата на одну единицу выше твоего блока.
Можно проверить при onEntityWalk и если игрок на y+1, выполнять что-нибудь - ЭТО по идее будет срабатывать НЕ через раз.
Можно проверять игрока на координате y+1 в методе (что-то связанное с Random или Tick, не помню точно).
Ну или в крайнем случае через TileEntity.
Я не знаю 1.7.10 точно, поскольку давно перешёл на 1.10.2, поэтому ЭТО не очень достоверная информация.
Develance написал(а):Я ему пол года ответ писал, а ты взял и опередил меня.
Крокодил написал(а):P_bI_L_E_S_O_S написал(а):"onEntityCollidedWithBlock Пашет, когда ты сверху на блоке стоишь" чет не пашет.. пашет когда входит игрок в boundы блока
Предположим, что y+1 = координата на одну единицу выше твоего блока.
Можно проверить при onEntityWalk и если игрок на y+1, выполнять что-нибудь - ЭТО по идее будет срабатывать НЕ через раз.
Можно проверять игрока на координате y+1 в методе (что-то связанное с Random или Tick, не помню точно).
Ну или в крайнем случае через TileEntity.
Я не знаю 1.7.10 точно, поскольку давно перешёл на 1.10.2, поэтому ЭТО не очень достоверная информация.
public void onEntityWalking(World world, int q, int w, int e, Entity entity) {
if(!world.isRemote && entity.posX == q && entity.posY == w+1
&& entity.posZ == e) {
world.createExplosion(null, q, w, e, 10.0F, true);
}
}