Responder al mensaje

Advertencia - mientras estabas leyendo, fueron publicadas 8 respuestas. Probablemente desees revisar tu mensaje.
Advertencia: No se ha publicado ninguna respuesta a este tema desde hace 40 días como mínimo.
A menos que estés seguro de que quieres responder, por favor, considera el empezar un nuevo tema.

Nota: este mensaje no se mostrará hasta que sea aprobado por un moderador.

Nombre:
Email:
Asunto:
Icono del mensaje:

Verificación:
Escribe las letras mostradas en la imagen
Escuchar el texto / Solicitar otra imagen

Escribe las letras mostradas en la imagen:
¿Cuánto es uno por uno? (en letra y en minúscula):

teclas método abreviado (sólo IE y Mozilla): presiona alt+s para enviar formulario/publicar o alt+p para previsualizar


Sumario de Temas

Publicado por: Dino
« en: Abril 13, 2021, 03:47:55 am »

sigue algunas veces fallando el  sinnc puede ser que tenga razon cadaver habria que ver ese detalle
Publicado por: Quetzalcoatl
« en: Febrero 24, 2021, 06:11:31 pm »

Y porque no mejor omitir si el token es un nick?, además por lo que veo no se considera el largo de la cadena de texto.

Básicamente todo se refiere al principio del post, usa el nick para recomponer la cadena de texto eliminando los nicks en el canal, el por que lo hace, es por que el tema se llama antiMayusculas, y por ello si un nick escrito en mayúsculas no sea sancionado. Aunque para mi seria mejor usar un while que ese bucle.

Con lo que respecta a la longitud de la cadena esta siendo tomada por dos variables donde aplican el $len y hacen $calc para el porciento, igual que el punto anterior, hay otros métodos mejores para ello, al igual que usar ban y después kick en el contador cuando llegue a 3, se podría poner solo el ban con parámetros de -kuN, pero pues todo esta basado en el primer código que proporciono el creador del post.
Publicado por: Cadaver
« en: Febrero 24, 2021, 05:09:36 pm »

Y porque no mejor omitir si el token es un nick?, además por lo que veo no se considera el largo de la cadena de texto.
Publicado por: Quetzalcoatl
« en: Febrero 24, 2021, 04:17:28 am »

Ya no recordaba de que trataba el post, tuve que reeleer todo, como te mencione saca o elimina caracteres usados en los NC, algunos usan caracteres raros aparte de los guiones(bajo,medio), el problema en especifico para
:BUZA_KAPERUZA  o BUZA_KAPERUZA:

seria el guion bajo(_) el cual es el ascii 95
seria cuestión de quitarlo del alias sinNC y quedaria como:
Código: [Seleccionar]
alias sinNC { var %a 1, %b | tokenize 32 $remove($1,$chr(91),$chr(92),$chr(59),$chr(58),$chr(45)) | while ($mid($strip($1),%a,1)) { if (($v1 isalnum) || ($v1 isin -_)) { %b =  $+(%b,$v1) } | inc %a } | return %b }
puedes probar usando
Código: [Seleccionar]
//echo -s $sinnc(:BUZA_KAPERUZA)y te dejara el nick tal cual y el if hará la comparación si esta en el canal.

Saludos
Publicado por: Dino
« en: Febrero 24, 2021, 03:15:03 am »

me sigue fallando el script... y agregue los caracteres nuevos como me enseñaste
Código: [Seleccionar]
//echo -a $asc(:) =58  //echo -a $asc(;) =59   y como sugeriste añadi if ( $sinNC($strip(%c)) ison # ) { inc %b | goto bucle }
  pero pese a todo eso cuando alguien menciona un nick en mayusculas en el canal
  como por ejemplo :BUZA_KAPERUZA  o BUZA_KAPERUZA:  lanza el mensaje de advertencia
  y pese a que esos caracteres ya estan agregados en el alias sinNC
  no se mucho de scripting pero mi opinion el detalle esta en esta ruta
 
Código: [Seleccionar]
if ( $sinNC($strip(%c)) ison # ) { inc %b | goto bucle }  que sigue mal y no omite los caracteres como : o ; como por ejemplo :BUZA_KAPERUZA  o BUZA_KAPERUZA:
 
 
 
Código: [Seleccionar]

on *:text:*:#: {
  var %a = $numtok($1-,32)
  var %b = 1
  :bucle
  var %c = $gettok($1-,%b,32)
  if ( $sinNC($strip(%c)) ison # ) { inc %b | goto bucle }
  var %d = %d %c
  if ( %b > %a ) { goto continua }
  inc %b
  goto bucle
  :continua

  var %lon_frase = $len(%d)
  var %lon_frase_sin_may = $len($removecs(%d,A,B,C,D,E,F,G,H,I,J,K,L,M,N,Ñ,O,P,Q,R,S,T,U,V,W,X,Y,Z))
  If ( $me isop # ) && ( $nick !isop # ) && ( %lon_frase >= 4 ) && ( $calc(((%lon_frase - %lon_frase_sin_may) * 100 ) / %lon_frase ) > 90 ) {
    inc %_cuenta. [ $+ [ $nick ] ]
    if (%_cuenta. [ $+ [ $nick ] ] == 1) { msg # Por favor $nick Desactiva tus Mayusculas (Primer aviso) }
    if (%_cuenta. [ $+ [ $nick ] ] == 2) { msg # $nick Desactiva  (Ultimo aviso) }   
    if (%_cuenta. [ $+ [ $nick ] ] == 3) { ban -u120 $chan $address($nick,2) | kick $chan $nick No Mayusculas (Ya te avise) Baneado por 2 minutos. | unset %_cuenta. [ $+ [ $nick ] ] }
} }

alias sinNC { var %a 1, %b | tokenize 32 $remove($1,$chr(91),$chr(92),$chr(95),$chr(59),$chr(58),$chr(45)) | while ($mid($strip($1),%a,1)) { if (($v1 isalnum) || ($v1 isin -_)) { %b =  $+(%b,$v1) } | inc %a } | return %b }
puedes revisarlo el codigo completo por favor para ver en que falla ???
en el alias sinNC ya agregue esos caracteres a omitir y solo la el detalle es el
Código: [Seleccionar]
if ( $sinNC($strip(%c)) ison # ) { inc %b | goto bucle }
Publicado por: Quetzalcoatl
« en: Enero 09, 2021, 04:58:45 am »

Gracias por notificar, quizás a alguien le pueda servir en un futuro.

Saludos Dino
Publicado por: Dino
« en: Enero 09, 2021, 04:01:36 am »

POS Ahora si me funciono de maravilla gracias :D eres un genio
Publicado por: Quetzalcoatl
« en: Enero 06, 2021, 09:13:03 am »

tu mencionas que
pero detecte que tambien si los usuarios nombra nicks con mayusculas iniciando o terminando en dos puntos : o punto y coma ;
igual les advierte la solucion que veo es que a tu depurador se añada para que omita los dos puntos y punto y coma y coma y punto y coma.... se puede añadir añadir por favor???
blablabla
y te da como resultado una advertencia para que desactive las mayúsculas.

siendo así si funciono, por que ya no esta tomando en cuenta los caracteres de ; : . , por ende esta lanzando la advertecia asi como mencionaste.

A menos que quieras decir que los nicks en mayúsculas no sean tomados en cuenta, cosa que seria diferente a lo que mencionas, se haria referencia al post de
http://foroircap.org/ayuda-scripting-ircap/antimayusuculas-con-advertencia/?action=post;quote=7717;last_msg=7810

ignoro como tienes el checador de %c en la comprobacion si es un nick en el canal, pero deberia ser algo como:

Código: [Seleccionar]
if ( $sinNC($strip(%c)) ison # ) { inc %b | goto bucle }
donde se están quitando los colores de %c y removiendo caracteres especiales y una ves realizado eso, verificando si es una palabra que corresponde a un nick en el canal.

Saludos.
Publicado por: Dino
« en: Enero 06, 2021, 01:40:53 am »

lo agregue y no funciona //echo -a $asc(:)
58
alias sinNC { var %a 1, %b | tokenize 32 $remove($1,$chr(91),$chr(92),$chr(45),$chr(58),$chr(59),$chr(55357)) | while ($mid($strip($1),%a,1)) { if (($v1 isalnum) || ($v1 isin -_)) { %b =  $+(%b,$v1) } | inc %a } | return %b }

dumkan> MININHA: gracias 😉
<@dinn> [ dumkan ] Desactive las Mayusculas. Se consideran gritos y el uso excesivo de ellas puede generar lag. Gracias. (Ultimo aviso)
Publicado por: Quetzalcoatl
« en: Enero 06, 2021, 01:10:25 am »

la parte de depuración de caracteres o símbolos es donde esta:

tokenize 32$remove($1,$chr(91),$chr(92),$chr(45))

Siendo que los caracteres estan agregados por su numero ascii, debido a que si pones algunos simbolos especiales puede que te marque error, es por eso que se requiere usar su numero ascii y usar el identificador de $chr

ejemplo si quieres poner ; para quitarlo seria primero buscar su ascii en IRCap se usa /ascii ; y retornara el numero del ascii o usar //echo -a $asc(;)

una ves obtenido el valor solo basta agregarlo, separado de comas entre los otros $chr
; en ascii es 59, quedaría como:
tokenize 32$remove($1,$chr(91),$chr(92),$chr(45),$chr(59))

Una vez dicho eso, solo basta agregar los caracteres que requieres eliminar uno por uno.
Publicado por: Dino
« en: Enero 05, 2021, 11:05:36 pm »

tu depurador funciona muy bien
Código: [Seleccionar]
alias sinNC { var %a 1, %b | tokenize 32 $remove($1,$chr(91),$chr(92),$chr(45)) | while ($mid($strip($1),%a,1)) { if (($v1 isalnum) || ($v1 isin -_)) { %b =  $+(%b,$v1) } | inc %a } | return %b }pero detecte que tambien si los usuarios nombra nicks con mayusculas iniciando o terminando en dos puntos : o punto y coma ;
igual les advierte la solucion que veo es que a tu depurador se añada para que omita los dos puntos y punto y coma y coma y punto y coma.... se puede añadir añadir por favor???

como por ejemplo que omita cuando saluden a dino:
Código: [Seleccionar]
Hola [DINO]:
Hola [DINO];
Hola [DINO].
Hola [DINO],
Publicado por: Dino
« en: Diciembre 06, 2020, 02:41:12 am »

este nick esta en linea en el canal BUZA_KAPERUZA  y cuando dicen su nick el remote lo reconoce como mayuscula y lo lanza como advertencia y es solo con ese nick en mayuscula que esta en linea en el canal
Publicado por: Dino
« en: Agosto 26, 2020, 11:48:23 pm »

baje el porcentaje de 90 a 20 funciona pero cuando dan mas espacio ya no reconoce lo ideal seria que envez de porcentaje mejor contara las letras mayusculas
Publicado por: Quetzalcoatl
« en: Agosto 24, 2020, 05:32:49 am »

"Ya se te especifico que es por porcentaje el código con que iniciaste el post."

https://es.wikipedia.org/wiki/Porcentaje
Publicado por: Dino
« en: Agosto 24, 2020, 02:43:36 am »

despues de muchas pruebas note que no reconoce mayusculas cuando la palabra tiene espacios largos ejemplo
heyyy que hacen o como estan AMIGOS saludos...

porfa ayuda.
anything