_Manuel_
Дебютант
Приветствую. Делаю свой ДМ мод, делал всё на обычных диалогах, но решил некоторые вещи перевести на кликабельный textdraw. Одна из тех вещей - выбор ДМ зоны.
Ошибка заключается в том, что при нажатии на клавишу "Y" появляется textdraw, но он не кликабельный, хотя компилятор никаких ошибок или варнингов не выдаёт.
Вот исходный код:
пс - некоторые функции не добавил (закрытие текстдрава после клика например), так как нужно разобраться с этом проблемой. :dn:
Ошибка заключается в том, что при нажатии на клавишу "Y" появляется textdraw, но он не кликабельный, хотя компилятор никаких ошибок или варнингов не выдаёт.
Вот исходный код:
PHP:
#define POS new Random = random(sizeof(RandomDM));
#define SHOW TextDrawShowForPlayer(playerid, Textdraw0); TextDrawShowForPlayer(playerid, Textdraw1); TextDrawShowForPlayer(playerid, Textdraw2); TextDrawShowForPlayer(playerid, Textdraw3);
new Text:Textdraw0;
new Text:Textdraw1;
new Text:Textdraw2;
new Text:Textdraw3;
public OnGameModeInit()
{
Textdraw0 = TextDrawCreate(305.666656, 277.766662, "usebox");
TextDrawLetterSize(Textdraw0, 0.000000, 3.785390);
TextDrawTextSize(Textdraw0, 196.000000, 0.000000);
TextDrawAlignment(Textdraw0, 1);
TextDrawColor(Textdraw0, 0);
TextDrawUseBox(Textdraw0, true);
TextDrawBoxColor(Textdraw0, 102);
TextDrawSetShadow(Textdraw0, 0);
TextDrawSetOutline(Textdraw0, 0);
TextDrawFont(Textdraw0, 0);
Textdraw1 = TextDrawCreate(411.000000, 278.181457, "usebox");
TextDrawLetterSize(Textdraw1, 0.000000, 3.693210);
TextDrawTextSize(Textdraw1, 305.666656, 0.000000);
TextDrawAlignment(Textdraw1, 1);
TextDrawColor(Textdraw1, 0);
TextDrawUseBox(Textdraw1, true);
TextDrawBoxColor(Textdraw1, 102);
TextDrawSetShadow(Textdraw1, 0);
TextDrawSetOutline(Textdraw1, 0);
TextDrawFont(Textdraw1, 0);
Textdraw2 = TextDrawCreate(206.999969, 286.637023, "DeadMatch");
TextDrawLetterSize(Textdraw2, 0.449999, 1.600000);
TextDrawAlignment(Textdraw2, 1);
TextDrawColor(Textdraw2, -16776961);
TextDrawSetShadow(Textdraw2, 0);
TextDrawSetOutline(Textdraw2, 1);
TextDrawBackgroundColor(Textdraw2, 51);
TextDrawFont(Textdraw2, 1);
TextDrawSetProportional(Textdraw2, 1);
Textdraw3 = TextDrawCreate(336.333312, 286.222198, "Derby");
TextDrawLetterSize(Textdraw3, 0.449999, 1.600000);
TextDrawAlignment(Textdraw3, 1);
TextDrawColor(Textdraw3, 8388863);
TextDrawSetShadow(Textdraw3, 0);
TextDrawSetOutline(Textdraw3, 1);
TextDrawBackgroundColor(Textdraw3, 51);
TextDrawFont(Textdraw3, 1);
TextDrawSetProportional(Textdraw3, 1);
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys == KEY_YES)
{
SHOW
SelectTextDraw(playerid, 0x00FF00FF);
}
return 1;
}
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
if(clickedid == Textdraw0 && Textdraw1)
{
switch(clickedid)
{
case 0:
{
POS SetPlayerPos(playerid, RandomDM[Random][0], RandomDM[Random][1], RandomDM[Random][2]);
}
case 1:
{
SendClientMessage(playerid, 0xFFFFFFAA, "You clicked on a textdraw.");
}
}
return 1;
}
return 0;
}
Последнее редактирование модератором:
