![]() |
|
#1
|
|||
|
|||
|
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 |