В player.h задаём переменную, например :
Code
int m_iFirstSlot; //Primary Weapons, only one per slot
Незабываем также её занести в SaveData.
Потом в коде самой пушки, там где функция подбора пишем примерно так :
Code
pPlayer->m_iFirstSlot = 1;
А в player.cpp
Ищем функцию AddPlayerItem
И в ней делаем проверку на подбираемое оружие.
Примерно так :
Code
if ( pItem->m_iId == WEAPON_MP5 )
{
if( m_iFirstSlot == 1 )
{
return FALSE;
//Тут можем вписать мессагу
}
else
{
return TRUE;
}
}
else if ( pItem->m_iId == WEAPON_SHOTGUN )
{
if( m_iFirstSlot == 1 )
{
return FALSE;
//Тут можем вписать мессагу
}
else
{
return TRUE;
}
}
Далее ищем функцию DropPlayerItem и делаем в ней следующую проверку :
Code
if ( pWeapon->m_iId == WEAPON_MP5 )
{
m_iFirstSlot = 0;
}
else if ( pWeapon->m_iId == WEAPON_SHOTGUN )
{
m_iFirstSlot = 0;
}
И так далее...
А также для Пистолетов нужно создавать свою переменную и делать новую проверку. Ну вот и всё вроде бы ничего не забыл.