(Mentioned here and here.)
I think I found why.
This code handles landing after falling 2 rows: https://github.com/NagyD/SDLPoP/blob/ma ... 005.c#L151
Code: Select all
} else if (Char.fall_y < 33) {
if (Char.charid == charid_1_shadow) goto loc_5EFD;
if (Char.charid == charid_2_guard) goto loc_5F6C;
if (! take_hp(1)) {
play_sound(sound_16_medium_land); // medium land
is_guard_notice = 1;
seq_id = seq_20_medium_land; // medium land (lose 1 HP, crouch)
} else {
goto loc_5F75;
}
} else {
Instead the code assumes that if Char is not the shadow or a guard then it must be the kid.
So it plays the "medium land" sequence that uses frames that are appropriate only for the kid.
Now the question is: what *should* happen in this case?
In the SNES version, the skeleton "dies"... until the prince jumps over it.
But that version has graphics for this, while the DOS version doesn't.