| 622 | } |
| 623 | |
| 624 | GameResourcesConstPtr LoadGameResources( const VfsPtr& vfs ) |
| 625 | { |
| 626 | PC_ASSERT( vfs != nullptr ); |
| 627 | |
| 628 | const GameResourcesPtr result= std::make_shared<GameResources>(); |
| 629 | |
| 630 | result->vfs= vfs; |
| 631 | |
| 632 | LoadPalette( *vfs, result->palette ); |
| 633 | |
| 634 | const Vfs::FileContent inf_file= vfs->ReadFile( "CHASM.INF" ); |
| 635 | |
| 636 | if( inf_file.empty() ) |
| 637 | Log::FatalError( "Can not read CHASM.INF" ); |
| 638 | |
| 639 | LoadItemsDescription( inf_file, *result ); |
| 640 | LoadMonstersDescription( inf_file, *result ); |
| 641 | LoadSpriteEffectsDescription( inf_file, *result ); |
| 642 | LoadBMPObjectsDescription( inf_file, *result ); |
| 643 | LoadWeaponsDescription( inf_file, *result ); |
| 644 | LoadRocketsDescription( inf_file, *result ); |
| 645 | LoadGibsDescription( inf_file, *result ); |
| 646 | LoadSoundsDescription( inf_file, *result ); |
| 647 | |
| 648 | LoadItemsModels( *vfs, *result ); |
| 649 | LoadMonstersModels( *vfs, *result ); |
| 650 | LoadEffectsSprites( *vfs, *result ); |
| 651 | LoadBMPObjectsSprites( *vfs, *result ); |
| 652 | LoadWeaponsModels( *vfs, *result ); |
| 653 | LoadRocketsModels( *vfs, *result ); |
| 654 | LoadGibsModels( *vfs, *result ); |
| 655 | |
| 656 | return result; |
| 657 | } |
| 658 | |
| 659 | void LoadSoundsDescriptionFromMapResourcesFile( |
| 660 | const Vfs::FileContent& resoure_file, |
no test coverage detected