Example #1
0
static RESULT cmd_load(const char** argv, int argc, GameContext* pContext, GameEventContext* pEvent)
{
	GameEventContext    event;
	//RESULT ret;
	if(pContext->status != Status_None)
	{
		MSG_OUT("已经在游戏中,不能加载一个游戏进度!\n");
		return R_E_STATUS;
	}

	if(argc != 2)
	{
		param_error(argv[0]);
		return R_E_PARAM;
	}
	
	// load game

	INIT_EVENT(&event, GameEvent_LoadGame, INVALID_PLAYER , INVALID_PLAYER, pEvent);
	event.file_name = argv[1];

	//ret = game_load(pContext, argv[1]);
	
	//if(R_SUCC != ret)
	//{
	//	return ret;
	//}

	// game main
	return game_main(pContext, &event);
}
Example #2
0
int APIENTRY wWinMain(HINSTANCE, HINSTANCE, LPWSTR, int)
{
    xcom::init_framework();
    int x = game_main(xcom::get_commandline(0, nullptr));
    xcom::term_framework();
    return x;
}
Example #3
0
int main(int argc, char **argv)
{
    if (!SDL_getenv("SDL_AUDIODRIVER")) {
        SDL_putenv("SDL_AUDIODRIVER=waveout");
    }

    return game_main(argc, argv);
}
Example #4
0
int sdl_main(int argc, char **argv, void *runner) {
  char *game_argv[] = {"descent", "-debug"};
  int game_argc = 2;
  NaClCrashDumpInit();
  loaddata(runner);
  GameArg.DbgVerbose = CON_DEBUG;
  con_printf(CON_DEBUG, "starting\n");
  game_main(game_argc, game_argv);
  return 0;
}
Example #5
0
static void mainproc(void *arg)
{
    Dynamic    *dynamicp;
    Gfx        *glistp;
    Control    cont;

    init_dma();
    init_task();
    init_framebuffer();

    read_rom( _staticSegmentStart,
              _staticSegmentRomStart, _staticSegmentRomEnd  );
    read_rom( _dkSegmentStart, _dkSegmentRomStart, _dkSegmentRomEnd  );
    read_rom( _dk7SegmentStart, _dk7SegmentRomStart, _dk7SegmentRomEnd  );
    read_rom( _roadSegmentStart, _roadSegmentRomStart,
              _roadSegmentRomEnd  );
    read_rom( _l2_tvSegmentStart, _l2_tvSegmentRomStart,
              _l2_tvSegmentRomEnd  );

    init_controlers( &cont );

    game_init();

    while (1)
    {
        read_controler( &cont );

        dynamicp = &dynamic;

        guOrtho( &dynamicp->projection,
                 -(float) SCREEN_WD / 2.0F, (float) SCREEN_WD / 2.0F,
                 -(float) SCREEN_HT / 2.0F, (float) SCREEN_HT / 2.0F,
                 1.0F, 10.0F, 1.0F );
        guRotate( &dynamicp->modeling, 0.0F, 0.0F, 0.0F, 1.0F );

        glistp = dynamicp->glist;

        /* rcp rdp & color frame buffer initialize */
        glistp = init_rcprdp( glistp, (char *)_staticSegmentStart, draw_buffer );
        glistp = clear_cfb( glistp );

        /* game main */
        glistp = game_main( glistp, &cont );

        gDPFullSync(glistp++);
        gSPEndDisplayList(glistp++);

        assert((glistp - dynamicp->glist) < GLIST_LEN);

        start_task( glistp, dynamicp );

        swap_framebuffer( draw_buffer );
        draw_buffer ^= 1;
    }
}
Example #6
0
int main(void){
  init_ran_num();
  init_disp();
  
  while(1){
    if(title())break;
    game_main();
  }

  return 0;
}
Example #7
0
void main(){
	vdp_init();
	port_init();
	psg_init();
	scene_type = SCENE_DEMO;
	while(373){
		stage = 0;	/* リセットしないとデモでぷんぷん丸が滑り続ける */
		current_player = 0;
		while(373){
			scene_type = SCENE_DEMO;
			title_init();
			title_main();
			if(scene_type == SCENE_LOAD) break;
			if(scene_type == SCENE_SOUND_TEST){
				sound_test_init();
				sound_test_main();
				scene_type = SCENE_DEMO;
			}else{
				intro_main();
			}
		}
		intro_main();
		score_init();
		level = 0;
		/* cheat */
		if(ports[0].button & BUTTON_UP) stage = 1;
		if(ports[0].button & BUTTON_LEFT) stage = 2;
		if(ports[0].button & BUTTON_RIGHT) stage = 3;
		if(ports[0].button & BUTTON_DOWN){
			scene_type = SCENE_ALL_CLEAR;
		}else{
			while(373){
				game_init();
				map_show();
				game_set_bgm();
				game_main();
				game_swap_players();
				psg_init();
				/* game over when there is no players */
				if((players_continue[0] == 0) && (players_continue[1] == 0)){
					break;
				}
			}
		}
		if(scene_type == SCENE_ALL_CLEAR){
			stage = 0;		/* リセットしないとデモでぷんぷん丸が滑り続ける */
			current_player = 0;
			intro_ending_main();	/* intro loop */
			ending_main();		/* ending loop */
		}
		gameover_main("- GAME OVER -");
	}
}
Example #8
0
int
main(int argc, char **argv)
{
    const char *cmdLine = argc > 1 ? argv[1] : "";
    int retval;

    consoleInit();

    retval = game_main(cmdLine);

    printf("DOS Exit (return code %d)\n", retval);
    return retval;
}
Example #9
0
static RESULT cmd_start(const char** argv, int argc, GameContext* pContext, GameEventContext* pEvent)
{

	//RESULT  ret;
	int cfg;
	const NewGameConfig*  pConfig;
	GameEventContext    event;

	if(pContext->status != Status_None)
	{
		MSG_OUT("你正在游戏中,不能开始一个新的游戏!");
		return R_E_STATUS;
	}

	if(argc < 2 || 0 != to_int(argv[1], &cfg))
	{
		param_error(argv[0]);
		return R_E_PARAM;
	}

	// get config struct 
	pConfig = select_config(cfg);

	if(pConfig == NULL )
	{
		param_error(argv[0]);
		return R_E_PARAM;
	}

	// new game
	INIT_EVENT(&event, GameEvent_NewGame, INVALID_PLAYER, INVALID_PLAYER, pEvent);
	event.new_game_config = pConfig;


	//ret = init_game_context(pContext, pConfig->ministers, pConfig->spies, pConfig->mutineers);

	//if(ret != R_SUCC)
	//{
	//	MSG_OUT("start init new game failed!");
	//	return ret;
	//}

	// game main
	return game_main(pContext, &event);
}
Example #10
0
File: main.c Project: cluosh/osue
/**
 * @brief Main entry point
 * @param argc Number of arguments
 * @param argv Arguments as strings
 * @return EXIT_SUCCESS
 */
int main(int argc, char **argv)
{
	char secret[SECRET_MAX];
	struct options opts;
	
	/* Parse options */
	(void) memset(&opts, 0, sizeof(struct options));
	parse_args(argc, argv, &opts, secret);

	/* Initialize signals */
	sig_init();

	/* Disable stdout buffering */
	setbuf(stdout, NULL);

	/* Start stillepost */
	game_main(&opts, secret);
	return EXIT_SUCCESS;
}
Example #11
0
int	main( int argc, char **argv )
{
	init_arg();

	g_flg_gui = TRUE;
	g_flg_cui_mouse = TRUE;

#if	defined( NDEBUG )
	g_flg_cui = FALSE;
#elif	defined( DEBUG )
	g_flg_cui = TRUE;
#else
	g_flg_cui = FALSE;
#endif

	// メイン処理の初期化

	chk_arg( argc, argv );
	init_game();
	change_scene_gui( SCENE_N_INIT );

	if( g_flg_cui_mouse )
		gCuiMouse.init();

	if( g_flg_gui ){
		init_gtk_gui( argc, argv );

		// GUI のメイン・ループを開始

		gtk_main();

		// 終了

		close_game( EXIT_SUCCESS );

		gtk_exit( EXIT_SUCCESS );
	} else if( g_flg_cui_mouse ){
		init_gtk_cui_mouse( argc, argv );

		// CUI のメイン・ループを開始

		game_main();

		// 終了

		close_game( EXIT_SUCCESS );
	} else if( g_flg_cui ){
		init_gtk_cui( argc, argv );

		// CUI のメイン・ループを開始

		game_main();

		// 終了

		close_game( EXIT_SUCCESS );
	}

	exit_game( EXIT_SUCCESS );
	return EXIT_SUCCESS;
}
Example #12
0
BOOL StartGame(void)
{
    char buf[1024];
    extern void *screen;
    int i;

    StopMenuMusic();

    D(bug("Before FreeMenuStuff()\n"));
    FreeMenuStuff();
    D(bug("After FreeMenuStuff()\n"));

    for(i=0;i<ARCADE_TEAMS+1;i++)
        arcade_gfx[i]=NULL;

    os_stop_audio();

    game_start=TRUE;

    game_main();

    if(network_game) {
        network_game=FALSE;
        free_network();
    }

    {
        SDL_Event e;

        while(SDL_PollEvent(&e));
    }

    game_start = FALSE;

    snprintf(buf, 1024, "%sthismatch", TEMP_DIR);
#ifdef __CODEGUARD__
    if(access(buf,0) != -1)
#endif
    remove(buf/*-*/);

    WINDOW_WIDTH=wanted_width;
    WINDOW_HEIGHT=wanted_height;

    OpenMenuScreen();

    SDL_ShowCursor(1);

    if(!screen || !(LoadMenuStuff())) {
        request("Unable to load the menu datas!");
        return FALSE;
    }

    os_start_audio();

    if(arcade_teams)
        LoadArcadeGfx();

    ClearSelection();

    return TRUE;
}