private List <GENpc.GEAnswer> ProcessAnswers(List <NPCsTypeNPCConversationLineAnswer> answers, GENpc.GELine line)
    {
        List <GENpc.GEAnswer> processedAnswers = new List <GENpc.GEAnswer>();

        if (answers == null || answers.Count == 0)
        {
            return(processedAnswers);
        }

        foreach (NPCsTypeNPCConversationLineAnswer answer in answers)
        {
            GERequirement      requirement = ProcessRequirements(answer.Requirements);
            GENpc.GEItemAction action      = ProcessActions(answer.Actions, answer.id);

            GENpc.GEAnswer newAnser = new GENpc.GEAnswer(answer.id, answer.activeAtStart, line)
            {
                Requirement = requirement,
                Action      = action
            };
            OnReferenceProcessing += delegate(object o, EventArgs e)
            {
                newAnser.AnswerText = elementManager.GetTextElement(answer.textId);
                newAnser.NextLine   = elementManager.GetNpcConvLine(answer.nextLineId);
            };
            processedAnswers.Add(newAnser);
            elementManager.AddNpcAnswer(newAnser);
        }

        return(processedAnswers);
    }
Exemple #2
0
 public void AddNpcAnswer(GENpc.GEAnswer answer)
 {
     AddToDic(npcAnswers, answer);
 }
Exemple #3
0
 public MIAnswer(string menuText, GENpc.GEAnswer answer, MenuItemBundle parentBundle, string answerTo) : base(menuText, parentBundle)
 {
     this.geAnswer = answer;
     this.answerTo = answerTo;
 }