19Fermer21
FarewellLe 12/11/2009 à 16:21
Bon, j'ai résoudru le problème de la pile : main est un scheduler qui appelle la fonction qui va bien :
schedule
void gl_main()
{
	while(1)
	{
		// Schedule tasks
		switch( NextTask )
		{
			case TASK_EXIT:
				return;
			case TASK_INTRO:
				LoadIntro();
				break;
			case TASK_GAME:
				LoadGame();
				break;
		}
		CurTask = NextTask ;
		InfiniteLoop();
	}
}

Et dans InfiniteLoop(), on fait un return si CurTask a été mis à 0 par la tâche en cours.

C'est bien. smile
Enfin presque, faut que je trouve un moyen de faire passer une valeur d'une fonction à une autre maintenant...