SA-MP Forums Archive
Detectar el nickname si tiene corchetes - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: Detectar el nickname si tiene corchetes (/showthread.php?tid=615879)



Detectar el nickname si tiene corchetes - dannypanda05 - 28.08.2016

Buenas, tengo un sistema de que si tiene nick en el corchete este le pedirб que se lo cambie por uno sin corchetes, esto lo hago por el sistema de clanes que pone el tag al entrar a un clan.

Lo que quiero es saber si es posible detectar corchetes que tienen desde 3 a 5 cifras dentro del corchete, їcуmo se harнa? un ejemplo [CLAN]Danny y este lo detecte y le pida el cambio de nick, Y si es D[A]nnY que lo permita y no le haga nada, їalguna idea?


Re: Detectar el nickname si tiene corchetes - HidroDF - 28.08.2016

Mira йste script:

https://sampforum.blast.hk/showthread.php?tid=309062

Aсade los carбcteres que no quieras permitir y una vez el usuario se conecte, si pertenece al clan cбmbiale el nombre y aсade el tag. Es menos complicado a mi parecer.


Respuesta: Re: Detectar el nickname si tiene corchetes - dannypanda05 - 29.08.2016

Quote:
Originally Posted by HidroDF
Посмотреть сообщение
Mira йste script:

https://sampforum.blast.hk/showthread.php?tid=309062

Aсade los carбcteres que no quieras permitir y una vez el usuario se conecte, si pertenece al clan cбmbiale el nombre y aсade el tag. Es menos complicado a mi parecer.
parece que no me entendiste, no es lo que busco :C


Respuesta: Detectar el nickname si tiene corchetes - adri1 - 29.08.2016

Код:
	new name[24] = "[ASDF]Ejemplo";
	if(name[0] == '[')
	{
		new pos = strfind(name, "]", true);
		if(pos != -1) strdel(name, 0, pos + 1); // aqui podrias dar el kick o quitarle el tag para cambiarle el nombre
	}
	print(name);



Respuesta: Detectar el nickname si tiene corchetes - dannypanda05 - 31.08.2016

Quote:
Originally Posted by adri1
Посмотреть сообщение
Код:
	new name[24] = "[ASDF]Ejemplo";
	if(name[0] == '[')
	{
		new pos = strfind(name, "]", true);
		if(pos != -1) strdel(name, 0, pos + 1); // aqui podrias dar el kick o quitarle el tag para cambiarle el nombre
	}
	print(name);
No funciona, detecta si tiene corchetes en cualquier parte, yo lo que quiero que detecte los [CLAN] y no los Dan[N]Y por poner un ejemplo.


Respuesta: Detectar el nickname si tiene corchetes - OTACON - 31.08.2016

PHP код:
new tags_pemitidos[5] = "ASD";
new 
name[24] = "[ASD]pene";
print(
name);
// buscamos la ubicacion de los corchetes
new caract_start;
new 
caract_end;
for(new 
x=0x<24x++)
{
    if(
name[x] == '['caract_start x;
    if(
name[x] == ']'caract_end x;
}
printf("start:%d & end:%d"caract_startcaract_end);
// extraemos el nombre entre lso corchetes
new extract[24];
strmid(extractnamecaract_start 1caract_end);
print(
extract);
// buscamos el tag
if(strfind(extracttags_pemitidostrue) != -1)// tag encontrado
{
    
strdel(namecaract_startcaract_end 1);// tag eliminado
    
format(name,24,"%s",name);// nombre establecido sin tag
    
print(name);




Respuesta: Detectar el nickname si tiene corchetes - aoEXE - 31.08.2016

Код:
#define MIN 3
#define MAX 5
stock DetectNameTag(const name[])
{
	new p1 = strfind(name, "[", true);
	if(p1 != -1)
	{
		new p2 = strfind(name, "]", true);
		if(p2 != -1)
		{
			if(MIN <= ((p2 - p1)- 1) <= MAX) return true;
		}
	}
	return false;
}
Si tiene de 3 a 5 caracteres dentro del tag retornarб true, de lo contrario false


Respuesta: Detectar el nickname si tiene corchetes - dannypanda05 - 01.09.2016

Quote:
Originally Posted by aoEXE
Посмотреть сообщение
Код:
#define MIN 3
#define MAX 5
stock DetectNameTag(const name[])
{
	new p1 = strfind(name, "[", true);
	if(p1 != -1)
	{
		new p2 = strfind(name, "]", true);
		if(p2 != -1)
		{
			if(MIN <= ((p2 - p1)- 1) <= MAX) return true;
		}
	}
	return false;
}
Si tiene de 3 a 5 caracteres dentro del tag retornarб true, de lo contrario false
Perfecto gracias, es justo lo que quiero :3
Otacon igual valdrнa pero tiene una falla y tiene variables xD