To Dialog
#1

Hi. is the code below. possible to make it like a dialog? So when I do /stats it will show in dialog message box? Can you please help me with this. thank you!

Код:
#if defined USE_STATS
CMD:stats(playerid,params[]) {
	new string[100], pDeaths, player1,playername[MAX_PLAYER_NAME];
	if(isnull(params)) player1 = playerid;
	else player1 = strval(params);

	if(IsPlayerConnected(player1)) {
	    GetPlayerName(player1, playername, sizeof(playername));
 		if(PlayerInfo[player1][Deaths] == 0) pDeaths = 1; else pDeaths = PlayerInfo[player1][Deaths];
 		new str[120], str1[100];
 		format(str, sizeof(str),"%s's Stats", PlayerName2(player1));
		format(string,sizeof(string),"Scores: %d | Money: $%d | Kills: %d | Deaths: %d | K/D Ratio: %0.2f", GetPlayerScore(player1), GetPlayerMoney(player1), PlayerInfo[player1][Kills], PlayerInfo[player1][Deaths], Float:PlayerInfo[player1][Kills]/Float:pDeaths);
		format(str1, sizeof(str1),"Rank: %s | Team: %s | Class: %s | Session Kills %d",GetRankName(player1), GetTeamName(player1), GetClass(player1), Skills[player1]);

		SendClientMessage(playerid, green,str);
		SendClientMessage(playerid, green,string);
		SendClientMessage(playerid, green,str1);
	} else return SendClientMessage(playerid, red, "Player Not Connected!");
	return 1;
}
Reply
#2

Did you try to do it yourself?
Reply
#3

Quote:
Originally Posted by doreto
Посмотреть сообщение
Did you try to do it yourself?
Yes but it always I always failed it says argument mismatch and some warnings. Can you please help me? Like make a simple demo out of my code that I've given above and I will try to continue.
Reply
#4

pawn Код:
#if defined USE_STATS
CMD:stats(playerid,params[]) {
    new string[100], pDeaths, player1,playername[MAX_PLAYER_NAME];
    if(isnull(params)) player1 = playerid;
    else player1 = strval(params);

    if(IsPlayerConnected(player1)) {
        GetPlayerName(player1, playername, sizeof(playername));
        if(PlayerInfo[player1][Deaths] == 0) pDeaths = 1; else pDeaths = PlayerInfo[player1][Deaths];
        new str[120], str1[100];
        format(str, sizeof(str),"%s's Stats\n", PlayerName2(player1));
        format(string,sizeof(string),"Scores: %d | Money: $%d | Kills: %d | Deaths: %d | K/D Ratio: %0.2f\n", GetPlayerScore(player1), GetPlayerMoney(player1), PlayerInfo[player1][Kills], PlayerInfo[player1][Deaths], Float:PlayerInfo[player1][Kills]/Float:pDeaths);
        format(str1, sizeof(str1),"Rank: %s | Team: %s | Class: %s | Session Kills %d\n",GetRankName(player1), GetTeamName(player1), GetClass(player1), Skills[player1]);
        new dialogstr[600];
        strcat(dialogstr, str);
        strcat(dialogstr, string);
        strcat(dialogstr, str1);
        ShowPlayerDialog(playerid,HELP_DIALOG1,DIALOG_STYLE_MSGBOX, "Stats",dialogstr,"Ok","");
    } else return SendClientMessage(playerid, red, "Player Not Connected!");
    return 1;
}
Forums killed the indentation, it is still untested. try it.
EDIR: I have fixed indentation. try it.
Reply
#5

Replace
Код:
		SendClientMessage(playerid, green,str);
		SendClientMessage(playerid, green,string);
		SendClientMessage(playerid, green,str1);
With
Код:
ShowPlayerDialog(playerid, 1000, DIALOG_STYLE_LIST, str, string, "Done", "");
And this:
Код:
format(str, sizeof(str),"%s's Stats", PlayerName2(player1));
		format(string,sizeof(string),"Scores: %d | Money: $%d | Kills: %d | Deaths: %d | K/D Ratio: %0.2f", GetPlayerScore(player1), GetPlayerMoney(player1), PlayerInfo[player1][Kills], PlayerInfo[player1][Deaths], Float:PlayerInfo[player1][Kills]/Float:pDeaths);
		format(str1, sizeof(str1),"Rank: %s | Team: %s | Class: %s | Session Kills %d",GetRankName(player1), GetTeamName(player1), GetClass(player1), Skills[player1]);
With

Код:
format(str, sizeof(str),"%s's Stats", PlayerName2(player1));
		format(string,sizeof(string),"Scores: %d | Money: $%d | Kills: %d | Deaths: %d | K/D Ratio: %0.2f", GetPlayerScore(player1), GetPlayerMoney(player1), PlayerInfo[player1][Kills], PlayerInfo[player1][Deaths], Float:PlayerInfo[player1][Kills]/Float:pDeaths);
		format(string, sizeof(str1),"Rank: %s | Team: %s | Class: %s | Session Kills %d",GetRankName(player1), GetTeamName(player1), GetClass(player1), Skills[player1]);
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)