Steh-Pose auf Slot 17 (frontal, wie DOSBox-Referenz) korrigiert; Slot 8 nur noch als 0.17s-Uebergangspose, Idle-Warteanimation nach 4s
This commit is contained in:
+12
-3
@@ -50,7 +50,8 @@ 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)
|
||||
RUN_ANIM_FPS = 17.5 # Rad hat dasselbe delay 4
|
||||
IDLE_ANIM_AFTER = 5.0 # Sekunden Stillstand bis zur Idle-Animation
|
||||
IDLE_ANIM_AFTER = 4.0 # Sekunden Stillstand bis zur Idle-Animation
|
||||
# (DOSBox-Timeline: Schachtel nach ~4s)
|
||||
IDLE_ANIM_FPS = 2.8 # Original: delay 25 Ticks @70Hz
|
||||
WATER_DAMAGE_EVERY = 1.5 # im Wasser: alle 1.5s ein Herz (Stefan: 5s war arg lang)
|
||||
SPAWN_ANIM_SECONDS = 1.1 # Start-Sprite beim Levelstart/Charakterwechsel
|
||||
@@ -85,12 +86,17 @@ SLOPE_CT = 16
|
||||
# Charakter hat, ergibt sich daraus, WELCHE Slots sein BOB enthaelt
|
||||
# (nur Tony hat 13-16 = rennen, nur Smacks/Toucan 25-28 = schwimmen,
|
||||
# nur Toucan 29-31 als Richtungs-Paare = fliegen, nur Coco 35-44 = hangeln).
|
||||
SLOT_IDLE = 8
|
||||
# Slot 17 = FRONTALE Steh-Pose (DOSBox-Abgleich stand_timeline.png: das
|
||||
# Original steht mit Bauch zur Kamera -- BOB 34 bei Tony). Slot 8 (BOB 16)
|
||||
# ist nur eine Seiten-/Uebergangspose und sah beim Stehen falsch aus
|
||||
# (Stefans Feedback "Stand-Animation passt nicht").
|
||||
SLOT_IDLE = 17
|
||||
SLOT_IDLE_LANDING = 8 # kurze Pose direkt nach der Landung (Tabelle [4][8,8,8])
|
||||
SLOT_JUMP = 9 # Springen/Fallen
|
||||
SLOT_SQUAT = 10 # Absprung-Hocke
|
||||
SLOT_ARMUP = 11 # Arm hoch / Daumen hoch (Spawn-Pose, Tabelle [70][10,11,10])
|
||||
SLOT_DUCK = 12
|
||||
SLOT_HURT = 17 # Schadens-/Schreck-Frames 17,18
|
||||
SLOT_STAND_ALT = 18 # zweite Frontal-Pose (Blinzeln/Variante)
|
||||
SLOT_DEATH = 19 # Tod (19, Sturz 20)
|
||||
SLOT_SWIM_IDLE = 25 # Treiben im Wasser (erster Schwimm-Frame; 22-24 sind
|
||||
# die "Schachtel essen"-Posen der Idle-Warteanimation)
|
||||
@@ -575,6 +581,9 @@ class Player:
|
||||
if self.idle_t >= IDLE_ANIM_AFTER:
|
||||
i = int((self.idle_t - IDLE_ANIM_AFTER) * IDLE_WAIT_FPS) % len(ANIM_IDLE_WAIT)
|
||||
return ANIM_IDLE_WAIT[i]
|
||||
if self.idle_t < 0.17:
|
||||
# kurze Uebergangspose beim Anhalten/Landen (Original [4][8,8,8])
|
||||
return SLOT_IDLE_LANDING
|
||||
return SLOT_IDLE
|
||||
|
||||
def draw(self, screen, cam_x, cam_y):
|
||||
|
||||
Reference in New Issue
Block a user