public override IEnumerator Initialize() { m_CurrentMenu = ETYPEMENU.NONE; m_HiraganaTable.Hide(); m_MainScrollMenu.Hide(); // Init Hiragana data an menu m_HiraganaData = new HiraganaData2(); string jsonActionsString = Utility.LoadJSONResource(m_PathData); if (jsonActionsString != "") { m_HiraganaData = JsonMapper.ToObject <HiraganaData2>(jsonActionsString); } List <string> lTitle = new List <string>(); for (int i = 0; i < m_HiraganaData.Hiragana.Count; i++) { HiraganaAlphabet ha = m_HiraganaData.Hiragana[i]; lTitle.Add(ha.Title); } m_MainScrollMenu.InitScrollMenu(lTitle); m_MainScrollMenu.ScrollMenu.OnButtonPress += OnButtonMenuPress; yield break; }
public HiraganaDrill(HiraganaData2 data, int idData) { List <DrillUnit> listDrills = new List <DrillUnit>(); int nUnits = m_NumberDrills / m_NumberSections; int startDrill = 0; // Hiragana symbol questions for (int i = startDrill; i < (startDrill + nUnits); i++) { DrillUnit drill = new DrillUnit(); drill.TypeQuestion = ETYPEEDRILL.H_SYMBOL; drill.IndexQuestion = Random.Range(0, data.Hiragana[idData].HiraganaChar.Count); drill.TypeAnswer = ETYPEEDRILL.H_ROMANJI; listDrills.Add(drill); } startDrill += nUnits; // Hiragana romanji questions for (int i = startDrill; i < (startDrill + nUnits); i++) { DrillUnit drill = new DrillUnit(); drill.TypeQuestion = ETYPEEDRILL.H_ROMANJI; drill.IndexQuestion = Random.Range(0, data.Hiragana[idData].RomanjiChar.Count); drill.TypeAnswer = ETYPEEDRILL.H_SYMBOL; listDrills.Add(drill); } startDrill += nUnits; // Words for (int i = startDrill; i < (startDrill + nUnits); i++) { DrillUnit drill = new DrillUnit(); drill.TypeQuestion = ETYPEEDRILL.H_WORD; drill.IndexQuestion = Random.Range(0, data.Hiragana[idData].Vocabulary.Hiragana.Count); // Select randomly between the other two options int chance = Random.Range(0, 100); if (chance <= 50) { drill.TypeAnswer = ETYPEEDRILL.H_WORDMEANING; } else { drill.TypeAnswer = ETYPEEDRILL.H_WORDROMANJI; } listDrills.Add(drill); } startDrill += nUnits; // Words for (int i = startDrill; i < (startDrill + nUnits); i++) { DrillUnit drill = new DrillUnit(); drill.TypeQuestion = ETYPEEDRILL.H_WORDMEANING; drill.IndexQuestion = Random.Range(0, data.Hiragana[idData].Vocabulary.Meaning.Count); drill.TypeAnswer = ETYPEEDRILL.H_WORD; listDrills.Add(drill); } startDrill += nUnits; // Words for (int i = startDrill; i < (startDrill + nUnits); i++) { DrillUnit drill = new DrillUnit(); drill.TypeQuestion = ETYPEEDRILL.H_WORDROMANJI; drill.IndexQuestion = Random.Range(0, data.Hiragana[idData].Vocabulary.Romanji.Count); drill.TypeAnswer = ETYPEEDRILL.H_WORD; listDrills.Add(drill); } // Suffle drills m_Drills = Utility.Shuffle(listDrills); }