20.02.2015, 14:15
Boa Tarde. estou tentando por um pm em dialog.. mais estou com o seguinte problema como faзo para quando eu digitar /pm abrir a dialog e apareзer para digitar o id do player ai da enter e depois apareзe a dialog novamente para digitar a menssagem e se acaso nгo tiver o id onlline mandar a msg ID nгo conectado.. como posso adaptar isso no meu cуdigo??
pawn Код:
CMD:pm(playerid, params[])
{
ShowPlayerDialog(playerid,PMDialog,DIALOG_STYLE_INPUT,"Menssagem Privada","Digite sua mensagem para este jogador","Enviar","Cancelar");
return 1;
}
DIALOG
if(dialogid == PMDialog) // == PM Dialog
{
if(response)
{
if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, ERRO, "Este jogador nгo estб conectado");
if(DialogPM[playerid] == playerid) return SendClientMessage(playerid, ERRO, "* PM ERRO: Vocк nгo pode PM para si mesmo");
if(IgnorePM[playerid] == 0) return SendClientMessage(playerid, ERRO, "Este jogador nгo estб aceitando Menssagems privadas no momento.");
if(!inputtext[0])
{
SendClientMessage(playerid, ERRO, "* PM ERRO: Sua Menssagem inserida e invalida.");
ShowPlayerDialog(playerid,PMDialog,DIALOG_STYLE_INPUT,"Menssagem privada","Digite a Menssagem correta.","Enviar","Cancelar");
return 1;
}
if(!strlen(inputtext))
{
format(Message,sizeof(Message),"Menssagem errada\nDigite a Menssagem correta");
ShowPlayerDialog(playerid,PMDialog,DIALOG_STYLE_INPUT,"Menssagem errada - Digite a Menssagem correta.",Message,"Enviar","Cancelar");
return 1;
}
new PMRecebido[MAX_PLAYER_NAME];
new PMEnviado[MAX_PLAYER_NAME];
GetPlayerName(playerid, PMRecebido, sizeof(PMRecebido));
GetPlayerName(DialogPM[playerid], PMEnviado, sizeof(PMEnviado));
if(strlen(inputtext))
{
format(Message, 256, "O Player %s Enviou a mensagem privada para %s - [Menssagem: %s]", PMRecebido, PMEnviado, inputtext);
printf("%s", Message);
format(Message, sizeof(Message), "[-->] PM para: %s (ID: %d): %s", PMEnviado, DialogPM[playerid], inputtext);
SendClientMessage(playerid, PMCOR, Message);
format(Message, sizeof(Message), "[<--] PM de: %s (ID: %d): %s", PMRecebido, playerid, inputtext);
SendClientMessage(DialogPM[playerid], PMCOR, Message);
return 1;
}
}
}