Polish question player header/toolbar and add configurable block size
- Fix the toolbar wrapping onto two rows: its minimum width was tuned
for an older, narrower button set and never widened back out after
reverting to bare icon buttons.
- Drop the "Time elapsed"/"Ctrl+Enter" readout next to Submit - it was
clutter; the underlying timer logic keeps running unseen.
- Move the RanaZe brand mark above the question-count row instead of
sharing a line with it.
- Progress text drops the word "Question" everywhere ("1 of 10"), and
core/dynamic sessions now cycle against a configurable block size
(Settings > Question block size, default 10) instead of counting up
forever.
This commit is contained in:
@@ -28,10 +28,41 @@ var simulation_block_index := 0
|
||||
var simulation_total_blocks := 12
|
||||
var simulation_deadline_unix := 0.0
|
||||
var review_first_submission_recorded := false
|
||||
var core_block_size := DEFAULT_CORE_BLOCK_SIZE
|
||||
|
||||
const CORE_MIN_TARGET_SECONDS := 45.0
|
||||
const CORE_MAX_TARGET_SECONDS := 150.0
|
||||
const CORE_RETRY_TARGET_SECONDS := 30.0
|
||||
const DEFAULT_CORE_BLOCK_SIZE := 10
|
||||
const CORE_BLOCK_SIZE_MIN := 5
|
||||
const CORE_BLOCK_SIZE_MAX := 40
|
||||
const SETTINGS_PATH := "user://settings.cfg"
|
||||
const SETTINGS_SECTION := "session"
|
||||
const SETTINGS_KEY_CORE_BLOCK_SIZE := "core_block_size"
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
_load_core_block_size()
|
||||
|
||||
|
||||
func set_core_block_size(value: int) -> void:
|
||||
var clamped := clampi(value, CORE_BLOCK_SIZE_MIN, CORE_BLOCK_SIZE_MAX)
|
||||
if clamped == core_block_size:
|
||||
return
|
||||
core_block_size = clamped
|
||||
var config := ConfigFile.new()
|
||||
config.load(SETTINGS_PATH)
|
||||
config.set_value(SETTINGS_SECTION, SETTINGS_KEY_CORE_BLOCK_SIZE, core_block_size)
|
||||
if config.save(SETTINGS_PATH) != OK:
|
||||
push_warning("Unable to save core question block size preference.")
|
||||
|
||||
|
||||
func _load_core_block_size() -> void:
|
||||
var config := ConfigFile.new()
|
||||
if config.load(SETTINGS_PATH) == OK:
|
||||
core_block_size = clampi(
|
||||
int(config.get_value(SETTINGS_SECTION, SETTINGS_KEY_CORE_BLOCK_SIZE, DEFAULT_CORE_BLOCK_SIZE)),
|
||||
CORE_BLOCK_SIZE_MIN, CORE_BLOCK_SIZE_MAX)
|
||||
|
||||
|
||||
func start_dynamic_question(question: Dictionary) -> bool:
|
||||
|
||||
Reference in New Issue
Block a user