Score = combo x point value (configurable, default 1); difficulty score-only at 8000

This commit is contained in:
enne2
2026-08-10 20:00:30 +02:00
parent f9837153a0
commit 54619a2385
3 changed files with 11 additions and 54 deletions
+5 -15
View File
@@ -391,11 +391,9 @@ func _current_time() -> float:
func _difficulty() -> float:
# fattori lineari di tempo e punteggio
var tf := clampf(elapsed / Settings.time_ramp, 0.0, 1.0)
# La difficoltà (e quindi la velocità massima) è legata unicamente al punteggio
var sf := clampf(score / Settings.score_ramp, 0.0, 1.0)
# curva dolce: smoothstep rende l'accelerazione quasi impercettibile all'inizio
return _smoothstep(maxf(tf, sf))
return _smoothstep(sf)
func _combo_decay() -> float:
@@ -407,17 +405,9 @@ func _combo_decay() -> float:
func _points_for_combo() -> int:
# Punti per un tap corretto, in base alla curva selezionata nelle Opzioni.
match Settings.score_curve:
1: # scaglioni: +0.5x ogni 5 tap di combo
var mult := 1.0 + floori(combo / 5.0) * 0.5
return int(Settings.points_per_combo * mult)
2: # radice quadrata
return int(Settings.points_per_combo * sqrt(combo))
3: # additiva: base + combo
return Settings.points_per_combo + int(combo)
_: # 0 = quadratica (attuale): base × combo
return Settings.points_per_combo * int(combo)
# Punti per lancio = combo corrente × valore punto configurato.
# Es. combo 5 × 1 = 5 pt; combo 1 × 1 = 1 pt. Il valore punto è configurabile.
return int(combo) * Settings.points_per_combo
func _smoothstep(x: float) -> float: