public override void InitialiseDistractor(RedirectionManagerER redirectionManager, bool findSpawnPosition = true)
 {
     base.InitialiseDistractor(redirectionManager);
     _animatedInterface.AnimationTrigger("Jumps");
     InitialisePhases("ScriptableObjects/EnemyPhases/" + _distractorName);
     StartCoroutine(BeginCombat(_timeUntilStartAfterSpawn));
     _redirectionManager._gameManager.PlayBattleTheme();
 }
Exemplo n.º 2
0
    public override void InitialiseDistractor(RedirectionManagerER redirectionManager, bool findSpawnPosition = true)
    {
        base.InitialiseDistractor(redirectionManager);

        transform.position = _redirectionManager.headTransform.position + _redirectionManager.headTransform.forward * _forwardOffsetFromPlayer;
        _spawnParticles.Play();

        StartCoroutine(RotateAroundPlayer());
    }
Exemplo n.º 3
0
    private void Awake()
    {
        _audioSource        = GetComponent <AudioSource>();
        _animator           = GetComponent <Animator>();
        _redirectionManager = GameObject.FindGameObjectWithTag("RedirectionManager").GetComponent <RedirectionManagerER>();
        _collider           = GetComponent <BoxCollider>();
        _trailRenderer      = GetComponent <TrailRenderer>();

        if (!string.IsNullOrEmpty(_animationTriggerOnStart))
        {
            AnimationTrigger(_animationTriggerOnStart);
        }
    }
    private void Awake()
    {
        _uiManager         = GameObject.Find("UIManager").GetComponent <UIManager>();
        _startGameDialogue = new Queue <DialogueSnippet>(Resources.LoadAll <DialogueSnippet>("ScriptableObjects/Dialogue/StartGame"));

        var tutorialDialogueArray = Resources.LoadAll <DialogueSnippet>("ScriptableObjects/Dialogue/Tutorial");
        var tutorialDialogueList  = new List <DialogueSnippet>(tutorialDialogueArray.OrderBy(c => c.name.Length).ThenBy(c => c.name));

        if (_experimentDataManager._experimentType != ExperimentType.detection)
        {
            // Text related to what button to press for detecting redirection is not needed for experiment 2 or when simply playing normally
            tutorialDialogueList.RemoveAt(_experimentExtraDialogueIndex - 1);
        }

        _tutorialDialogue = new Queue <DialogueSnippet>(tutorialDialogueList);

        _uiManager.ActivateDialogue(this, typeof(GameManager).GetTypeInfo(), _startGameTextBox, _startGameDialogue);

        _redirectionManager = GameObject.Find(!XRSettings.enabled ? "Redirected Walker (Debug)" : "Redirected Walker (VR)").GetComponent <RedirectionManagerER>();
        _redirectionManager.MIN_ROT_GAIN = 0f;
        _redirectionManager.MAX_ROT_GAIN = 0f;

        // Setting curvature radius to 1000 is a rather hacky way of disabling it.
        // Curvature gains are technically disabled at infinite radius, 1000 is just an "approximation" of that.
        _redirectionManager.CURVATURE_RADIUS = 1000f;

        _levelUpDialogueBox = Instantiate(_levelUpDialoguePrefab).GetComponent <LevelUpBox>();
        _levelUpDialogueBox.gameObject.SetActive(false);
        _levelUpDialogueBox.transform.localScale = Vector3.zero;

        _quizManager = GameObject.Find("CaveQuizManager").GetComponent <CaveQuizManager>();

        _uiManager.ChangeTextBoxVisibility(false, _scoreText.transform.parent.parent.parent);
        _uiManager.ChangeTextBoxVisibility(false, _leaderboardText.transform.parent.parent.parent);
        _playerAudioSource        = GetCurrentPlayerManager().GetComponent <AudioSource>();
        _playerAudioSource.loop   = true;
        _playerAudioSource.volume = _ambientThemeVolume;
        _playerAudioSource.clip   = _ambientTheme;
        _playerAudioSource.Play();
    }
Exemplo n.º 5
0
    private void Start()
    {
        _gameManager        = GameObject.Find("GameManager").GetComponent <GameManager>();
        _playerManager      = _gameManager.GetCurrentPlayerManager();
        _redirectionManager = _gameManager._redirectionManager;
        AcquireNewID();

        _appliedGainsTimeSample = new CircularBuffer.CircularBuffer <RecordedGainTypes>((int)(_samplesPerSecond * _gainRatioSampleWindowInSeconds));

        _gainIncrementer = GetComponent <GainIncrementer>();

        if (_experimentType == ExperimentType.effectiveness)
        {
            _experiment2Group = Randoms.Next(0, 2);
            Debug.Log("Experiment Group: " + (_experiment2Group == 0 ? "Control" : "Experimental"));
            _redirectionManager._switchToAC2FOnDistractor = _experiment2Group == 0 ? false : true;
            _redirectionManager.SubscribeToDistractorTriggerCallback(OnDistractorTrigger);
            _redirectionManager.SubscribeToResetTriggerCallback(OnResetTrigger);
            _redirectionManager.SubscribeToAlignmentCallback(OnAlignmentCallback);
            _redirectionManager.SubscribeToDistractorEndCallback(OnDistractorEnd);
        }
    }
Exemplo n.º 6
0
    public virtual void InitialiseDistractor(RedirectionManagerER redirectionManager, bool findSpawnPosition = true)
    {
        _maxHealth            = _health;
        _attackingPhaseActive = false;

        this._redirectionManager = redirectionManager;
        _animatedInterface       = GetComponent <AnimatedCharacterInterface>();

        _healthBarTransform            = transform.Find("HealthBarCanvas")?.GetComponent <RectTransform>();
        _healthBarFillImage            = _healthBarTransform?.GetChild(1)?.GetComponent <Image>();
        _healthBarTransform.localScale = Vector3.zero;

        _uniqueTelegraphAudioClips = Resources.LoadAll <AudioClip>("Audio/InstrumentTelegraphAudio/");
        _speedTelegraphAudioClips  = Resources.LoadAll <AudioClip>("Audio/SpeedTelegraphAudio/");

        if (findSpawnPosition)
        {
            var spawnPosition = _redirectionManager.headTransform.position + _redirectionManager.headTransform.forward * _forwardOffsetFromPlayer;
            spawnPosition.y = _redirectionManager.headTransform.position.y;
            _animatedInterface.TeleportToPosition(spawnPosition);
            transform.LookAt(_redirectionManager.headTransform.position);
        }
    }
Exemplo n.º 7
0
 private void Start()
 {
     _redirectionManagerER = redirectionManager as RedirectionManagerER;
 }
 public override void InitialiseDistractor(RedirectionManagerER redirectionManager, bool findSpawnPosition = true)
 {
     base.InitialiseDistractor(redirectionManager, false);
     _animatedInterface.AnimationTrigger("Conducting");
     _startPosition = transform.position;
 }
 private void Start()
 {
     _redirectionManagerER    = base.redirectionManager as RedirectionManagerER;
     _resetTextPrefab         = Resources.Load <GameObject>("ResetText/PauseTurnCentreER HUD");
     _resetVisualObjectPrefab = Resources.Load <GameObject>("ResetObjects/PauseTurnCentreER Object");
 }