JSON сохранение

Программирование на Юнити.

JSON сохранение

Сообщение Telephonist 14 апр 2020, 19:50

При сохранении переменной типа GameObject в файл JSON она выглядит примерно следующим образом: {"instanceID":-34488}. Может кто-нибудь объяснить, что обозначает этот ID? Можно ли получить этот объект обратно? Спасибо.
Telephonist
UNец
 
Сообщения: 24
Зарегистрирован: 08 апр 2019, 14:05

Re: JSON сохранение

Сообщение Jarico 14 апр 2020, 20:13

Что ты хочешь сделать?

GetInstance() нужен для идентификации объекта (префаба) в сцене
Github: _https://github.com/redheadgektor
Discord: Конь! Чаю!#9382 (сижу редко)
YouTube: _https://www.youtube.com/channel/UCPQ04Xpbbw2uGc1gsZtO3HQ
Telegram: _https://t.me/redheadgektor
Аватара пользователя
Jarico
Адепт
 
Сообщения: 1084
Зарегистрирован: 06 янв 2019, 17:37
Откуда: 0xDEAD
Skype: none
  • Сайт

Re: JSON сохранение

Сообщение Telephonist 14 апр 2020, 20:27

Jarico писал(а):Что ты хочешь сделать?

GetInstance() нужен для идентификации объекта (префаба) в сцене

Я хочу получить этот GameObject из сохранения и заспаунить его после загрузки.
Telephonist
UNец
 
Сообщения: 24
Зарегистрирован: 08 апр 2019, 14:05

Re: JSON сохранение

Сообщение 1max1 14 апр 2020, 21:07

Telephonist писал(а):
Jarico писал(а):Что ты хочешь сделать?

GetInstance() нужен для идентификации объекта (префаба) в сцене

Я хочу получить этот GameObject из сохранения и заспаунить его после загрузки.

Не получится, нужно руками сохранять все компоненты и переменные.
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: JSON сохранение

Сообщение Telephonist 14 апр 2020, 21:22

1max1 писал(а):
Telephonist писал(а):
Jarico писал(а):Что ты хочешь сделать?

GetInstance() нужен для идентификации объекта (префаба) в сцене

Я хочу получить этот GameObject из сохранения и заспаунить его после загрузки.

Не получится, нужно руками сохранять все компоненты и переменные.

Т.е нужно сделать каждому типу юнитов свой id(в зависимости от которого менять спрайт и переменные) и сохранять его. Или это можно сделать как то лучше?
Telephonist
UNец
 
Сообщения: 24
Зарегистрирован: 08 апр 2019, 14:05

Re: JSON сохранение

Сообщение 1max1 15 апр 2020, 09:49

От задачи зависит, если тебе одного ид достаточно знать для того чтобы с 0 собрать своего юнита, то да, хватит и его. Я сейчас не про ид объекта, а в принципе, к примеру:
Синтаксис:
Используется csharp
enum UnitType
{
    Enemy,
    Player,
    Friend
}

class SaveData
{
    public UnitType unitType;
}

class XXX : MonoBehaviour
{
    void Start()
    {
        SaveData saveData = // загружаем сейв

        switch (saveData.unitType)
        {
            case UnitType.Enemy:
                // Создаем врага
                break;
        }
    }
}
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: JSON сохранение

Сообщение Telephonist 15 апр 2020, 13:09

1max1 писал(а):От задачи зависит, если тебе одного ид достаточно знать для того чтобы с 0 собрать своего юнита, то да, хватит и его. Я сейчас не про ид объекта, а в принципе, к примеру:
Синтаксис:
Используется csharp
enum UnitType
{
    Enemy,
    Player,
    Friend
}

class SaveData
{
    public UnitType unitType;
}

class XXX : MonoBehaviour
{
    void Start()
    {
        SaveData saveData = // загружаем сейв

        switch (saveData.unitType)
        {
            case UnitType.Enemy:
                // Создаем врага
                break;
        }
    }
}


А можно закинуть префабы в папку Resources, а потом оттуда через id их грузить?
Telephonist
UNец
 
Сообщения: 24
Зарегистрирован: 08 апр 2019, 14:05

Re: JSON сохранение

Сообщение Jarico 15 апр 2020, 18:39

Telephonist писал(а):А можно закинуть префабы в папку Resources, а потом оттуда через id их грузить?

Ты видимо ничего не понял...

У тебя должен быть свой скрипт для юнитов, в скрипте должен назначаться уникальный ид для юнита, и должен быть еще скрипт для сохранения или загрузки юнитов
Github: _https://github.com/redheadgektor
Discord: Конь! Чаю!#9382 (сижу редко)
YouTube: _https://www.youtube.com/channel/UCPQ04Xpbbw2uGc1gsZtO3HQ
Telegram: _https://t.me/redheadgektor
Аватара пользователя
Jarico
Адепт
 
Сообщения: 1084
Зарегистрирован: 06 янв 2019, 17:37
Откуда: 0xDEAD
Skype: none
  • Сайт


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8