diff --git a/applications/PoP/roomtest/pop_room.c b/applications/PoP/roomtest/pop_room.c index 6e50927..cb69342 100644 --- a/applications/PoP/roomtest/pop_room.c +++ b/applications/PoP/roomtest/pop_room.c @@ -704,12 +704,15 @@ void pop_spike_redraw(int row, int col) __banked void pop_chomp_redraw(int row, int col) __banked { int x = POP_COL_XH[col] * 8; - /* Высота 61, а не 64: след чомпера по вертикали — от 63*row+3 (верх - * самого высокого bot-кадра, 32x60 низом на dmy = 63*row+62) до - * 63*row+62. Верхняя челюсть выше не забирается: её подъём 0x32 = 50 - * при высоте 10 даёт 63*row+3. Габариты из каталога атласа - * (101/102 = 32x60, 111 = 27x23, 113 = 23x10). Задача HEAL-WIDTH. */ - pop_heal_off(x, 63 * row + 2, 32, 61); + /* РОВНО 32x60 — весь чомпер помещается в свой тайл, и это его точный + * след (замечание пользователя, проверено по каталогу атласа): + * нижняя челюсть 101/102 = 32x60 низом на dmy = 63*row+62, то есть + * занимает 63*row+3 .. +62; + * верхние челюсти дают ТОТ ЖЕ верх — подъём 0x25 при высоте 23, + * 0x2F при 13 и 0x32 при 10 все три дают 63*row+3; + * кровь 114..118 шириной 6 рисуется на x+8, то есть внутри 32. + * Было 64 «на всю высоту тайла» — четыре лишние строки. */ + pop_heal_off(x, 63 * row + 3, 32, 60); gfx_set_bank(GFX_BANK_SPRITE); draw_tile(row, col); gfx_set_bank(GFX_BANK_NORMAL);