Problema Breasla

Totalitatea subiectelor care nu respectă regulamentul impus in sectiunea "Probleme şi Întrebări" vor fi stocate aici.
Închis
Avatar utilizator
Nax
Nivel 1

Nivel 1
Mesaje: 113
Membru din: 27 Apr 2016, 15:48
Server: asd
Regat: Chunjo
Aprecieri: 8  
Mulţumiri: 4  
Medalii

Salut, am incercat sa schimb questul+query, si tot am probleme cu creearea de breasla( pot sa fac 2-3-4 bresle cu acelas nume)... are cineva vre-o rezolvare?
Avatar utilizator
DarkTobi
Nivel 5

Nivel 5
Mesaje: 846
Membru din: 19 Apr 2016, 14:31
Server: NU JOC
Aprecieri: 16  
Mulţumiri: 197  
Medalii

Ia quest-ul + query de la brs de la alt serverfiles
Hacking
Afișează semnătura
Avatar utilizator
Nax
Nivel 1

Nivel 1
Mesaje: 113
Membru din: 27 Apr 2016, 15:48
Server: asd
Regat: Chunjo
Aprecieri: 8  
Mulţumiri: 4  
Medalii

Am incercat, dar degeaba
Avatar utilizator
Mr. Tiger
Membru Club

Membru Club
Mesaje: 1223
Membru din: 06 Sep 2013, 11:19
Aprecieri: 12  
Mulţumiri: 126  
Medalii

in guild_manager.cpp inlocuieste functia CreateGuild cu cea de mai jos

Cod: Selectaţi tot

DWORD CGuildManager::CreateGuild(TGuildCreateParameter& gcp)
{
	if (!gcp.master)
		return 0;

	if (!check_name(gcp.name))
	{
		gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<길드> 길드 이름이 적합하지 않습니다."));
		return 0;
	}

	std::auto_ptr<SQLMsg> pmsg(DBManager::instance().DirectQuery("SELECT COUNT(*) FROM guild%s WHERE name = '%s'",
				get_table_postfix(), gcp.name));

	if (pmsg->Get()->uiNumRows > 0)
	{
		MYSQL_ROW row = mysql_fetch_row(pmsg->Get()->pSQLResult);

		if (!(row[0] && row[0][0] == '0'))
		{
			gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<길드> 이미 같은 이름의 길드가 있습니다."));
			return 0;
		}
	}
	else
	{
		gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<길드> 길드를 생성할 수 없습니다."));
		return 0;
	}

	CGuild * pg = M2_NEW CGuild(gcp);
	m_mapGuild.insert(std::make_pair(pg->GetID(), pg));
	return pg->GetID();
}

Cod: Selectaţi tot

“The worst day of loving someone is the day that you lose them.”

― L.J Smith
Afișează semnătura
Avatar utilizator
Nax
Nivel 1

Nivel 1
Mesaje: 113
Membru din: 27 Apr 2016, 15:48
Server: asd
Regat: Chunjo
Aprecieri: 8  
Mulţumiri: 4  
Medalii

Salut, m-am uitat in guild_manager.cpp si functia pe care o am e aproape fix ca cea lasata de tine:

Cod: Selectaţi tot

DWORD CGuildManager::CreateGuild(TGuildCreateParameter& gcp)
{
    if (!gcp.master)
        return 0;


    if (!check_name(gcp.name))
    {
        gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<e˘¬˘¬ea˘ć©«Aˇ°> e˘¬˘¬ea˘ć©«Aˇ° iť˘Ąe|a˘ćžiť˘Ą i ia˘ćˇË¨Ďia˘ćˇËE©«iˇ×a?ˇţ ia˘ćˇËA iA Ąěea˘ć©öE˘Óea˘ć©ö˘´."));
        return 0;
    }
    static char __escape_name[GUILD_NAME_MAX_LEN * 2 + 1];
    DBManager::instance().EscapeString(__escape_name, sizeof(__escape_name), static_cast<const char *>(gcp.name),
    sizeof(gcp.name));
    std::auto_ptr<SQLMsg> pmsg(DBManager::instance().DirectQuery("SELECT COUNT(*) FROM guild%s WHERE name = '%s'",
                get_table_postfix(), __escape_name));


    if (pmsg->Get()->uiNumRows > 0)
    {
        MYSQL_ROW row = mysql_fetch_row(pmsg->Get()->pSQLResult);


        if (!(row[0] && row[0][0] == '0'))
        {
            gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<e˘¬˘¬ea˘ć©«Aˇ°> iť˘Ąe?˘¬ eˇĆa?ˇËiťa?ˇţ iť˘Ąe|a˘ćžiťE©« e˘¬˘¬ea˘ć©«Aˇ°eˇĆa?ˇţ ižE˘ÓiA Ąěea˘ć©öE˘Óea˘ć©ö˘´."));
            return 0;
        }
    }
    else
    {
        gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<e˘¬˘¬ea˘ć©«Aˇ°> e˘¬˘¬ea˘ć©«Aˇ°eˇÍ¨ů i¨ˇˇŻťia˘ćžˇľia˘ćˇË  iE˘ÓE©« ia˘ćˇ±a˘ć iA Ąěea˘ć©öE˘Óea˘ć©ö˘´."));
        return 0;
    }


    // new CGuild(gcp) queries guild tables and tell dbcache to notice other game servers.
    // other game server calls CGuildManager::LoadGuild to load guild.
    CGuild * pg = M2_NEW CGuild(gcp);
    m_mapGuild.insert(std::make_pair(pg->GetID(), pg));
    return pg->GetID();
}
Mai are rost sa o modific?
Avatar utilizator
Syxov
Nivel 10

Nivel 10
Mesaje: 2197
Membru din: 18 Sep 2016, 17:34
Server: SonyMt2
Regat: Jinno
Aprecieri: 70  
Mulţumiri: 138  
Discord: Copiază ID
Medalii

Nax scrie:Salut, m-am uitat in guild_manager.cpp si functia pe care o am e aproape fix ca cea lasata de tine:

Cod: Selectaţi tot

DWORD CGuildManager::CreateGuild(TGuildCreateParameter& gcp)
{
    if (!gcp.master)
        return 0;


    if (!check_name(gcp.name))
    {
        gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<e˘¬˘¬ea˘ć©«Aˇ°> e˘¬˘¬ea˘ć©«Aˇ° iť˘Ąe|a˘ćžiť˘Ą i ia˘ćˇË¨Ďia˘ćˇËE©«iˇ×a?ˇţ ia˘ćˇËA iA Ąěea˘ć©öE˘Óea˘ć©ö˘´."));
        return 0;
    }
    static char __escape_name[GUILD_NAME_MAX_LEN * 2 + 1];
    DBManager::instance().EscapeString(__escape_name, sizeof(__escape_name), static_cast<const char *>(gcp.name),
    sizeof(gcp.name));
    std::auto_ptr<SQLMsg> pmsg(DBManager::instance().DirectQuery("SELECT COUNT(*) FROM guild%s WHERE name = '%s'",
                get_table_postfix(), __escape_name));


    if (pmsg->Get()->uiNumRows > 0)
    {
        MYSQL_ROW row = mysql_fetch_row(pmsg->Get()->pSQLResult);


        if (!(row[0] && row[0][0] == '0'))
        {
            gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<e˘¬˘¬ea˘ć©«Aˇ°> iť˘Ąe?˘¬ eˇĆa?ˇËiťa?ˇţ iť˘Ąe|a˘ćžiťE©« e˘¬˘¬ea˘ć©«Aˇ°eˇĆa?ˇţ ižE˘ÓiA Ąěea˘ć©öE˘Óea˘ć©ö˘´."));
            return 0;
        }
    }
    else
    {
        gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<e˘¬˘¬ea˘ć©«Aˇ°> e˘¬˘¬ea˘ć©«Aˇ°eˇÍ¨ů i¨ˇˇŻťia˘ćžˇľia˘ćˇË  iE˘ÓE©« ia˘ćˇ±a˘ć iA Ąěea˘ć©öE˘Óea˘ć©ö˘´."));
        return 0;
    }


    // new CGuild(gcp) queries guild tables and tell dbcache to notice other game servers.
    // other game server calls CGuildManager::LoadGuild to load guild.
    CGuild * pg = M2_NEW CGuild(gcp);
    m_mapGuild.insert(std::make_pair(pg->GetID(), pg));
    return pg->GetID();
}
Mai are rost sa o modific?
Încearcă pe cea de la el .
Imagine
Afișează semnătura
Avatar utilizator
Nax
Nivel 1

Nivel 1
Mesaje: 113
Membru din: 27 Apr 2016, 15:48
Server: asd
Regat: Chunjo
Aprecieri: 8  
Mulţumiri: 4  
Medalii

Incerc, si revin cu edit
Avatar utilizator
[Andrew]
Fost Moderator

Fost Moderator
Mesaje: 1174
Membru din: 02 Mar 2015, 19:57
Server: KING2.RO
Regat: Chunjo
Aprecieri: 98  
Mulţumiri: 25  
Discord: Copiază ID
 Contact:
Medalii

Incearca

Cod: Selectaţi tot

DWORD CGuildManager::CreateGuild(TGuildCreateParameter& gcp)
{
    if (!gcp.master)
        return 0;


    if (!check_name(gcp.name))
    {
        gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<e˘¬˘¬ea˘ć©«Aˇ°> e˘¬˘¬ea˘ć©«Aˇ° iť˘Ąe|a˘ćžiť˘Ą i ia˘ćˇË¨Ďia˘ćˇËE©«iˇ×a?ˇţ ia˘ćˇËA iA Ąěea˘ć©öE˘Óea˘ć©ö˘´."));
        return 0;
    }
    static char __escape_name[GUILD_NAME_MAX_LEN * 2 + 1];
    DBManager::instance().EscapeString(__escape_name, sizeof(__escape_name), static_cast<const char *>(gcp.name),
    sizeof(gcp.name));
    std::auto_ptr<SQLMsg> pmsg(DBManager::instance().DirectQuery("SELECT COUNT(*) FROM guild%s WHERE name = '%s'",
                get_table_postfix(), __escape_name));


    if (pmsg->Get()->uiNumRows > 0)
    {
        MYSQL_ROW row = mysql_fetch_row(pmsg->Get()->pSQLResult);


        if (!(row[0] && row[0][0] == '0'))
        {
            gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<e˘¬˘¬ea˘ć©«Aˇ°> iť˘Ąe?˘¬ eˇĆa?ˇËiťa?ˇţ iť˘Ąe|a˘ćžiťE©« e˘¬˘¬ea˘ć©«Aˇ°eˇĆa?ˇţ ižE˘ÓiA Ąěea˘ć©öE˘Óea˘ć©ö˘´."));
            return 0;
        }
    }
    else
    {
        gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<e˘¬˘¬ea˘ć©«Aˇ°> e˘¬˘¬ea˘ć©«Aˇ°eˇÍ¨ů i¨ˇˇŻťia˘ćžˇľia˘ćˇË  iE˘ÓE©« ia˘ćˇ±a˘ć iA Ąěea˘ć©öE˘Óea˘ć©ö˘´."));
        return 0;
    }


    // new CGuild(gcp) queries guild tables and tell dbcache to notice other game servers.
    // other game server calls CGuildManager::LoadGuild to load guild.
    CGuild * pg = M2_NEW CGuild(gcp);
    m_mapGuild.insert(std::make_pair(pg->GetID(), pg));
    return pg->GetID();
}
Imagine
Imagine
Afișează semnătura
Avatar utilizator
[Andrew]
Fost Moderator

Fost Moderator
Mesaje: 1174
Membru din: 02 Mar 2015, 19:57
Server: KING2.RO
Regat: Chunjo
Aprecieri: 98  
Mulţumiri: 25  
Discord: Copiază ID
 Contact:
Medalii

Topic inactiv , trimis in arhiva.
Imagine
Imagine
Afișează semnătura
Închis
Răspunsuri
0
Vizualizări
116
Răspunsuri
2
Vizualizări
283
Răspunsuri
7
Vizualizări
566
Răspunsuri
11
Vizualizări
1176

Înapoi la “Arhivă Probleme şi Întrebări”

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 107 vizitatori