コード例 #1
0
    /// <summary>
    /// Initializes the Notification with the data, and sets the initial animation settings.
    /// </summary>
    /// <param name="data"> New Notification Data to set</param>
    /// <param name="timeNotificationCreated"> Time at which the notification was created, controls when transitions happen. </param>
    public void InitGameNotification(GameNotificationData data, float timeNotificationCreated)
    {
        iconImage.sprite = data.iconSprite;

        Color imageColor = iconImage.color;

        // Set image alpha to 0 if no sprite.
        if (iconImage.sprite)
        {
            imageColor.a = 1.0f;
        }
        else
        {
            imageColor.a = 0.0f;
        }
        iconImage.color = imageColor;

        title.text = data.notificationTitle;
        notificationGroup.alpha = 1.0f;
        timeCreated_            = timeNotificationCreated;
        isActive_   = true;
        isMovingUp_ = false;

        transform.position = initialPosition_;
    }
コード例 #2
0
    private void Update()
    {
        float currentTime = Time.time;

        for (int i = 0; i < maxNotifications; i++)
        {
            if (notifications[i].IsActive())
            {
                notifications[i].UpdateState(currentTime);
            }
            else
            {
                if (!notifications[currentNotification_].IsMovingUp())
                {
                    if (notificationBackLog_.Count > 0)
                    {
                        GameNotificationData notificationData = notificationBackLog_.Dequeue();
                        notifications[i].InitGameNotification(notificationData, currentTime);
                        currentNotification_ = i;
                        MoveAllNotificationsUp(currentTime);
                    }
                }
            }
        }
    }
コード例 #3
0
 /// <summary>
 /// Called to send a notification to the GameNotification UI.
 /// </summary>
 public static void SendGameNotification(GameNotificationData data)
 {
     // notify all listeners to event.
     if (OnRecieveGameNotification != null)
     {
         OnRecieveGameNotification(data);
     }
 }
コード例 #4
0
 /// <summary>
 /// Store Game Notification Data so can be processed when NotificationUi is ready.
 /// </summary>
 /// <param name="data"> New notification Data to display. </param>
 private void ProcessGameNotification(GameNotificationData data)
 {
     notificationBackLog_.Enqueue(data);
 }