hmm... du beziehst dich immer nur auf den linken encoder. dieser wird bei einer drehung anch links allerdings kaum bewegt. vielleicht sollte im define (rechts) deshalb mit encoder[right] gearbeitet werden.

encoder[left] bzw. encoder[right] sind variablen (genauer: bilden ein array). diese enthalten einen wert, den man abfragen kann, zurückgesetzt werden sie dadurch nciht. zurücksetzen kannst du sie nur durch EncoderSet(0,0);