Решил тут статью написать по созданию fsgui практически на триггерах. В чём же заключаеться мой метод?
Нужно просто узнать диаметр модели самих рамок интерфейса. Я использовал модели из статьи Jon'a об fsgui, от масштабированные на 2.00.
Но перейдём к статье, что на потребуеться:
JNGP
Пустая карта 64х64
И область в центре карты с самым минимальным масштабом (Область000) Создаём триггер с названием 'inicialization map' он будет в первую очередь ссылаться на базу координат, или базу точек которые в принципе чем то будут напоминать сетку. Приступим к созданию самой базы координат (в дальнейшем точек) , на этих точках и будут создаваться нужные нам декорации.
Диаметр моей декорации равен ~ 42.50. Я сделаю базу координат на 30х20 точек ,то есть в теории это будут точки по XY. Точкой x0y0 равна та самая область что мы создали.
Code
function Trig_InicializationPosDataBase_Actions takes nothing returns nothing
//X
set udg_ST_posX[1] = 42.50
set udg_ST_posX[2] = 85.00
set udg_ST_posX[3] = 127.50
set udg_ST_posX[4] = 170.00
set udg_ST_posX[5] = 215.50
set udg_ST_posX[6] = 255.00
set udg_ST_posX[7] = 297.5
set udg_ST_posX[8] = 340.00
set udg_ST_posX[9] = 382.50
set udg_ST_posX[10] = 425.00
set udg_ST_posX[11] = 467.50
set udg_ST_posX[12] = 510.00
set udg_ST_posX[13] = 552.50
set udg_ST_posX[14] = 595.00
set udg_ST_posX[15] = 637.50
set udg_ST_posX[16] = 680.00
set udg_ST_posX[17] = 722.50
set udg_ST_posX[18] = 765.00
set udg_ST_posX[19] = 807.50
set udg_ST_posX[20] = 850.00
set udg_ST_posX[21] = 892.50
set udg_ST_posX[22] = 935.00
set udg_ST_posX[23] = 977.50
set udg_ST_posX[24] = 1020.00
set udg_ST_posX[25] = 1062.50
set udg_ST_posX[26] = 1105.00
set udg_ST_posX[27] = 1147.50
set udg_ST_posX[28] = 1190.00
set udg_ST_posX[29] = 1232.50
set udg_ST_posX[30] = 1275.00
//Y
set udg_ST_posY[1] = -42.50
set udg_ST_posY[2] = -85.00
set udg_ST_posY[3] = -127.50
set udg_ST_posY[4] = -170.00
set udg_ST_posY[5] = -215.50
set udg_ST_posY[6] = -255.00
set udg_ST_posY[7] = -297.5
set udg_ST_posY[8] = -340.00
set udg_ST_posY[9] = -382.50
set udg_ST_posY[10] = -425.00
set udg_ST_posY[11] = -467.50
set udg_ST_posY[12] = -510.00
set udg_ST_posY[13] = -552.50
set udg_ST_posY[14] = -595.00
set udg_ST_posY[15] = -637.50
set udg_ST_posY[16] = -680.00
set udg_ST_posY[17] = -722.50
set udg_ST_posY[18] = -765.00
set udg_ST_posY[19] = -807.50
set udg_ST_posY[20] = -850.00
endfunction
Возьмём пример: (ST_posX[1-30]//type real)
set udg_ST_posX[1] = 42.50 по сути своей первая точка которая от считывается от нами созданной области.
set udg_ST_posX[2] = 85.00 ( т.е. мы тупо прибавили к 42.50+42.50)
set udg_ST_posX[3] = 127.50 (и так надо сделать до 30 массивов переменной ST_posX) с Y будем отсчитывать только двадцать массивов, с отрицательным значением
База точек готова, остаётся либо пихнуть её в инициализацию карты, либо в отдельный триггер с этой функцией (я предпочёл в отдельный триггер)
Ну а далее проделываем это:
ST_BasePosition = Область000
Об трекаблях пока не пишу
Скачать пример
Об прикрепления камер можно узнать в карте, если что то не так отписывайтесь ; )