Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 14.01.2022
Сообщений: 15

Таблица лидеров

14.01.2022, 21:58. Показов 3353. Ответов 26

Студворк — интернет-сервис помощи студентам
Добрый вечер. Игра отправляет запрос на получение лидеров из бд и должна получить массив с лучшими игроками + некоторыми их данными.
Проблема в том, что ответом от сервера является "Array", который, по идее, нужно обойти, но функция foreach просто перебирает само слово. Можно ли вернуть сам массив и достать из него данные?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.01.2022, 21:58
Ответы с готовыми решениями:

Проблема с таблицей лидеров от Google Play в игре на Android
Всем привет. У меня небольшая, но неприятная проблема с таблицей лидеров от Гугл Плей в Андроид игре. В настройках таблицы в консоли...

Таблица лидеров
Есть массив с баллами участников int scoreList = new int{ 7, 4, 10, 7, 7 }; Как выдавать в консоль: Да, участники с...

Таблица лидеров
Здраствуйте.Имеется файл we.txt на сервере.И html сама страница,на которой нужно отсортировать ники по их очкам и чтобы они были 1 место по...

26
 Аватар для zhunshun
768 / 496 / 216
Регистрация: 05.04.2015
Сообщений: 2,080
22.01.2022, 06:47
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от cfunity Посмотреть сообщение
zhunshun, json файл как у вас "1.json", который расположен на сервере. А где должен быть c# скрипт с чтением json'a? У меня такая проблема, что скрипт ищет файл в папке с игрой, где его и нет.
я же говорил уже что фаил 1.json вы получаете в скрипте Unity(которыи добавлен например на Text, которыи выводит таблицу). После того как вы получаете ответ от сервера, запсываете его на диск в этом же скрипте есть замечательная функция File.WriteAllText("path", "content") - где path будет "1.json", а content это то что вы получаете с сервера. И фаил с которого вы будете читать, будет в папке "Название проекта" рядом с "Assets", "Library", если фаил записался снизу в этом же скрипте подставляете уже чтение.
Цитата Сообщение от cfunity Посмотреть сообщение
А .NET в unity могу выбрать, но я имел ввиду отсутствие .NET в проекте visual studio
Не надо уже делать c .NET ничего. я уже сделал скрипт, которыи адаптирован под юнити. в нем не хватает записи фаила, там одна строчка. я бы описал сам но не знал как у вас там отвер приходит. Надо ее перед чтением вставить, что бы фаил уже был в проекте.
Все вроде.
0
0 / 0 / 0
Регистрация: 14.01.2022
Сообщений: 15
23.01.2022, 16:18  [ТС]
zhunshun, Между массивами нет запятой, поэтому ничего не выходит. Может, я что-то не правильно написал?
Скрипт бд:
PHP
1
2
3
4
5
6
7
8
9
10
$users = R::findAll('users');
 
    usort($users, function ($a, $b) {
        if ($a[lvl] != $b[lvl]) return $b[lvl] - $a[lvl];
        return strcmp($a[user], $b[user]);
    });
 
foreach($users as $item) {
        echo($item);
    }
Скрипт игры:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
using System.Collections;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.Networking;
using System.IO;
 
[System.Serializable]
public class User
{
    public string id;
    public string user;
    public string lvl;
}
[System.Serializable]
class Wrapper<T>
{
    public T[] Items;
}
 
public class Leaderboard : MonoBehaviour
{
    private void Start()
    {
        StartCoroutine(Leaders());
    }
 
    IEnumerator Leaders()
    {
        WWWForm form = new WWWForm();
 
        using (UnityWebRequest req = UnityWebRequest.Post("zapros na server", form))
        {
            yield return req.SendWebRequest();
            var rdata = req.downloadHandler.text;
            if (req.isNetworkError || req.isHttpError)
            {
                Debug.Log("Error");
            }
            else
            {
                File.WriteAllText("1.json", rdata);
 
                var json = File.ReadAllText("1.json");
                json = "{\"Items\":" + json + "}";
                User[] myarray = JsonUtility.FromJson<Wrapper<User>>(json).Items;
                foreach (var it in myarray)
                {
                    Debug.Log(string.Format("{0},{1},{2}", it.id, it.user, it.lvl));
                }
            }
        }
    }
}
Ошибка: ArgumentException: JSON parse error: Missing a comma or '}' after an object member.
Данные в 1.json: {"id":"38","user":"try2","lvl":"5"}{"id" :"13","user":"zzzzzz","lvl":"3"}
0
 Аватар для 1max1
3364 / 1776 / 1029
Регистрация: 26.10.2018
Сообщений: 5,204
23.01.2022, 16:39
Данные массива в json должны оборачиваться в [].
C#
1
[{"id":"38","user":"try2","lvl":"5"}{"id":"13","user":"zzzzzz ","lvl":"3"}]
0
0 / 0 / 0
Регистрация: 14.01.2022
Сообщений: 15
23.01.2022, 17:48  [ТС]
1max1, Они сами записываются в файл без []. Как мне их обернуть в квадратные скобки?
0
 Аватар для 1max1
3364 / 1776 / 1029
Регистрация: 26.10.2018
Сообщений: 5,204
23.01.2022, 18:05
Нууууууууууууууууууууууууууууууууууууууу уууууу, даже не знаю...........................

Наверное к строке прибавить строку?
0
 Аватар для zhunshun
768 / 496 / 216
Регистрация: 05.04.2015
Сообщений: 2,080
24.01.2022, 16:06
cfunity,
PHP
1
2
3
4
foreach($users as $item) {
        echo($item);
        echo(",");
    }
А в фаиле User квадратные скобки дописать
C#
1
json = "{\"Items\":[" + json + "]}";//line 44
0
0 / 0 / 0
Регистрация: 14.01.2022
Сообщений: 15
25.01.2022, 16:52  [ТС]
Благодарю
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.01.2022, 16:52

Таблица лидеров в приложении Android
Столкнулся с проблемой, что по документиции гугл вставил все правильно, но таблица лидеров не отображается, хотя в аккаунт google play...

Таблица лидеров с обновлением любого результата
Подключил Google Play Games к проекту. Есть метод, который отвечает за обновление рейтинга в таблице лидера. Выглядит он вот так: ...

Запрос у пользователя отображения данных, таблица лидеров
Добрый день. Создал игру основной смысл которой держится на таблице лидеров, но, для того чтобы данные в ней отображались пользователь...

Сайт в 10 лидеров но ...
Есть один сайт _www.72media.ru который сечас занимает 5 место в яше по ключевому слову &quot;бизнес журнал&quot;, однако в день заходит не...

Доска лидеров
Должно записываться время игры и сортироваться ( перемещаться выше или ниже в позиции 0-9) Не работает запись в файл, остаются 0,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
День 5 из 28: Codex подсказывает следующий запрос
and_y87 12.10.2026
9 октября 2026 года OpenAI запустила бету Composer predictions — подсказок следующего сообщения в текущем диалоге Codex. Это помощь с формулировкой запроса, а не автоматическое продолжение задачи. . . .
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru