private void UpdatePrimarySlot() { switch (m_InventoryBehaviour.GetPrimarySlot()) { case ItemType.BasicFire: m_BasicShoot.color = m_OriginalColor; m_DoubleShoot.color = m_HidedObjectColor; break; case ItemType.DoubleFire: m_BasicShoot.color = m_HidedObjectColor; m_DoubleShoot.color = m_OriginalColor; break; } }
public void UsePrimaryInventorySlot(FireType fireType) { if (m_CurrentTime >= m_TimeBetweenPrimaryShoots && !m_IsDead) { ItemType item = m_Inventory.GetPrimarySlot(); switch (item) { case ItemType.BasicFire: m_AudioSource.PlayOneShot(m_BasicShootAudio); if (fireType == FireType.DEFAULT) { Vector3 bulletPosition = new Vector3(transform.position.x + m_BulletOffsetX, transform.position.y, transform.position.z); m_BulletBehaviour.m_SinusoidalMovement = false; m_BulletBehaviour.m_Direction = m_OriginalBulletDirection; Fire(bulletPosition, m_BasicBullet, m_BasicBulletRotation); } else if (fireType == FireType.SINUSOIDAL) { Vector3 bulletPosition = new Vector3(transform.position.x + m_BulletOffsetX, transform.position.y, transform.position.z); m_BulletBehaviour.m_Direction = m_OriginalBulletDirection; m_BulletBehaviour.m_SinusoidalMovement = true; Fire(bulletPosition, m_BasicBullet, m_BasicBulletRotation); } else if (fireType == FireType.CIRCLE) { m_BulletBehaviour.m_SinusoidalMovement = false; FireInCircle(m_BasicBullet); } break; case ItemType.DoubleFire: m_AudioSource.PlayOneShot(m_DoubleShootAudio); Vector3 bulletPosition1 = new Vector3(transform.position.x + m_BulletOffsetX, transform.position.y + m_DoubleBulletOffsetY, transform.position.z); Vector3 bulletPosition2 = new Vector3(transform.position.x + m_BulletOffsetX, transform.position.y - m_DoubleBulletOffsetY, transform.position.z); Fire(bulletPosition1, m_DoubleBullet, Vector3.zero); Fire(bulletPosition2, m_DoubleBullet, Vector3.zero); break; } m_CurrentTime = 0.0f; } }