Mensajes: 145
Temas: 78
Registro en: Sep 2020
Reputación:
0
27/04/2021, 06:47 PM
(Última modificación: 27/04/2021, 06:53 PM por MalitoMaloso. Edited 1 time in total.)
hola busco un plugins para no deje entrar a los que tiene nombres largos
por ejemplo maximo 15 de letras o signos o numeros
un jemeplo
123456789012345
yoelpepe_jajajajajajajajajaj
camilo dos dos dos dos dos
nose si me entienden
Mensajes: 300
Temas: 14
Registro en: Dec 2017
Reputación:
6
27/04/2021, 07:41 PM
(Última modificación: 27/04/2021, 07:41 PM por rojedafeik.)
Código PHP: /* Sublime AMXX Editor v2.2 */
#include <amxmodx>
#define TASK_NAME 1825523 #define CARACTERES_MAXIMOS 15
new const Plugin_Info[][] = { "Long name kick", "1.0", "Reynolds", "^4[TAG]^1", "[TAG]" };
new g_Nombre[32];
public plugin_init() { register_plugin(Plugin_Info[0], Plugin_Info[1], Plugin_Info[2]) }
public client_connect(id) { set_task(1.0, "check_name", id+TASK_NAME) }
public check_name(id) { id -= TASK_NAME
get_user_name(id, g_Nombre, charsmax(g_Nombre))
new iLen = strlen(g_Nombre[ id ] );
if(iLen > CARACTERES_MAXIMOS) server_cmd("kick #%d ^"Tu nombre es muy largo. Maximos caracteres permitidos: %d^"", get_user_userid(id), CARACTERES_MAXIMOS)
remove_task(id+TASK_NAME)
}
"Cada golpe es una lección, y cada lección te hace mejor."
Mensajes: 145
Temas: 78
Registro en: Sep 2020
Reputación:
0
27/04/2021, 08:09 PM
(Última modificación: 28/04/2021, 12:00 PM por MalitoMaloso.)
GRACIAS LO PROBARE
no funciona me puse este nombre y no me kick
wwwwwww wwwwww wwwwwwww
se puede hacer algo que igual cuenta los espacios ?
super man
soy la mora
mister topo terranio
gabriela la mejor de cs
Mensajes: 34
Temas: 6
Registro en: Mar 2015
Reputación:
0
Probá poniendo client_putinserver(id) en lugar de client_connect(id)
Mensajes: 215
Temas: 4
Registro en: Jan 2016
Reputación:
5
Código PHP: /* Plugin generated by AMXX-Studio */
#include <amxmodx>
#define PLUGIN "Nombes largos no se" #define VERSION "1.0" #define AUTHOR "Samuel, pero dime papi"
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) }
public client_putinserver(id) { new szName[MAX_NAME_LENGTH] new iLen = get_user_name(id, szName, MAX_NAME_LENGTH-1) if(iLen > 15) server_cmd("kick #%d ^"Tu nombre es muy largo. Maximos caracteres permitidos: 15^"", get_user_userid(id)) }
No probé, pero según yo sirve
Estoy cansado de este sufrimiento llamado vivir en Venezuela
Mensajes: 448
Temas: 38
Registro en: May 2020
Reputación:
19
Código PHP: #include <amxmodx>
#define PLUGIN "Restrict Nickname Length" #define VERSION "1.0" #define AUTHOR "[N]drs"
// Cantidad máxima de carácteres que puede tener un nombre #define MAX_NAME_CUSTOM_LENGTH 15 #define KICK_REASON "Tu nombre solo puede contener como máximo 15 carácteres"
public plugin_init() register_plugin(PLUGIN, VERSION, AUTHOR)
public client_connectex(id, const szName[], const szIP[], szReason[128]) { if(strlen(szName) <= MAX_NAME_CUSTOM_LENGTH) return PLUGIN_CONTINUE
copy(szReason, charsmax(szReason), KICK_REASON) return PLUGIN_HANDLED }
public client_infochanged(id) { new szName[MAX_NAME_LENGTH] if(get_user_info(id, "name", szName, charsmax(szName)) > MAX_NAME_CUSTOM_LENGTH) server_cmd("kick #%i %s", get_user_userid(id), KICK_REASON) }
Mensajes: 144
Temas: 4
Registro en: Mar 2018
Reputación:
8
(29/04/2021, 01:52 PM)[N]drs escribió: Código PHP: #include <amxmodx>
#define PLUGIN "Restrict Nickname Length" #define VERSION "1.0" #define AUTHOR "[N]drs"
// Cantidad máxima de carácteres que puede tener un nombre #define MAX_NAME_CUSTOM_LENGTH 15 #define KICK_REASON "Tu nombre solo puede contener como máximo 15 carácteres"
public plugin_init() register_plugin(PLUGIN, VERSION, AUTHOR)
public client_connectex(id, const szName[], const szIP[], szReason[128]) { if(strlen(szName) <= MAX_NAME_CUSTOM_LENGTH) return PLUGIN_CONTINUE
copy(szReason, charsmax(szReason), KICK_REASON) return PLUGIN_HANDLED }
public client_infochanged(id) { new szName[MAX_NAME_LENGTH] if(get_user_info(id, "name", szName, charsmax(szName)) > MAX_NAME_CUSTOM_LENGTH) server_cmd("kick #%i %s", get_user_userid(id), KICK_REASON) }
Supongo que no funcionará porque estás cacheando el nick con el mismo tamaño del limite permitido. Por lo tanto nunca será mayor que el límite.
Aumenta el tamaño del szName para que se pueda hacer bien la comparación.
Mensajes: 448
Temas: 38
Registro en: May 2020
Reputación:
19
29/04/2021, 02:22 PM
(Última modificación: 29/04/2021, 02:25 PM por [N]drs. Edited 1 time in total.)
(29/04/2021, 02:20 PM)GabsHp escribió: Supongo que no funcionará porque estás cacheando el nick con el mismo tamaño del limite permitido. Por lo tanto nunca será mayor que el límite.
Aumenta el tamaño del szName para que se pueda hacer bien la comparación.
Probé el código antes de comentar y funciona
->
Comprueba algo que no estás seguro antes de comentar
Mensajes: 144
Temas: 4
Registro en: Mar 2018
Reputación:
8
(29/04/2021, 02:22 PM)[N]drs escribió: Probé el código antes de comentar y funciona
En el infochanged también probaste? Se me hace raro porque no hiciste el check del length
Mensajes: 448
Temas: 38
Registro en: May 2020
Reputación:
19
29/04/2021, 02:26 PM
(Última modificación: 29/04/2021, 02:29 PM por [N]drs. Edited 1 time in total.)
(29/04/2021, 02:25 PM)GabsHp escribió: En el infochanged también probaste? Se me hace raro porque no hiciste el check del length
he probado todo
(29/04/2021, 02:22 PM)[N]drs escribió: Comprueba algo que no estás seguro antes de comentar
Mensajes: 144
Temas: 4
Registro en: Mar 2018
Reputación:
8
(29/04/2021, 02:26 PM)[N]drs escribió: he probado todo
Ya, leí que el get_user_info returna el número de celdas ocupadas. Pensé que devolvía un string normal y no se podría hacer comparación con un integer. Disculpa la intromisión
Mensajes: 169
Temas: 22
Registro en: Feb 2020
Reputación:
8
30/04/2021, 03:03 PM
(Última modificación: 30/04/2021, 03:04 PM por El Abuelo. Edited 1 time in total.)
(29/04/2021, 01:52 PM)[N]drs escribió: Código PHP: #include <amxmodx>
#define PLUGIN "Restrict Nickname Length" #define VERSION "1.0" #define AUTHOR "[N]drs"
// Cantidad máxima de carácteres que puede tener un nombre #define MAX_NAME_CUSTOM_LENGTH 15 #define KICK_REASON "Tu nombre solo puede contener como máximo 15 carácteres"
public plugin_init() register_plugin(PLUGIN, VERSION, AUTHOR)
public client_connectex(id, const szName[], const szIP[], szReason[128]) { if(strlen(szName) <= MAX_NAME_CUSTOM_LENGTH) return PLUGIN_CONTINUE
copy(szReason, charsmax(szReason), KICK_REASON) return PLUGIN_HANDLED }
public client_infochanged(id) { new szName[MAX_NAME_LENGTH] if(get_user_info(id, "name", szName, charsmax(szName)) > MAX_NAME_CUSTOM_LENGTH) server_cmd("kick #%i %s", get_user_userid(id), KICK_REASON) }
Muy bueno funciona, ahora si quisiera la funcion opuesta, que tenga un nombre mayor a 4 letras y que si es menor a 4 letras lo kickee, en vez de MAX_NAME_CUSTOM_LENGTH que deberia usar?
_____________________________________________________________________________
(05/08/2020, 06:47 PM)acetatomil escribió: Vos también sos trolazo por responder, y también me incluyo y el que lo lea también. Bue.
_____________________________________________________________________________
Mensajes: 448
Temas: 38
Registro en: May 2020
Reputación:
19
30/04/2021, 03:23 PM
(Última modificación: 30/04/2021, 03:32 PM por [N]drs. Edited 3 times in total.)
(30/04/2021, 03:03 PM)El Abuelo escribió: Muy bueno funciona, ahora si quisiera la funcion opuesta, que tenga un nombre mayor a 4 letras y que si es menor a 4 letras lo kickee, en vez de MAX_NAME_CUSTOM_LENGTH que deberia usar?
Código PHP: #include <amxmodx>
#define PLUGIN "Restrict Nickname Length" #define VERSION "1.6" #define AUTHOR "[N]drs"
// Cantidad mínima de carácteres que debe tener un nombre #define MIN_NAME_CUSTOM_LENGTH 4
// Cantidad máxima de carácteres que puede tener un nombre #define MAX_NAME_CUSTOM_LENGTH 15
// Motivo de expulsión #define KICK_REASON "Tu nombre es muy corto o muy largo"
#define is_valid_name(%1) (MIN_NAME_CUSTOM_LENGTH <= %1 <= MAX_NAME_CUSTOM_LENGTH)
public plugin_init() register_plugin(PLUGIN, VERSION, AUTHOR)
public client_connectex(id, const szName[], const szIP[], szReason[128]) { if(is_valid_name(strlen(szName))) return PLUGIN_CONTINUE
copy(szReason, charsmax(szReason), KICK_REASON) return PLUGIN_HANDLED }
public client_infochanged(id) { new szName[MAX_NAME_LENGTH] if(!is_valid_name(get_user_info(id, "name", szName, charsmax(szName)))) server_cmd("kick #%i %s", get_user_userid(id), KICK_REASON) }
Mensajes: 169
Temas: 22
Registro en: Feb 2020
Reputación:
8
(30/04/2021, 03:23 PM)[N]drs escribió: Código PHP: #include <amxmodx>
#define PLUGIN "Restrict Nickname Length" #define VERSION "1.6" #define AUTHOR "[N]drs"
// Cantidad mínima de carácteres que debe tener un nombre #define MIN_NAME_CUSTOM_LENGTH 4
// Cantidad máxima de carácteres que puede tener un nombre #define MAX_NAME_CUSTOM_LENGTH 15
// Motivo de expulsión #define KICK_REASON "Tu nombre es muy corto o muy largo"
#define is_valid_name(%1) (MIN_NAME_CUSTOM_LENGTH <= %1 <= MAX_NAME_CUSTOM_LENGTH)
public plugin_init() register_plugin(PLUGIN, VERSION, AUTHOR)
public client_connectex(id, const szName[], const szIP[], szReason[128]) { if(is_valid_name(strlen(szName))) return PLUGIN_CONTINUE
copy(szReason, charsmax(szReason), KICK_REASON) return PLUGIN_HANDLED }
public client_infochanged(id) { new szName[MAX_NAME_LENGTH] if(!is_valid_name(get_user_info(id, "name", szName, charsmax(szName)))) server_cmd("kick #%i %s", get_user_userid(id), KICK_REASON) }
FUNCIONA PERFECTO! Gracias loco!
_____________________________________________________________________________
(05/08/2020, 06:47 PM)acetatomil escribió: Vos también sos trolazo por responder, y también me incluyo y el que lo lea también. Bue.
_____________________________________________________________________________
|