# OBSOLETO - OUTDATED

# Segnale di Occupazione Blocco per binari bidirezionali (è compatibile con
# l'Annuncio Treno imperativo rfi_AT_i.tds). È un avviso da piazzare prima
# di un segnale ausiliario posto alla fine di un tratto fittizio da disegna-
# re dopo l'uscita visibile. Aprendo il segnale ausiliario con un pedale, il
# blocco è occupato fino a che il treno non esce effettivamente dal tracciato.
# Versione piccola.
#
# Aspetti: spia rossa (yellow_flashing, occupato), spia bianca (green, libero)

# Special pure distant implementing the Block Occupancy indicator, suitable
# for bidirectional tracks, as it's compatible with the Train Announcement
# signal rfi_AT_i.tds. It should be placed before an auxiliary standard signal
# placed at the end of a hidden track section following the visible exit point.
# The block is busy when the auxiliary signal is cleared through a pedal, until
# the train finally exits the layout from the hidden track. Smaller version.
#
# Aspects: red dot (yellow_flashing, busy), white dot (green, free)

# P.Rosati  21/01/2021 (Versione 5.1)

Aspect: yellow_flashing
	IconE: OB_r_sml_E.xpm
	IconW: OB_r_sml_W.xpm
	IconN: OB_r_sml_N.xpm
	IconS: OB_r_sml_S.xpm
	Action: none

Aspect: green
	IconE: OB_w_sml_E.xpm
	IconW: OB_w_sml_W.xpm
	IconN: OB_w_sml_N.xpm
	IconS: OB_w_sml_S.xpm
	Action: none

# initial aspect

OnInit:
	.aspect = green
end

# the player or a script cleared the signal

OnCleared:
	return
end

# this or another signal changed its aspect

OnUpdate:
	# Quando il blocco è occupato i segnali precedenti sono chiusi
	# When the block is busy, previous signals are uncler
	if next.aspect = red	# Blocco libero - Block is free
		.aspect = green
	else					# Blocco occupato - Block is busy
		.aspect = yellow_flashing
	end
end
