Блок опыта

Версия Minecraft
1.6.4
477
7
51
Привет пацаны подскажите пожалуйста!
как опредилить стоит ли игрок на блоке?
и нужно раз в 6 часов выдвать ему опыт 100
как сие чудо можно реализовать?
 

Icosider

Kotliner
Администратор
3,603
99
664
Ну для блока сделать таймер(лучше конечно асинхронный), и вот смотри 20 тиков = 1 секунде, в 6 часах = 21600 секунда, соответственно тебе нужно: 432000 тика, для твоих 6 часов. Я бы конечно сделал нормальный таймер с минутами, часами, днями и т.д., но в принципе и так сойдёт. Затем, в обновлении блока:
Java:
if (timer == 0)
{
      world.spawnEntityInWorld(EntityXPOrb(world, x, y, z, amount))
}

if (timer > 0)
{
    --timer
}

И где то в коде блока:
Kotlin:
private val timer = 432000
 

Icosider

Kotliner
Администратор
3,603
99
664
477
7
51
f
Ну для блока сделать таймер(лучше конечно асинхронный), и вот смотри 20 тиков = 1 секунде, в 6 часах = 21600 секунда, соответственно тебе нужно: 432000 тика, для твоих 6 часов. Я бы конечно сделал нормальный таймер с минутами, часами, днями и т.д., но в принципе и так сойдёт. Затем, в обновлении блока:
Java:
if (timer == 0)
{
      world.spawnEntityInWorld(EntityXPOrb(world, x, y, z, amount))
}

if (timer > 0)
{
    --timer
}

И где то в коде блока:
Kotlin:
private val timer = 432000
Спасибо а как проверить то то что он на блоке или ударил хотя бы по блоку?
 
Сверху