Dialog little help
#1

Can you please tell me why this doesn't work? The dialog input box shows in my screen when I type createclan but it closes when I wrote something (it doesn't change or add anything)

Код:
CMD:createclan(playerid, params[])
{
	new query[256], cName[80];
	if(PlayerInfo[playerid][ClanID] != 0) return SendClientMessage(playerid, -1, ""RED"ERROR: "GREY"You're already in a clan/gang!");
	if(sscanf(params, "s[80]", cName)) return ShowPlayerDialog(playerid, DIALOG_CREATECLAN, DIALOG_STYLE_INPUT, "CREATE CLAN", "INFO: Before creating a clan, you need to have 2,000 score and it will cost you one-time fee of $2,500,000!", "Create", "Cancel");
	if(GetPlayerScore(playerid) < 2000 || GetPlayerMoney(playerid) < 2500000) return SendClientMessage(playerid, -1, ""RED"ERROR: "GREY"You need $2,500,000 and 2,500 score to create a clan!");
	mysql_format(MySQL, query, sizeof query, "SELECT * FROM `"Clans_Table"` WHERE cName = '%e' LIMIT 1", GetName(playerid));
	mysql_tquery(MySQL, query, "FetchClanInfo", "is", playerid, cName);
	
	return 1;
}
Reply
#2

So after adding the below codes from OnDialogResponse when I click cancel button it still trying to create a clan even tho the statement in else is empty. why?

Код:
	if (dialogid == DIALOG_CREATECLAN)
	{
		new query[256], cName[80];
		if(GetPlayerScore(playerid) < 2000 || GetPlayerMoney(playerid) < 2500000) return SendClientMessage(playerid, -1, ""RED"ERROR: "GREY"You need $2,500,000 and 2,500 score to create a clan!");
		mysql_format(MySQL, query, sizeof query, "SELECT * FROM `"Clans_Table"` WHERE cName = '%e' LIMIT 1", GetName(playerid));
		mysql_tquery(MySQL, query, "FetchClanInfo", "is", playerid, cName);
	}
	else
	{


	}
Reply
#3

Try this:

PHP код:
if(dialogid == DIALOG_CREATECLAN)
{
    if(
response == 1// If you pressed accept.
    
{
        new 
query[256], cName[80];
        if(
PlayerInfo[playerid][ClanID] != 0) return SendClientMessage(playerid, -1""RED"ERROR: "GREY"You're already in a clan/gang!");
        if(
GetPlayerScore(playerid) < 2000 || GetPlayerMoney(playerid) < 2500000) return SendClientMessage(playerid, -1""RED"ERROR: "GREY"You need $2,500,000 and 2,500 score to create a clan!");
        
mysql_format(MySQLquerysizeof query"SELECT * FROM `"Clans_Table"` WHERE cName = '%e' LIMIT 1"GetName(playerid));
        
mysql_tquery(MySQLquery"FetchClanInfo""is"playeridcName);
    }
    else
    {
            
// If you pressed cancel.
    

Reply
#4

Quote:
Originally Posted by JuanStone
Посмотреть сообщение
Try this:

PHP код:
if(dialogid == DIALOG_CREATECLAN)
{
    if(
response == 1// If you pressed accept.
    
{
        new 
query[256], cName[80];
        if(
PlayerInfo[playerid][ClanID] != 0) return SendClientMessage(playerid, -1""RED"ERROR: "GREY"You're already in a clan/gang!");
        if(
GetPlayerScore(playerid) < 2000 || GetPlayerMoney(playerid) < 2500000) return SendClientMessage(playerid, -1""RED"ERROR: "GREY"You need $2,500,000 and 2,500 score to create a clan!");
        
mysql_format(MySQLquerysizeof query"SELECT * FROM `"Clans_Table"` WHERE cName = '%e' LIMIT 1"GetName(playerid));
        
mysql_tquery(MySQLquery"FetchClanInfo""is"playeridcName);
    }
    else
    {
            
// If you pressed cancel.
    

Thanks mate working fine! +rep
Reply
#5

I think you could do that

Код:
CMD:createclan(playerid, params[])
{
	new cName[80];
	if(PlayerInfo[playerid][ClanID] != 0) return SendClientMessage(playerid, -1, ""RED"ERROR: "GREY"You're already in a clan/gang!");
	if(sscanf(params, "s[80]", cName)) ShowPlayerDialog(playerid, DIALOG_CREATECLAN, DIALOG_STYLE_INPUT, "CREATE CLAN", "INFO: Before creating a clan, you need to have 2,000 score and it will cost you one-time fee of $2,500,000!", "Create", "Cancel");
	return 1;
}
And

Код:
if (dialogid == DIALOG_CREATECLAN && response)
{
	new query[256], cName[80];
	if(GetPlayerScore(playerid) < 2000 || GetPlayerMoney(playerid) < 2500000) return SendClientMessage(playerid, -1, ""RED"ERROR: "GREY"You need $2,500,000 and 2,500 score to create a clan!");
	mysql_format(MySQL, query, sizeof query, "SELECT * FROM `"Clans_Table"` WHERE cName = '%e' LIMIT 1", GetName(playerid));
	mysql_tquery(MySQL, query, "FetchClanInfo", "is", playerid, cName);
	return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)