Simple pregunta
#1

Hola, їComo defino la tecla "ESC" en ONPLAYERKEYSTATECHANGE? gracias
Reply
#2

Si quieres detectar el botуn ESC, lamentablemente no se podrб. No se puede detectar ninguna tecla que NO aparezca en esta lista.

Bбsicamente no puedes detectar la tecla ESC (AFAIK)
Reply
#3

Nono, pregunto porque cuando uso el SelectTextdraw(); el usuario presiona Esc y cancela el select, solo quiero que cuando el usuario precione esc se oculten todos los textdraw, se cancele el selectable y se muestren los TD que van en la visualizaciуn de mi servidor. Gracias por responder
Reply
#4

Ah, ya entendн .

Es algo simple, cuando un jugador tiene SelectTextdraw() activado y si apreta ESC, retornarб INVALID_TEXT_DRAW en OnPlayerClickTextDraw


pawn Код:
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
    if(clickedid == INVALID_TEXT_DRAW) //INVALID_TEXT_DRAW = 0xFFFF
    {
         SendClientMessage(playerid, 0xFFFFFFAA, "їPOR QUЙ ME CANCELAS? їNO ME QUIERES?");
         //El resto de las acciones van aquн :)
    }
    return 1;
}
Espero que se entienda
Reply
#5

Quote:
Originally Posted by Edugta.
Посмотреть сообщение
Ah, ya entendн .

Es algo simple, cuando un jugador tiene SelectTextdraw() activado y si apreta ESC, retornarб INVALID_TEXT_DRAW en OnPlayerClickTextDraw (O en OnPlayerClickPlayerTextDraw, todo depende el TextDraw)


pawn Код:
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
    if(clickedid == INVALID_TEXT_DRAW) //INVALID_TEXT_DRAW = 0xFFFF
    {
         SendClientMessage(playerid, 0xFFFFFFAA, "їPOR QUЙ ME CANCELAS? їNO ME QUIERES?");
         CancelSelectTextDraw(playerid);
         //El resto de las acciones van aquн :)
    }
    return 1;
}
Espero que se entienda
Pero esa funciуn solo se llama cuando un jugador hace click sobre el textdraw, por ende si lo cancela con esc y nunca hace click en la pantalla tu mensaje no serб mostrado...
Reply
#6

Quote:
Originally Posted by Edugta.
Посмотреть сообщение
Ah, ya entendн .

Es algo simple, cuando un jugador tiene SelectTextdraw() activado y si apreta ESC, retornarб INVALID_TEXT_DRAW en OnPlayerClickTextDraw (O en OnPlayerClickPlayerTextDraw, todo depende el TextDraw)


pawn Код:
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
    if(clickedid == INVALID_TEXT_DRAW) //INVALID_TEXT_DRAW = 0xFFFF
    {
         SendClientMessage(playerid, 0xFFFFFFAA, "їPOR QUЙ ME CANCELAS? їNO ME QUIERES?");
         //El resto de las acciones van aquн :)
    }
    return 1;
}
Espero que se entienda
Eso es cuando el usuario clickea el Textdraw, pero si no lo clickea y presiona esc?
Reply
#7

Quote:
Originally Posted by eRRe
Посмотреть сообщение
Pero esa funciуn solo se llama cuando un jugador hace click sobre el textdraw, por ende si lo cancela con esc y nunca hace click en la pantalla tu mensaje no serб mostrado...
El CallBack se llama si apretas ESC, retornando "clickedid" como "65535" (O INVALID_TEXT_DRAW), osea, nada, nulo, invбlido.

Bбsicamente "if(clickedid == INVALID_TEXT_DRAW)" detecta si "clickedid" es invбlido (nulo, nada, como quieras )
Reply
#8

Quote:
Originally Posted by Edugta.
Посмотреть сообщение
El CallBack se llama si apretas ESC, retornando "clickedid" como "65535" (O INVALID_TEXT_DRAW), osea, nada, nulo, invбlido.

Bбsicamente "if(clickedid == INVALID_TEXT_DRAW)" detecta si "clickedid" es invбlido (nulo, nada, como quieras )
Lo probarй, muchas gracias por tu respuesta. +rep
Reply
#9

Quote:
Originally Posted by Edugta.
Посмотреть сообщение
El CallBack se llama si apretas ESC, retornando "clickedid" como "65535" (O INVALID_TEXT_DRAW), osea, nada, nulo, invбlido.

Bбsicamente "if(clickedid == INVALID_TEXT_DRAW)" detecta si "clickedid" es invбlido (nulo, nada, como quieras )
Nunca lo probй, porque fijandome el nombre de la callback es lуgico que piense que solo es llamada con un click, por su nombre.
Reply
#10

Me acaba de surgir un problema, uso PlayerText, їCуmo seria?. Probe INVALID_PLAYER_TEXT y no va
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)