Esempio n. 1
0
        public virtual void OnMMEvent(TopDownEngineEvent tdEvent)
        {
            switch (tdEvent.EventType)
            {
            case TopDownEngineEventTypes.PlayerDeath:
                if (tdEvent.OriginCharacter.PlayerID == PlayerID)
                {
                    DeadMask.gameObject.SetActive(true);
                    DeadMask.alpha = 0f;
                    StartCoroutine(MMFade.FadeCanvasGroup(DeadMask, 0.5f, 0.8f, true));
                }
                break;

            case TopDownEngineEventTypes.Repaint:
                foreach (GrasslandsMultiplayerLevelManager.GrasslandPoints points in (LevelManager.Instance as GrasslandsMultiplayerLevelManager).Points)
                {
                    if (points.PlayerID == PlayerID)
                    {
                        CoinCounter.text = points.Points.ToString();
                    }
                }
                break;

            case TopDownEngineEventTypes.GameOver:
                if (PlayerID == (LevelManager.Instance as GrasslandsMultiplayerLevelManager).WinnerID)
                {
                    WinnerScreen.gameObject.SetActive(true);
                    WinnerScreen.alpha = 0f;
                    StartCoroutine(MMFade.FadeCanvasGroup(WinnerScreen, 0.5f, 0.8f, true));
                }
                break;
            }
        }
Esempio n. 2
0
        /// <summary>
        /// Starts the display coroutine or the panel's fade depending on whether or not the current slot is empty
        /// </summary>
        /// <param name="item">Item.</param>
        public virtual void DisplayDetails(InventoryItem item)
        {
            if (InventoryItem.IsNull(item))
            {
                if (HideOnEmptySlot && !Hidden)
                {
                    StartCoroutine(MMFade.FadeCanvasGroup(_canvasGroup, _fadeDelay, 0f));
                    Hidden = true;
                }
                if (!HideOnEmptySlot)
                {
                    StartCoroutine(FillDetailFieldsWithDefaults(0));
                }
            }
            else
            {
                StartCoroutine(FillDetailFields(item, 0f));

                if (HideOnEmptySlot && Hidden)
                {
                    StartCoroutine(MMFade.FadeCanvasGroup(_canvasGroup, _fadeDelay, 1f));
                    Hidden = false;
                }
            }
        }
 /// <summary>
 /// Triggered when the actual loading is done, replaces the progress bar with the complete animation
 /// </summary>
 protected virtual void LoadingComplete()
 {
     LoadingCompleteAnimation.gameObject.SetActive(true);
     StartCoroutine(MMFade.FadeCanvasGroup(LoadingProgressBar, 0.1f, 0f));
     StartCoroutine(MMFade.FadeCanvasGroup(LoadingAnimation, 0.1f, 0f));
     StartCoroutine(MMFade.FadeCanvasGroup(LoadingCompleteAnimation, 0.1f, 1f));
 }
        protected virtual IEnumerator HideCo()
        {
            ContainerCanvasGroup.alpha = 1f;
            StartCoroutine(MMFade.FadeCanvasGroup(ContainerCanvasGroup, FadeOutDuration, 0f, true));
            yield return(new WaitForSeconds(FadeOutDuration));

            this.gameObject.SetActive(false);
        }
Esempio n. 5
0
        /// <summary>
        /// Fades the dialogue box out.
        /// </summary>
        /// <param name="duration">Duration.</param>
        public virtual void FadeOut(float duration)
        {
            Color newBackgroundColor = new Color(_backgroundColor.r, _backgroundColor.g, _backgroundColor.b, 0);
            Color newTextColor       = new Color(_textColor.r, _textColor.g, _textColor.b, 0);

            StartCoroutine(MMFade.FadeCanvasGroup(TextPanelCanvasGroup, duration, 0f));
            StartCoroutine(MMFade.FadeText(DialogueText, duration, newTextColor));
            StartCoroutine(MMFade.FadeCanvasGroup(Prompt, duration, 0f));
        }
 /// <summary>
 /// Fades the fader to the alpha set as parameter
 /// </summary>
 /// <param name="newColor">The color to fade to.</param>
 /// <param name="duration">Duration.</param>
 public virtual void FaderTo(float newOpacity, float duration)
 {
     if (Fader == null)
     {
         return;
     }
     Fader.gameObject.SetActive(true);
     StartCoroutine(MMFade.FadeCanvasGroup(Fader, duration, newOpacity));
 }
        /// <summary>
        /// A coroutine used to hide the instructions after a while
        /// </summary>
        /// <returns></returns>
        protected virtual IEnumerator DisappearCo()
        {
            yield return(MMCoroutine.WaitFor(DisappearDelay));

            StartCoroutine(MMFade.FadeCanvasGroup(_canvasGroup, DisappearDuration, 0f, true));
            yield return(MMCoroutine.WaitFor(DisappearDuration + 0.1f));

            this.gameObject.SetActive(false);
        }
Esempio n. 8
0
        protected virtual IEnumerator HideCo()
        {
            StartCoroutine(MMFade.FadeSprite(Border, FadeOutDuration, _alphaZero));
            StartCoroutine(MMFade.FadeSprite(Background, FadeOutDuration, _alphaZero));
            StartCoroutine(MMFade.FadeCanvasGroup(TextCanvasGroup, FadeOutDuration, 0f, true));
            yield return(new WaitForSeconds(0.3f));

            this.gameObject.SetActive(false);
        }
 public virtual void Show()
 {
     this.gameObject.SetActive(true);
     if (_hideCoroutine != null)
     {
         StopCoroutine(_hideCoroutine);
     }
     ContainerCanvasGroup.alpha = 0f;
     StartCoroutine(MMFade.FadeCanvasGroup(ContainerCanvasGroup, FadeInDuration, 1f, true));
 }
Esempio n. 10
0
 /// <summary>
 /// On game over we display our winner screen if needed
 /// </summary>
 /// <param name="tdEvent"></param>
 public virtual void OnMMEvent(TopDownEngineEvent tdEvent)
 {
     switch (tdEvent.EventType)
     {
     case TopDownEngineEventTypes.GameOver:
         if (PlayerID == (LevelManager.Instance as ExplodudesMultiplayerLevelManager).WinnerID)
         {
             WinnerScreen.gameObject.SetActive(true);
             WinnerScreen.alpha = 0f;
             StartCoroutine(MMFade.FadeCanvasGroup(WinnerScreen, 0.5f, 0.8f, true));
         }
         break;
     }
 }
Esempio n. 11
0
 /// <summary>
 /// Fades the dialogue box in.
 /// </summary>
 /// <param name="duration">Duration.</param>
 public virtual void FadeIn(float duration)
 {
     if (TextPanelCanvasGroup != null)
     {
         StartCoroutine(MMFade.FadeCanvasGroup(TextPanelCanvasGroup, duration, 1f));
     }
     if (DialogueText != null)
     {
         StartCoroutine(MMFade.FadeText(DialogueText, duration, _textColor));
     }
     if (Prompt != null)
     {
         StartCoroutine(MMFade.FadeCanvasGroup(Prompt, duration, 1f));
     }
 }
        /// <summary>
        /// Closes the inventory panel
        /// </summary>
        public virtual void CloseInventory()
        {
            // we unpause the game
            _pause = false;
            if (_canvasGroup != null)
            {
                _canvasGroup.blocksRaycasts = false;
            }
            // we close our inventory
            MMEventManager.TriggerEvent(new MMInventoryEvent(MMInventoryEventType.InventoryCloses, null, TargetInventoryDisplay.TargetInventoryName, null, 0, 0));
            MMEventManager.TriggerEvent(new MMGameEvent("inventoryCloses"));
            InventoryOpen = false;

            StartCoroutine(MMFade.FadeCanvasGroup(TargetInventoryContainer, 0.2f, 0f));
            StartCoroutine(MMFade.FadeCanvasGroup(Overlay, 0.2f, 0f));
        }
 /// <summary>
 /// Fades the fader in or out depending on the state
 /// </summary>
 /// <param name="state">If set to <c>true</c> fades the fader in, otherwise out if <c>false</c>.</param>
 public virtual void FaderOn(bool state, float duration)
 {
     if (Fader == null)
     {
         return;
     }
     Fader.gameObject.SetActive(true);
     if (state)
     {
         StartCoroutine(MMFade.FadeCanvasGroup(Fader, duration, 1f));
     }
     else
     {
         StartCoroutine(MMFade.FadeCanvasGroup(Fader, duration, 0f));
     }
 }
        /// <summary>
        /// Opens the inventory panel
        /// </summary>
        public virtual void OpenInventory()
        {
            // we set the game to pause
            _pause = true;
            if (_canvasGroup != null)
            {
                _canvasGroup.blocksRaycasts = true;
            }

            // we open our inventory
            MMEventManager.TriggerEvent(new MMInventoryEvent(MMInventoryEventType.InventoryOpens, null, TargetInventoryDisplay.TargetInventoryName, TargetInventoryDisplay.TargetInventory.Content[0], 0, 0));
            MMEventManager.TriggerEvent(new MMGameEvent("inventoryOpens"));
            InventoryOpen = true;

            StartCoroutine(MMFade.FadeCanvasGroup(TargetInventoryContainer, 0.2f, 1f));
            StartCoroutine(MMFade.FadeCanvasGroup(Overlay, 0.2f, 0.85f));
        }
Esempio n. 15
0
 public virtual void FaderOn(bool state, float duration, bool unscaled = true)
 {
     if (Fader == null)
     {
         return;
     }
     Fader.gameObject.SetActive(true);
     if (state)
     {
         Fader.alpha = 0f;
         StartCoroutine(MMFade.FadeCanvasGroup(Fader, duration, 1f, unscaled));
     }
     else
     {
         Fader.alpha = 1f;
         StartCoroutine(MMFade.FadeCanvasGroup(Fader, duration, 0f, unscaled));
         StartCoroutine(TurnFaderOff(duration));
     }
 }
Esempio n. 16
0
 public virtual void Show()
 {
     StartCoroutine(MMFade.FadeSprite(Border, FadeInDuration, _alphaOne));
     StartCoroutine(MMFade.FadeSprite(Background, FadeInDuration, _alphaOne));
     StartCoroutine(MMFade.FadeCanvasGroup(TextCanvasGroup, FadeInDuration, 1f, true));
 }