示例#1
0
文件: Chat.cs 项目: sogoodgames/peach
    // ------------------------------------------------------------------------
    // Methods
    // ------------------------------------------------------------------------
    public Chat(ChatSerializable serializedChat)
    {
        friend     = serializedChat.friend;
        clueNeeded = serializedChat.clueNeeded;
        icon       = serializedChat.icon;

        order = 0;
        lastVisitedMessage = 0;

        if (serializedChat.messages == null)
        {
            return;
        }

        messages = new Message[serializedChat.messages.Length];
        for (int i = 0; i < messages.Length; i++)
        {
            messages[i] = new Message(serializedChat.messages[i]);
        }

        visitedMessages = new List <Message>();
        visitedMessages.Add(messages[0]);
    }
示例#2
0
    // ------------------------------------------------------------------------
    private void LoadChats()
    {
        m_allChats = new List <Chat>();

        foreach (TextAsset textAsset in ChatTextAssets)
        {
            string text = textAsset.text;
            if (!string.IsNullOrEmpty(text))
            {
                ChatSerializable chatSer = JsonUtility.FromJson <ChatSerializable>(text);
                Chat             chat    = new Chat(chatSer);

                if (!chat.HasMessages)
                {
                    Debug.LogWarning("Chat empty: " + textAsset.name);
                }
                else
                {
                    // if it's unlocked from the start, increase our chat counter
                    if (chat.ClueNeeded == ClueID.NoClue)
                    {
                        chat.order = m_chatCounter;
                        m_chatCounter++;
                    }

                    m_allChats.Add(chat);
                    //Debug.Log("added chat: " + chat.friend.ToString() + "; order: " + chat.order);
                }
            }
            else
            {
                Debug.LogError("file empty: " + textAsset.name);
                break;
            }
        }
    }