GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: csont - 2014. Június 21. - 21:13:25

Cím: Frakció lekérdezés
Írta: csont - 2014. Június 21. - 21:13:25
Üdv lenne egy olyan gondom hogy írtam egy frakciós céget , és van egy /member-s parancs ami megmutatná az online frakcióban lévõket . Nos ezzel csak az a gond hogy nem mûködik , vagyis rosszul. ha be írom akkor el kezdi kisorolni a neveket és egymás alá sokat , meg nem is úgy ahogy kellene.
A pawno hibátlanul lefut.
Itt a kód:
 
CMD:members(playerid, params[])
{
    if(gLTeam[playerid] == 0 && gTeam[playerid] == 0) return SendClientMessage(playerid, COLOR_RED, \"Neked nincs frakciód!\");
    new f[128],aname[MAX_PLAYER_NAME];
    SendClientMessage(playerid,COLOR_RED,\"Frakciód elérhetõ tagjai:\");
    if(gLTeam[playerid] == TEAM_DANCSI || gTeam[playerid] == TEAM_DANCSI)
    {
        for(new i; i<MAX_PLAYERS; i++)
        {
            if(gLTeam == TEAM_DANCSI || gTeam == TEAM_DANCSI)
            {
                GetPlayerName(i, aname, sizeof(aname));
                format(f,128,\"Név: %s | Rang: %d\",aname,rang);
                SendClientMessage(playerid,COLOR_GREEN,aname);
   }
}
    }
    if(gLTeam[playerid] == TEAM_PEGAZUS || gTeam[playerid] == TEAM_PEGAZUS)
    {
       for(new i; i<MAX_PLAYERS; i++)
        {
            if(gLTeam == TEAM_PEGAZUS || gTeam == TEAM_PEGAZUS)
            {
                GetPlayerName(i, aname, sizeof(aname));
                format(f,128,\"Név: %s | Rang: %d\",aname,rang);
                SendClientMessage(playerid,COLOR_GREEN,aname);
   }
}
    }
    if(gLTeam[playerid] == TEAM_LOCARGO || gTeam[playerid] == TEAM_LOCARGO)
    {
        for(new i; i<MAX_PLAYERS; i++)
        {
            if(gLTeam == TEAM_LOCARGO || gTeam == TEAM_LOCARGO)
            {
                GetPlayerName(i, aname, sizeof(aname));
                format(f,128,\"Név: %s | Rang: %d\",aname,rang);
                SendClientMessage(playerid,COLOR_GREEN,aname);
   }
}
    }
    if(gLTeam[playerid] == TEAM_MALCOLM || gTeam[playerid] == TEAM_MALCOLM)
    {
        for(new i; i<MAX_PLAYERS; i++)
        {
            if(gLTeam == TEAM_MALCOLM || gTeam == TEAM_MALCOLM)
            {
                GetPlayerName(i, aname, sizeof(aname));
                format(f,128,\"Név: %s | Rang: %d\",aname,rang);
                SendClientMessage(playerid,COLOR_GREEN,aname);
   }
}
    }
    if(gLTeam[playerid] == TEAM_WABERERS || gTeam[playerid] == TEAM_WABERERS)
    {
        for(new i; i<MAX_PLAYERS; i++)
        {
            if(gLTeam == TEAM_WABERERS || gTeam == TEAM_WABERERS)
            {
                GetPlayerName(i, aname, sizeof(aname));
                format(f,128,\"Név: %s | Rang: %d\",aname,rang);
                SendClientMessage(playerid,COLOR_GREEN,aname);
   }
}
    }
    return 1;
}

 
Ha valaki tudna esetleg valami megoldást rá mert úgy kéne ki írni hogy : Név : Xy  Rang: Xy de ehelyett csak egy nevet ír ki.
Cím: Frakció lekérdezés
Írta: bbTamas - 2014. Június 21. - 21:47:58
format(f,128,\"Név: %s | Rang: %d\",aname,rang);

 
Miért %d írtál oda, ha szöveget akarsz megjeleníteni?
Írd át %s-re ha szöveget akarsz megjeleníteni,tehát így:
 
format(f,128,\"Név: %s | Rang: %s\",aname,rang);
Cím: Frakció lekérdezés
Írta: csont - 2014. Június 22. - 00:03:59
Idézetet írta: bbTamas date=1403380078\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"48924\" data-ipsquote-contentclass=\"forums_Topic

format(f,128,\"Név: %s | Rang: %d\",aname,rang);

 
Miért %d írtál oda, ha szöveget akarsz megjeleníteni?
Írd át %s-re ha szöveget akarsz megjeleníteni,tehát így:
 
format(f,128,\"Név: %s | Rang: %s\",aname,rang);

 

Köszönöm az észrevételt , de ennek nem ez a gondja :S
Felmentem kipróbálni , adtam magamnak leadert és amint be írom hogy /members a nevemet sorolja fel nagyon sokszor és 1 sorba csak 1-szer írja le a nevem.
Cím: Frakció lekérdezés
Írta: bbTamas - 2014. Június 22. - 00:07:53
Idézetet írta: csont date=1403388239\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"48924\" data-ipsquote-contentclass=\"forums_Topic


 
format(f,128,\"Név: %s | Rang: %d\",aname,rang);

 
Miért %d írtál oda, ha szöveget akarsz megjeleníteni?
Írd át %s-re ha szöveget akarsz megjeleníteni,tehát így:
 
format(f,128,\"Név: %s | Rang: %s\",aname,rang);

 

Köszönöm az észrevételt , de ennek nem ez a gondja :S
Felmentem kipróbálni , adtam magamnak leadert és amint be írom hogy /members a nevemet sorolja fel nagyon sokszor és 1 sorba csak 1-szer írja le a nevem.
 
[/quote]
Az új sor \"\\n\" karakter lemaradt:
 
format(f,128,\"Név: %s | Rang: %s\\n\",aname,rang);

 
Mostmár jónak kell lennie. :)
SZERK: Most nézem ez dialogus-os, akkor nem tudom mi lehet a hiba.
De újranézve, ezt a sort nem értem:
 
if(gLTeam[playerid] == TEAM_DANCSI || gTeam[playerid] == TEAM_DANCSI)

 
Elég lenne így is, de nézd újra át a feltételeket:
 
if(gLTeam[playerid] == TEAM_DANCSI)
Cím: Frakció lekérdezés
Írta: madaradam - 2014. Június 22. - 00:16:43
Javítsd erre az összeset:
 
SendClientMessage(playerid,COLOR_GREEN,f);

 
Remélem segítettem. ;)
Cím: Frakció lekérdezés
Írta: csont - 2014. Június 22. - 00:50:21
Idézetet írta: madaradam date=1403389003\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"48924\" data-ipsquote-contentclass=\"forums_Topic
Javítsd erre az összeset:
 
SendClientMessage(playerid,COLOR_GREEN,f);

 
Remélem segítettem. ;)
 
Köszönöm ez segített  :)