riproduzione melodia solo se il LED è acceso.. si può?!

In logica booleana un numero pari a 0 è un numero false, un qualunque valore pari a 1 o superiore equivale a true.
Tu scrivi:
if (tone && luce>1)

e già usi il modo di fare confronti che ti ho scritto perché
if (tone)
equivale a
if (tone>1)

quindi
if (tone && luce)
equivale a dire
se (tone > 1 && luce > 1)
e viceversa.

Hai stampato sulla seriale i valori delle variabili prima dell'if?