Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @echo off
- :: Prompteur pour parler dans les vidéos. Créé par Hugo7 batch.xoo.it
- :: À faire tourner sur un 2e écran.
- :: Remplir des fichiers .hPro et les charger.
- :: Licence CC-BY-NC (libre, attribution, non commercial)
- mode con lines=50 cols=120
- :: Variables à réinitialiser
- set fichier=
- color 07
- set nLigne=-1
- :: -
- :: Variables à configurer
- set tempsAffichageMessageInformation=1
- set arreterTraitementEnCasDeLigneSyntaxeIncorrecte=oui
- :: -
- :: Ouverture du fichier, on vire les ""
- set fichier=%~1
- :: -
- :: Chargement fichier, validation
- for %%V in ("%fichier%") do (
- if /i not "%%~xV"==".hPro" goto erreurformat
- )
- :: -
- :: Affichage compte à rebours
- cls
- pause
- batbox /g 7 5 /c 0x0c /d " /!\ "
- batbox /g 0 0 /c 07
- echo 3
- timeout /t 1 >nul
- echo 2
- timeout /t 1 >nul
- echo 1
- timeout /t 1 >nul
- cls
- setlocal enabledelayedexpansion enableextensions
- :: Traitement : chaque ligne du fichier texte doit être de forme "a;b;c;d" où a est
- :: toujours 0 ou 1 (1 pour afficher le message, 0 pour le masquer), b est le temps
- :: d'affichage en secondes, c est la couleur (juste un chiffre ou lettre jusqu'à F),
- :: et d est le message en lui-même.
- for /f "tokens=1,2,3,* delims=; eol=#" %%M in ('type "%fichier%"') do (
- :: %nLigne% sert à positionner le texte à la ligne suivante avec batbox
- set /a nLigne+=1
- if /i "%%M"=="pause" (
- batbox /g 0 !nLigne!
- pause
- )
- if /i "%%M"=="fin" (
- goto fin
- )
- :: on regarde si la syntaxe de la ligne est bonne
- if /i not "%%M"=="pause" if /i not "%%M"=="fin" if not "%%M"=="" if not "%%N"=="" if not "%%O"=="" if not "%%P"=="" (
- :: si 1, on affiche, si 0 on masque (dans la ligne du fichier .hPro)
- if "%%M"=="1" (
- batbox /g 0 !nLigne! /c 0x0%%O /d "%%P"
- batbox /k_
- :: Rester appuyé sur ESPACE jusqu'à l'apparition du message "PAUSE" pour mettre sur pause
- if !errorlevel!==32 (
- batbox /c 0x04 /d "PAUSE"
- :: un délai d'attente avant le pause afin de laisser l'utilisateur relâcher ESPACE
- timeout /t 3 >nul
- pause
- )
- timeout /t %%N >nul
- )
- ) else if "%arreterTraitementEnCasDeLigneSyntaxeIncorrecte%"=="oui" goto erreurformat
- )
- :fin
- echo.
- echo.
- color a4
- echo Traitement termin‚!
- timeout /t %tempsAffichageMessageInformation% >nul
- pause
- exit
- :erreurformat
- cls
- echo Erreur dans le format du fichier.
- echo V‚rifiez la syntaxe des lignes.
- echo Le fichier doit être en .hPro.
- pause
- exit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement