Microsoft MakeCode

Watch Interface Help pls

So basically I have this unfinished project in the Micro:bit editor that I’m having trouble working around where I’m trying to get up a menu with options (like a FitBit or something) - it has one choice for now which is to get back to the actual watch (this is an arrow shape) - and whenever I try to animate the ‘back to watch’ arrow, it shows one frame, switches back to the actual watch screen, and plays the next frame on the watch menu.

This is confusing me, pls help!

I think the problem may be due to multiple forever loops. I’d suggest trying a single forever that does all the display updates and maybe have an additional displayMode variable (and maybe an additional variable to keep track of progress on animations).

For example, you could do the arrow animation if displayMode is 2 and you could use a second variable as a counter for which arrow icon should be drawn.

Hopefully someone else can suggest a better way or can let you know if the forver loops really are the problem or now.

@bsiever the problem is not the forever loops, it is the if, then, else statement I’ve put in:


As you can see, the else (red) is an asleep face, and is also the main watch face. This interferes with the animation, since the Micro:bit is constantly seeing if the watch isn’t the stopwatch interface, resetting it to the home screen (asleep face).

It sort of was a forever loop though, thanks for pointing that out!

That’s actually mostly what I meant. You have two things updating the screen. One is updating the screen forever in a loop. It is constantly redrawing the frown. Even if it does draw the arrows, it will redraw the frown over them. That’s part of why I suggest you only have one place that draws to the screen. Of you could just draw the frown once when you change the running variable to false (rather than in the forever loop).

Well, thanks for mentioning it again, you are a great help!