protected void SetupEquipWeapons(EquipWeapons equipWeapons) { mustReleaseFireKey = false; currentCrosshairSetting = PlayerCharacterEntity.GetCrosshairSetting(); rightHandWeapon = equipWeapons.rightHand.GetWeaponItem(); leftHandWeapon = equipWeapons.leftHand.GetWeaponItem(); // Weapon ability will be able to use when equip weapon at main-hand only if (rightHandWeapon != null && leftHandWeapon == null) { if (rightHandWeapon.weaponAbility != weaponAbility) { if (weaponAbility != null) { weaponAbility.ForceDeactivated(); } weaponAbility = rightHandWeapon.weaponAbility; weaponAbility.Setup(this); weaponAbilityState = WeaponAbilityState.Deactivated; } } else { if (weaponAbility != null) { weaponAbility.ForceDeactivated(); } weaponAbility = null; weaponAbilityState = WeaponAbilityState.Deactivated; } }