31.07.2011, 04:38
Hi, I'm releasing my first include, it's named " OnPlayerRconLoginAttempt "
This is simple, and self explained.
It's a callback, these are the parameters
- What's the requirements
You only need foreach ( Optional though, you can still use the include without foreach ).
- Okay, where is the code?
Here :
( Sorry for the crappy indentation, because when I copy it it happens like that. )
- It is tested?
I have tested it with
With 2 players ( me and my brother ), it works. ( Not only for ID 0 )
- How to install ?
Simply save the script as "OnPlayerRconLoginAttempt.inc" at your "sampserv/pawno/includes", and add this
AFTER a_samp.
I hope this include can be useful for some peoples.
Regards, Basicz.
This is simple, and self explained.
It's a callback, these are the parameters
pawn Код:
public OnPlayerRconLoginAttempt( playerid, password[ ], success )
/*
playerid = the playerID
password = the password that is entered
success = if success, it returns 1 and if failed it returns 0
*/
You only need foreach ( Optional though, you can still use the include without foreach ).
- Okay, where is the code?
Here :
pawn Код:
/*
[ INC ] OnPlayerRconLoginAttempt
*/
#tryinclude < foreach >
#if defined _OPRLA_included
#endinput
#endif
#define _OPRLA_included
forward OnPlayerRconLoginAttempt( playerid, password[ ], success );
public OnPlayerConnect( playerid )
{
new
szIP[ 16 ]
;
GetPlayerIp( playerid, szIP, 16 );
SetPVarString( playerid, "PVar_IP", szIP );
CallLocalFunction( "my_OnPlayerConnect", "i", playerid );
return 1;
}
#if defined _ALS_OnPlayerConnect
#undef OnPlayerConnect
#else
#define _ALS_OnPlayerConnect
#endif
#define OnPlayerConnect my_OnPlayerConnect
forward my_OnPlayerConnect( playerid );
public OnRconLoginAttempt( ip[ ], password[ ], success )
{
#if defined _foreach_included
foreach (Player, i)
{
new
szIP[ 16 ]
;
GetPVarString( i, "PVar_IP", szIP, 16 );
if ( !strcmp( ip, szIP, false ) && strlen( ip ) == strlen( szIP ) )
{
CallLocalFunction( "OnPlayerRconLoginAttempt", "isi", i, password, success );
}
}
#else
for ( new j = GetMaxPlayers( ), i; i < j; i ++ )
{
if ( !IsPlayerConnected( i ) )
continue;
new
szIP[ 16 ]
;
GetPVarString( i, "PVar_IP", szIP, 16 );
if ( !strcmp( ip, szIP, false ) && strlen( ip ) == strlen( szIP ) )
{
CallLocalFunction( "OnPlayerRconLoginAttempt", "isi", i, password, success );
}
#endif
CallLocalFunction( "my_OnRconLoginAttempt", "ssi", ip, password, success );
return 1;
}
#if defined _ALS_OnRconLoginAttempt
#undef OnRconLoginAttempt
#else
#define _ALS_OnRconLoginAttempt
#endif
#define OnRconLoginAttempt my_OnRconLoginAttempt
forward my_OnRconLoginAttempt( ip[ ], password[ ], success );
public OnPlayerRconLoginAttempt( playerid, password[ ], success )
{
CallLocalFunction( "my_OnPlayerRconLoginAttempt", "isi", playerid, password, success );
return 1;
}
#if defined _ALS_OnPlayerRconLoginAttempt
#undef OnPlayerRconLoginAttempt
#else
#define _ALS_OnPlayerRconLoginAttempt
#endif
#define OnPlayerRconLoginAttempt my_OnPlayerRconLoginAttempt
forward my_OnPlayerRconLoginAttempt( playerid, password[ ], success );
- It is tested?
I have tested it with
pawn Код:
#define FILTERSCRIPT
#include < a_samp >
#include < OnPlayerRconLoginAttempt >
public OnPlayerRconLoginAttempt( playerid, password[ ], success )
{
if ( success )
{
printf( "%s has logged in as RCON with the password %s", getName( playerid ), password );
}
else if ( !success )
{
printf( "%s has failed to log in as RCON with the password %s", getName( playerid ), password );
}
return 1;
}
stock getName( playerid ) { new pName[ 24 ]; GetPlayerName( playerid, pName, sizeof pName ); return pName; }
- How to install ?
Simply save the script as "OnPlayerRconLoginAttempt.inc" at your "sampserv/pawno/includes", and add this
pawn Код:
#include < OnPlayerRconLoginAttempt >
I hope this include can be useful for some peoples.
Regards, Basicz.