コード例 #1
0
    Quest GenerateQuest(GraphVertex[] path, int index)
    {
        if (path == null)
        {
            GD.Print("Path is null, returning.");
            return(null);
        }

        Properties properties;

        Quest.Objective[] objectives = new Quest.Objective[path.Length];
        Quest.Option[]    options    = new Quest.Option[path.Length];

        for (int i = 0; i < path.Length; i++)
        {
            properties    = path[i].Region.P0;
            objectives[i] = GenerateObjective(properties);
            options[i]    = GenerateOption(properties);
        }

        Quest quest = new Quest(path, objectives, options, index);

        quests.Add(quest);
        return(quest);
    }
コード例 #2
0
    Quest.Option GenerateOption(Properties properties)
    {
        Quest.Option option = Quest.Option.None;

        if (properties == null)
        {
            return(option);
        }

        if (properties.Cover > 5 && properties.Enemies > 0)
        {
            option = Quest.Option.Stealth;
        }

        return(option);
    }