Welcome to VC and the forum.
You can't nest logic blocks within logic blocks, but you can have consecutive logic blocks and you can use the action VC.StopMacro to avoid moving on to the next IF statement as needed.
It sounds as though you will want to use events (https://voxcommando.com/mediawiki/index.php?title=Events), not a voice command, in order to evaluate whether your video game is active.
VC automatically generates events every time a window is focused or unfocused.
It depends what you mean by "disable". If you want VC to stop listening for voice commands while you're playing a videogame, then the action to use is VC.Off.
VC is very customizable and there are different ways to solve the same problem. Here is one possible approach to your situation (if I'm understanding the objectives properly). I used Chrome focus events just as an example.
Thank you, nime5ter. This is some very useful information. I had to change a few things inside your code to get it to work (e.g. Focused.VoxCommando-->Focused.chrome, Launch--> Launch.OpenFile) but I would say this solves probably all of my problems. And now I have a better understanding of how do use payloads as well as working around the limitations by using the StopMacro action. I'm glad you mentioned the StopMacro action. I was looking for something like this.
The payload thing inspired a new idea, and so maybe you could tell me if something was possible. Is it possible to have the "If ProgramFocused" refer to a payload list? So that way if I ever needed to add a game or something, I could just edit the payload rather than all the individual events and stuff.