PDA

Просмотр полной версии : [Вопрос] Кликабельная зона



Prolific
02.04.2016, 11:18
Всем привет. Создал текстдрав типа 0, вот его код:


Textdraw0[playerid] = CreatePlayerTextDraw(playerid, 227.827239, 152.000000, "usebox");
PlayerTextDrawLetterSize(playerid, Textdraw0[playerid], 0.000000, 29.303701);
PlayerTextDrawTextSize(playerid, Textdraw0[playerid], 50.942901, 0.000000);
PlayerTextDrawAlignment(playerid, Textdraw0[playerid], 1);
PlayerTextDrawColor(playerid, Textdraw0[playerid], 0);
PlayerTextDrawUseBox(playerid, Textdraw0[playerid], true);
PlayerTextDrawBoxColor(playerid, Textdraw0[playerid], 255);
PlayerTextDrawSetShadow(playerid, Textdraw0[playerid], 0);
PlayerTextDrawSetOutline(playerid, Textdraw0[playerid], 0);
PlayerTextDrawFont(playerid, Textdraw0[playerid], 0);
PlayerTextDrawSetSelectable(playerid, Textdraw0[playerid], true);
Как настроить на нем зону кликабельности по его размеру, сколько мышкой не нажимал, коллбэк OnPlayerClickPlayerTextDraw не вызывался.
Знаю, что за зону кликабельности отвечает PlayerTextDrawTextSize, но какие параметры там выставлять?

Profyan
02.04.2016, 13:08
PlayerTextDrawLetterSize(playerid, Textdraw0[playerid], 0.000000, 29.303701);
PlayerTextDrawTextSize(playerid, Textdraw0[playerid], 50.942901, 0.000000);
Вот эти значения нужно изменять. И еще тут фишка:в зависимости от PlayerTextDrawAlignment, цифры будут разные.
Я вообще негодую по поводу TD в сампе. Так не удобно и вечно путаешься,что и когда изменять.

У тебя ITD editor есть? Ну и исходник этого TD? Если нет,то будет намного тяжелее настроить эту кликабельность ;(

Prolific
02.04.2016, 13:18
PlayerTextDrawLetterSize(playerid, Textdraw0[playerid], 0.000000, 29.303701);
PlayerTextDrawTextSize(playerid, Textdraw0[playerid], 50.942901, 0.000000);
Вот эти значения нужно изменять. И еще тут фишка,в зависимости от PlayerTextDrawAlignment, цифры будут разные.
Я вообще негодую по поводу TD в сампе. Так не удобно и вечно путаешься,что и когда изменять.

У тебя ITD editor есть? Ну и исходник этого TD? Если нет,то будет намного тяжелее настроить эту кликабельность ;(

Мне всего нужно 2 прямоугольника нарисовать, поэтому я могу нарисовать их заного, но что нужно проделать, чтобы настроить это зону?

Nash_Brigers
02.04.2016, 14:02
Обычные боксы, на сколько я помню, не могут быть кликабельными..
Делай через

PlayerTextDrawSetPreviewModel(playerid, TextDraw[playerid], 19292);И про TextDrawBackgroundColor не забудь.
Кликабельная зона, к стати, для таких TD сама запилится.

Prolific
02.04.2016, 14:10
Обычные боксы, на сколько я помню, не могут быть кликабельными..
Делай через

PlayerTextDrawSetPreviewModel(playerid, TextDraw[playerid], 19292);И про TextDrawBackgroundColor не забудь.
Кликабельная зона, к стати, для таких TD сама запилится.

PlayerTextDrawSetPreviewModel, это же для 4 типа. 4 тип ставить тогда?

Nash_Brigers
02.04.2016, 14:15
PlayerTextDrawSetPreviewModel, это же для 4 типа. 4 тип ставить тогда?
Пятый.

http://s019.radikal.ru/i619/1604/d9/603b7bc0dac5.png

Prolific
02.04.2016, 14:31
Пятый.

http://s019.radikal.ru/i619/1604/d9/603b7bc0dac5.png

Спасибо, чувак, тоже думал, что через 5 можно, вот только объект не мог найти невидимый.