[Ayuda] Textdraw clickable
#1

ЎHola a todos!
Creo este tema, por un problema que tengo con un Textdraw clickable.

Intentй crear un Texdraw clickable, el cual hice funcionar correctamente en el GM. El problema, es que al usar el comando, activa el textdraw, elijo una de las opciones y el textdraw desparece(lo tengo configurado asн), pero al intentar usar el comando otra vez, el textdraw no aparece, y a la vez, el puntero del mouse, titila levemente.

їAlguna soluciуn? Gracias de antemano.

ЎSaludos!
Reply
#2

podrнas mostrar algъn cуdigo de como lo haces?
Reply
#3

Pasa el codigo.
PD: Este foro requiere que tъ esperes 120 segundos entre mensajes. Por favor intenta de nuevo en 34 segundos.
Reply
#4

Quote:
Originally Posted by Zume-Zero
Посмотреть сообщение
podrнas mostrar algъn cуdigo de como lo haces?
Pongo alguno, son mбs pero se hace muy extenso sino.
Код:
    new Text:Textdraw2;

            Textdraw2 = TextDrawCreate(498.500000, 74.173301, "General");
            TextDrawLetterSize(Textdraw2, 0.449999, 1.600000);
            TextDrawAlignment(Textdraw2, 2);
            TextDrawColor(Textdraw2, -1);
            TextDrawSetShadow(Textdraw2, 0);
            TextDrawSetOutline(Textdraw2, 1);
            TextDrawBackgroundColor(Textdraw2, 51);
            TextDrawFont(Textdraw2, 2);
            TextDrawSetProportional(Textdraw2, 1);
            TextDrawSetSelectable(Textdraw2, true);

     zcmd(ayuda, playerid, params[])
            {
                TextDrawShowForPlayer(playerid, Textdraw2);
                SelectTextDraw(playerid, 0xA3B4C5FF);
                return 1;
    }


public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
    if(_:clickedid != INVALID_TEXT_DRAW)
    {
        if(clickedid == Textdraw2)
        {
		    ClearChatbox(playerid, 10);
		    Message(playerid, COLOR_WHITE, "-=[Ayuda General]=-");
		    Message(playerid, COLOR_GRAD2, "Comandos disponibles: [ADMINISTRACIУN] /reportar /duda /new /solicitaradmin");
		    Message(playerid, COLOR_GRAD2, "Comandos disponibles: /cuenta /subirnivel");
		}

TextDrawHideForPlayer(playerid, Textdraw0);
TextDrawHideForPlayer(playerid, Textdraw1);
TextDrawHideForPlayer(playerid, Textdraw2);
TextDrawHideForPlayer(playerid, Textdraw3);
TextDrawHideForPlayer(playerid, Textdraw4);
TextDrawHideForPlayer(playerid, Textdraw5);
TextDrawHideForPlayer(playerid, Textdraw6);
TextDrawHideForPlayer(playerid, Textdraw7);
TextDrawHideForPlayer(playerid, Textdraw8);
TextDrawHideForPlayer(playerid, Textdraw9);
TextDrawHideForPlayer(playerid, Textdraw10);
TextDrawHideForPlayer(playerid, Textdraw11);
TextDrawHideForPlayer(playerid, Textdraw12);
TextDrawHideForPlayer(playerid, Textdraw13);

CancelSelectTextDraw(playerid);
return 1;
}
Reply
#5

pawn Код:
zcmd(ayuda, playerid, params[])
{
    TextDrawShowForPlayer(playerid, Textdraw2);
    TextDrawShowForPlayer(playerid, Textdraw0);
    TextDrawShowForPlayer(playerid, Textdraw1);
    TextDrawShowForPlayer(playerid, Textdraw3);
    TextDrawShowForPlayer(playerid, Textdraw4);
    TextDrawShowForPlayer(playerid, Textdraw5);
    TextDrawShowForPlayer(playerid, Textdraw6);
    TextDrawShowForPlayer(playerid, Textdraw7);
    TextDrawShowForPlayer(playerid, Textdraw8);
    TextDrawShowForPlayer(playerid, Textdraw9);
    TextDrawShowForPlayer(playerid, Textdraw10);
    TextDrawShowForPlayer(playerid, Textdraw11);
    TextDrawShowForPlayer(playerid, Textdraw12);
    TextDrawShowForPlayer(playerid, Textdraw13);
    SelectTextDraw(playerid, 0xA3B4C5FF);
    return 1;
}
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
    if(_:clickedid != INVALID_TEXT_DRAW)
    {
        if(clickedid == Textdraw2)
        {
            ClearChatbox(playerid, 10);
            Message(playerid, COLOR_WHITE, "-=[Ayuda General]=-");
            Message(playerid, COLOR_GRAD2, "Comandos disponibles: [ADMINISTRACIУN] /reportar /duda /new /solicitaradmin");
            Message(playerid, COLOR_GRAD2, "Comandos disponibles: /cuenta /subirnivel");
            TextDrawHideForPlayer(playerid, Textdraw0);
            TextDrawHideForPlayer(playerid, Textdraw1);
            TextDrawHideForPlayer(playerid, Textdraw2);
            TextDrawHideForPlayer(playerid, Textdraw3);
            TextDrawHideForPlayer(playerid, Textdraw4);
            TextDrawHideForPlayer(playerid, Textdraw5);
            TextDrawHideForPlayer(playerid, Textdraw6);
            TextDrawHideForPlayer(playerid, Textdraw7);
            TextDrawHideForPlayer(playerid, Textdraw8);
            TextDrawHideForPlayer(playerid, Textdraw9);
            TextDrawHideForPlayer(playerid, Textdraw10);
            TextDrawHideForPlayer(playerid, Textdraw11);
            TextDrawHideForPlayer(playerid, Textdraw12);
            TextDrawHideForPlayer(playerid, Textdraw13);

            CancelSelectTextDraw(playerid);
        }
    }
    return 1;
}

public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
    if(_:clickedid != INVALID_TEXT_DRAW)
    {
        if(clickedid == Textdraw2)
        {
            ClearChatbox(playerid, 10);
            Message(playerid, COLOR_WHITE, "-=[Ayuda General]=-");
            Message(playerid, COLOR_GRAD2, "Comandos disponibles: [ADMINISTRACIУN] /reportar /duda /new /solicitaradmin");
            Message(playerid, COLOR_GRAD2, "Comandos disponibles: /cuenta /subirnivel");
            TextDrawHideForPlayer(playerid, Textdraw0);
            TextDrawHideForPlayer(playerid, Textdraw1);
            TextDrawHideForPlayer(playerid, Textdraw2);
            TextDrawHideForPlayer(playerid, Textdraw3);
            TextDrawHideForPlayer(playerid, Textdraw4);
            TextDrawHideForPlayer(playerid, Textdraw5);
            TextDrawHideForPlayer(playerid, Textdraw6);
            TextDrawHideForPlayer(playerid, Textdraw7);
            TextDrawHideForPlayer(playerid, Textdraw8);
            TextDrawHideForPlayer(playerid, Textdraw9);
            TextDrawHideForPlayer(playerid, Textdraw10);
            TextDrawHideForPlayer(playerid, Textdraw11);
            TextDrawHideForPlayer(playerid, Textdraw12);
            TextDrawHideForPlayer(playerid, Textdraw13);

            CancelSelectTextDraw(playerid);
        }
    }
    return 1;
}
Reply
#6

Quote:
Originally Posted by JustBored
Посмотреть сообщение
pawn Код:
zcmd(ayuda, playerid, params[])
{
    TextDrawShowForPlayer(playerid, Textdraw2);
    TextDrawShowForPlayer(playerid, Textdraw0);
    TextDrawShowForPlayer(playerid, Textdraw1);
    TextDrawShowForPlayer(playerid, Textdraw3);
    TextDrawShowForPlayer(playerid, Textdraw4);
    TextDrawShowForPlayer(playerid, Textdraw5);
    TextDrawShowForPlayer(playerid, Textdraw6);
    TextDrawShowForPlayer(playerid, Textdraw7);
    TextDrawShowForPlayer(playerid, Textdraw8);
    TextDrawShowForPlayer(playerid, Textdraw9);
    TextDrawShowForPlayer(playerid, Textdraw10);
    TextDrawShowForPlayer(playerid, Textdraw11);
    TextDrawShowForPlayer(playerid, Textdraw12);
    TextDrawShowForPlayer(playerid, Textdraw13);
    SelectTextDraw(playerid, 0xA3B4C5FF);
    return 1;
}
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
    if(_:clickedid != INVALID_TEXT_DRAW)
    {
        if(clickedid == Textdraw2)
        {
            ClearChatbox(playerid, 10);
            Message(playerid, COLOR_WHITE, "-=[Ayuda General]=-");
            Message(playerid, COLOR_GRAD2, "Comandos disponibles: [ADMINISTRACIУN] /reportar /duda /new /solicitaradmin");
            Message(playerid, COLOR_GRAD2, "Comandos disponibles: /cuenta /subirnivel");
            TextDrawHideForPlayer(playerid, Textdraw0);
            TextDrawHideForPlayer(playerid, Textdraw1);
            TextDrawHideForPlayer(playerid, Textdraw2);
            TextDrawHideForPlayer(playerid, Textdraw3);
            TextDrawHideForPlayer(playerid, Textdraw4);
            TextDrawHideForPlayer(playerid, Textdraw5);
            TextDrawHideForPlayer(playerid, Textdraw6);
            TextDrawHideForPlayer(playerid, Textdraw7);
            TextDrawHideForPlayer(playerid, Textdraw8);
            TextDrawHideForPlayer(playerid, Textdraw9);
            TextDrawHideForPlayer(playerid, Textdraw10);
            TextDrawHideForPlayer(playerid, Textdraw11);
            TextDrawHideForPlayer(playerid, Textdraw12);
            TextDrawHideForPlayer(playerid, Textdraw13);

            CancelSelectTextDraw(playerid);
        }
    }
    return 1;
}

public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
    if(_:clickedid != INVALID_TEXT_DRAW)
    {
        if(clickedid == Textdraw2)
        {
            ClearChatbox(playerid, 10);
            Message(playerid, COLOR_WHITE, "-=[Ayuda General]=-");
            Message(playerid, COLOR_GRAD2, "Comandos disponibles: [ADMINISTRACIУN] /reportar /duda /new /solicitaradmin");
            Message(playerid, COLOR_GRAD2, "Comandos disponibles: /cuenta /subirnivel");
            TextDrawHideForPlayer(playerid, Textdraw0);
            TextDrawHideForPlayer(playerid, Textdraw1);
            TextDrawHideForPlayer(playerid, Textdraw2);
            TextDrawHideForPlayer(playerid, Textdraw3);
            TextDrawHideForPlayer(playerid, Textdraw4);
            TextDrawHideForPlayer(playerid, Textdraw5);
            TextDrawHideForPlayer(playerid, Textdraw6);
            TextDrawHideForPlayer(playerid, Textdraw7);
            TextDrawHideForPlayer(playerid, Textdraw8);
            TextDrawHideForPlayer(playerid, Textdraw9);
            TextDrawHideForPlayer(playerid, Textdraw10);
            TextDrawHideForPlayer(playerid, Textdraw11);
            TextDrawHideForPlayer(playerid, Textdraw12);
            TextDrawHideForPlayer(playerid, Textdraw13);

            CancelSelectTextDraw(playerid);
        }
    }
    return 1;
}
No comprendo. їDos veces public OnPlayerClickTextDraw?
Reply
#7

A mi me pasу eso pero no logro recordar cual era el problema. Te dejarй una lista de posibles soluciones o errores.

#Estбs definiendo un PlayerText y usбndolo en OnPlayerClickTextDraw.
#Intenta re-definir INVALID_TEXT_DRAW.


pawn Код:
#undef INVALID_TEXT_DRAW
#define INVALID_TEXT_DRAW  Text:0xFFFF
y ъsalo de esta manera

pawn Код:
if(clickedid == Text:(INVALID_TEXT_DRAW))
# Puedes estar situando un string errуneo en algъn TextDraw y haga que no se muestren nuevamente.


Quote:
Originally Posted by MNovak
Посмотреть сообщение
No comprendo. їDos veces public OnPlayerClickTextDraw?
No, quizб fue una equivocaciуn de teclas.
Reply
#8

Quote:
Originally Posted by Zume-Zero
Посмотреть сообщение
A mi me pasу eso pero no logro recordar cual era el problema. Te dejarй una lista de posibles soluciones o errores.

#Estбs definiendo un PlayerText y usбndolo en OnPlayerClickTextDraw.
#Intenta re-definir INVALID_TEXT_DRAW.


pawn Код:
#undef INVALID_TEXT_DRAW
#define INVALID_TEXT_DRAW  Text:0xFFFF
y ъsalo de esta manera

pawn Код:
if(clickedid == Text:(INVALID_TEXT_DRAW))
# Puedes estar situando un string errуneo en algъn TextDraw y haga que no se muestren nuevamente.




No, quizб fue una equivocaciуn de teclas.
Redefinн INVALID_TEXT_DRAW, pero sigue igual. creo que no hay strings errуneos, їA que te refieres con lo de PlayeText?
Reply
#9

Quote:
Originally Posted by MNovak
Посмотреть сообщение
Redefinн INVALID_TEXT_DRAW, pero sigue igual. creo que no hay strings errуneos, їA que te refieres con lo de PlayeText?
OnPlayerClickTextDraw(playerid, Text:clickedid) = definidos en Text
OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid) = definidos en PlayerText

Pensбndolo bien no puede ser eso, aunque asegъrate. en cuando tenga otra idea de tu problema te la hago saber
Reply
#10

Solucionado, agregados los Cancel en cada if.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)