Hola amigos, tengo error al compilar este plugin que me lo paso mi amigo kwpd que es muy util para el pug pero tiene error y no se como resolverlo por favor ayudenme se los agradeseria mucho enserio.
PHP Code:
/* Plugin generated by kwpd */
/*.group <tag> - Crear un grupo con el tag especificado
.add <name> - Invitar a el jugador con el tag especifico del grupo
.accept <name> - Aceptar la invitación de grupo por el jugador que se especifica
.leavegroup - Dejar el grupo que se encuentra actualmente */
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"
#define TASK_INGROUP 232323
const MAX_GROUPS = 2
new g_InGroup[ 33 ]
new g_HasInvitation[ 33 ]
new g_PlayerTag[ 33 ][ 32 ]
new g_PlayerGroupNum[ 33 ]
new g_GroupPlayersNum[ MAX_GROUPS ]
new g_GroupPlayersTag[ MAX_GROUPS ][ 32 ]
new g_GroupNum = 0
new g_EliminatedGroup = 0
new const g_Tag[] = "-->"
new cvar_enabled1
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd( "say", "clcmd_say" )
register_clcmd( "say_team", "clcmd_say" )
}
public clcmd_say( id )
{
new szArgs[ 32 ], szArgs1[ 32 ], szArgs2[ 32 ]
read_args( szArgs, charsmax( szArgs ) )
remove_quotes( szArgs )
parse( szArgs, szArgs1, charsmax( szArgs1 ), szArgs2, charsmax( szArgs2 ) )
if ( equali( szArgs1, ".add" ) )
{
if ( !g_InGroup[ id ] )
return PLUGIN_CONTINUE
new player = cmd_target( id, szArgs2, CMDTARGET_NO_BOTS )
if ( player )
{
if ( !g_InGroup[ player ] )
{
if( g_GroupPlayersNum[ g_PlayerGroupNum[ id ] ] > 2 )
{
client_print( id, print_chat, "%s Max 2 players per group.", g_Tag)
return PLUGIN_CONTINUE
}
if ( !g_HasInvitation[ player ] )
{
new szCreatorName[ 32 ], szInvitedName[32]
get_user_name( id, szCreatorName, charsmax( szCreatorName ) )
get_user_name( player, szInvitedName, charsmax( szInvitedName ) )
g_HasInvitation[ player ] = 1
g_PlayerGroupNum[ player ] = g_PlayerGroupNum[ id ]
copy( g_PlayerTag[ player ], charsmax( g_PlayerTag[] ), g_PlayerTag[ id ] )
client_print( player, print_chat, "%s %s you just invite your group to accept writes .accept", g_Tag, szCreatorName )
client_print( id, print_chat, "%s Request sent to %s", g_Tag, szInvitedName )
}
else
client_print( id, print_chat, "%s Since this player has been invited to a group", g_Tag )
}
else
client_print( id, print_chat, "%s player is already in a group", g_Tag )
}
else
client_print( id, print_chat, "%s Player was not found", g_Tag )
}
else if ( equali( szArgs1, ".accept" ) )
{
if ( g_HasInvitation[ id ] )
{
new szOldName[ 33 ]
get_user_name( id, szOldName, charsmax( szOldName ) )
g_HasInvitation[ id ] = 0
client_cmd( id, "name ^"%s. %s^"", g_PlayerTag[ id ], szOldName )
g_GroupPlayersNum[ g_PlayerGroupNum[ id ] ]++
set_task( 1.0, "set_group", id + TASK_INGROUP )
}
else
client_print( id, print_chat, "%s Player was not found", g_Tag )
}
else if ( equali( szArgs1, ".leavegroup" ) )
{
if ( g_InGroup[ id ] )
{
if ( --g_GroupPlayersNum[ g_PlayerGroupNum[ id ] ] == 0 )
{
copy( g_GroupPlayersTag[ g_PlayerGroupNum[ id ] ], charsmax( g_GroupPlayersTag[] ), "" )
g_EliminatedGroup = g_PlayerGroupNum[ id ] + 1
g_GroupNum--
}
g_InGroup[ id ] = 0
new szOldName[ 33 ], szNewName[ 33 ], szDummy[ 33 ]
get_user_name( id, szOldName, charsmax( szOldName ) )
strtok( szOldName, szDummy, charsmax( szDummy ), szNewName, charsmax( szNewName ), '.' )
client_cmd( id, "name ^"%s^"", szNewName )
client_print( id, print_chat, "%s You have left the group", g_Tag )
}
else
client_print( id, print_chat, "%s You were not in any group", g_Tag )
return PLUGIN_CONTINUE
}
else if ( equali( szArgs1, ".group" ) )
{
if( get_pcvar_num( cvar_enabled1 ) == 0 )
client_print(id, print_chat, "%s You must wait. A Change of Maps.", g_Tag)
else if( get_pcvar_num(cvar_enabled1) > 0 )
{
if ( g_InGroup[ id ] )
{
client_print( id, print_chat, "%s You belong to a group.", g_Tag)
return PLUGIN_CONTINUE
}
if ( g_GroupNum > MAX_GROUPS - 1 )
{
client_print( id, print_chat, "%s It has reached the max number of groups created.", g_Tag)
return PLUGIN_CONTINUE
}
for ( new i; i < MAX_GROUPS; i++ )
{
if ( equali( g_GroupPlayersTag[ i ], szArgs2 ) )
{
client_print( id, print_chat, "%s .group <tag>", g_Tag )
return PLUGIN_CONTINUE
}
}
if ( strlen( szArgs2 ) > 3 )
{
client_print( id, print_chat, "%s Max 3 characters", g_Tag )
return PLUGIN_CONTINUE
}
if ( szArgs2[ 0 ] == '.' || szArgs2[ 1 ] == '.' || szArgs2[ 2 ] == '.')
{
client_print( id, print_chat, "%s You can not include the point (.) in the tag", g_Tag )
return PLUGIN_CONTINUE
}
new szOldName[ 33 ]
get_user_name( id, szOldName, charsmax( szOldName ) )
client_cmd( id, "name ^"%s. %s^"", szArgs2, szOldName )
copy( g_PlayerTag[ id ], charsmax( g_PlayerTag[] ), szArgs2 )
if ( g_EliminatedGroup )
{
g_EliminatedGroup--
copy( g_GroupPlayersTag[ g_EliminatedGroup ], charsmax( g_GroupPlayersTag[] ), szArgs2 )
g_GroupPlayersNum[ g_EliminatedGroup ]++
g_PlayerGroupNum[ id ] = g_EliminatedGroup
g_EliminatedGroup = 0
}
else
{
copy( g_GroupPlayersTag[ g_GroupNum ], charsmax( g_GroupPlayersTag[] ), szArgs2 )
g_GroupPlayersNum[ g_GroupNum ]++
g_PlayerGroupNum[ id ] = g_GroupNum
}
set_task( 1.0, "set_group", id + TASK_INGROUP )
g_GroupNum++
}
}
return PLUGIN_CONTINUE
}
public client_putinserver( id )
{
g_PlayerGroupNum[ id ] = -2
g_InGroup[ id ] = 0
g_HasInvitation[ id ] = 0
}
public client_disconnect(id)
{
if(get_pcvar_num(cvar_enabled1))
{
set_leavergroup1(id)
}
}
public set_leavergroup1(id)
{
if ( g_InGroup[ id ] )
{
if ( --g_GroupPlayersNum[ g_PlayerGroupNum[ id ] ] == 0 )
{
copy( g_GroupPlayersTag[ g_PlayerGroupNum[ id ] ], charsmax( g_GroupPlayersTag[] ), "" )
g_EliminatedGroup = g_PlayerGroupNum[ id ] + 1
g_GroupNum--
}
g_InGroup[ id ] = 0
new szOldName[ 33 ], szNewName[ 33 ], szDummy[ 33 ]
get_user_name( id, szOldName, charsmax( szOldName ) )
strtok( szOldName, szDummy, charsmax( szDummy ), szNewName, charsmax( szNewName ), '.' )
}
else
{
client_print( id, print_chat, "%s You were not in any group", g_Tag )
}
return PLUGIN_CONTINUE
}
public cmd_cancelgroup(id,level,cid)
{
if(!cmd_access(id, level, cid, 1)) return PLUGIN_HANDLED
if ( g_InGroup[ id ] )
{
if ( --g_GroupPlayersNum[ g_PlayerGroupNum[ id ] ] == 0 )
{
copy( g_GroupPlayersTag[ g_PlayerGroupNum[ id ] ], charsmax( g_GroupPlayersTag[] ), "" )
g_EliminatedGroup = g_PlayerGroupNum[ id ] + 1
g_GroupNum--
}
g_InGroup[ id ] = 0
new szOldName[ 33 ], szNewName[ 33 ], szDummy[ 33 ]
get_user_name( id, szOldName, charsmax( szOldName ) )
strtok( szOldName, szDummy, charsmax( szDummy ), szNewName, charsmax( szNewName ), '.' )
client_cmd( id, "name ^"%s^"", szNewName )
}
else
{
client_print( id, print_chat, "%s You were not in any group", g_Tag )
}
// new arg[32]
// read_argv(1,arg,31)
//
// new iPlayer[32], iNum
// get_players(iPlayer, iNum)
//
// for(new i; i < iNum; i++)
// {
// set_leavergroup2(iPlayer[i])
// }
return PLUGIN_CONTINUE
}
public set_leavergroup2(id)
{
if ( g_InGroup[ id ] )
{
if ( --g_GroupPlayersNum[ g_PlayerGroupNum[ id ] ] == 0 )
{
copy( g_GroupPlayersTag[ g_PlayerGroupNum[ id ] ], charsmax( g_GroupPlayersTag[] ), "" )
g_EliminatedGroup = g_PlayerGroupNum[ id ] + 1
g_GroupNum--
}
g_InGroup[ id ] = 0
new szOldName[ 33 ], szNewName[ 33 ], szDummy[ 33 ]
get_user_name( id, szOldName, charsmax( szOldName ) )
strtok( szOldName, szDummy, charsmax( szDummy ), szNewName, charsmax( szNewName ), '.' )
client_cmd( id, "name ^"%s^"", szNewName )
}
else
{
client_print( id, print_chat, "%s You were not in any group", g_Tag )
}
return PLUGIN_CONTINUE
}
public set_group( id )
{
id -=TASK_INGROUP
g_InGroup[ id ] = 1
}
public ClientUserInfoChanged( id, Buffer )
{
if( !is_user_connected( id ) ) return FMRES_IGNORED
static szNewName[ 32 ], szOldName[ 32 ]
get_user_name( id, szOldName, 31 )
engfunc( EngFunc_InfoKeyValue, Buffer, "name", szNewName, 31 );
if( equal( szNewName, szOldName ) ) return FMRES_IGNORED;
static szNickName[ 32 ]
copy( szNickName, charsmax( szNickName ), g_InGroup[ id ] ? szOldName : szNewName )
engfunc( EngFunc_SetClientKeyValue, id, Buffer, "name", szNickName )
client_cmd( id, "name ^"%s^"; setinfo name ^"%s^"", szNickName, szNickName )
return FMRES_SUPERCEDE
}