Exemplo n.º 1
0
        public static void DisplayRealtimePortraitMessage(float delay, PortraitID[] portraits,
                                                          List <int> portraitTriggers, params string[] messages)
        {
            if (messages.Length < portraits.Length)
            {
                throw new ArgumentException("At least one string per image is required.");
            }

            if (portraits.Length - 1 != portraitTriggers.Count)
            {
                throw new ArgumentException("One trigger is required for each image except the first.");
            }

            List <Sprite> portraitList = new List <Sprite>();

            foreach (PortraitID id in portraits)
            {
                portraitList.Add(new Portrait(id).Sprite);
            }

            RealTimePortraitMessage realTimeMessage = new RealTimePortraitMessage(game, spriteSheet);

            realTimeMessage.Initialize();
            realTimeMessage.SetMessage(messages);
            realTimeMessage.SetDelay(delay);

            realTimeMessage.SetPortrait(portraitList, TextUtils.GetSplitCount(messages), portraitTriggers);

            popupDelayTimer = PopupDelay;
            realTimeMessageQueue.Add(realTimeMessage);
        }
Exemplo n.º 2
0
        public static void DisplayPortraitMessage(List <PortraitID> portraits, List <int> portraitTriggers, params string[] messages)
        {
            List <Sprite> portraitList = new List <Sprite>();

            foreach (PortraitID id in portraits)
            {
                portraitList.Add(new Portrait(id).Sprite);
            }

            PortraitMessage portraitMessage = new PortraitMessage(game, spriteSheet);

            portraitMessage.Initialize();
            portraitMessage.SetMessage(messages);
            portraitMessage.SetPortraits(portraitList, portraitTriggers, TextUtils.GetSplitCount(messages));

            popupDelayTimer = PopupDelay;
            messageQueue.Add(portraitMessage);
        }
Exemplo n.º 3
0
        public static void DisplayMessageWithImage(List <Sprite> images, List <int> imageTriggers, params string[] messages)
        {
            if (messages.Length < images.Count)
            {
                throw new ArgumentException("At least one string per image is required.");
            }

            if (images.Count - 1 != imageTriggers.Count)
            {
                throw new ArgumentException("One trigger is required for each image except the first.");
            }

            ImageMessage imageMessage = new ImageMessage(game, spriteSheet);

            imageMessage.Initialize();
            imageMessage.SetMessage(messages);
            imageMessage.SetImages(TextUtils.GetSplitCount(messages), imageTriggers.ToArray <int>(), images.ToArray <Sprite>());

            popupDelayTimer = PopupDelay;
            messageQueue.Add(imageMessage);
        }