
blink
fait clignoter une lampe
> examples blink > edit blink
Allume et éteint une sortie de redstone toutes les demi-secondes, sans fin. C'est le « bonjour le monde » de l'automatisation : la même boucle fait marcher un feu d'avertissement à un passage à niveau, une balise clignotante en haut d'une tour, ou l'impulsion qui fait avancer une machine.
Quoi construire
Posez une Lampe à redstone sur l'ordinateur. Tout ce qui réagit à la redstone marche à sa place : un piston, une porte, un bloc musical, une Liaison de redstone de Create réglée en émission.
Lancez-le avec blink, arrêtez-le avec Ctrl+T ou le bouton Stopper. À l'arrêt, la sortie garde sa dernière valeur : la lampe peut rester allumée jusqu'à ce qu'un autre programme la change ou que l'ordinateur redémarre ou s'éteigne.
Comment il marche
local side = "top"
local on = falseLa face est gardée dans une variable : la changer revient à changer un mot, "bottom" (dessous), "left" (gauche), "right" (droite), "front" (avant) ou "back" (arrière), la gauche et la droite comptées face à l'écran. on retient l'état actuel de la lampe.
while true do
on = not on
rs.set(side, on)
sleep(0.5)
endwhile true do répète sans fin. not on inverse l'état : false devient true et inversement. rs.set() accepte true (pleine puissance, 15) ou false (0), ou un nombre de 0 à 15. Avec une demi-seconde allumée et une demi-seconde éteinte, la lampe clignote une fois par seconde.
Les sorties de redstone atteignent le monde à la fin de chaque tick du jeu (20 par seconde), et seule la dernière valeur du tick compte. Clignoter plus vite que sleep(0.05), un tick, n'a aucun effet visible.
Idées
- Clignotez plus vite ou plus lentement : changez
0.5. Prenez deux délais différents pour un éclair bref et une longue pause :rs.set(side, true) sleep(0.1) rs.set(side, false) sleep(1.9). - Faites clignoter deux lampes à tour de rôle, comme à un passage à niveau : mettez
"left"àonet"right"ànot on. - Ne clignotez que quand un levier à l'arrière est activé : entourez le corps de la boucle de
if rs.get("back") > 0 then ... end, comme à l'étape 10 du tutoriel. Clignotez un nombre de fois précis, puis arrêtez :
Brass for i = 1, 5 do rs.set("top", true) sleep(0.5) rs.set("top", false) sleep(0.5) end print("5 clignotements")5 clignotements
- Envoyez une force plutôt qu'un simple allumé et éteint :
rs.set(side, 7)donne un signal de 7, qui parcourt 7 blocs de poudre de redstone et qu'un Tube Nixie de Create affiche en chiffres. Voirrset le guide de la redstone.
Le programme
-- Fait clignoter une sortie de redstone : posez une lampe sur l'ordinateur.
-- Ctrl+T ou le bouton Stopper l'arrête.
local side = "top" -- ou : bottom, left, right, front
local on = false
while true do
on = not on
rs.set(side, on) -- true = 15, false = 0
sleep(0.5)
end