#1
|
|||
|
|||
Python Programming Question
Im sory to ask this because Im still new to Python. but is there such a thing as 'nested While' in Python just like in C++? Im trying to loop a vizard game which contain a 'while true:' loop. the thing is, how do I repeat the whole program. this is the sample programming code.
Code:
def game() yield viztask.waitKeyDown(' ') #<----starts the game #fade intro page fadeOut = vizact.fadeTo(0,begin=1,time=1) startpage.addAction(fadeOut) #call throwing function throwing () viz.phys.setGravity(0,0,0) while True: # this while loop will repeat the flying Aliens to and fro FlyAliens() #flies the Aa Bb Cc Aliens ResetPositionAliens() myTask = viztask.schedule( game() ) Aliens= [Aa,Bb,Cc] Ship.enable(viz.COLLIDE_NOTIFY) def oncollide (e) : if e.obj2 in Aliens: Ship.visible(viz.OFF) Shipcrash.visible(viz.ON) view.lookat([2,0,-5]) viz.callback(viz.COLLIDE_BEGIN_EVENT,oncollide) So how do we reset the game by using another while loop by pressing the 'r' button ( yield viztask.waitKeyDown('r') ) and back to the beginning. (#<----starts the game) tq Last edited by jaylocco; 07-15-2009 at 08:16 PM. |
#2
|
|||
|
|||
There seems to be a problem with your current code. The while loop inside your game task is not yielding. This will probably cause the graphics loop to freeze. It seems like there should be a yield None statement at the end of the loop.
Regarding your original question. You can setup a simple callback function that restarts the game task when the 'r' key is pressed. Example: Code:
def ResetGame(): global myTask myTask.kill() # Kill existing task myTask = viztask.schedule( game() ) # Create new game task vizact.onkeydown('r',ResetGame) |
#3
|
|||
|
|||
Thanks..especially for the reset function that u suggested.it makes my life easier..
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Vizard tech tip: Using the Python Imaging Library (PIL) | Jeff | Vizard | 0 | 03-23-2009 11:13 AM |
General question and question regarding arrays | dan12345 | Vizard | 1 | 01-15-2008 10:15 AM |
python 2.4 instead of 2.3? | perselletje | Vizard | 7 | 03-14-2006 11:06 AM |
Extending Python With C++ | Vygreif | Vizard | 2 | 01-18-2006 09:21 AM |
Use Vizard 2.5 with Python 2.4.1 / IDLE 1.1.1 | Gilliard | Vizard | 4 | 08-04-2005 11:49 PM |