RoZoSho

RoZoSho was a school project about experiencing work in a triple A development company. Everybody worked in fairly large teams (for school standards) and each team worked on their own level. Halfway through the project people got shuffled around and I ended up working on a completely different level.

The second team I was part of I worked on Camera Detection, Metal Detectors and indications that the player has collected all parts necessary to proceed.

The trailer was made by Ronan Claes.

private bool PlayerHitByRay()
        {
            Vector3 targetDirection = transform.position - m_Player.transform.position;

            RaycastHit hit;

            Physics.Raycast(transform.position, -targetDirection, out hit, m_Range);

            for (int i = 0; i < m_Pillars.Count; i++)
            {
                if (hit.transform != m_Pillars[i].transform)
                {
                    m_PlayerDetected = true;
                }

                else
                {
                    m_PlayerDetected = false;
                }
            }

            return m_PlayerDetected;
        }

        public override void TriggerStay()
        {
            if(PlayerHitByRay() && m_HasSpawnedEnemies == false)
            {;
                m_EnemySpawner.ActivateAlarm();
                m_HasSpawnedEnemies = true;
                m_Player.GetComponent<FactionType>().m_FactionType = m_FactionForPlayer;
                m_LockedDoor.SetLock(false);
            }
        }
    }
private void Start()
        {
            m_SpawnedEnemies = false;
            m_LPM = FindObjectOfType<LocalPickUpManager>();
        }

        private void CheckForMetal()
        {
            if(m_LPM.GetNumberOfPickUps() >= 1)
            {
                m_EnemySpawner.ActivateAlarm();
            }
        }

        public override void TriggerEnter()
        {
            if(m_SpawnedEnemies == false)
            {
                CheckForMetal();
                m_SpawnedEnemies = true;
            }
            m_Player.GetComponent<FactionType>().m_FactionType = m_FactionForPlayer;

        }