public List <WordData> GetWordsByCategory(WordDataCategory choice, WordFilters filters)
 {
     if (choice == WordDataCategory.None)
     {
         return(this.GetAllWords(filters));
     }
     return(dbManager.FindWordData(x => x.Category == choice && CheckFilters(filters, x)));
 }
Exemple #2
0
 private List <WordData> GetWordsByCategory(WordDataCategory _category)
 {
     if (_category != WordDataCategory.None)
     {
         return(AppManager.I.DB.FindWordData((x) => x.Category == _category));
     }
     else
     {
         return(new List <WordData>());
     }
 }
Exemple #3
0
        void WordsPanel(WordDataCategory _category = WordDataCategory.None)
        {
            ListPanel.SetActive(true);
            Submenu.SetActive(true);
            ListWidePanel.SetActive(false);
            currentWordCategory = _category;

            List <WordData> list;

            switch (currentWordCategory)
            {
            case WordDataCategory.None:
                //list = AppManager.I.DB.GetAllWordData();
                list = new List <WordData>();
                break;

            default:
                list = AppManager.I.DB.FindWordData((x) => (x.Category == currentWordCategory && x.Article == WordDataArticle.None && x.Kind == WordDataKind.Noun));
                break;
            }
            emptyListContainers();

            List <WordInfo> info_list = AppManager.I.Teacher.scoreHelper.GetAllWordInfo();

            foreach (var info_item in info_list)
            {
                if (list.Contains(info_item.data))
                {
                    btnGO = Instantiate(WordItemPrefab);
                    btnGO.transform.SetParent(ElementsContainer.transform, false);
                    btnGO.GetComponent <ItemWord>().Init(this, info_item);
                }
            }
            Drawing.text = "";

            //btnGO = Instantiate(CategoryItemPrefab);
            //btnGO.transform.SetParent(SubmenuContainer.transform, false);
            //btnGO.GetComponent<MenuItemCategory>().Init(this, new GenericCategoryData { Id = WordDataCategory.None.ToString(), Title = "All" });

            foreach (WordDataCategory cat in GenericUtilities.SortEnums <WordDataCategory>())
            {
                btnGO = Instantiate(CategoryItemPrefab);
                btnGO.transform.SetParent(SubmenuContainer.transform, false);
                btnGO.GetComponent <MenuItemCategory>().Init(
                    this,
                    new GenericCategoryData {
                    area         = PlayerBookPanel.BookWords,
                    wordCategory = cat,
                    Id           = cat.ToString(),
                    Title        = LocalizationManager.GetWordCategoryTitle(cat)
                });
            }
        }
Exemple #4
0
 public LetterFormsInWordsQuestionBuilder(int nPacksPerRound, int nRounds,
                                          WordDataCategory category            = WordDataCategory.None,
                                          int maximumWordLength                = 20,
                                          QuestionBuilderParameters parameters = null)
 {
     if (parameters == null)
     {
         parameters = new QuestionBuilderParameters();
     }
     this.nPacksPerRound    = nPacksPerRound;
     this.nRounds           = nRounds;
     this.category          = category;
     this.maximumWordLength = maximumWordLength;
     this.parameters        = parameters;
 }
Exemple #5
0
 public LettersInWordQuestionBuilder(
     int nRounds, int nPacksPerRound      = 1, int nCorrect                  = 1, int nWrong = 0,
     bool useAllCorrectLetters            = false, WordDataCategory category = WordDataCategory.None,
     int maximumWordLength                = 20,
     QuestionBuilderParameters parameters = null)
 {
     if (parameters == null)
     {
         parameters = new QuestionBuilderParameters();
     }
     this.nRounds              = nRounds;
     this.nPacksPerRound       = nPacksPerRound;
     this.packsUsedTogether    = nPacksPerRound > 1;
     this.nCorrect             = nCorrect;
     this.nWrong               = nWrong;
     this.useAllCorrectLetters = useAllCorrectLetters;
     this.category             = category;
     this.maximumWordLength    = maximumWordLength;
     this.parameters           = parameters;
 }
Exemple #6
0
        private QuestionPackData CreateSingleQuestionPackData(WordDataCategory dataCategory)
        {
            var teacher          = AppManager.I.Teacher;
            var vocabularyHelper = AppManager.I.VocabularyHelper;

            // Ordered words
            var selectionParams1 = new SelectionParameters(parameters.correctSeverity, getMaxData: true,
                                                           useJourney: parameters.useJourneyForCorrect);

            selectionParams1.AssignJourney(parameters.insideJourney);
            parameters.wordFilters.allowedCategories = new[] { dataCategory };
            var words = teacher.VocabularyAi.SelectData(
                () => vocabularyHelper.GetAllWords(parameters.wordFilters),
                selectionParams1
                );

            // sort by id
            words.Sort((x, y) => int.Parse(x.SortValue) - int.Parse(y.SortValue));
            if (skipWordZero)
            {
                words.RemoveAt(0);
            }

            if (ConfigAI.VerboseQuestionPacks)
            {
                string debugString = "Words: " + words.Count;
                foreach (var w in words)
                {
                    debugString += " " + w;
                }
                ConfigAI.AppendToTeacherReport(debugString);
            }

            if (maxAnswers > 0)
            {
                words = words.GetRange(0, Mathf.Min(words.Count, maxAnswers));
            }

            return(QuestionPackData.CreateFromCorrect(null, words));
        }
        public LetterAlterationsInWordsQuestionBuilder(int nPacksPerRound, int nRounds,
                                                       int nWrongs = 4,
                                                       WordDataCategory category = WordDataCategory.None,
                                                       int maximumWordLength     = 20,
                                                       LetterAlterationFilters letterAlterationFilters = null,
                                                       QuestionBuilderParameters parameters            = null)
        {
            if (parameters == null)
            {
                parameters = new QuestionBuilderParameters();
            }
            this.nPacksPerRound          = nPacksPerRound;
            this.nRounds                 = nRounds;
            this.nWrongs                 = nWrongs;
            this.category                = category;
            this.maximumWordLength       = maximumWordLength;
            this.parameters              = parameters;
            this.letterAlterationFilters = letterAlterationFilters;

            // Forced parameters
            this.parameters.letterFilters.excludeDiacritics       = LetterFilters.ExcludeDiacritics.All;
            this.parameters.letterFilters.excludeLetterVariations = LetterFilters.ExcludeLetterVariations.All;
        }
Exemple #8
0
        public static LocalizationData GetWordCategoryData(WordDataCategory cat)
        {
            LocalizationDataId locId = (LocalizationDataId)Enum.Parse(typeof(LocalizationDataId), $"UI_WordCat_{cat}");

            return(GetLocalizationData(locId));
        }
Exemple #9
0
 public List <WordData> FindWordDataByCategory(WordDataCategory wordCategory)
 {
     return(staticDb.FindAll(staticDb.GetWordTable(), (x) => (x.Category == wordCategory)));
 }
        public static LocalizationData GetWordCategoryData(WordDataCategory cat)
        {
            LocalizationDataId loc = LocalizationDataId.UI_None;

            switch (cat)
            {
            case WordDataCategory.Adjectives:
                loc = LocalizationDataId.UI_WordCat_Adjectives;
                break;

            case WordDataCategory.Animal:
                loc = LocalizationDataId.UI_Animals;
                break;

            case WordDataCategory.BodyPart:
                loc = LocalizationDataId.UI_BodyParts;
                break;

            case WordDataCategory.Clothes:
                loc = LocalizationDataId.UI_Clothes;
                break;

            case WordDataCategory.Color:
                loc = LocalizationDataId.UI_Colors;
                break;

            case WordDataCategory.Conjunctions:
                loc = LocalizationDataId.UI_Conjunctions;
                break;

            case WordDataCategory.Direction:
                loc = LocalizationDataId.UI_Directions;
                break;

            case WordDataCategory.Expressions:
                loc = LocalizationDataId.UI_WordCat_Expressions;
                break;

            case WordDataCategory.FamilyMember:
                loc = LocalizationDataId.UI_FamilyMembers;
                break;

            case WordDataCategory.Feeling:
                loc = LocalizationDataId.UI_Feelings;
                break;

            case WordDataCategory.Food:
                loc = LocalizationDataId.UI_Food;
                break;

            case WordDataCategory.Furniture:
                loc = LocalizationDataId.UI_Furniture;
                break;

            case WordDataCategory.General:
                loc = LocalizationDataId.UI_General;
                break;

            case WordDataCategory.Greetings:
                loc = LocalizationDataId.UI_WordCat_Greetings;
                break;

            case WordDataCategory.Verbs:
                loc = LocalizationDataId.UI_WordCat_Verbs;
                break;

            case WordDataCategory.Job:
                loc = LocalizationDataId.UI_Jobs;
                break;

            case WordDataCategory.Names:
                loc = LocalizationDataId.UI_WordCat_Names;
                break;

            case WordDataCategory.Nature:
                loc = LocalizationDataId.UI_Nature;
                break;

            case WordDataCategory.Number:
                loc = LocalizationDataId.UI_Numbers;
                break;

            case WordDataCategory.NumberOrdinal:
                loc = LocalizationDataId.UI_NumbersOrdinal;
                break;

            case WordDataCategory.People:
                loc = LocalizationDataId.UI_People;
                break;

            case WordDataCategory.Place:
                loc = LocalizationDataId.UI_Places;
                break;

            case WordDataCategory.Position:
                loc = LocalizationDataId.UI_Positions;
                break;

            case WordDataCategory.Question:
                loc = LocalizationDataId.UI_Phrases_Questions;
                break;

            case WordDataCategory.Shape:
                loc = LocalizationDataId.UI_Shapes;
                break;

            case WordDataCategory.Size:
                loc = LocalizationDataId.UI_Size;
                break;

            case WordDataCategory.Sport:
                loc = LocalizationDataId.UI_Sports;
                break;

            case WordDataCategory.Thing:
                loc = LocalizationDataId.UI_Things;
                break;

            case WordDataCategory.Time:
                loc = LocalizationDataId.UI_Time;
                break;

            case WordDataCategory.Vehicle:
                loc = LocalizationDataId.UI_Vehicles;
                break;

            case WordDataCategory.Weather:
                loc = LocalizationDataId.UI_WordCat_Weather;
                break;
            }
            return(GetLocalizationData(loc));
        }