[ayuda] Dialogo
#1

Bueno miren lo que pasa es esto estoy haciendo la fac de NFS todo va bien pongo el comando /venderveh
y le aparece el dialogo hasta ahy todo bien pero cuando le da aceptar no muestra lo que deberia de mostrar el dialogo si respon de que si, osea solo le da las llaves del auto y no le dice que felicidades lo compraste ni nada їpor que?

pawn Код:
if(strcmp(cmd, "/venderveh", true) == 0)
    {
                new giveplayerid;
                new newcar = GetPlayerVehicleID(playerid);
                giveplayerid = ReturnUser(tmp);
                tmp = strtok(cmdtext,idx);

                if(NFS(playerid))
                {
                if (!strlen(tmp))
                {
                SendClientMessage(playerid, COLOR_GREY, "USAGE: /venderveh [playerid/partOfName]");
                return 1;
                }
                giveplayerid = ReturnUser(tmp);
                if (giveplayerid == INVALID_PLAYER_ID)
                {
                SendClientMessage(playerid, COLOR_GREY, "Jugador Off Line");
                return 1;
                }
                if(IsAnOwnableCar(idcar))
                {
                    if(PlayerInfo[giveplayerid][pLevel] < 3)
                    {
                        SendClientMessage(playerid, COLOR_GREY, "Necesita Minimo Nivel 3, Para tener Un Coche..!");
                        return 1;
                    }
                    if(CarInfo[newcar][cOwned]==1)
                    {
                    SendClientMessage(playerid, COLOR_GREY, "Vendedor: Este Coche Ya Tiene Dueсo, Lo Siento.");
                    RemovePlayerFromVehicle(playerid);
                    TogglePlayerControllable(playerid, 1);
                    return 1;
                    }
                    if(PlayerInfo[giveplayerid][pPcarkey] == 999){}
                    else if(PlayerInfo[giveplayerid][pPcarkey2] == 999) { }
                    else { SendClientMessage(playerid, COLOR_GREY, "Unicamente Se Permite Tener 2 Coches Por Persona."); return 1; }
                   
                    if(GetPlayerMoney(giveplayerid) >= CarInfo[idcar][cValue])
                    {
                    if(PlayerInfo[giveplayerid][pPcarkey] == 999) { PlayerInfo[giveplayerid][pPcarkey] = idcar; }
                        else if(PlayerInfo[giveplayerid][pPcarkey2] == 999) { PlayerInfo[giveplayerid][pPcarkey2] = idcar; }
                        else { return 1; }
                        ShowPlayerDialog(giveplayerid,2014,DIALOG_STYLE_MSGBOX,"Confirmacion","їDesea Aceptar este auto?","Si","No");
                        return 1;
                    }else SendClientMessage(playerid, COLOR_GREY, "Sin Dinero suficiente");
                    }
                } else SendClientMessage(playerid, COLOR_GREY, "No Eres vendedor de autos");
            return 1;
     }
El Dialogo

pawn Код:
if(dialogid == 2014){
    if(response){
    new giveplayerid;
    new tmp[25];
    new idcar = GetPlayerVehicleID(playerid);
    new newcar = GetPlayerVehicleID(playerid);
    giveplayerid = ReturnUser(tmp);
    GetPlayerName(giveplayerid, sendername, sizeof(sendername));
    CarInfo[idcar][cOwned] = 1;
    CarInfo[idcar][cOwner] = sendername;
    SafeGivePlayerMoney(giveplayerid,-CarInfo[idcar][cValue]);
    SBizzInfo[11][sbTill] += CarInfo[idcar][cValue]*2; // Conce Lujo
    SBizzInfo[16][sbTill] += CarInfo[idcar][cValue]; // Conce Normal
    SBizzInfo[22][sbTill] += CarInfo[idcar][cValue]/2; // Conce Bajo
    PlayerPlayMusic(giveplayerid);
    GameTextForPlayer(giveplayerid, "~w~Felicitaciones~n~Utiliza /V Estacionar, Para Parkear Tu Coche!", 5000, 3);
    SendClientMessage(giveplayerid, COLOR_GRAD2, "Que Lo Disfrutes!");
    SendClientMessage(giveplayerid, COLOR_GRAD2, "Escribe: /Manual, Para Ver Los Comandos Del Coche..!");
    SendClientMessage(giveplayerid, COLOR_YELLOW2, "Ya Puedes Encender Tu Coche.. Utilize: /Motor..!");
    gEngine[giveplayerid] = 0;
    engineOn[GetPlayerVehicleID(giveplayerid)] = false;
    DateProp(giveplayerid);
    OnPropUpdate();
    PlayerUpdate(giveplayerid);
    format(string, sizeof(string), "ESET-NOD32: %s (%s)[%d]", sendername, CarInfo[idcar][cDescription]);
    ESETPropertyLog(string);
        }
        else{
            SendClientMessage(playerid,COLOR_GRAD2,"Ok , No compraste el auto");
        }
    }
muchas gracias por su ayuda +rep.
Reply
#2

intenta con un print debajo del mensaje y ve el resultado.
saludos.
Reply
#3

En el diбlogo no estб definido "tmp".

pawn Код:
giveplayerid = ReturnUser(tmp);

// Hay que definir tmp
tmp = strtok(cmdtext,idx);
Reply
#4

Es que no deja definir cmd por que tocaria que fuera en onplayercommandtext

por que me dice que cmdtext no esta definido
Reply
#5

crea una variable con la que guardaras el id al que le venderas y despues la utilizas para darle la funcion correspondiente al jugador, ejemplo en vez de usar playerid usas la variable.

pawn Код:
InfoComprador[playerid] = giveplayerid;

giveplayerid = InfoComprador[playerid];
PD: lo anterior no es necesario en este caso.

saludos.
Reply
#6

Osea

pawn Код:
new persona[MAX_PLAYERS];
y donde vende

pawn Код:
persona[getplayerid];
Si no es haci me podrias ayudar?
Reply
#7

pawn Код:
//en el comando
persona[playerid] = giveplayerid ;

//en OnDialogResponse reemplaza ReturnUser(tmp) por la variable
giveplayerid = persona[playerid];
Reply
#8

Haciї?

pawn Код:
if(strcmp(cmd, "/venderveh", true) == 0)
    {
                new giveplayerid;
                new newcar = GetPlayerVehicleID(playerid);
                persona[playerid] = giveplayerid ;

                if(NFS(playerid))
                {
                if (!strlen(persona))
                {
                SendClientMessage(playerid, COLOR_GREY, "USAGE: /venderveh [playerid/partOfName]");
                return 1;
                }
                giveplayerid = ReturnUser(persona);
                if (giveplayerid == INVALID_PLAYER_ID)
                {
                SendClientMessage(playerid, COLOR_GREY, "Jugador Off Line");
                return 1;
                }
                if(IsAnOwnableCar(idcar))
                {
                    if(PlayerInfo[giveplayerid][pLevel] < 3)
                    {
                        SendClientMessage(playerid, COLOR_GREY, "Necesita Minimo Nivel 3, Para tener Un Coche..!");
                        return 1;
                    }
                    if(CarInfo[newcar][cOwned]==1)
                    {
                    SendClientMessage(playerid, COLOR_GREY, "Vendedor: Este Coche Ya Tiene Dueсo, Lo Siento.");
                    RemovePlayerFromVehicle(playerid);
                    TogglePlayerControllable(playerid, 1);
                    return 1;
                    }
                    if(PlayerInfo[giveplayerid][pPcarkey] == 999){}
                    else if(PlayerInfo[giveplayerid][pPcarkey2] == 999) { }
                    else { SendClientMessage(playerid, COLOR_GREY, "Unicamente Se Permite Tener 2 Coches Por Persona."); return 1; }
                   
                    if(GetPlayerMoney(giveplayerid) >= CarInfo[idcar][cValue])
                    {
                    if(PlayerInfo[giveplayerid][pPcarkey] == 999) { PlayerInfo[giveplayerid][pPcarkey] = idcar; }
                        else if(PlayerInfo[giveplayerid][pPcarkey2] == 999) { PlayerInfo[giveplayerid][pPcarkey2] = idcar; }
                        else { return 1; }
                        ShowPlayerDialog(giveplayerid,2014,DIALOG_STYLE_MSGBOX,"Confirmacion","їDesea Aceptar este auto?","Si","No");
                        return 1;
                    }else SendClientMessage(playerid, COLOR_GREY, "Sin Dinero suficiente");
                    }
                } else SendClientMessage(playerid, COLOR_GREY, "No Eres vendedor de autos");
            return 1;
     }
Reply
#9

Quote:
Originally Posted by OTACON
Посмотреть сообщение
pawn Код:
//en el comando
persona[playerid] = giveplayerid ;

//en OnDialogResponse reemplaza ReturnUser(tmp) por la variable
giveplayerid = persona[playerid];
no es necesario hacer eso, o en todo caso serнa otra cosa. Si quieres tener el id de quiйn te vendiу el vehнculo serнa.

pawn Код:
persona[giveplayerid] = playerid;

giveplayerid = persona[playerid];
Reply
#10

No sirve me dice /venderveh [ID] Le doy la id y no la cumple me vuelve y me dice lo mismo Use:/venderveh [ID]
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)