[LiteCore] WorldLimit Обновлённый

Плагин на лимит в мире (самопис ), спасибо @GrozZy за помощь.

Спойлер

Было немного конфликта в этом посте

Что представляет плагин?

Как я говорил, “Плагин на лимит в мире (самопис :wink: ), спасибо @GrozZy. Игрок не может уйти дальше за пределы мира и использовать перл, хорошо подходит для того, чтобы игроки не прогружали новые чанки и не засоряли память сервера (можно и для других целей, сами решайте)”

  1. Есть хотбар
  2. Запрещены перлы
  3. Сама граница
    Крч… Всё в видео показано
Настройка
  1. Установите плагин на сервер
  2. В файле Main.php на линии 28 настройте радиус лимита мира (обезательно в блоках и начиная с точки спавна) также на линии 40, 54 замените радиус где будет запрещено использование перла а также предупреждающий хотбар, затем на линии 29, 41, 55 настройте Сообщение которая будет отображаться если игрок попытается пересечь границу мира , попытатется использовать перл а также предупреждающий хотбар (СОРРЯН, с Конфигами всё ещё проблемы)
Дополнительно

Советую поставить радиус использования перла намного дольше от границы (примерно 50 блоков), для того, чтобы перл с доступной зоны не мог долететь до границы мира

В коде (на линии 13) вы могли заметить то, что я так же хотел отменить использования хоруса, но… Крч вы поняли.

Требования

Ядро - LiteCore или его Форки
API - 3.0.0

WorldLimit.zip (1.8 КБ)

Соррян что пост это большая каша, как нибудь потом украшу пост

1 лайк

Как по мне лучше поставит границу мира.

Всё хорошо, но было бы лучше если бы игрока дополнительно толкало в противоположную от границы сторону. Это поможет избежать ситуаций, при которых из-за пролага игрок не может выбраться с территории за границей так как смог пройти слишком далеко

1 лайк

Ты тестил что будет если кинуть перку?

Предположу, что будет как раз описанная мной ситуация

Нет будет знаешь что попробуй у меня просто за границу мира перешло

Это всё хорошо, а не проще сделать генератор который генерирует за радиусом невидимый бедрок, как это собственно в игре сделано?

Как я говорил лучше сделать барьер

Я хз, работа с генирациями мира не для меня

всем интересно

тем временем реализация лимита мира:

public function onPlayerMove(PlayerMoveEvent $event) : void {
        $position = $event->getPlayer()->getPosition();
        if($this->center->distance(new Vector2($position->getX(), $position->getZ())) > $this->radius) {
            $event->cancel();
        }
}
1 лайк

+6

image
Вау

Screenshot_2
Вау… Лучше зацени мои новейшие проекты чем этот

Вау, ты за 6 месяцев кодить научился?

Вау… Представляешь

Вау, я представил то что ты 2 раз килляешь ентити

Вау… У нас пользователей которые оживляют старые темы называют некромантами

Вау, а как кодер связан с некромантом?

Вау… Можешь уже перестать некромантить
+
Вау… Ты отличия между шести месяцами не знаешь