Esempio n. 1
0
//---------------------------------------------------------------------
void CVehicleWeapon::UpdateFPView(float frameTime)
{
	CItem::UpdateFPView(frameTime);

	const EntityId ownerId = GetOwnerId();
	
	//only update primary weapon
	IVehicle* pVehicle = GetVehicle();
	if(ownerId && pVehicle && (pVehicle->GetCurrentWeaponId(ownerId, true) != GetEntityId())) 
	{
		UpdateCrosshair(frameTime);
	}
	if (m_fm)
	{
		m_fm->UpdateFPView(frameTime);
	}
	if (m_zm)
	{
		m_zm->UpdateFPView(frameTime);
	}
}
Esempio n. 2
0
IItem* CPlayerRotation::GetCurrentItem(bool includeVehicle)
{
	IItem * pCurrentItem = m_player.GetCurrentItem();
	IVehicle* pVehicle = m_player.GetLinkedVehicle();
	if (pVehicle && includeVehicle)
	{
		if (EntityId weaponId = pVehicle->GetCurrentWeaponId(m_player.GetEntity()->GetId())) 
		{
			if (IItem* pItem = gEnv->pGame->GetIGameFramework()->GetIItemSystem()->GetItem(weaponId))    
			{
				if (IWeapon* pWeapon = pItem->GetIWeapon())
				{
					pCurrentItem = pItem;
				}
				else
				{
					return NULL;
				}
			}
		}
	}
	return pCurrentItem;
}