diff --git a/README.md b/README.md index 198b836..2025fc5 100644 --- a/README.md +++ b/README.md @@ -14,8 +14,8 @@ You can test the app [here](https://github.com/nath54/BetterOrganization/release * [x] add a translation to the app * [x] add a search page to allow users to search directly for an element instead of browsing into directories and sheet element lists -* [ ] Solve the bug with the (A réviser) page -* [ ] Solve the bug with knowledge +* [x] Solve the bug with the (A réviser) page +* [x] Solve the bug with knowledge * [x] add a system to reduce the knowledge of elements with time to force the user to learn them again and don't forget them * [ ] add confirmation popups for preventing errors where a delete button is pressed * [ ] add limitations to the size of the differents inputs elements (like titles, or sheets elements). diff --git a/global/Global.gd b/global/Global.gd index ab22288..38c7ab2 100644 --- a/global/Global.gd +++ b/global/Global.gd @@ -315,6 +315,6 @@ func get_fiche_knowledge_score(fiche: Dictionary) -> float: # var score: float = 0.0; # négatif = plutot mauvais, positif = plutot bon for row in fiche["data"]: - score += row[2] - 5; - score /= float(len(fiche["data"])); - return score; + score += row[2] - 5; # Compris entre -5 et 5 + score /= float(len(fiche["data"])); + return score; # Compris entre -5 et 5 diff --git a/pages/sheets/A reviser/A reviser.gd b/pages/sheets/A reviser/A reviser.gd index 070164b..0ce46be 100644 --- a/pages/sheets/A reviser/A reviser.gd +++ b/pages/sheets/A reviser/A reviser.gd @@ -17,23 +17,23 @@ func _ready(): # var nb: int = 0; for lf in lst_fiches: - if lf[0] <= 0: - var sum_known: float = 0; - var nb_known: int = 0; - var nb_unknown: int = 0; + if lf[0] <= 0.25: var f: Dictionary = lf[1]; + var sum_known: float = 0.0; + var nb_known: float = 0.0; + var nb_unknown: float = 0.0; for e in f["data"]: if e[2] == -1: - nb_unknown += 1; + nb_unknown += 1.0; else: - nb_known += 1; - sum_known += e[2]; + nb_known += 1.0; + sum_known += e[2]/10.0; var cl: Color; - if nb_known + nb_unknown > 0: + if nb_known + nb_unknown > 0.0: var know_moy: float = 0.0; - if nb_known > 0: + if nb_known > 0.0: know_moy = sum_known / float(nb_known); - cl = Color(0.5*nb_unknown/(nb_known+nb_unknown)+1*nb_known/(nb_known+nb_unknown)*(1-know_moy), 0.5*nb_known/(nb_known+nb_unknown)+1*nb_known/(nb_known+nb_unknown)*(know_moy), 0.5*nb_known/(nb_known+nb_unknown)); + cl = Color(0.5*(nb_unknown/(nb_known+nb_unknown))+1.0*(nb_known/(nb_known+nb_unknown))*(1.0-know_moy), 0.5*(nb_unknown/(nb_known+nb_unknown))+1.0*(nb_known/(nb_known+nb_unknown))*(know_moy), 0.5*(nb_unknown/(nb_known+nb_unknown))); else: cl = Color(1, 1, 1); # @@ -68,6 +68,7 @@ func _on_bt_fiche_activ_pressed(lf: Array) -> void: func _on_bt_fiche_pressed(lf: Array) -> void: + Global.current_dir = lf[2].slice(0, len(lf[2])-2); Global.active_object = Global.get_dict_at_path(lf[2]); if (not "mode_aff" in Global.active_object.keys()) or Global.active_object["mode_aff"] == 1: Global.main_nav.really_change_page("res://pages/sheets/create_sheet.tscn", false); @@ -75,8 +76,6 @@ func _on_bt_fiche_pressed(lf: Array) -> void: Global.main_nav.really_change_page("res://pages/sheets/sheet_elt_list_mode2.tscn", false); - - func parcour_aux(dir: Dictionary, current_path: Array): for de in dir.keys(): if typeof(dir[de]) == TYPE_DICTIONARY: @@ -86,8 +85,5 @@ func parcour_aux(dir: Dictionary, current_path: Array): lst_fiches.append([Global.get_fiche_knowledge_score(dir[de]), dir[de], current_path+[de]]); # - - - func _on_Bt_retour_pressed(): Global.go_to_page("res://pages/sheets/page_sheets.tscn"); diff --git a/pages/sheets/page_dossiers_sheets.gd b/pages/sheets/page_dossiers_sheets.gd index 7217ba3..4f47387 100644 --- a/pages/sheets/page_dossiers_sheets.gd +++ b/pages/sheets/page_dossiers_sheets.gd @@ -37,21 +37,21 @@ func draw_subdirs() -> void: $VBoxContainer/ScrollContainer/Sous_Dossiers.add_child(bt); bt.set_text(c); elif cur_dir_dict[c]["@type"] == "sheet": - var sum_known: float = 0; - var nb_known: int = 0; - var nb_unknown: int = 0; + var sum_known: float = 0.0; + var nb_known: float = 0.0; + var nb_unknown: float = 0.0; for e in cur_dir_dict[c]["data"]: if e[2] == -1: - nb_unknown += 1; + nb_unknown += 1.0; else: - nb_known += 1; - sum_known += e[2]; + nb_known += 1.0; + sum_known += e[2]/10.0; var cl: Color; - if nb_known + nb_unknown > 0: + if nb_known + nb_unknown > 0.0: var know_moy: float = 0.0; - if nb_known > 0: + if nb_known > 0.0: know_moy = sum_known / float(nb_known); - cl = Color(0.5*nb_unknown/(nb_known+nb_unknown)+1*nb_known/(nb_known+nb_unknown)*(1-know_moy), 0.5*nb_known/(nb_known+nb_unknown)+1*nb_known/(nb_known+nb_unknown)*(know_moy), 0.5*nb_known/(nb_known+nb_unknown)); + cl = Color(0.5*(nb_unknown/(nb_known+nb_unknown))+1.0*(nb_known/(nb_known+nb_unknown))*(1.0-know_moy), 0.5*(nb_unknown/(nb_known+nb_unknown))+1.0*(nb_known/(nb_known+nb_unknown))*(know_moy), 0.5*(nb_unknown/(nb_known+nb_unknown))); else: cl = Color(1, 1, 1); #