// ------------------------------------------------------------------------ // 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]); }
// ------------------------------------------------------------------------ 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; } } }