Gasilator
Умник
Привет всем! Недавно начал делать меню для смены цвета авто на кликабельных тексдравах, но сами тексдравы не нажимаются
Вот полный код моего демо-скрипта:
Ошибок вроде нету, меню само работает, а вот при кликах нету никакой реакции
Скрин самой менюшки (пока что только 10 цветов)
Заранее спасибо за помощь
Вот полный код моего демо-скрипта:
#include <a_samp>
new Text:COLORMENU;
new Text:COLOR[10];
new vehicleid;
public OnGameModeInit()
{
COLORMENU = TextDrawCreate(504.000000, 123.000000, "_");
TextDrawBackgroundColor(COLORMENU, 255);
TextDrawFont(COLORMENU, 1);
TextDrawLetterSize(COLORMENU, 0.500000, 30.000000);
TextDrawColor(COLORMENU, -1);
TextDrawSetProportional(COLORMENU, 1);
TextDrawSetShadow(COLORMENU, 1);
TextDrawUseBox(COLORMENU, 1);
TextDrawBoxColor(COLORMENU, 255);
TextDrawTextSize(COLORMENU, 160.000000, 40.000000);
COLOR[0] = TextDrawCreate(197.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[0], 255);
TextDrawFont(COLOR[0], 1);
TextDrawLetterSize(COLOR[0], 0.290000, 2.000000);
TextDrawColor(COLOR[0], -1);
TextDrawSetProportional(COLOR[0], 1);
TextDrawSetShadow(COLOR[0], 1);
TextDrawUseBox(COLOR[0], 1);
TextDrawBoxColor(COLOR[0], 393549823);
TextDrawTextSize(COLOR[0], 164.000000, 0.000000);
COLOR[1] = TextDrawCreate(229.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[1], 255);
TextDrawFont(COLOR[1], 1);
TextDrawLetterSize(COLOR[1], 0.500000, 2.000000);
TextDrawColor(COLOR[1], -1);
TextDrawSetProportional(COLOR[1], 1);
TextDrawSetShadow(COLOR[1], 1);
TextDrawUseBox(COLOR[1], 1);
TextDrawBoxColor(COLOR[1], 554043135);
TextDrawTextSize(COLOR[1], 196.000000, 0.000000);
COLOR[2] = TextDrawCreate(263.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[2], 255);
TextDrawFont(COLOR[2], 1);
TextDrawLetterSize(COLOR[2], 0.500000, 2.000000);
TextDrawColor(COLOR[2], -1);
TextDrawSetProportional(COLOR[2], 1);
TextDrawSetShadow(COLOR[2], 1);
TextDrawUseBox(COLOR[2], 1);
TextDrawBoxColor(COLOR[2], 307525887);
TextDrawTextSize(COLOR[2], 228.000000, 0.000000);
COLOR[3] = TextDrawCreate(296.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[3], 255);
TextDrawFont(COLOR[3], 1);
TextDrawLetterSize(COLOR[3], 0.500000, 2.000000);
TextDrawColor(COLOR[3], -1);
TextDrawSetProportional(COLOR[3], 1);
TextDrawSetShadow(COLOR[3], 1);
TextDrawUseBox(COLOR[3], 1);
TextDrawBoxColor(COLOR[3], 1160383999);
TextDrawTextSize(COLOR[3], 261.000000, 0.000000);
COLOR[4] = TextDrawCreate(329.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[4], 255);
TextDrawFont(COLOR[4], 1);
TextDrawLetterSize(COLOR[4], 0.500000, 2.000000);
TextDrawColor(COLOR[4], -1);
TextDrawSetProportional(COLOR[4], 1);
TextDrawSetShadow(COLOR[4], 1);
TextDrawUseBox(COLOR[4], 1);
TextDrawBoxColor(COLOR[4], 1461591807);
TextDrawTextSize(COLOR[4], 294.000000, 0.000000);
COLOR[5] = TextDrawCreate(363.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[5], 255);
TextDrawFont(COLOR[5], 1);
TextDrawLetterSize(COLOR[5], 0.500000, 2.000000);
TextDrawColor(COLOR[5], -1);
TextDrawSetProportional(COLOR[5], 1);
TextDrawSetShadow(COLOR[5], 1);
TextDrawUseBox(COLOR[5], 1);
TextDrawBoxColor(COLOR[5], 17236479);
TextDrawTextSize(COLOR[5], 327.000000, 0.000000);
COLOR[6] = TextDrawCreate(398.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[6], 255);
TextDrawFont(COLOR[6], 1);
TextDrawLetterSize(COLOR[6], 0.500000, 2.000000);
TextDrawColor(COLOR[6], -1);
TextDrawSetProportional(COLOR[6], 1);
TextDrawSetShadow(COLOR[6], 1);
TextDrawUseBox(COLOR[6], 1);
TextDrawBoxColor(COLOR[6], 623008511);
TextDrawTextSize(COLOR[6], 361.000000, -17.000000);
COLOR[7] = TextDrawCreate(432.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[7], 255);
TextDrawFont(COLOR[7], 1);
TextDrawLetterSize(COLOR[7], 0.500000, 2.000000);
TextDrawColor(COLOR[7], -1);
TextDrawSetProportional(COLOR[7], 1);
TextDrawSetShadow(COLOR[7], 1);
TextDrawUseBox(COLOR[7], 1);
TextDrawBoxColor(COLOR[7], 747219711);
TextDrawTextSize(COLOR[7], 396.000000, 0.000000);
COLOR[8] = TextDrawCreate(466.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[8], 255);
TextDrawFont(COLOR[8], 1);
TextDrawLetterSize(COLOR[8], 0.500000, 2.000000);
TextDrawColor(COLOR[8], -1);
TextDrawSetProportional(COLOR[8], 1);
TextDrawSetShadow(COLOR[8], 1);
TextDrawUseBox(COLOR[8], 1);
TextDrawBoxColor(COLOR[8], -1974616577);
TextDrawTextSize(COLOR[8], 429.000000, 0.000000);
COLOR[9] = TextDrawCreate(501.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[9], 255);
TextDrawFont(COLOR[9], 1);
TextDrawLetterSize(COLOR[9], 0.500000, 2.000000);
TextDrawColor(COLOR[9], -1);
TextDrawSetProportional(COLOR[9], 1);
TextDrawSetShadow(COLOR[9], 1);
TextDrawUseBox(COLOR[9], 1);
TextDrawBoxColor(COLOR[9], 899037951);
TextDrawTextSize(COLOR[9], 464.000000, 0.000000);
TextDrawSetSelectable(COLORMENU, false);
TextDrawSetSelectable(COLOR[0], true);
TextDrawSetSelectable(COLOR[1], true);
TextDrawSetSelectable(COLOR[2], true);
TextDrawSetSelectable(COLOR[3], true);
TextDrawSetSelectable(COLOR[4], true);
TextDrawSetSelectable(COLOR[5], true);
TextDrawSetSelectable(COLOR[6], true);
TextDrawSetSelectable(COLOR[7], true);
TextDrawSetSelectable(COLOR[8], true);
TextDrawSetSelectable(COLOR[9], true);
return 1;
}
public OnGameModeExit()
{
TextDrawDestroy(COLORMENU);
TextDrawDestroy(COLOR[0]);
TextDrawDestroy(COLOR[1]);
TextDrawDestroy(COLOR[2]);
TextDrawDestroy(COLOR[3]);
TextDrawDestroy(COLOR[4]);
TextDrawDestroy(COLOR[5]);
TextDrawDestroy(COLOR[6]);
TextDrawDestroy(COLOR[7]);
TextDrawDestroy(COLOR[8]);
TextDrawDestroy(COLOR[9]);
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/carcolor", cmdtext, true, 10) == 0)
{
TextDrawShowForPlayer(playerid, COLORMENU);
TextDrawShowForPlayer(playerid, COLOR[0]);
TextDrawShowForPlayer(playerid, COLOR[1]);
TextDrawShowForPlayer(playerid, COLOR[2]);
TextDrawShowForPlayer(playerid, COLOR[3]);
TextDrawShowForPlayer(playerid, COLOR[4]);
TextDrawShowForPlayer(playerid, COLOR[5]);
TextDrawShowForPlayer(playerid, COLOR[6]);
TextDrawShowForPlayer(playerid, COLOR[7]);
TextDrawShowForPlayer(playerid, COLOR[8]);
TextDrawShowForPlayer(playerid, COLOR[9]);
SelectTextDraw(playerid, 0xAFAFAFAA);
return 1;
}
return 0;
}
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
vehicleid = GetPlayerVehicleID(playerid);
if(clickedid != INVALID_TEXT_DRAW)
{
if(clickedid == COLOR[0]) ChangeVehicleColor(vehicleid, 128, 128);
if(clickedid == COLOR[1]) ChangeVehicleColor(vehicleid, 129, 129);
if(clickedid == COLOR[2]) ChangeVehicleColor(vehicleid, 130, 130);
if(clickedid == COLOR[3]) ChangeVehicleColor(vehicleid, 131, 131);
if(clickedid == COLOR[4]) ChangeVehicleColor(vehicleid, 132, 132);
if(clickedid == COLOR[5]) ChangeVehicleColor(vehicleid, 133, 133);
if(clickedid == COLOR[6]) ChangeVehicleColor(vehicleid, 134, 134);
if(clickedid == COLOR[7]) ChangeVehicleColor(vehicleid, 135, 135);
if(clickedid == COLOR[8]) ChangeVehicleColor(vehicleid, 136, 136);
if(clickedid == COLOR[9]) ChangeVehicleColor(vehicleid, 137, 137);
TextDrawHideForPlayer(playerid, COLORMENU);
TextDrawHideForPlayer(playerid, COLOR[0]);
TextDrawHideForPlayer(playerid, COLOR[1]);
TextDrawHideForPlayer(playerid, COLOR[2]);
TextDrawHideForPlayer(playerid, COLOR[3]);
TextDrawHideForPlayer(playerid, COLOR[4]);
TextDrawHideForPlayer(playerid, COLOR[5]);
TextDrawHideForPlayer(playerid, COLOR[6]);
TextDrawHideForPlayer(playerid, COLOR[7]);
TextDrawHideForPlayer(playerid, COLOR[8]);
TextDrawHideForPlayer(playerid, COLOR[9]);
CancelSelectTextDraw(playerid);
}
return 1;
}
new Text:COLORMENU;
new Text:COLOR[10];
new vehicleid;
public OnGameModeInit()
{
COLORMENU = TextDrawCreate(504.000000, 123.000000, "_");
TextDrawBackgroundColor(COLORMENU, 255);
TextDrawFont(COLORMENU, 1);
TextDrawLetterSize(COLORMENU, 0.500000, 30.000000);
TextDrawColor(COLORMENU, -1);
TextDrawSetProportional(COLORMENU, 1);
TextDrawSetShadow(COLORMENU, 1);
TextDrawUseBox(COLORMENU, 1);
TextDrawBoxColor(COLORMENU, 255);
TextDrawTextSize(COLORMENU, 160.000000, 40.000000);
COLOR[0] = TextDrawCreate(197.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[0], 255);
TextDrawFont(COLOR[0], 1);
TextDrawLetterSize(COLOR[0], 0.290000, 2.000000);
TextDrawColor(COLOR[0], -1);
TextDrawSetProportional(COLOR[0], 1);
TextDrawSetShadow(COLOR[0], 1);
TextDrawUseBox(COLOR[0], 1);
TextDrawBoxColor(COLOR[0], 393549823);
TextDrawTextSize(COLOR[0], 164.000000, 0.000000);
COLOR[1] = TextDrawCreate(229.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[1], 255);
TextDrawFont(COLOR[1], 1);
TextDrawLetterSize(COLOR[1], 0.500000, 2.000000);
TextDrawColor(COLOR[1], -1);
TextDrawSetProportional(COLOR[1], 1);
TextDrawSetShadow(COLOR[1], 1);
TextDrawUseBox(COLOR[1], 1);
TextDrawBoxColor(COLOR[1], 554043135);
TextDrawTextSize(COLOR[1], 196.000000, 0.000000);
COLOR[2] = TextDrawCreate(263.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[2], 255);
TextDrawFont(COLOR[2], 1);
TextDrawLetterSize(COLOR[2], 0.500000, 2.000000);
TextDrawColor(COLOR[2], -1);
TextDrawSetProportional(COLOR[2], 1);
TextDrawSetShadow(COLOR[2], 1);
TextDrawUseBox(COLOR[2], 1);
TextDrawBoxColor(COLOR[2], 307525887);
TextDrawTextSize(COLOR[2], 228.000000, 0.000000);
COLOR[3] = TextDrawCreate(296.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[3], 255);
TextDrawFont(COLOR[3], 1);
TextDrawLetterSize(COLOR[3], 0.500000, 2.000000);
TextDrawColor(COLOR[3], -1);
TextDrawSetProportional(COLOR[3], 1);
TextDrawSetShadow(COLOR[3], 1);
TextDrawUseBox(COLOR[3], 1);
TextDrawBoxColor(COLOR[3], 1160383999);
TextDrawTextSize(COLOR[3], 261.000000, 0.000000);
COLOR[4] = TextDrawCreate(329.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[4], 255);
TextDrawFont(COLOR[4], 1);
TextDrawLetterSize(COLOR[4], 0.500000, 2.000000);
TextDrawColor(COLOR[4], -1);
TextDrawSetProportional(COLOR[4], 1);
TextDrawSetShadow(COLOR[4], 1);
TextDrawUseBox(COLOR[4], 1);
TextDrawBoxColor(COLOR[4], 1461591807);
TextDrawTextSize(COLOR[4], 294.000000, 0.000000);
COLOR[5] = TextDrawCreate(363.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[5], 255);
TextDrawFont(COLOR[5], 1);
TextDrawLetterSize(COLOR[5], 0.500000, 2.000000);
TextDrawColor(COLOR[5], -1);
TextDrawSetProportional(COLOR[5], 1);
TextDrawSetShadow(COLOR[5], 1);
TextDrawUseBox(COLOR[5], 1);
TextDrawBoxColor(COLOR[5], 17236479);
TextDrawTextSize(COLOR[5], 327.000000, 0.000000);
COLOR[6] = TextDrawCreate(398.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[6], 255);
TextDrawFont(COLOR[6], 1);
TextDrawLetterSize(COLOR[6], 0.500000, 2.000000);
TextDrawColor(COLOR[6], -1);
TextDrawSetProportional(COLOR[6], 1);
TextDrawSetShadow(COLOR[6], 1);
TextDrawUseBox(COLOR[6], 1);
TextDrawBoxColor(COLOR[6], 623008511);
TextDrawTextSize(COLOR[6], 361.000000, -17.000000);
COLOR[7] = TextDrawCreate(432.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[7], 255);
TextDrawFont(COLOR[7], 1);
TextDrawLetterSize(COLOR[7], 0.500000, 2.000000);
TextDrawColor(COLOR[7], -1);
TextDrawSetProportional(COLOR[7], 1);
TextDrawSetShadow(COLOR[7], 1);
TextDrawUseBox(COLOR[7], 1);
TextDrawBoxColor(COLOR[7], 747219711);
TextDrawTextSize(COLOR[7], 396.000000, 0.000000);
COLOR[8] = TextDrawCreate(466.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[8], 255);
TextDrawFont(COLOR[8], 1);
TextDrawLetterSize(COLOR[8], 0.500000, 2.000000);
TextDrawColor(COLOR[8], -1);
TextDrawSetProportional(COLOR[8], 1);
TextDrawSetShadow(COLOR[8], 1);
TextDrawUseBox(COLOR[8], 1);
TextDrawBoxColor(COLOR[8], -1974616577);
TextDrawTextSize(COLOR[8], 429.000000, 0.000000);
COLOR[9] = TextDrawCreate(501.000000, 150.000000, "_");
TextDrawBackgroundColor(COLOR[9], 255);
TextDrawFont(COLOR[9], 1);
TextDrawLetterSize(COLOR[9], 0.500000, 2.000000);
TextDrawColor(COLOR[9], -1);
TextDrawSetProportional(COLOR[9], 1);
TextDrawSetShadow(COLOR[9], 1);
TextDrawUseBox(COLOR[9], 1);
TextDrawBoxColor(COLOR[9], 899037951);
TextDrawTextSize(COLOR[9], 464.000000, 0.000000);
TextDrawSetSelectable(COLORMENU, false);
TextDrawSetSelectable(COLOR[0], true);
TextDrawSetSelectable(COLOR[1], true);
TextDrawSetSelectable(COLOR[2], true);
TextDrawSetSelectable(COLOR[3], true);
TextDrawSetSelectable(COLOR[4], true);
TextDrawSetSelectable(COLOR[5], true);
TextDrawSetSelectable(COLOR[6], true);
TextDrawSetSelectable(COLOR[7], true);
TextDrawSetSelectable(COLOR[8], true);
TextDrawSetSelectable(COLOR[9], true);
return 1;
}
public OnGameModeExit()
{
TextDrawDestroy(COLORMENU);
TextDrawDestroy(COLOR[0]);
TextDrawDestroy(COLOR[1]);
TextDrawDestroy(COLOR[2]);
TextDrawDestroy(COLOR[3]);
TextDrawDestroy(COLOR[4]);
TextDrawDestroy(COLOR[5]);
TextDrawDestroy(COLOR[6]);
TextDrawDestroy(COLOR[7]);
TextDrawDestroy(COLOR[8]);
TextDrawDestroy(COLOR[9]);
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/carcolor", cmdtext, true, 10) == 0)
{
TextDrawShowForPlayer(playerid, COLORMENU);
TextDrawShowForPlayer(playerid, COLOR[0]);
TextDrawShowForPlayer(playerid, COLOR[1]);
TextDrawShowForPlayer(playerid, COLOR[2]);
TextDrawShowForPlayer(playerid, COLOR[3]);
TextDrawShowForPlayer(playerid, COLOR[4]);
TextDrawShowForPlayer(playerid, COLOR[5]);
TextDrawShowForPlayer(playerid, COLOR[6]);
TextDrawShowForPlayer(playerid, COLOR[7]);
TextDrawShowForPlayer(playerid, COLOR[8]);
TextDrawShowForPlayer(playerid, COLOR[9]);
SelectTextDraw(playerid, 0xAFAFAFAA);
return 1;
}
return 0;
}
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
vehicleid = GetPlayerVehicleID(playerid);
if(clickedid != INVALID_TEXT_DRAW)
{
if(clickedid == COLOR[0]) ChangeVehicleColor(vehicleid, 128, 128);
if(clickedid == COLOR[1]) ChangeVehicleColor(vehicleid, 129, 129);
if(clickedid == COLOR[2]) ChangeVehicleColor(vehicleid, 130, 130);
if(clickedid == COLOR[3]) ChangeVehicleColor(vehicleid, 131, 131);
if(clickedid == COLOR[4]) ChangeVehicleColor(vehicleid, 132, 132);
if(clickedid == COLOR[5]) ChangeVehicleColor(vehicleid, 133, 133);
if(clickedid == COLOR[6]) ChangeVehicleColor(vehicleid, 134, 134);
if(clickedid == COLOR[7]) ChangeVehicleColor(vehicleid, 135, 135);
if(clickedid == COLOR[8]) ChangeVehicleColor(vehicleid, 136, 136);
if(clickedid == COLOR[9]) ChangeVehicleColor(vehicleid, 137, 137);
TextDrawHideForPlayer(playerid, COLORMENU);
TextDrawHideForPlayer(playerid, COLOR[0]);
TextDrawHideForPlayer(playerid, COLOR[1]);
TextDrawHideForPlayer(playerid, COLOR[2]);
TextDrawHideForPlayer(playerid, COLOR[3]);
TextDrawHideForPlayer(playerid, COLOR[4]);
TextDrawHideForPlayer(playerid, COLOR[5]);
TextDrawHideForPlayer(playerid, COLOR[6]);
TextDrawHideForPlayer(playerid, COLOR[7]);
TextDrawHideForPlayer(playerid, COLOR[8]);
TextDrawHideForPlayer(playerid, COLOR[9]);
CancelSelectTextDraw(playerid);
}
return 1;
}
Скрин самой менюшки (пока что только 10 цветов)
Заранее спасибо за помощь
