Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Обновление энтити в определенное время

qwerqtyk

Новичок
Пользователь
Баллы
6
Необходимо обновлять в определенное время (игровое), определенный тип энтити. Есть варианты реализации? Пока в голове только добавление нбт для моба и дальнейшая проверка при взаимодействии, но такое себе...
 
Необходимо обновлять в определенное время (игровое), определенный тип энтити. Есть варианты реализации? Пока в голове только добавление нбт для моба и дальнейшая проверка при взаимодействии, но такое себе...
Если тебе нужна раз в какое то время обновлять, то BukkitRunnable. runTaskTimer(Plugin, 0, seconds*20)

По поводу моба, если твоя задача всех мобов - то циклом по коллекции World.getEntities() (Или какой-то на подобии был, загугли) и после проверяешь соответствие нужному тебе типу
Если тебе нужно каких то конкретных и тебе наверняка не известно их координаты или что-то похожее, то тебе придется добавлять теги, либо, что очень костыльно, просто смотреть по их имени
 
PHP:
public class EntityUpdateTask implements Runnable {
    private final World world;
    private final EntityType entityType;
    private final long targetTime;

    public EntityUpdateTask(World world, EntityType entityType, long targetTime) {
        this.world = world;
        this.entityType = entityType;
        this.targetTime = targetTime;
    }

    @Override
    public void run() {
        long gameTime = world.getTime();

        if (gameTime == targetTime) {
            for (Entity entity : world.getEntities()) {
                if (entity.getType() == entityType) {
                    // Выполните обновление для этого энтити
                    updateEntity(entity);
                }
            }
        }
    }

    private void updateEntity(Entity entity) {
        // Реализуйте логику обновления для энтити
    }
}
 

Поделиться этой страницей

Назад
Верх