void player_init(Player *player) { ship_init(&(player->ship_carrier),'c'); ship_init(&(player->ship_battleship),'b'); ship_init(&(player->ship_submarine),'s'); ship_init(&(player->ship_cruiser),'r'); ship_init(&(player->ship_destroyer),'d'); }
void test::FSTestFixture::SetUp() { auto currentTest = ::testing::UnitTest::GetInstance()->current_test_info(); pushModDir(currentTest->name()); init_cmdline(); timer_init(); #ifndef NDEBUG outwnd_init(); mprintf(("TEST: Setting up test '%s.%s'\n", currentTest->test_case_name(), currentTest->name())); #endif os_init("Test", "Test"); if (_initFlags & INIT_CFILE) { SCP_string cfile_dir(TEST_DATA_PATH); cfile_dir += DIR_SEPARATOR_CHAR; cfile_dir += "test"; // Cfile expects something after the path if (cfile_init(cfile_dir.c_str())) { FAIL() << "Cfile init failed!"; } if (_initFlags & INIT_MOD_TABLE) { mod_table_init(); // load in all the mod dependent settings } lcl_init(-1); lcl_xstr_init(); if (_initFlags & INIT_MOD_TABLE) { mod_table_init(); // load in all the mod dependent settings } if (_initFlags & INIT_GRAPHICS) { if (!gr_init(nullptr, GR_STUB, 1024, 768)) { FAIL() << "Graphics init failed!"; } if (_initFlags & INIT_FONTS) { font::init(); } } if (_initFlags & INIT_SHIPS) { ship_init(); } } }
static bool init(void) { if(!al_init()) { fprintf(stderr, "failed to initialize allegro.\n"); return false; } if(!al_install_keyboard()) { fprintf(stderr, "failed to initialize keyboard.\n"); return false; } if(!al_init_image_addon()) { fprintf(stderr, "failed to initialize image system.\n"); return false; } al_init_font_addon(); if(!al_init_ttf_addon()) { fprintf(stderr, "failed to initialize ttf system.\n"); return false; } /* sound */ if(!al_install_audio()) { fprintf(stderr, "failed to initialize audio system.\n"); return false; } if(!al_init_acodec_addon()) { fprintf(stderr, "failed to initialize audio codecs.\n"); return false; } if(!al_reserve_samples(10)) { fprintf(stderr, "failed to reserve audio samples.\n"); return false; } /* fonts */ asteroids.small_font = al_load_ttf_font("data/vectorb.ttf", 12, 0); asteroids.large_font = al_load_ttf_font("data/vectorb.ttf", 24, 0); /* lives sprite */ asteroids.lives_sprite = al_load_bitmap("data/sprites/ship/ship.png"); if(!asteroids.lives_sprite) { fprintf(stderr, "failed to load lives sprite.\n"); return false; } /* sprite preloading */ if(!level_init()) return false; if(!ship_init()) return false; if(!missile_init()) return false; if(!saucer_init()) return false; if(!asteroid_init()) return false; if(!explosion_init()) return false; asteroids.timer = al_create_timer(1.0 / FPS); if(!asteroids.timer) { fprintf(stderr, "failed to create timer.\n"); return false; } asteroids.event_queue = al_create_event_queue(); if(!asteroids.event_queue) { fprintf(stderr, "failed to create event queue.\n"); return false; } if(FULLSCREEN) al_set_new_display_flags(ALLEGRO_FULLSCREEN); al_set_new_display_option(ALLEGRO_SAMPLE_BUFFERS, 1, ALLEGRO_SUGGEST); al_set_new_display_option(ALLEGRO_SAMPLES, 8, ALLEGRO_SUGGEST); asteroids.display = al_create_display(SCREEN_W, SCREEN_H); if(!asteroids.display) { fprintf(stderr, "failed to create display.\n"); return false; } /* TODO: show on mouse movement */ al_hide_mouse_cursor(asteroids.display); al_register_event_source(asteroids.event_queue, al_get_display_event_source(asteroids.display)); al_register_event_source(asteroids.event_queue, al_get_timer_event_source(asteroids.timer)); al_register_event_source(asteroids.event_queue, al_get_keyboard_event_source()); return true; }