diff options
author | Nikolay Korolev <nickvnuk@gmail.com> | 2020-05-16 00:50:45 +0200 |
---|---|---|
committer | Nikolay Korolev <nickvnuk@gmail.com> | 2020-05-16 00:50:45 +0200 |
commit | 21329b8440ef87bbb34e02bffacacbe35b0f632d (patch) | |
tree | 6fc11fcadb5b04ba7309f32cc64eba6d14611287 /src/core/Pools.cpp | |
parent | ped attractors done (diff) | |
parent | Merge pull request #550 from erorcun/miami (diff) | |
download | re3-21329b8440ef87bbb34e02bffacacbe35b0f632d.tar re3-21329b8440ef87bbb34e02bffacacbe35b0f632d.tar.gz re3-21329b8440ef87bbb34e02bffacacbe35b0f632d.tar.bz2 re3-21329b8440ef87bbb34e02bffacacbe35b0f632d.tar.lz re3-21329b8440ef87bbb34e02bffacacbe35b0f632d.tar.xz re3-21329b8440ef87bbb34e02bffacacbe35b0f632d.tar.zst re3-21329b8440ef87bbb34e02bffacacbe35b0f632d.zip |
Diffstat (limited to 'src/core/Pools.cpp')
-rw-r--r-- | src/core/Pools.cpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/core/Pools.cpp b/src/core/Pools.cpp index 17b9e08d..6838ef8e 100644 --- a/src/core/Pools.cpp +++ b/src/core/Pools.cpp @@ -499,8 +499,20 @@ INITSAVEBUF pPed->CharCreatedBy = pBufferPlayer->CharCreatedBy; pPed->m_currentWeapon = 0; pPed->m_maxWeaponTypeAllowed = pBufferPlayer->m_maxWeaponTypeAllowed; - for (int i = 0; i < WEAPONTYPE_TOTAL_INVENTORY_WEAPONS; i++) - pPed->m_weapons[i] = pBufferPlayer->m_weapons[i]; + for (int i = 0; i < TOTAL_WEAPON_SLOTS; i++) { + if (pBufferPlayer->HasWeaponSlot(i)) { + int modelId = CWeaponInfo::GetWeaponInfo(pBufferPlayer->GetWeapon(i).m_eWeaponType)->m_nModelId; + if (modelId != -1) { + CStreaming::RequestModel(modelId, STREAMFLAGS_DEPENDENCY); + int modelId2 = CWeaponInfo::GetWeaponInfo(pBufferPlayer->GetWeapon(i).m_eWeaponType)->m_nModel2Id; + if (modelId2 != -1) + CStreaming::RequestModel(modelId2, STREAMFLAGS_DEPENDENCY); + + CStreaming::LoadAllRequestedModels(false); + } + pPed->GiveWeapon(pBufferPlayer->GetWeapon(i).m_eWeaponType, pBufferPlayer->GetWeapon(i).m_nAmmoTotal); + } + } if (pedtype == PEDTYPE_PLAYER1) { pPed->m_wepAccuracy = 100; |