public bool DisplayConversation(RPGConversation newConversation)
	{
		//find the base paragraph
		activeConversation = newConversation;
		for (int i = 0; i < activeConversation.conversationParagraphs.Count; i++) {
			if(activeConversation.conversationParagraphs[i].isBaseParagraph)
			{
				if(activeConversation.conversationParagraphs[i].Validate())
				{
					DisplayParagraph(activeConversation.conversationParagraphs[i]);
					if(!isDisplayed)
						Enable();
					Debug.Log("can display this conversation");
					return true;
				}
			}
		}
		return false;
	}
	protected override void StartNewIItem()
	{
		currentItem = new RPGConversation();
	}
Exemplo n.º 3
0
	public void LoadConversation()
	{
		if(conversationID > 0)
			conversation = Storage.LoadById<RPGConversation>(conversationID, new RPGConversation());
	}
Exemplo n.º 4
0
	// Check paragraph if it is task of current quest
	public void CheckParagraph(RPGConversation conversation, int paragraphId)
	{
		bool validChange = false;
		foreach(RPGQuest q in CurrentQuests)
		{
			if(q.CheckParagraph(conversation.ID, paragraphId))
				validChange = true;
		}

		if(validChange)
			UpdateQuests();
	}