Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите Алгоритм движения вещей для кейсов

Тема в разделе "Разработка плагинов для новичков", создана пользователем Mihael_i, 23 апр 2017.

  1. Автор темы
    Mihael_i

    Mihael_i Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    Mihael_i
    Здравствуйте. Решил сделать свой плагин на кейсы. Однако передо мной встал вопрос: Как сделать прокрутку вещей в инвентаре-кейсе. Все было бы очень просто, если бы перемещение вещей не должно было замедляться со временем.
    Пока что идея такая: Создать где-нибудь статическую переменную i. Запустить delayedTask с временем задержки, например 1L, этот delayedTask будет двигать вещи в инвентаре, прибавлять к переменной 1 и запускать еще один delayedTask c временем задержки 1L * i . И, когда переменная i станет равна 20L выйти из функции и получить вещь, находящеюся в серединном слоте. Получится, своего рода, рекурсия.
    Но, почему-то(Странно, да? :D), мне кажется, что этот алгоритм неправильный. У кого-нибудь есть какие-нибудь идеи?
     
  2. Хостинг MineCraft
    <
  3. Автор темы
    Mihael_i

    Mihael_i Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    Mihael_i
    Смотрел уже. Как раз такая реализация, как я и написал там присутствует.
    Я прошу совета, как лучше реализовать алгоритм, а не супер-пупер не очевидный(нет) лайф-хак от тебя.
     
  4. iD3LSY

    iD3LSY Активный участник Пользователь

    Баллы:
    46
    Имя в Minecraft:
    opy
  5. Автор темы
    Mihael_i

    Mihael_i Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    Mihael_i
    Я просмотрел исходник только одного плагина(потому что в паблике, в принципе только один плагин с таким функционалом), поэтому и пишу сюда.
     
  6. iD3LSY

    iD3LSY Активный участник Пользователь

    Баллы:
    46
    Имя в Minecraft:
    opy
    Ну тогда говорю, можешь не смотреть другие. Везде такое. Я бы назвал это самым быстрым и лёгким вариантом
     
  7. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Нате жуйте ваши часики :D.

    Код:
            int x1 = 100;
            int x2 = 20;
            for(;;) {
                Thread.sleep(x1);
                if(x2==0) {
                    x1+=30;
                } else {
                    x2--;
                }
                if(x1==700) {
                    break;
                }
                System.out.println("Рулетка");
            }
     

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