Exemplo n.º 1
0
        private void OnSetPlayerAvatarPosition(SetPlayerAvatarPositionEvent gameEvent)
        {
            origin      = gameEvent.origin;
            destination = gameEvent.destination;

            transform.position = new Vector3(destination.position.x, destination.position.y);
        }
Exemplo n.º 2
0
        protected void Start()
        {
            buttonText.text = levelNumber.ToString();

            var user = GlobalState.User;

            if (user.maxLevel >= levelNumber)
            {
                filledStars = user.levels[levelNumber].stars;

                for (long starIndex = 0; starIndex < filledStars; ++starIndex)
                {
                    starPositions[starIndex].enabled = true;
                }

                if (user.currentLevel == levelNumber)
                {
                    GlobalState.EventService.Dispatch(new SnapMapToLocationEvent((RectTransform)transform));
                    GlobalState.EventService.AddEventHandler <AnimateStarsOnMapNodeEvent>(OnAnimateStarsOnMapNodeEvent);
                }

                if (user.maxLevel == levelNumber)
                {
                    RectTransform previousMapButtonTransform = null;
                    var           previousMapButton          = transform.parent.parent.Find((levelNumber - 1).ToString());

                    if ((user.levels[levelNumber].score == 0) && previousMapButton)
                    {
                        previousMapButtonTransform = previousMapButton.transform as RectTransform;
                    }

                    var gameEvent = new SetPlayerAvatarPositionEvent(previousMapButtonTransform,
                                                                     (RectTransform)transform);

                    GlobalState.EventService.Dispatch(gameEvent);
                }
            }
            else
            {
                button.interactable = false;
                buttonIcon.enabled  = false;
            }
        }