void sound_reinit_after_load(void) { stop_all_things_playing_samples(); stop_any_speech_sample(); if (Non3DEmitter != 0) { S3DDestroySoundEmitterAndSamples(Non3DEmitter); Non3DEmitter = 0; } ambient_sound_stop(); StartMusic(1, 127); init_messages(); randomize_sound_font(); }
void set_player_mode(struct PlayerInfo *player, long nview) { long i; if (player->view_type == nview) return; player->view_type = nview; player->allocflags &= ~PlaF_Unknown8; if (is_my_player(player)) { game.numfield_D &= ~numfield_D_08; game.numfield_D |= numfield_D_01; if (is_my_player(player)) stop_all_things_playing_samples(); } switch (player->view_type) { case PVT_DungeonTop: i = PVM_IsometricView; if (player->view_mode_restore == PVM_FrontView) { set_engine_view(player, PVM_IsometricView); i = PVM_FrontView; } set_engine_view(player, i); if (is_my_player(player)) toggle_status_menu((game.status_flags & Status_ShowStatusMenu)); if ((game.status_flags & Status_ShowGui) != 0) setup_engine_window(status_panel_width, 0, MyScreenWidth, MyScreenHeight); else setup_engine_window(0, 0, MyScreenWidth, MyScreenHeight); break; case PVT_CreatureContrl: case PVT_CreaturePasngr: set_engine_view(player, PVM_CreatureView); if (is_my_player(player)) game.numfield_D &= ~numfield_D_01; setup_engine_window(0, 0, MyScreenWidth, MyScreenHeight); break; case PVT_MapScreen: player->continue_work_state = player->work_state; set_engine_view(player, PVM_ParchmentView); break; case PVT_MapFadeIn: set_player_instance(player, PI_MapFadeTo, 0); break; case PVT_MapFadeOut: set_player_instance(player, PI_MapFadeFrom, 0); break; } }