Add data-driven dynamic question mode

This commit is contained in:
hz
2026-07-23 12:33:23 -05:00
parent 50f07a77a5
commit fcbc288a49
22 changed files with 1247 additions and 21 deletions
+9
View File
@@ -248,6 +248,12 @@ func _build_ui() -> void:
screens_container.add_child(selector)
screens["selection"] = selector
var dynamic_questions := preload("res://scripts/ui/dynamic_questions_screen.gd").new()
dynamic_questions.name = "DynamicQuestionsScreen"
dynamic_questions.main = self
screens_container.add_child(dynamic_questions)
screens["dynamic_questions"] = dynamic_questions
var map := preload("res://scripts/ui/study_map.gd").new()
map.name = "StudyMap"
map.main = self
@@ -410,6 +416,7 @@ func _populate_navigation(container: VBoxContainer, include_brand: bool) -> void
_add_nav_button(container, "home", "Dashboard", "chart-no-axes-column-increasing", true)
_add_nav_button(container, "question_bank", "Question Bank", "clipboard-list", true)
_add_nav_button(container, "dynamic_questions", "Dynamic Questions", "shuffle", true)
_add_nav_button(container, "ccs", "CCS Cases", "stethoscope", true)
_add_nav_button(container, "exams", "Exam Simulations", "clipboard-list", true)
_add_nav_button(container, "flashcards", "Flashcards", "clipboard-plus", true)
@@ -454,6 +461,7 @@ func _on_navigation_pressed(key: String) -> void:
match key:
"home": show_screen("dashboard")
"question_bank": show_screen("selection", "question_bank")
"dynamic_questions": show_screen("dynamic_questions")
"exams": show_screen("simulation_history")
"ccs": show_screen("ccs_hub")
"flashcards": show_screen("flashcards_study")
@@ -472,6 +480,7 @@ func _update_header_title(screen_name: String) -> void:
var titles := {
"dashboard": "Dashboard",
"selection": "Question Bank",
"dynamic_questions": "Dynamic Questions",
"simulation_history": "Exam Simulations",
"ccs_hub": "CCS Cases",
"flashcards_hub": "Flashcards",