to quote Mr Babbage "I fail to understand what confusion of ideas could lead to such a question"
on level complet conditions being met
exit game loop temporarily
run the end of level message(if any)
increment the level number
load the level
position player and opponents
re-enter the game loop
works fine for most games, in some cases where you have a lot of level specific events you may write the code in a more linear fashion so that calls to level specific creatures/scenes/models don`t cause to much overhead when the code is skipping those it doesn`t want for that level, the simplest way would be to put the main loop in a loop and then exit the main loop and load the next level before re-entering the loop,eg:
do
do
this is main game loop
if player_has_level_key then inc level:exit
loop
load level "level"+str$(level)
call position player and monsters function
loop
would be a simple example, all you do is change the loaded level, just remember to delete anything that isn`t on the new level, it would look silly if the enemy bodies where still lay around for example.
Mentor.
PC1: P4 hyperthreading 3ghz, 1gig mem, 2x160gig hd`s, ATI radeon 9800 pro gfx, 6 way surround sound, PC2: AMD 1.2ghz, 512mb ram, FX5200 ultra gfx, stereo 16 bit soundblaster, ups.