Dialog ID?
#5

Quote:
Originally Posted by cocolabush
Посмотреть сообщение
(off topic)

El callback OnPlayerClickPlayer lo podes utilizar para mejorar las herramientas de los administradores.

Ejemplo:

pawn Код:
#define dialogo_AdminMenu 0
new clicked[MAX_PLAYERS]

public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
    if(IsPlayerAdmin(playerid))
    {
        if(IsPlayerAdmin(clickedplayerid)) { SendClientMessage(playerid, 0xFFFFFF, "No podes modificar estadisticas de otros admins."); return 1; }
        new aLista[128];
        new clickedName[MAX_PLAYER_NAME];
        new aListTitulo[MAX_PLAYER_NAME + 18];
        clicked[playerid] = clickedplayerid;
        GetPlayerName(playerid, clickedName, sizeof(clickedName));
        format(aListTitulo, sizeof(aListTitulo), "ID: %d Nombre: %s", clickedplayerid, clickedName);
        format(aLista, sizeof(aLista), "Advertir\nIr a\nVer\nCallar\nBan\nKick\nDar vida\nDar armadura\nDar Armas");
        ShowPlayerDialog(playerid, dialogo_AdminMenu, DIALOG_STYLE_LIST, aListTitulo, aLista, "Siguiente", "Cerrar");
    }
    return 1;
}


public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if (dialogid == dialogo_AdminMenu)
    {
        if (response == 1)
        {
            switch(listitem)
                {
                    case 0: SendClientMessage(playerid, color_Rojo, "Advertir"); // En cada "case" podes modificar su funcion.
                    case 1: SendClientMessage(playerid, color_Rojo, "Ir a");     // Si es mas de una funcion escribi como en "case 2".
                    case 2:
                    {
                        SendClientMessage(playerid, color_Rojo, "Ver");
                    }
                    case 3: SendClientMessage(playerid, color_Rojo, "Callar");   // Si necesitas hacer una llamada al jugador clickeado usa clicked[playerid] en vez de clickedplayerid
                    case 4: SendClientMessage(playerid, color_Rojo, "Kick");     // ya que este ultimo es una variable de otro callback.
                }
        }
    }
   
    return 1;
}
Lo acabo de hacer en el "aire" asique puede que me falte algun detalle .. como un ";"...

Espero que a alguien le sirva...
Si algunos se te escaparon proba este codigo:

pawn Код:
#define dialogo_AdminMenu 0
new clicked[MAX_PLAYERS];

public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
    if(IsPlayerAdmin(playerid))
    {
        if(IsPlayerAdmin(clickedplayerid)) { SendClientMessage(playerid, 0xFFFFFF, "No podes modificar estadisticas de otros admins."); return 1; }
        new aLista[128];
        new clickedName[MAX_PLAYER_NAME];
        new aListTitulo[MAX_PLAYER_NAME + 18];
        clicked[playerid] = clickedplayerid;
        GetPlayerName(playerid, clickedName, sizeof(clickedName));
        format(aListTitulo, sizeof(aListTitulo), "ID: %d Nombre: %s", clickedplayerid, clickedName);
        format(aLista, sizeof(aLista), "Advertir\nIr a\nVer\nCallar\nBan\nKick\nDar vida\nDar armadura\nDar Armas");
        ShowPlayerDialog(playerid, dialogo_AdminMenu, DIALOG_STYLE_LIST, aListTitulo, aLista, "Siguiente", "Cerrar");
    }
    return 1;
}


public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if (dialogid == dialogo_AdminMenu)
    {
        if (response == 1)
        {
            switch(listitem)
                {
                    case 0: SendClientMessage(playerid, color_Rojo, "Advertir"); // En cada "case" podes modificar su funcion.
                    case 1: SendClientMessage(playerid, color_Rojo, "Ir a");     // Si es mas de una funcion escribi como en "case 2".
                    case 2:
                    {
                        SendClientMessage(playerid, color_Rojo, "Ver");
                    }
                    case 3: SendClientMessage(playerid, color_Rojo, "Callar");   // Si necesitas hacer una llamada al jugador clickeado usa clicked[playerid] en vez de clickedplayerid
                    case 4: SendClientMessage(playerid, color_Rojo, "Kick");     // ya que este ultimo es una variable de otro callback.
                }
        }
    }
   
    return 1;
}
Reply


Messages In This Thread
Dialog ID? - by Zouke! - 17.10.2010, 15:08
Respuesta: Dialog ID? - by Cesar_Biker - 17.10.2010, 15:18
Re: Dialog ID? - by SuperMarioRol - 17.10.2010, 15:29
Re: Dialog ID? - by cocolabush - 17.10.2010, 16:01
Respuesta: Re: Dialog ID? - by xenowort - 17.10.2010, 16:13
Re: Respuesta: Re: Dialog ID? - by cocolabush - 17.10.2010, 16:45
Respuesta: Re: Respuesta: Re: Dialog ID? - by xenowort - 17.10.2010, 16:47
Respuesta: Dialog ID? - by Zouke! - 17.10.2010, 18:30
Re: Dialog ID? - by cocolabush - 17.10.2010, 18:48
Respuesta: Re: Dialog ID? - by xenowort - 18.10.2010, 10:06

Forum Jump:


Users browsing this thread: 1 Guest(s)