MIDlet Pascal
Поиск по сайту
Форма входа

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0


Яндекс.Метрика

Друзья сайта
IT юмор - развлечения
Заработать в интернете - легко!Просто сиди и кликай.
Воскресенье, 15.07.2018, 19.55.28
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход
Урок №2 - рисуем карту! "2D erni"
И первое с чего начнем, так это изображения)

1.png - это будет участок земли который будет копироватся на всю карту размер этого изо должен строго соблюдатся 30х30 пиксилей! Новые пиременные! x,y:integer; Новые функции! key:=keyToAction(getKeyPressed); k:=keyToAction(getKeyClicked); Розбераем! x,y:integer; - это будут кординаты нашего персонажа. key:=keyToAction(getKeyPressed); Обработка зажатой клавиши. Необходимо для таких целей как пиредвижениея персонажа) k:=keyToAction(getKeyClicked); Обработка нажатой клавиши. Необходимо для таких целей как повороты перса) Новые процедуры! procedure DrawMaps; var map_x:integer; map_y:integer; Begin For map_x:=0 To 10 Do For map_y:=0 To 10 Do DrawImage(img[1],(map_x*30)+x,(map_y*30)+y); End; Розбераем! var map_x:integer; map_y:integer; - это временные пиременные, также как и обычные они могут принимать какието параметры, но вотличии от простых эти пиременные обнуляются при каждом последующем вызове процедуры. For map_x:=0 To 10 Do For map_y:=0 To 10 Do DrawImage(img[1],(map_x*30)+x,(map_y*30)+y); Здесь мы при помощи цыкла For зацыкливываем наш участок земли, чтоб оброзовать карту, в настоящий момент игры всегда делались и делаются таким образом, поскольку это экономит процесор устройства, даже в компютерные игры карты собирают с маленьких кусочков)) Ну вот мы и закончили, хорошего понемногу) Весь Код выглядит так program erni; const image_count=2; width=240; height=320; var key,k, temp:integer; x,y,integer; img:array[1..image_count] of image; procedure LoadImages; Begin For temp:=1 To image_count Do img[temp]:=LoadImage(''+temp+'.png'); End; procedure Background; Begin SetColor(150,150,150); FillRect(0,0,width,height); End; procedure DrawMaps; var map_x:integer; map_y:integer; Begin For map_x:=0 To 10 Do For map_y:=0 To 10 Do DrawImage(img[1],(map_x*30)+x,(map_y*30)+y); End; begin LoadImages; Repeat key:=keyToAction(getKeyPressed); k:=keyToAction(getKeyClicked); Background; DrawMaps; Repaint; Delay(15); until false; end. Всем спосибо, В следующем уроке мы будем создавать анимацию и пперемищения персонажа по карте) инезабывайте посищать сайт
Автор: Андрей Ступницкий
Если вы нашли ошибки/очепятки в тексте то сообщите о них на форуме
А также можете заказать программу/игру на этой странице

www.parkflyer.ru - радиоуправляемые модели, радиоуправляемые модели самолетов, магазин радиоуправляемых моделей
Роспись стен, скульптуры на заказ
Wladymyr © 2012-2018
Создать бесплатный сайт с uCoz