Beispiel #1
0
    private void SynapseHit(SynapseLocation hitSynapse)
    {
        switch (this.allSynapses[hitSynapse].Mode)
        {
        case SynapseMode.OneTimePositive:
            this.tutorialAudio[3].Play();
            this.OneTimePositiveHit(hitSynapse);
            break;

        case SynapseMode.OneTimeNegative:
            this.tutorialAudio[4].Play();
            this.OneTimeNegativeHit(hitSynapse);
            break;

        case SynapseMode.Neutral:
            this.NeutralHit(hitSynapse);
            break;

        case SynapseMode.RepetitivePositiveTutorial:
            this.tutorialAudio[3].Play();
            this.RepetitivePositiveHit(hitSynapse);
            break;

        default:
            Debug.LogError("GameManager.SynapseHit: Unknown synapse mode");
            break;
        }

        this.allSynapses[hitSynapse].HitSynapse();
    }
Beispiel #2
0
    private void DisplaySynapseHitEffect(SynapseLocation synapseHitLocation)
    {
        Synapse synapseObject = this.allSynapses[synapseHitLocation];

        switch (synapseObject.Mode)
        {
        case SynapseMode.OneTimePositive:
            this.DisplayOneTimePositiveHitEffect(synapseHitLocation);
            break;

        case SynapseMode.OneTimeNegative:
            this.DisplayOneTimeNegativeHitEffect(synapseHitLocation);
            break;

        case SynapseMode.Neutral:
            this.DisplayNeutralHitEffect(synapseHitLocation);
            break;

        case SynapseMode.RepetitivePositive:
            this.DisplayRepetitivePositiveHitEffect(synapseHitLocation);
            break;

        default:
            Debug.LogError("GameManager.DisplaySynapseHitEffect: Unknown synapse mode");
            break;
        }
    }
Beispiel #3
0
    private void ProcessSynapseHit(SynapseLocation synapseHitLocation)
    {
        Synapse synapseObject = this.allSynapses[synapseHitLocation];

        synapseObject.HitSynapse();

        switch (synapseObject.Mode)
        {
        case SynapseMode.OneTimePositive:
            this.ProcessOneTimePositiveHit(synapseHitLocation);
            break;

        case SynapseMode.OneTimeNegative:
            this.ProcessOneTimeNegativeHit(synapseHitLocation);
            break;

        case SynapseMode.Neutral:
            this.ProcessNeutralHit(synapseHitLocation);
            break;

        case SynapseMode.RepetitivePositive:
            this.ProcessRepetitivePositiveHit(synapseHitLocation);
            break;

        default:
            Debug.LogError("GameManager.ProcessSynapseHit: Unknown synapse mode");
            break;
        }
    }
Beispiel #4
0
    private void DisplayOneTimeNegativeHitEffect(SynapseLocation synapseLocation)
    {
        CameraShaker.Instance.ShakeOnce(7f, 2f, 0.1f, 1f);
        Synapse synapseObject = this.allSynapses[synapseLocation];
        float   screenSpaceX  = Camera.main.WorldToViewportPoint(synapseObject.gameObject.transform.position).x;
        float   screenSpaceY  = Camera.main.WorldToViewportPoint(synapseObject.gameObject.transform.position).y;

        StartCoroutine(this.ShockWaveEffect(screenSpaceX, screenSpaceY));
    }
Beispiel #5
0
 private void SynapseHit(SynapseLocation synapseHitLocation)
 {
     if (IsGameActive)
     {
         ProcessSynapseHit(synapseHitLocation);
     }
     // Display the hit effects all the time, even on game over.
     DisplaySynapseHitEffect(synapseHitLocation);
 }
Beispiel #6
0
    private void OneTimeNegativeHit(SynapseLocation synapseLocation)
    {
        this.allSynapses[synapseLocation].SetSynapseMode(SynapseMode.Neutral);
        this.allSynapses[synapseLocation].Illuminator.OnSynapseTouched(SynapseMode.OneTimeNegative);
        CameraShaker.Instance.ShakeOnce(7f, 2f, 0.1f, 1f);
        Synapse synapseObject = this.allSynapses[synapseLocation];
        float   screenSpaceX  = Camera.main.WorldToViewportPoint(synapseObject.gameObject.transform.position).x;
        float   screenSpaceY  = Camera.main.WorldToViewportPoint(synapseObject.gameObject.transform.position).y;

        StartCoroutine(this.ShockWaveEffect(screenSpaceX, screenSpaceY));
    }
Beispiel #7
0
    private void ProcessOneTimeNegativeHit(SynapseLocation synapseLocation)
    {
        this.badHitSound.Play();

        this.consecutiveClearedSequences = 0;
        this.ScoreNegativeHit();
        if (this.runningSequenceCoroutine != null)
        {
            StopCoroutine(this.runningSequenceCoroutine);
        }
        if (this.currentLoadNextSequenceCoroutine != null)
        {
            StopCoroutine(this.currentLoadNextSequenceCoroutine);
        }
        this.currentLoadNextSequenceCoroutine = StartCoroutine(LoadSequenceOnNextFrame());
    }
Beispiel #8
0
    private void ProcessOneTimePositiveHit(SynapseLocation synapseLocation)
    {
        this.goodHitSound.Play();

        this.ScorePositiveHit();
        this.allSynapses[synapseLocation].SetSynapseMode(SynapseMode.Neutral);

        if (this.IsSequenceCleared())
        {
            this.AddConsecutiveSequenceClear();
            if (this.DoesSequenceHaveRepetitivePositive() == false)
            {
                if (this.runningSequenceCoroutine != null)
                {
                    StopCoroutine(this.runningSequenceCoroutine);
                }
                if (this.currentLoadNextSequenceCoroutine != null)
                {
                    StopCoroutine(this.currentLoadNextSequenceCoroutine);
                }
                this.currentLoadNextSequenceCoroutine = StartCoroutine(LoadSequenceOnNextFrame());
            }
        }
    }
Beispiel #9
0
 private void RepetitivePositiveHit(SynapseLocation synapseLocation)
 {
     this.flashingSynapseHit = true;
     this.allSynapses[synapseLocation].Illuminator.OnSynapseTouched(SynapseMode.RepetitivePositive);
     CameraShaker.Instance.ShakeOnce(1f, 2f, 0.1f, 0.1f);
 }
Beispiel #10
0
 private void NeutralHit(SynapseLocation synapseLocation)
 {
     CameraShaker.Instance.ShakeOnce(4f, 1f, 0.3f, 0.3f);
 }
Beispiel #11
0
 private void OneTimePositiveHit(SynapseLocation synapseLocation)
 {
     this.allSynapses[synapseLocation].SetSynapseMode(SynapseMode.Neutral);
     this.allSynapses[synapseLocation].Illuminator.OnSynapseTouched(SynapseMode.OneTimePositive);
     CameraShaker.Instance.ShakeOnce(1f, 2f, 0.1f, 0.1f);
 }
Beispiel #12
0
 private void DisplayRepetitivePositiveHitEffect(SynapseLocation synapseLocation)
 {
     CameraShaker.Instance.ShakeOnce(1f, 2f, 0.1f, 0.1f);
 }
Beispiel #13
0
 private void ProcessRepetitivePositiveHit(SynapseLocation synapseLocation)
 {
     this.goodHitSound.Play();
     this.ScorePositiveHit();
 }
Beispiel #14
0
 private void ProcessNeutralHit(SynapseLocation synapseLocation)
 {
     this.ScoreNeutralHit();
 }