Пример #1
0
    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;
        }
    }
Пример #2
0
    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;
        }
    }