врят-ли тут кто-то напишет, по этому могу просто посоветовать свой магазин кода -
https://discord.gg/X9gNHfAtJM
там можно купить топы
ну а что-бы не казаться совсем зажравшимся, расскажу принцип
у игрока есть переменная %player%_id, и %player%_id2
когда игрок заходит, мы проверяем, существует ли эта переменная, если не существует - мы в переменную all-id прибавляем 1, и ставим в %player%_id = all-id
чтобы получить %player%_id2 надо разделить %player%_id на 100000
в массив top-not-sorted (это массив в котором хранятся все значения) помещаем %player%_id2
этот процесс - регистрация топа
так-же в этот процесс входит регистрация ника игрока (есть массив all-nicks, в него надо в конец записать ник игрока)
у игрока его айди = положению ника в таблице ников, это важно понимать
дальше цикл
в самом начале ставим выборку всех игроков, дальше мы в отдельную переменную сохраняем следующее:
%selected% mas-update = %selected%_id2 + %selected%_money
дальше мы заменяем элемент в топе top-not-sorted используя за индекс %selected%_id, а за значение %selected% mas-update
в нём происходит обновление топа
нужно отсортировать массив top-not-sorted по убыванию в массив top-sorted
есть условная переменная mas-recursion для проведения рекурсии по 10-и игрокам. изначально она равна нулю
дальше функция, самое наверно сложное
эту функцию вызываем повторно 10 раз
прибавляем к переменной рекурсии по 1, и получаем элемент, используя mas-recursion как индекс
дальше извлекаем значение монет игрока:
округлить к меньшему значение
дальше айди:
id = elem - money (money - это распакованное значение)
этот айди так-же нужно умножить на 100000, и опять округлить к меньшему
теперь у нас есть айди, и значение
получаем из массива ников ник игрока, используя за индекс наш айди
затем объединяем все тексты, и сохраняем в переменную
возвращаемся к циклу
после вызова нашей функции надо поставить задержку 10 тиков, и после чего спавним голограмму, где в качестве значений будет 1 переменная со всеми топами