Thanks for watching! I'm still new to making KZbin videos so please leave your constructive criticisms in the comments!
Пікірлер: 23
@wilzzuu6 ай бұрын
This is by far the best tutorial for game states that I have found, thank you so much!
@the_foliot5 ай бұрын
So my take away is that I really like this method of game state management, but like you sad it does not inherently run simultaneous loops so if you are running the game loop then change states and you only run the pause state/loop and switch back to game then essentially it will reset unless you do that extra finicking, possibly in the form of storing the data temporarily and then reloading the info when you switch back to game state from pause or other. Anyway, thank you, I will be attempting to adapt this game state manager.
@Smyky10 ай бұрын
This tuto is so clear. Your voice so calm when explaining so this is very enjoyable and easy to understand. Thanks you so much.
@chalkypj Жыл бұрын
Excellent tutorial which was easy to follow and easy to understand. You explain things well. Good that you give the prerequisites.
@kinuseo1616 Жыл бұрын
This is so simple compared to other explanations, very valuable information. keep it up!
@user-uy8eu6yd4w5 ай бұрын
Thank you very much for your explanation. It is practical and has clear inspiration. This is your achievement!
@user-eo4pv7ir3m5 ай бұрын
thanks man please keep on giving us this tutorials , are quite useful, I hope that you reach a million followers very soon
@fadhillahsidik9 ай бұрын
Exactly what I need man! Thank you so much!
@TasteDaRDX9 ай бұрын
Great technique, thanks for sharing. I see a lot of potential to improve my games that used several while run for different menus, which got very complex and hard to track/debug.
@sergey_a7 ай бұрын
14:25 If you want to do this, you create a simple function outside the class that has an if else condition. And projects are launched in them.
@dylansaga6 ай бұрын
mate this was a great tutorial so high quality deserves more views and subscribers keep making videos you will get big
@antoine-alexandrleytens99417 ай бұрын
Man... You are my hero !
@aniketbarad79623 ай бұрын
great video helped me a lot thanks
@Ch4gxАй бұрын
Sheesh! this tuts slaps! im still so confuse making classes but sheesh! may i request for github as a guide?
@R00kTruthАй бұрын
screen sizes shouldn't be a constant anyways, as some applications allow you to change the size, depending on the resolution of main display.. anyways i suppose Tuples would be classed as a "constant"
@codingwithsphereАй бұрын
For this example, there is no intention for the screen to be resized, so the screen size variables being constant works fine
@R00kTruthАй бұрын
@@codingwithsphere I know, my comment was for others, as programming in this style (oop), it's best to keep it as modualer as possible, so you're able to reuse the code in other projects, also this was just a reply to your comment about constant "I don't think there is a way to do constant within python"
@varunnayak53697 ай бұрын
I made a Home Screen for my chess game using Pygame (it doesn't look too bad but obviously not industry-standard with PyGame) and I seem to be having a problem with my screens. When I run my code, it not only generates the screen from the Home Screen code but then over it, it generates a new screen with the chess game itself running. Do you think that using a game state manager would be useful in this situation since all of my code is in PyGame? I would have used gui Zero for my UI but then I thought that I would have problems with integrating my chess game into it which works and is written in PyGame.
@R00kTruthАй бұрын
did you sort this out, it seems you're bliting both images at once, perhaps introduce a scene(s) manager into your program.
@varunnayak5369Ай бұрын
@@R00kTruth It wasn't because I'm blitting both images at once. It was generated two different windows at the time and I think it may have something to do with the use of multiprocessing and the collisions of graphics packages as I was also using some other graphics packages for the project, which I found out through a Google search (I knew I was using two graphics packages but I didn't know about this stuff on collisions where the use of multiple will affect the functionalities of the others. Every time that the program ran into an instance of a screen (Each of the PyGame screens which I planned to use was its own object so that it would be easier for me to determine which screen to flick to through a simple instantiation), it would generate a new window displaying that screen and I tried to change and play around with my screen change logic (which I thought made sense) but it was done to no avail so instead I decided to use a different graphics package since PyGame graphics is more for the game itself, though they are decent. I found a way around this issue through using tkinter for my main menu screen and login screen UI and then using Pygame for the game functionalities, which seemed to work fine, though I'm not a huge tkinter fan. .
@R00kTruthАй бұрын
@@varunnayak5369 yeah that will do ut lol, pygame isn't designed/programmed in the way to handle multiple windowing, There are ways around it, but 9/10 of the times will cause more problems then worth. depending on the complexity of your games/apps, it might make more sense and beneficial to create an event manager class, so you can keep all events in one file(location). but use the example within the guide, and make a skeleton file of the basics, and just experiment by adding more classes, ro repersent different scenes(colours), then rather them all being called via the events, have one or two called before you call your app from the main condition( name=__'main'__). I was hoping to have my system to be set up, to be able to give you some examples, however I have contractors working at my property, and dont have my otg kit to attach to dex. but if you're able to upload any code to pastebin, just reply I and others can see where you may need help(if you require it). anyways goodluck if no help is required. and feel free to message back anytime.