Szerző Téma: AntiBot  (Megtekintve 955 alkalommal)

AntiBot
« Dátum: 2012. augusztus 06. - 16:58:09 »
0 Show voters
Sziasztok! Hogy lehet megoldani azt, hogy 1 IP-rõl max 2 játékos léphessen fel? Köszi!

Nem elérhető Szilard

  • Adminisztrátor
  • 1832
    • Profil megtekintése
AntiBot
« Válasz #1 Dátum: 2012. augusztus 06. - 18:05:15 »
0 Show voters

AntiBot
« Válasz #2 Dátum: 2012. augusztus 06. - 18:18:35 »
0 Show voters
Megpróbálom, Köszi! :)

Dupla hozzászólás automatikusan összefûzve. ( 2012. augusztus 06. - 18:24:33 )


undefined symbol \"ConnIP\"

 
Most ezt hogyan ismertessem vele? #define ConnIP? Bocs a hülye kérdésért.
« Utoljára szerkesztve: 2012. augusztus 06. - 18:24:33 írta Walaky »

Nem elérhető SnooP

  • 1798
  • SnooP
    • Profil megtekintése
AntiBot
« Válasz #3 Dátum: 2012. augusztus 06. - 18:26:48 »
0 Show voters
Bár nem vagyok az a Profi Scripter, de ha ezt írja akkor
 
#define ConnIP

 <--- Szerintem, de lehet hülyeséget mondok, próbáld ki, ha errort kapsz töröld és ott még nézegesd, mit csinálhatnál.

AntiBot
« Válasz #4 Dátum: 2012. augusztus 06. - 18:28:18 »
0 Show voters
Ugyanazt írja.

Nem elérhető SnooP

  • 1798
  • SnooP
    • Profil megtekintése
AntiBot
« Válasz #5 Dátum: 2012. augusztus 06. - 18:35:01 »
+1 Show voters
#include <a_samp>
#define IP_LIMIT 2
#define SAME_IP_CONNECT 4
new Same_IP=0,Join_Stamp,ban_s[25],exceed=0;
#define Time_Limit 3500
public OnPlayerConnect(playerid)
{
new ConnIP[16];
GetPlayerIp(playerid,ConnIP,16);
new compare_IP[16];
new number_IP = 0;
for(new i=0; i<MAX_PLAYERS; i++) {
if(IsPlayerConnected(i)) {
    GetPlayerIp(i,compare_IP,16);
    if(!strcmp(compare_IP,ConnIP)) number_IP++;
}
}
if((GetTickCount() - Join_Stamp) < Time_Limit)
    exceed=1;
else
    exceed=0;
if(strcmp(ban_s, ConnIP, false) == 0 && exceed == 1 )
{
    Same_IP++;
    if(Same_IP > SAME_IP_CONNECT)
    {
         Ban(playerid);
      Same_IP=0;
    }
}
else
{
   Same_IP=0;
}
if(number_IP > IP_LIMIT)
    Kick(playerid);
GetStampIP(playerid);
return 1;
}
stock GetStampIP(playerid){
new S_IP[16];
Join_Stamp=GetTickCount();
GetPlayerIp(playerid,S_IP,16);
format(ban_s, 16, \"%s\", S_IP);
}

 
Igy próbáld meg lefuttattam F5-el nálam semmi hibát nem jelzett  :)

AntiBot
« Válasz #6 Dátum: 2012. augusztus 06. - 19:38:21 »
0 Show voters
Tutin megy  :thumbsup: Köszi! Zárom!

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal