[BUG]/admins -
FlaNy - 08.08.2017
Bueno estaba creando un sistema admin y cuando me dispongo ah poner un comando para definir admins usando un comando /admins se bugea de tal modo que solo muestra un administrador, ejemplo
hay 2 users admins el primero se llama Carlos y el otro Luis al utilizar el comando /admins Solo muestra ah luis y ah carlos no
me eh buscado el como resolverlo pero me quebrу mucho la cabeza
Код:
acmd(cmd,"/admins") {
new conteoadmins = 0,string[256],cstr[256],Admins[256];
for(new i=0, g = GetPlayerPoolSize(); i <= g; i++) { if(IsPlayerConnected(i))if (JugadorInfo[i][JugadorAdmin] >= 1) conteoadmins++; }
if(conteoadmins == 0) return SendClientMessage(playerid,ColorError,"No hay Administradores Conectados");
format(cstr,sizeof(cstr),"{FF0000}Administradores Conectados: {FFFFFF}%d",conteoadmins);
for(new i=0, g = GetPlayerPoolSize(); i <= g; i++) {
if(IsPlayerConnected(i))
if(JugadorInfo[i][JugadorAdmin] >= 1) {
format(string, sizeof(string), "{F07B0F}%s [%d] [Nivel: %d,%s]",Nombre(i),i,JugadorInfo[i][JugadorAdmin],DetectarRangoAdmin(JugadorInfo[i][JugadorAdmin]));
strcat(Admins,string);
} } ShowPlayerDialog(playerid,cmdadmins,DIALOG_STYLE_MSGBOX,cstr,string,"Aceptar", "");
return 1; }
por favor de pasar el cуdigo ah como se muestra pero sin bug por favor
Respuesta: [BUG]/admins -
Matyaas - 08.08.2017
Algo apurado, reemplaza por GetPlayerPoolSize y dime si te sirve xd
Код:
acmd(cmd,"/admins")
{
new Conteo1, Admins[56], Texto[128];
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerAdmin(i))
{
Conteo1++;
}
}
if(Conteo1 == 0)return ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Error", "No hay ningun admin.", "Cerrar", "");
format(Texto,256,"Admins conectados: %d", Conteo1);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerAdmin(i))
{
format(Texto,1500,"Nombre: %s[%s] / Nivel: [ADMIN RCON]\n",aNombre(i),i);
strcat(Admins, Texto);
}
else
{
ShowPlayerDialog(playerid,1,DIALOG_STYLE_MSGBOX, Texto, Admins,"Cerrar","");
format(Texto,256,"Nombre: %s / Nivel: [%d]",aNombre(i),i,JugadorInfo[i][JugadorAdmin]);
strcat(Admins, Texto);
}
}
return 1;
}
stock aNombre(playerid)
{
new pname[MAX_PLAYER_NAME], i_pos;
GetPlayerName(playerid, pname, sizeof(pname));
while((i_pos = strfind(pname, "_", false, i_pos)) != -1) pname[i_pos] = ' ';
return pname;
}
Respuesta: [BUG]/admins -
FlaNy - 08.08.2017
creo y no me sirva pero deja pruebo ya que no usaste la misma cadena que yo.
Respuesta: [BUG]/admins -
FlaNy - 08.08.2017
Bueno lo probй y esta mas bug que el mio :v
Respuesta: [BUG]/admins -
Matyaas - 08.08.2017
Pero que te pasa con el cуdigo? no sirve? tira errores? no muestra los admins?? que?
Respuesta: [BUG]/admins -
FlaNy - 08.08.2017
esta bug :v parece que los numeros suben rapidamente donde detecta ah los admins creo la variable
Respuesta: [BUG]/admins -
adri1 - 08.08.2017
Viendo como tienes escrito el cуdigo solo te deseo todo lo malo que pueda pasarte.
Re: [BUG]/admins -
Swankeh - 08.08.2017
// EDIT LE PUSE STRCAT PRUEBA SI FUNCIONA, HACE MUCHO QUE NO ESTOY EN PAWN :V, SI NO TE FUNCIONA ES POR QUE HICE ALGO MAL EN EL STRCAT XD
PHP код:
acmd(cmd,"/admins") {
new conteoadmins = 0,aostring[256], atstring[256];
for(new i = 0 <MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i)
{
if(JugadorInfo[i][JugadorAdmin] >= 1 )
{
conteoadmins ++;
}
}
}
if(conteoadmins == 0){
return ShowPlayerDialog(playerid,cmdadmins,DIALOG_STYLE_MSGBOX,"Administradores Conectados","No hay Administradores Conectados", "CERRAR", "");
}
if(conteoadmins >= 1)
{
format(aostring,sizeof(aostring),"{FF0000}Administradores Conectados: {FFFFFF}%d",conteoadmins);
for(new i = 0 <MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i)
{
if(JugadorInfo[i][JugadorAdmin] >= 1 )
{
format(atstring, sizeof(atstring), "{F07B0F}%s [%d] [Nivel: %d,%s]\n",Nombre(i),i,JugadorInfo[i][JugadorAdmin],DetectarRangoAdmin(JugadorInfo[i][JugadorAdmin]));
strcat(Administradores, atstring);
ShowPlayerDialog(playerid,cmdadmins,DIALOG_STYLE_MSGBOX,aostring,atstring,"Cerrar", "");
}
}
}
return 1;
}
return 1;
}
Re: [BUG]/admins -
lautaro97 - 08.08.2017
Teniendo en cuenta el uso de
Strcat
їNo se supone que en el dialogo tendrнas que poner el array
Admins en ves de
string?
Код:
ShowPlayerDialog(playerid,cmdadmins,DIALOG_STYLE_MSGBOX,cstr,Admins,"Aceptar", "");
Respuesta: [BUG]/admins -
Matyaas - 08.08.2017
y ahora? xdd
Код:
acmd(cmd,"/admins")
{
if(Conteo1 == 0)return ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Error", "No hay ningun admin.", "Cerrar", "");
new Conteo1, Admins[56], Texto[128];
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerAdmin(i))
{
Conteo1++;
format(Texto,1500,"Nombre: %s[%s] / Nivel: [ADMIN RCON]\n",aNombre(i),i);
format(Texto,256,"Admins conectados: %d", Conteo1);
strcat(Admins, Texto);
}
else if(JugadorInfo[i][JugadorAdmin] >= 1)
{
ShowPlayerDialog(playerid,1,DIALOG_STYLE_MSGBOX, Texto, Admins,"Cerrar","");
format(Texto,256,"Nombre: %s[%d] / Nivel: [%d]",aNombre(i),i,JugadorInfo[i][JugadorAdmin]);
format(Texto,256,"Admins conectados: %d", Conteo1);
strcat(Admins, Texto);
}
}
return 1;
}