Спасибо, жду еще вариантов.
Вид для печати
Там вроде бы описывается перемешение главного героя? Тогда General Personage.
Я по диагонали глянул, не вникал что за игра. Да, GetPosition лучше. Там как раз запоминаются координаты в BC перед передачей управления.
А зачем в книге перепутаны x и y координатные оси относительно общепринятых?
Перед переходом на segml мы же сохранили координаты в ВС, зачем сразу после него опять читать y их памяти? Он же есть в BC, и ld a,b лучше чем ld a,(ix+2).
Затем, проверив достижение левой границы экрана, мы уменьшаем аккумулятор и записываем его в B. Но ведь можно сразу dec B?
Да, и почему там где проверяется возможность движения сороканожки влево -- написано look right? т. е. смотри вправо?
прощеКод:segmov ld a,(ix+1) ; x coord.
ld c,a ; GP x area.
ld a,(ix+2) ; y coord.
ld b,a ; GP y area.
ld a,(ix) ; status flag.
ld c,(ix+1)
ld b,(ix+2)
Обновление. Переведена седьмая глава.
В этой главе меня заинтересовал один вопрос. Джонатан предлагает в качестве менее жесткой проверки на столкновение использовать алгоритм, с "отсечением" углов спрайтов. Так вот мне очень интересно на каком геометрическом принципе это основано? Пытался понять сам - так и не получилось. :v2_confu::v2_laugh: Если кто знает - объясните пожалуйста, желательно с картинкой!
геометрия и `отсечение` углов тут совсем не-причём, ты как-то очень заумно всё представил.
если расстояние между двумя спрайтами меньше их общей ширины то они столкнулись (наложились)
(тут надо вспомнить алгебру - метод интервалов)
http://xnafan.net/wp-content/uploads...04/image20.png
отсечение углов применяется когда спрайт занимает не целое знакоместо (рассматривается его фактический размер в пикселях)