NokiMo
MilesMouse
MilesMouse

patreon


Progress Report 6/17/2022

I, uh... had less sugar this time. Here's what I got done this week:

I've been feeling the effects of fatigue this week, so admittedly I don't have a whole lot of progress compared to the last several weeks. Fortunately, I have my quarterly week off after next week, so I suppose it's good timing! Well, as good as timing with fatigue can be. :P  Now then, explanation time!

The circle transition had me jumping through a few more hoops than I was anticipating. I followed this tutorial and got the transition itself working quite easily. However, I wanted the circle to zoom in/out on a particular place in the Main Menu, but stay centered in Mystery Menu C. After some digging, I found the solution and applied the same principles to my own code. (See: copy + paste)

From there, it was just a matter of getting the circle's position coordinates in the right spot only for the Main Menu. That was simple enough thanks to Godot allowing me to decouple the transition in the Main Menu from the default settings of the node. It's... a lot easier than it sounds...

With that done, I wanted this transition to only happen on the Main Menu when coming from Mystery Menu C, not from any other menu nor when the game starts. The solution to this one was to save data between scenes; specifically, what the name of the previous scene was so the Main Menu will only play the transition if coming from Mystery Menu C.

That's where the singleton comes into play. A singleton is basically a persistent object that acts as a hub for data that any other object can communicate with. The internet has absolutely nailed into my head how important it is that I don't overdo it with singletons. If things go according to plan, this should be the only one I have.

Anyways, the singleton was easy enough to set up. After all, I'd set one up for this project already with the version buttons. I took what I learned form that, scrapped the rest, and set it up without too much problem. From there, I made it get the current scene name, detect a scene transition (which was a task in and of itself), and make "previous_scene" equal to "current_scene" before declaring "current_scene" equal to... well, the current scene. Again, much easier done than said.

So, after all of that work, I finally had a working circle transition! I bet you never thought a simple transition could take so much work. Buuuut that's UI design for ya! And if I do my job right, nobody should even pay attention to the UI at all. 'Tis the ironic curse of the UI designer.

It's not all doom and gloom, though! We now have a singleton (or an AutoLoad, as Godot calls it) that can send data between scenes! And the "previous_scene" functionality? That'll come in handy in more ways than a simple scene transition. For example, if I throw in a countdown at the start of gameplay, I can skip the countdown if the player hit "Retry" (much like in Grape Escape). Future planning is tight!

Oh, and as for the sketch, I've got that about halfway complete. I'm still adding things into Mystery Menu C that will affect how it looks and what buttons will be present, so it's a bit of push and pull figuring out how to sketch all of it.

With all of that said, I'm in dire need of some Taco Bell to refuel my Taco Bell-shaped tank. I'm gonna try to get as much done as I can before my week off, so we'll see how next week goes! I'll see you guys then!


Related Creators