Noticias:

Juega trivias en español en el canal #Trivias

Menú Principal

#AsphyxiA

Iniciado por TerraChat, Oct 16, 2024, 04:27 PM

Tema anterior - Siguiente tema

TerraChat

; === Addon para leer TXT en modo ascendente, mostrar en #AsphyxiA cada 3 minutos y borrar cada línea leída ===
; Comandos:
; /reqstart  - Activa el script
; /reqstop   - Desactiva el script
; El archivo de texto debe estar en la carpeta "Reqz" dentro del directorio mIRC.

menu channel {
  Reqz Control
  .Iniciar Addon (On): reqstart
  .Detener Addon (Off): reqstop
}

alias reqstart {
  ; Verifica si el temporizador ya está activo
  if ($timer(req_timer)) {
    echo -a *** El temporizador ya está corriendo.
    return
  }
  ; Activa el temporizador que ejecuta el alias cada 180 segundos (3 minutos)
  echo -a *** Iniciando la lectura del archivo de requests...
  .timerreq_timer 0 30 reqshow
}

alias reqstop {
  ; Desactiva el temporizador
  if (!$timer(req_timer)) {
    echo -a *** No hay temporizador en ejecución.
    return
  }
  .timerreq_timer off
  echo -a *** Lectura de requests detenida.
}

alias reqshow {
  ; Ajusta la ruta con el nombre correcto de la carpeta y archivo
  var %file_path = C:\Users\Salvador\AppData\Roaming\mIRC\Reqz\requests.txt

  ; Verifica si el archivo existe
  if (!$file(%file_path)) {
    echo -a *** ␂ERROR␂: El archivo $qt(%file_path) esta vacio.
    reqstop
    return
  }

  ; Obtiene el número total de líneas
  var %total_lines = $lines(%file_path)

  ; Si hay líneas en el archivo
  if (%total_lines > 0) {
    ; Lee la primera línea del archivo
    var %current_line = $read(%file_path, 1)

    ; Envía la línea al canal con el prefijo ".addreq "
    msg #AsphyxiA .addreq %current_line

    ; Borra la primera línea del archivo después de mostrarla
    write -dl1 %file_path
  }
  else {
    ; Si no hay más líneas, detiene el temporizador
    .timerreq_timer off
  }
}