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: idokepp - 2013. január 11. - 10:26:48

Cím: OnPlayerConnect sok uzenet!!
Írta: idokepp - 2013. január 11. - 10:26:48
Csatlakozaskor ahanyan vannak a szerveren, annyiszor kiirja az udvozlo uzenetet. Mitol van ez?
Ha ures a szerver, es folmegyek csak egyszer irja ki. Ha 1 ember mar fonnt van es folmegyek akkor ketszer??
Legyszives valaki segitsen! Koszonom!
Cím: OnPlayerConnect sok uzenet!!
Írta: Tamas - 2013. január 11. - 10:31:56
Esetleg ha bemásolnád az onplayerconect-et többet tudnánk segiteni.
Cím: OnPlayerConnect sok uzenet!!
Írta: idokepp - 2013. január 11. - 10:45:51
new name[MAX_PLAYER_NAME];
    new string[256];
    new ip[20];
    new index;
    players++;
    GetPlayerName(playerid, name, MAX_PLAYER_NAME); // Játékos neve
    GetPlayerIp(playerid, ip, 20); // Játékos IPje
    for (index = 0; index < GetMaxPlayers(); index++)
    {
        if (IsPlayerConnected(index)) // Ha a játékos csatlakozva van
        {
            if (IsPlayerAdmin(index)) // Ha a játékos admin
            {
                format(string, 256, \"*** %s csatlakozott a játékhoz. [iP: %s]\", name, ip);
            }
            else // Ha a játékos nem admin
            {
                format(string, 256, \"*** %s csatlakozott a játékhoz.\", name);
            }
            SendClientMessage(index, 0xDDDDDD96, string); // Üzenet megjelenítése
            SendClientMessage(playerid,COLOR_RED,\"-*-*-*-**-*-*-*-*-*-*-*-*-**-*-*-*-\");
    SendClientMessage(playerid,COLOR_WHITE,\"Üdvözöllek a szerveren!\");
    SendClientMessage(playerid,COLOR_WHITE,\"Ha bármi kérdésed van írj egy adminnak!\");
        }
    }
return 1;
}
Cím: OnPlayerConnect sok uzenet!!
Írta: Zharko - 2013. január 11. - 11:01:51
Idézetet írta: idokepp date=1357897551\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"32244\" data-ipsquote-contentclass=\"forums_Topic

new name[MAX_PLAYER_NAME];
    new string[256];
    new ip[20];
    new index;
    players++;
    GetPlayerName(playerid, name, MAX_PLAYER_NAME); // Játékos neve
    GetPlayerIp(playerid, ip, 20); // Játékos IPje
    if (IsPlayerConnected(playerid)) // Ha a játékos csatlakozva van
    {
        if(new i = 0; i < MAX_PLAYERS; ++i)
        {
            if (IsPlayerAdmin(i)) // Ha a játékos admin
        {
            format(string, 256, \"*** %s csatlakozott a játékhoz. [iP: %s]\", name, ip);
        }
        else // Ha a játékos nem admin
        {
            format(string, 256, \"*** %s csatlakozott a játékhoz.\", name);
        }
        SendClientMessage(i, 0xDDDDDD96, string); // Üzenet megjelenítése
        }
    SendClientMessage(playerid,COLOR_RED,\"-*-*-*-**-*-*-*-*-*-*-*-*-**-*-*-*-\");
    SendClientMessage(playerid,COLOR_WHITE,\"Üdvözöllek a szerveren!\");
    SendClientMessage(playerid,COLOR_WHITE,\"Ha bármi kérdésed van írj egy adminnak!\");
    }
return 1;
}

 

Cím: OnPlayerConnect sok uzenet!!
Írta: idokepp - 2013. január 11. - 11:17:42
D:\\samp03\\gamemodes\\teszt.PWN(498) : error 029: invalid expression, assumed zero
D:\\samp03\\gamemodes\\teszt.PWN(498) : error 017: undefined symbol \"i\"
D:\\samp03\\gamemodes\\teszt.PWN(498) : warning 215: expression has no effect
D:\\samp03\\gamemodes\\teszt.PWN(498) : error 017: undefined symbol \"i\"
D:\\samp03\\gamemodes\\teszt.PWN(498) : fatal error 107: too many error messages on one line
Erre a sorra dobja:
if(new i = 0; i < MAX_PLAYERS; ++i)
Cím: OnPlayerConnect sok uzenet!!
Írta: Zharko - 2013. január 11. - 11:33:14
Jaj de hülye vagyok, bocsi :D
 
Idézetet írta: idokepp date=1357899462\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"32244\" data-ipsquote-contentclass=\"forums_Topic

for(new i = 0; i < MAX_PLAYERS; ++i)

 

Így próbáld :D
Cím: OnPlayerConnect sok uzenet!!
Írta: Tamas - 2013. január 11. - 11:39:35
Enis megprobaltam megcsinalni csak egy kicsit atalakiotttam nembiztos hogy jo.
 
public OnPlayerConnect(playerid)
{
        new name[MAX_PLAYER_NAME];
        new string[256];
        new ip[20];
        players++;
       
        GetPlayerName(playerid, name, MAX_PLAYER_NAME); // Játékos neve
        GetPlayerIp(playerid, ip, 20); // Játékos IPje
        if (IsPlayerConnected(playerid)) // Ha a játékos csatlakozva van
        {
           
                    if(IsPlayerAdmin(playerid)) // Ha a játékos admin
                    {
                        format(string, 256, \"*** %s csatlakozott a játékhoz. [iP: %s]\", name, ip);
                        SendClientMessageToAll( 0xDDDDDD96, string);
                    }
                    else // Ha a játékos nem admin
                    {
                        format(string, 256, \"*** %s csatlakozott a játékhoz.\", name);
                        SendClientMessageToAll( 0xDDDDDD96, string);
                    }
                // Üzenet megjelenítése
                SendClientMessage(playerid,COLOR_RED,\"-*-*-*-**-*-*-*-*-*-*-*-*-**-*-*-*-\");
                SendClientMessage(playerid,COLOR_WHITE,\"Üdvözöllek a szerveren!\");
                SendClientMessage(playerid,COLOR_WHITE,\"Ha bármi kérdésed van írj egy adminnak!\");
        }
        return 1;
 
}

 
De amugy ez minek kell oda?
    for(new i = 0; i < MAX_PLAYERS; ++i)
Szerintem egyszerubb a SendClientMessageToAll
Cím: OnPlayerConnect sok uzenet!!
Írta: Zharko - 2013. január 11. - 11:44:06
Idézetet írta: Tamas date=1357900775\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"32244\" data-ipsquote-contentclass=\"forums_Topic
Enis megprobaltam megcsinalni csak egy kicsit atalakiotttam nembiztos hogy jo.
 
public OnPlayerConnect(playerid)
{
        new name[MAX_PLAYER_NAME];
        new string[256];
        new ip[20];
        players++;
       
        GetPlayerName(playerid, name, MAX_PLAYER_NAME); // Játékos neve
        GetPlayerIp(playerid, ip, 20); // Játékos IPje
        if (IsPlayerConnected(playerid)) // Ha a játékos csatlakozva van
        {
           
                    if(IsPlayerAdmin(playerid)) // Ha a játékos admin
                    {
                        format(string, 256, \"*** %s csatlakozott a játékhoz. [iP: %s]\", name, ip);
                        SendClientMessageToAll( 0xDDDDDD96, string);
                    }
                    else // Ha a játékos nem admin
                    {
                        format(string, 256, \"*** %s csatlakozott a játékhoz.\", name);
                        SendClientMessageToAll( 0xDDDDDD96, string);
                    }
                // Üzenet megjelenítése
                SendClientMessage(playerid,COLOR_RED,\"-*-*-*-**-*-*-*-*-*-*-*-*-**-*-*-*-\");
                SendClientMessage(playerid,COLOR_WHITE,\"Üdvözöllek a szerveren!\");
                SendClientMessage(playerid,COLOR_WHITE,\"Ha bármi kérdésed van írj egy adminnak!\");
        }
        return 1;
 
}

 
De amugy ez minek kell oda?
    for(new i = 0; i < MAX_PLAYERS; ++i)
Szerintem egyszerubb a SendClientMessageToAll
 
Ránézésre hibás, mert te azt csináltad az elágazásoknál, hogy ha admin csatlakozik, akkor írja ki mindenkinek az admin IP-jét.
A for ciklussal \"személyre\" szabva küldöm el az üzeneteket.
Cím: OnPlayerConnect sok uzenet!!
Írta: Tamas - 2013. január 11. - 11:46:27
De a rendes kodnal is ugyvolt amit te javitotal ki hogy elkuldi az ipjet,es amugy nemirja ki az ipj-et mert %s az szoveg ha jol tudom es a %d kell.
Cím: OnPlayerConnect sok uzenet!!
Írta: Zharko - 2013. január 11. - 12:07:14
Idézetet írta: Tamas date=1357901187\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"32244\" data-ipsquote-contentclass=\"forums_Topic
De a rendes kodnal is ugyvolt amit te javitotal ki hogy elkuldi az ipjet,es amugy nemirja ki az ipj-et mert %s az szoveg ha jol tudom es a %d kell.
 
Én úgy tudom hogy az IP-t karakterláncba kéri.
 
new ip[20];

 
:facepalm:
Cím: OnPlayerConnect sok uzenet!!
Írta: idokepp - 2013. január 11. - 12:18:25
Koszi Zarko! Mukodik  :thumbsup:
Cím: OnPlayerConnect sok uzenet!!
Írta: Rupert - 2013. január 11. - 14:12:05
[mod]Legközelebb kattints a \"Téma megoldva\" gombra![/mod]