Textdraw box wont click -
GGRPSkripter - 20.10.2015
I've made set of clickable textdraw box. When i click on one of them nothing heppens.
heres code of 1(rest are same, just another position). Thank you in advice.
Код:
// textdraw - ongamemodeinit
TDZlatara[2] = TextDrawCreate(176.666641, 110.355529, "box");
TextDrawLetterSize(TDZlatara[2], 0.000000, 4.533335);
TextDrawTextSize(TDZlatara[2], 204.333297, 0.000000);
TextDrawAlignment(TDZlatara[2], 1);
TextDrawColor(TDZlatara[2], -1);
TextDrawUseBox(TDZlatara[2], 1);
TextDrawBoxColor(TDZlatara[2], 255);
TextDrawSetShadow(TDZlatara[2], 0);
TextDrawSetOutline(TDZlatara[2], 0);
TextDrawBackgroundColor(TDZlatara[2], 255);
TextDrawFont(TDZlatara[2], 1);
TextDrawSetProportional(TDZlatara[2], 1);
TextDrawSetShadow(TDZlatara[2], 0);
TextDrawSetSelectable(TDZlatara[2], true);
// OnPlayerClickTextDraw
if(clickedid == TDZlatara[2]){
SPD(playerid, DIALOG_UNOSBOX_1, DIALOG_STYLE_INPUT, "1337 hackZ0r", "Unesite broj za lozinku.", "Potvrdi", "Odustani");
return 1;
}
// function that display textdraws
stock KreirajTDZlatara(playerid, status){
switch(status){
case 0:{
for(new i = 0;i<sizeof(TDZlatara);i++)
TextDrawHideForPlayer(playerid, TDZlatara[i]);
}
case 1:{
for(new i = 0;i<sizeof(TDZlatara);i++)
TextDrawShowForPlayer(playerid, TDZlatara[i]);
}
}
return 1;
}
Re: Textdraw box wont click -
Dusan01 - 20.10.2015
Hmmm, try it like this:
PHP код:
public OnPlayerClickTextDraw(playerid, Text:clickedid) {
if(_:clickedid != INVALID_TEXT_DRAW) {
if(clickedid == TDZlatara[2]) {
SPD(playerid, DIALOG_UNOSBOX_1, DIALOG_STYLE_INPUT, "1337 hackZ0r", "Unesite broj za lozinku.", "Potvrdi", "Odustani");
return 1;
}
}
return 1;
}
Re: Textdraw box wont click -
GGRPSkripter - 22.10.2015
Still same problem
Re: Textdraw box wont click -
Dusan01 - 22.10.2015
give full public OnPlayerClickTextDraw
Re: Textdraw box wont click -
GGRPSkripter - 23.10.2015
Код:
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
if(_:clickedid != INVALID_TEXT_DRAW) // If the player clicked a valid textdraw, continue with the coding. (_:var removes the Text: tag, to avoid tag mismatch)
{
if(clickedid == BankomatTD[7]){
ATM_StanjeRacuna(playerid, 1);
return 1;
}
if(clickedid == BankomatTD[8]){
ATM_PodizanjePara(playerid, 1);
ATMPodizanje[playerid] = true;
return 1;
}if(clickedid == BankomatTD[9]){
ATMPodizanje[playerid] = false;
Podignuo[playerid] = 0;
ATM_Izlaz(playerid);
CancelSelectTextDraw(playerid);
return 1;
}
if(clickedid == BankomatTD[11]){
ATM_GlavniMeni(playerid, 1);
return 1;
}
if(clickedid == BankomatTD[20]){
if(PI[playerid][Banka] < Podignuo[playerid])
return SCM(playerid, GRAD2, "[{F81414}Greska !{FFFFFF}] Nemate toliko novca na bankovnom racunu!");
if(ATMInfo[KoristiBankomat[playerid]][atmNovac] < Podignuo[playerid])
return SCM(playerid, GRAD2, "[{F81414}Greska !{FFFFFF}] Bankomat koji koristite nema toliko novca u sebi!");
if(Podignuo[playerid] > 99999999)
return SCM(playerid, GRAD2, "[{F81414}Greska !{FFFFFF}] Nevazeci iznost!");
PI[playerid][Banka] -= Podignuo[playerid];
ATMInfo[KoristiBankomat[playerid]][atmNovac] -= Podignuo[playerid];
NovacPlus(playerid, Podignuo[playerid]);
new imezadb[MAX_PLAYER_NAME];
ImeIgraca(playerid, imezadb);
format(CmdString, sizeof(CmdString), "UPDATE `Igraci` SET `Banka` = '%d' WHERE `Ime` = '%s'", PI[playerid][Banka], imezadb);
sql_query(mysql, CmdString);
format(CmdString, sizeof(CmdString), "UPDATE `Bankomati` SET `Novac` = '%d' WHERE `ID` = '%d'", ATMInfo[KoristiBankomat[playerid]][atmNovac], KoristiBankomat[playerid]);
sql_query(mysql, CmdString);
TextDrawHideForPlayer(playerid, BankomatTD[16]);
format(CmdString, sizeof(CmdString), "0");
TextDrawSetString(BankomatTD[16], CmdString);
TextDrawShowForPlayer(playerid, BankomatTD[16]);
Podignuo[playerid] = 0;
return 1;
}
///////////////////////////////////////////////////////////////////////
if(clickedid == GLogin3) // LOGIN
{
new szQuery[64+MAX_PLAYER_NAME];
new szPlayerName[MAX_PLAYER_NAME];
ImeIgraca(playerid, szPlayerName);
format(szQuery, sizeof(szQuery), "SELECT `ID` FROM `Igraci` WHERE `Ime` = '%s' LIMIT 1", szPlayerName);
sql_query(mysql, szQuery, QUERY_THREADED | QUERY_CACHED, "mysql_CheckPlayerAccount1", "ri", playerid);
return 1;
}
if(clickedid == GLogin5) // REGISTER
{
new szQuery[64+MAX_PLAYER_NAME];
new szPlayerName[MAX_PLAYER_NAME];
ImeIgraca(playerid, szPlayerName);
format(szQuery, sizeof(szQuery), "SELECT `ID` FROM `Igraci` WHERE `Ime` = '%s' LIMIT 1", szPlayerName);
sql_query(mysql, szQuery, QUERY_THREADED | QUERY_CACHED, "mysql_CheckPlayerAccount2", "ri", playerid);
return 1;
}
if(clickedid == GLogin15) // FORUM
{
ShowPlayerDialog(playerid, 9999, DIALOG_STYLE_MSGBOX,"{07C1F5}Forum","{07C1F5}Forum link: {FFFFFF}www.gg-samp.com","OK","");
return 1;
}
if(clickedid == GLogin17) // TS3
{
ShowPlayerDialog(playerid, 9999, DIALOG_STYLE_MSGBOX,"{07C1F5}TeamSpeak3","{07C1F5}TeamSpeak 3 IP: {FFFFFF}178.33.216.112","OK","");
return 1;
}
/////////////////// ZLATARA OBIJANJE ///////////////////////////////////
if(_:clickedid != INVALID_TEXT_DRAW) {
if(clickedid == TDZlatara[2]){
SPD(playerid, DIALOG_UNOSBOX_1, DIALOG_STYLE_INPUT, "1337 hackZ0r", "Unesite broj za lozinku.", "Potvrdi", "Odustani");
return 1;
}
if(clickedid == TDZlatara[3]){
SPD(playerid, DIALOG_UNOSBOX_2, DIALOG_STYLE_INPUT, "1337 hackZ0r", "Unesite broj za lozinku.", "Potvrdi", "Odustani");
return 1;
}
if(clickedid == TDZlatara[4]){
SPD(playerid, DIALOG_UNOSBOX_3, DIALOG_STYLE_INPUT, "1337 hackZ0r", "Unesite broj za lozinku.", "Potvrdi", "Odustani");
return 1;
}
if(clickedid == TDZlatara[5]){
SPD(playerid, DIALOG_UNOSBOX_4, DIALOG_STYLE_INPUT, "1337 hackZ0r", "Unesite broj za lozinku.", "Potvrdi", "Odustani");
return 1;
}
if(clickedid == TDZlatara[6]){
SPD(playerid, DIALOG_UNOSBOX_5, DIALOG_STYLE_INPUT, "1337 hackZ0r", "Unesite broj za lozinku.", "Potvrdi", "Odustani");
return 1;
}
if(clickedid == TDZlatara[7]){
SPD(playerid, DIALOG_UNOSBOX_6, DIALOG_STYLE_INPUT, "1337 hackZ0r", "Unesite broj za lozinku.", "Potvrdi", "Odustani");
return 1;
}
if(clickedid == TDZlatara[8]){
SPD(playerid, DIALOG_UNOSBOX_7, DIALOG_STYLE_INPUT, "1337 hackZ0r", "Unesite broj za lozinku.", "Potvrdi", "Odustani");
return 1;
}
if(clickedid == TDZlatara[9]){
SPD(playerid, DIALOG_UNOSBOX_8, DIALOG_STYLE_INPUT, "1337 hackZ0r", "Unesite broj za lozinku.", "Potvrdi", "Odustani");
return 1;
}
if(clickedid == TDZlatara[10]){
SPD(playerid, DIALOG_UNOSBOX_9, DIALOG_STYLE_INPUT, "1337 hackZ0r", "Unesite broj za lozinku.", "Potvrdi", "Odustani");
return 1;
}
}
////////////////////////////////////////////////////////////////////////
}
if(_:clickedid == 65535 && GetPVarInt(playerid, "hid_input_active") != 0)
{
if(GetPVarInt(playerid, "hid_input_td_close") != 0) CancelInput(playerid);
else SelectTextDraw(playerid, 0xFFFFFFFF);
return 1;
}
return 1;
}
Re: Textdraw box wont click -
Pottus - 23.10.2015
Dusan doesn't know what he's doing the problem line is here.
TextDrawTextSize(TDZlatara[2], 204.333297, 0.000000);
You have not set height of the clickable area.
Re: Textdraw box wont click -
GGRPSkripter - 23.10.2015
What height should i set?
Re: Textdraw box wont click -
Dusan01 - 23.10.2015
@Pottus ahh i did not saw that
Try this:
Код:
TextDrawTextSize(TDZlatara[2], 204.333297, 20.000000);
- The TextDraw box starts 10.0 units up and 5.0 to the left as the origin (TextDrawCreate coordinate).
Re: Textdraw box wont click -
GGRPSkripter - 23.10.2015
Still same problem, when i click on box, nothing heppens.
Re: Textdraw box wont click -
GGRPSkripter - 23.10.2015
Even when i recreated TD and used just text with useboxes still same problem.