Всем еще раз здрасте. Уже 2-ой день мучаюсь с текстдравом, раньше проблем с ними не было, сейчас начались какие-то аномалии. Прошу всех, кто заглянет в эту тему подумать, предложить ваши решения, если они будут, ведь это сегодня вас не касается, а завтра вы захотите инвентарь написать за пару часов и сядете в лужу.
Что я хочу сделать? Сделать прямоугольник кликабельным.
Суть проблемы:
1 Проблема. Создал текстдрав 5-го типа. Сделал его кликабельным. Выглядит он так:
скрин
При нажимании мышкой на правую часть коробки коллбэк OnPlayerClickTextDraw вызывается (Там, где цифра 2 - коллбэк вызывается, там, где цифра 1 - не вызывается).
Смотрите скрин
При переносе прямоугольника влево (уменьшение координаты X в TextDrawCreate) область кликабельности (область 2 на скрине) уменьшается (т.е. текстдрав сдвинул, а граница осталась).
Собственно код текстдрава:
PHP код:
inv_MainBox[1] = TextDrawCreate(52.474380, 149.333343, "LD_SPAC:white");
TextDrawLetterSize(inv_MainBox[1], 0.000000, 0.000000);
TextDrawTextSize(inv_MainBox[1], 173.821380, 268.916656);
TextDrawAlignment(inv_MainBox[1], 1);
TextDrawColor(inv_MainBox[1], -1);
TextDrawSetShadow(inv_MainBox[1], 0);
TextDrawSetOutline(inv_MainBox[1], 0);
TextDrawBackgroundColor(inv_MainBox[1], 102);
TextDrawFont(inv_MainBox[1], 5);
TextDrawSetPreviewModel(inv_MainBox[1], 19292);
TextDrawSetPreviewRot(inv_MainBox[1], 0.000000, 0.000000, 0.000000, 1.000000);
TextDrawSetSelectable(inv_MainBox[1], true);
2 Проблема. Аналогичный код текстдрава на другом моем скрипте запустился, НО, когда я кликаю на ТД, коллбэк OnPlayerClickTextDraw ВООБЩЕ не вызывается.
PHP код:
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
SCM(playerid, -1, "Callback");
return 1;
}
В отчаянии игрался с return (менял на 0, убирал), ничего не помогло.
Короче прошу помощи, вроде подробно описал проблему.
P.S.
Самое главное то, что аналогичный прямоугольник справа (1-ий серый, на который накладываются текстдравы предметов) отлично функционирует. Вся его зона кликабельна, т.е. коллбэк идеально вызывается.
P.P.S.
При наведении мышки на любую часть прямоугольника он меняет цвет (как и надо), но вот коллбэк вызывается не всегда (см. выше).