Example #1
0
 private void HandlePlayerDeathEvent(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         _targetAlive = false;
     }
 }
Example #2
0
    void OnTriggerStay2D(Collider2D collider)
    {
        // Bail if the collider isn't an orb.
        if (!collider.CompareTag(Tags.kPedestal))
        {
            return;
        }

        var info = collider.GetComponent <ZMPlayerInfo>();

        if (_playerInfo == info)
        {
            if (_totalScore < maxScore)
            {
                if (_pedestalActive && _targetAlive)
                {
                    AddToScore(scoreAmount);
                }
            }
            else if (!_readyFired)
            {
                var infoArgs = new ZMPlayerInfoEventArgs(_playerInfo);

                Notifier.SendEventNotification(OnReachMaxScore, infoArgs);

                _readyFired = true;
            }
        }
    }
Example #3
0
 protected virtual void HandlePlayerCreate(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         _playerController = args.info.GetComponent <ZMPlayerController>();
     }
 }
Example #4
0
 private void HandleActivateEvent(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         _pedestalActive = true;
     }
 }
Example #5
0
 void HandleStopScoreEvent(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         _fadingIn = false;
     }
 }
Example #6
0
 void HandleMaxScoreReachedEvent(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         gameObject.SetActive(false);
     }
 }
 private void HandlePlayerCreate(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         SetActive(_onPlayerCreateActivationObjects, true);
     }
 }
Example #8
0
 private void HandleDropOutEvent(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         UpdateUI(0);
     }
 }
Example #9
0
 // event handlers
 private void HandlePlayerDeathEvent(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         _targetState = TargetState.DEAD;
     }
 }
Example #10
0
 void HandleMinScoreReached(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         _image.enabled = false;
     }
 }
Example #11
0
 private void EliminateScoreForPlayer(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         _scoreStatus.text = "ELIMINATED!";
     }
 }
Example #12
0
 void HandleStopScoreEvent(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         SetActive(!activeOnScore);
     }
 }
 private void HandlePlayerDropOut(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         SetActive(_onPlayerCreateActivationObjects, false);
         SetActive(_onPlayerEnterActivationObjects, false);
     }
 }
Example #14
0
 private void Activate(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         _text.text = message;
         gameObject.SetActive(true);
     }
 }
Example #15
0
 private void HandlePlayerDeathEvent(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         _spriteRenderer.enabled = true;
         gameObject.SetActive(true);
     }
 }
Example #16
0
 private void HandlePlayerCreate(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         ActivateScoreBar(_playerInfo);
         UpdateScore(args.info, 0.0f);
     }
 }
Example #17
0
 private void HandleDropOutEvent(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         transform.position = _basePosition;
         gameObject.SetActive(false);
     }
 }
Example #18
0
    void HandleAtPathEndEvent(ZMWaypointMovementEventArgs args)
    {
        if (gameObject == args.movement.gameObject)
        {
            var infoArgs = new ZMPlayerInfoEventArgs(_playerInfo);

            Notifier.SendEventNotification(ActivateEvent, infoArgs);
        }
    }
Example #19
0
    private void HandleDropOutEvent(ZMPlayerInfoEventArgs args)
    {
        if (_playerInfo == args.info)
        {
            SetActive(_activateOnDrop || !_deactivateOnDrop);

            HandleDropOutEvent();
        }
    }
Example #20
0
 private void HandleLobbyMaxScoreReachedEvent(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         DisablePlayer();
         GetComponent <Renderer>().enabled = false;
         gameObject.SetActive(false);
     }
 }
Example #21
0
 private void HandleOnPlayerDropOut(ZMPlayerInfoEventArgs args)
 {
     if (_playerInfo == args.info)
     {
         DisablePlayer();
         ClearInputEvents();
         GetComponent <Renderer>().enabled = false;
         gameObject.SetActive(false);
     }
 }
Example #22
0
    private void HandleMinScoreReached(ZMPlayerInfoEventArgs args)
    {
        if (_playerInfo == args.info)
        {
            var outArgs = new MonoBehaviourEventArgs(this);

            _audio.Stop();

            Notifier.SendEventNotification(SoulDestroyedEvent, outArgs);
        }
    }
Example #23
0
    void HandleCanScoreEvent(ZMPlayerInfoEventArgs args)
    {
        if (_playerInfo == args.info)
        {
            _fadingIn = true;

            if (!_image.enabled)
            {
                _image.enabled = true;
            }
        }
    }
Example #24
0
    public void PlayerDidDropOut(ZMPlayerInfo info)
    {
        var index = info.ID;
        var args  = new ZMPlayerInfoEventArgs(info);

        // Drop player for half a second, then set to waiting.
        _players[index].SetDropped();

        Utilities.ExecuteAfterDelay(SetReady, 0.25f, info.ID);

        Notifier.SendEventNotification(OnPlayerDropOut, args);
    }
Example #25
0
    protected void PauseGame()
    {
        if (IsAbleToPause())
        {
            var infoArgs = new ZMPlayerInfoEventArgs(_playerInfo);

            AcceptInputEvents();
            ShowMenu();

            Notifier.SendEventNotification(OnPlayerPauseGame, infoArgs);
            MatchStateManager.PauseMatch();
        }
    }
Example #26
0
    void HandleMinScoreReached(ZMPlayerInfoEventArgs args)
    {
        if (_playerInfo == args.info)
        {
            var playerArgs = new ZMPlayerControllerEventArgs(this);

            gameObject.SetActive(false);

            _moveModState = MoveModState.ELIMINATED;

            Notifier.SendEventNotification(OnPlayerEliminated, playerArgs);
        }
    }
Example #27
0
    void HandleMinScoreReached(ZMPlayerInfoEventArgs args)
    {
        if (_playerInfo == args.info)
        {
            zenPop.GetComponent <Renderer>().material.color = _renderer.material.color;

            _zenPopSystems.Add(ParticleSystem.Instantiate(zenPop, transform.position, transform.rotation) as ParticleSystem);
            _zenPopSystems.Add(ParticleSystem.Instantiate(zenPop, transform.position, transform.rotation) as ParticleSystem);
            _zenPopSystems.Add(ParticleSystem.Instantiate(zenPop, transform.position, transform.rotation) as ParticleSystem);

            Disable();
            Invoke("StopThePop", 0.08f);
        }
    }
Example #28
0
    private void KillSelf(ZMPlayerController killer)
    {
        GameObject body;
        var        infoArgs = new ZMPlayerInfoEventArgs(_playerInfo);

        _moveModState     = MoveModState.RESPAWN;
        _controlModState  = ControlModState.NEUTRAL;
        _controlMoveState = ControlMoveState.NEUTRAL;

        Notifier.SendEventNotification(OnPlayerDeath, infoArgs);

        Utilities.StopDelayRoutine(_endLungeCoroutine);
        Utilities.StopDelayRoutine(_resetControlModCoroutine);
        Utilities.StopDelayRoutine(_enablePlayerCoroutine);

        // Handle death visuals here
        _material.color         = Color.red;
        _light.enabled          = false;
        _spriteRenderer.enabled = false;

        // load and instantiate the body's upper half
        body = GameObject.Instantiate(_upperBodyTemplate) as GameObject;
        body.transform.position = transform.position;

        ZMAddForce upperBody = body.GetComponent <ZMAddForce>();

        upperBody.ParticleColor = _light.color;
        upperBody.AddForce(new Vector2(killer.runSpeed / 12, 0));

        // load and instantiate the body's lower half
        body = GameObject.Instantiate(_lowerBodyTemplate) as GameObject;
        body.transform.position = transform.position;

        ZMAddForce lowerBody = body.GetComponent <ZMAddForce>();

        lowerBody.ParticleColor = _light.color;
        lowerBody.AddForce(new Vector2(killer.runSpeed / 12, 0));

        // Set player states
        _playerInPath = false;

        ClearInputEvents();

        _audio.PlayOneShot(_audioGore[Random.Range(0, _audioGore.Length)]);
        _audio.PlayOneShot(_audioHurt[Random.Range(0, _audioHurt.Length)]);
        _audio.PlayOneShot(_audioKill[Random.Range(0, _audioKill.Length)]);
        _goreEmitter.Play();
    }
Example #29
0
    protected virtual void Start()
    {
        var infoArgs = new ZMPlayerInfoEventArgs(_playerInfo);

        // Set original facing direction so the player faces the center of the stage.
        SetMovementDirection(transform.position.x > 0 ? MovementDirectionState.FACING_LEFT : MovementDirectionState.FACING_RIGHT);

        _baseColor = _light.color;
        _goreEmitter.GetComponent <Renderer>().material.color = _baseColor;
        _goreEmitter.startColor = _baseColor;

        _material.color = Color.black;

        _initialTransform = new StoreTransform(transform);
        Notifier.SendEventNotification(OnPlayerCreate, infoArgs);
    }
Example #30
0
    private void HandlePlayerDeathEvent(ZMPlayerInfoEventArgs args)
    {
        var startScale = new Vector3(1.5f, 1.5f, 1.5f);
        var endScale   = Vector3.one;
        var scaleTime  = 0.05f;
        var hideDelay  = 0.5f;

        // Show the text and randomize the position and rotation.
        _tauntText.gameObject.SetActive(true);
        _tauntText.text = kDeathStrings [Random.Range(0, kDeathStrings.Length)];
        _tauntText.transform.rotation  = Quaternion.Euler(new Vector3(0.0f, 0.0f, Random.Range(-20, 20)));
        _tauntText.transform.position += new Vector3(Random.Range(-100, 100), Random.Range(-100, 100), 0.0f);

        // Scale the text so it looks like it's been slapped onto the screen.
        _scaleBehavior.ScaleToTargetOverTime(startScale, endScale, scaleTime);
        Utilities.ExecuteAfterDelay(HideTauntText, hideDelay);
    }