PDA

Просмотр полной версии : [Вопрос] Как сделать иконку на мигаюшию территорию при капте.



Zeror_Dalglish
11.07.2014, 01:01
В название все понятно :)
Используя http://wiki.sa-mp.com/wiki/SetPlayerMapIcon но там можно всего 3 координата.
А тут используется 4 координата GZInfo[i][gCoords][0], GZInfo[i][gCoords][1],GZInfo[i][gCoords][2],GZInfo[i][gCoords][3] (зоны)
Как сделать тогда?)

Daniel_Cortez
11.07.2014, 01:15
4 координаты в GZInfo[i] - это координаты не центра гангзоны, а двух её углов.
Предположим, что они хранятся в таком порядке: x1, y1, x2, y2.
Тогда координаты центра гангзоны можно будет получить следующим образом:


new Float:x = (GZInfo[i][gCoords][0]+GZInfo[i][gCoords][2])/2.0,
Float:y = (GZInfo[i][gCoords][1]+GZInfo[i][gCoords][3])/2.0;


С координатой Z будет посложнее: в GZInfo её нет. Впрочем, можно взять координату Z того игрока, из-за которого начался капт.

UPD: Забудьте всё, что я говорил о получении координаты Z из местоположения игрока - вместо неё можно было просто взять 0. Немного перепутал работу SetPlayerMapIcon с аналогичной функцией из стримера.

OKStyle
11.07.2014, 08:05
Z влияет только на то - будет ли иконка игрока выше иконки на карте или ниже.

Zeror_Dalglish
11.07.2014, 16:41
4 координаты в GZInfo[i] - это координаты не центра гангзоны, а двух её углов.
Предположим, что они хранятся в таком порядке: x1, y1, x2, y2.
Тогда координаты центра гангзоны можно будет получить следующим образом:


new Float:x = (GZInfo[i][gCoords][0]+GZInfo[i][gCoords][2])/2.0,
Float:y = (GZInfo[i][gCoords][1]+GZInfo[i][gCoords][3])/2.0;


С координатой Z будет посложнее: в GZInfo её нет. Впрочем, можно взять координату Z того игрока, из-за которого начался капт.

UPD: Забудьте всё, что я говорил о получении координаты Z из местоположения игрока - вместо неё можно было просто взять 0. Немного перепутал работу SetPlayerMapIcon с аналогичной функцией из стримера.
А как то можно сделать что бы в интерьерах иконка тоже была?)