From fc3149a7a6e25b54a4d4bbbe0efebe0a6af6a6ed Mon Sep 17 00:00:00 2001 From: duffyduck Date: Sun, 26 Jul 2026 11:21:27 +0200 Subject: [PATCH] Sprungweite +1 Blattlaenge: AIR_SPEED_FACTOR 1.27 (Sprungweite 92->114px), Sprunghoehe zurueck auf -400 -- 'nicht hoeher sondern weiter' --- game/level.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/game/level.py b/game/level.py index 00e6f26..b0cccfc 100644 --- a/game/level.py +++ b/game/level.py @@ -42,10 +42,13 @@ GRAVITY = 900.0 # Scheitel den AST (~y505-516) erreichen, Smacks' Kopf das darunter # haengende BLATT (~y511-526) -- gleiche Sprungkraft, verschiedene # Koerpergroessen (56 vs 44 px), wie im Original (-0x18000 fuer alle). -# 3. Feinjustage (Stefan mit Live-DOSBox-Vergleich nebeneinander): -# "im normalen Sprung noch eine Blattlaenge (~1 Tile) hoeher" -> -# Scheitel ~102px statt 86. -JUMP_VELOCITY = -430.0 +# Mit SPRITE_SINK=4 und Diskretisierung braucht das ~88px Scheitelhoehe +# (2. Feinjustage von Stefan: "Smacks bis Blatt, Tony bis Ast"). +JUMP_VELOCITY = -400.0 +# Sprung-WEITE (Stefans Live-DOSBox-Vergleich: "eine Blattlaenge weiter"): +# in der Luft laeuft die Figur horizontal schneller als am Boden. +# Gemessen: Faktor 1.27 = 114px Sprungweite (92px + ~1 Blatt/Tile + Rundung). +AIR_SPEED_FACTOR = 1.27 SWIM_GRAVITY = 240.0 # Smacks im Wasser: traege sinken SWIM_KICK = -140.0 # Schwimmstoss mit Space WALK_ANIM_FPS = 17.5 # Original: delay 4 Ticks @70Hz (Binary-Tabelle) @@ -367,6 +370,8 @@ class Player: speed = RUN_SPEED if self.running else WALK_SPEED if self.swimming: speed *= 0.7 + elif not self.on_ground: + speed *= AIR_SPEED_FACTOR # Sprungweite (siehe Konstante) self.vx = move * speed if move: self.facing = move