Sprungweite +1 Blattlaenge: AIR_SPEED_FACTOR 1.27 (Sprungweite 92->114px), Sprunghoehe zurueck auf -400 -- 'nicht hoeher sondern weiter'

This commit is contained in:
2026-07-26 11:21:27 +02:00
parent 0e8d38923a
commit fc3149a7a6
+9 -4
View File
@@ -42,10 +42,13 @@ GRAVITY = 900.0
# Scheitel den AST (~y505-516) erreichen, Smacks' Kopf das darunter # Scheitel den AST (~y505-516) erreichen, Smacks' Kopf das darunter
# haengende BLATT (~y511-526) -- gleiche Sprungkraft, verschiedene # haengende BLATT (~y511-526) -- gleiche Sprungkraft, verschiedene
# Koerpergroessen (56 vs 44 px), wie im Original (-0x18000 fuer alle). # Koerpergroessen (56 vs 44 px), wie im Original (-0x18000 fuer alle).
# 3. Feinjustage (Stefan mit Live-DOSBox-Vergleich nebeneinander): # Mit SPRITE_SINK=4 und Diskretisierung braucht das ~88px Scheitelhoehe
# "im normalen Sprung noch eine Blattlaenge (~1 Tile) hoeher" -> # (2. Feinjustage von Stefan: "Smacks bis Blatt, Tony bis Ast").
# Scheitel ~102px statt 86. JUMP_VELOCITY = -400.0
JUMP_VELOCITY = -430.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_GRAVITY = 240.0 # Smacks im Wasser: traege sinken
SWIM_KICK = -140.0 # Schwimmstoss mit Space SWIM_KICK = -140.0 # Schwimmstoss mit Space
WALK_ANIM_FPS = 17.5 # Original: delay 4 Ticks @70Hz (Binary-Tabelle) 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 speed = RUN_SPEED if self.running else WALK_SPEED
if self.swimming: if self.swimming:
speed *= 0.7 speed *= 0.7
elif not self.on_ground:
speed *= AIR_SPEED_FACTOR # Sprungweite (siehe Konstante)
self.vx = move * speed self.vx = move * speed
if move: if move:
self.facing = move self.facing = move