Aggiungi salto rischioso: stamina < 60 = rischio caduta nel vuoto
Ultima meccanica di gameplay: se hai meno di 60 stamina puoi comunque tentare il salto, ma rischi di cadere nell'abisso. La probabilita' di caduta e' proporzionale a quanto stamina ti manca da 60: - 60 stamina: 0% caduta (salto sicuro) - 30 stamina: 50% caduta - 0 stamina: 100% caduta Se cadi: il giocatore salta verso la cella intermedia (vuoto) invece di quella di atterraggio, poi cade velocemente verso il basso (animazione fall_offset, 2x pixel per frame) e game over con la schermata di morte. Differenza chiave: il salto sicuro atterra a distanza 2; il salto fallito si ferma a distanza 1 (sopra l'abisso) e cade.
This commit is contained in:
@@ -76,6 +76,7 @@ void engine_init(void) {
|
||||
// Mostra le istruzioni SOLO la prima volta che si gioca il livello 1
|
||||
if (level == 1 && !hint_shown_once) hint_active = 1;
|
||||
descend_offset = 0; // reset animazione discesa
|
||||
fall_offset = 0; // reset animazione caduta
|
||||
|
||||
// Carica il font testuale di sistema (IBM)
|
||||
font_init();
|
||||
@@ -262,6 +263,11 @@ void engine_update(uint8_t keys, uint8_t prev_keys) {
|
||||
descend_offset++;
|
||||
update_player_sprite(); // aggiorna lo sprite che scende
|
||||
}
|
||||
// Animazione di caduta nel vuoto (sconfitta per salto fallito)
|
||||
if (game_over == 1 && fall_offset > 0 && fall_offset < 32) {
|
||||
fall_offset++;
|
||||
update_player_sprite(); // il giocatore cade
|
||||
}
|
||||
// Quando scade il timer drammatico...
|
||||
if (game_over_timer == 0) {
|
||||
if (game_over == 1) {
|
||||
|
||||
Reference in New Issue
Block a user