View Single Post
Nå har du heller ikke fulgt rådet mitt som IneartheDx også nevnte. Du har ikke brutt koden ned til noe enklere. Du har masse irrelevant pseudokode kode som kanskje skaper bugs. For eksempel så kaller du på pseudokode for RPMen din (rpmToVelocityConversion). Du printer RPMen din etter du kaller på denne pseudokoden din. Du har en checkgear funksjon som ikke kalles på i loopen din.

Det er uendelig med feil og feilkilder i koden din som gjør det sinnsykt vanskelig for noe å bare "fortelle deg hva du skal gjøre".

Jeg syntes også at caset ditt med S_ACCELERATION virker litt funky. Trenger du egentlig enda en loop her? Om du holder inne knappen så vil den ende opp i samme case uansett. Slike nested loops øker kompleksiteten til koden din. Spesielt om du leser inn nye verdier midt i loopen.

Det konkrete rådet du har fått er at du skal bryte ned problemet. Spesielt om du er ny til dette. Drit i alt som har med gir å gjøre. Lag en tilstandsmaskin med to knapper som dekker nøytral, akselerasjon og bremsing. Grunnen til at vi sier det er at da får du på plass en form for arkitektur som du kan bygge videre på steg by steg. Du skyter deg selv i foten med fremgangsmåten din. Det vil gå 5x raskere og være 5x mindre irriterende for deg om du starter smått. Om du ikke tar det rådet så kommer jeg ikke til å bruke mer av tiden min på å hjelpe deg videre.