Тема: проект
Показать сообщение отдельно
Старый 30.12.2005, 16:06   #14
SubZer0
Администратор
 
Аватар для SubZer0
 
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений
(для 996 пользователей)
Originally posted by Red Ninja@Dec 30 2005, 01:28 PM
SubZer0
У тебя в Танке занов всю картинку ресиет,а надо чтобы поодельности!
Процедуру создай чтобы она определяла где камера(типо камера )находиться
и отрисовывала ту чать которую надо,а не ташило всю картику!

P.S Я Танчик толком непосмотрел,скинь ещё раз ссылку!
ты наверное не доконца понял весь смысл проги...

это показ тайловой карты на экран...

это рассчет позиций: ((xc, yc) - позиция на карте по тайлам, (xc1,yc1) - позиция тайлов на экране (для плавности))

xc:=SXPos/16+i;
yc:=SYPos/16+j;
xc1:=i*16-(SXPos mod 16)-16;
yc1:=j*16-(SYPos mod 16)-16;


а это выводит картинки на экран: (плюс условия на предотвращения ошибок выхода за границу карты)

if (xc>=1) and (xc<=FieldW) and (yc>=1) and (yc<=FieldH) then begin
drawimage(MO[GameFF[xc,yc]],xc1,yc1);
end;


хз где ты там нашел что картинка рисуется вся...

тут я рассчитываю сколько тайлов влезет на экран:
ScreenW:=GetWidth/16+1;
ScreenH:=GetHeight/16+2;

и пускаю по этим значениям главный цикл:
for i:=1 to ScreenW do for j:=1 to ScreenH do begin ........................


__________________
Как минимум я помог многим (с)
(Offline)
 
Ответить с цитированием