Функция рисования сетки очень проста, не будем на ней углубляться. Просто создадим два цикла, которые будут рисовать линии по оси X и оси Y, и добавим код функции в программу.
Function drawlines()
local x%
local y%
for y = 0 to g_screen_heigth step 40
drawline 0,y,g_screen_width,y
next
for x = 0 ti g_screen_width step 40
drawline x,0,x,g_screen_heigth
next
end function
Если вам что-либо в данном коде непонятно, пишите в комментариях.
А теперь создадим функцию, которая будет рисовать тайлы на сетке, для упрощенного визуального восприятия. Вообще для этого лучше рисовать изображения тайлов из готового тайлсета вашей игры, но в этом уроке будем изображать цифры.
Function drawtiles()
for y = 0 to g_screen_heigth step 40
for x = 0 to g_screen_width step 40
drawtext map[x/40,y/40],x,y
next
next
end function
Функция drawtext text,x,y отображает текст (text) в координатах X (x) и Y (y).
В качестве текста используем значение map[x/40,y/40], а деленное на сорок потому, что в цикле используется шаг по экрану в 40 пикселей. В моём редакторе карт вообще всё завязано под цифрой 40.
Добавьте эти функции в исходный код программы.
В следующей части будет добавлена функция savemap(), а также будут подведены итоги и добавлю весь исходный код редактора карт.
***
Function drawlines()
local x%
local y%
for y = 0 to g_screen_heigth step 40
drawline 0,y,g_screen_width,y
next
for x = 0 ti g_screen_width step 40
drawline x,0,x,g_screen_heigth
next
end function
Если вам что-либо в данном коде непонятно, пишите в комментариях.
А теперь создадим функцию, которая будет рисовать тайлы на сетке, для упрощенного визуального восприятия. Вообще для этого лучше рисовать изображения тайлов из готового тайлсета вашей игры, но в этом уроке будем изображать цифры.
Function drawtiles()
for y = 0 to g_screen_heigth step 40
for x = 0 to g_screen_width step 40
drawtext map[x/40,y/40],x,y
next
next
end function
Функция drawtext text,x,y отображает текст (text) в координатах X (x) и Y (y).
В качестве текста используем значение map[x/40,y/40], а деленное на сорок потому, что в цикле используется шаг по экрану в 40 пикселей. В моём редакторе карт вообще всё завязано под цифрой 40.
Добавьте эти функции в исходный код программы.
В следующей части будет добавлена функция savemap(), а также будут подведены итоги и добавлю весь исходный код редактора карт.
***
Комментариев нет:
Отправить комментарий