Esempio n. 1
0
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();
}
Esempio n. 2
0
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;
  }
}