Example #1
0
            public override EventResult HandleEvent(EventContext context, PlayerTouchedActorInstanceEvent @event)
            {
                Color          indent0        = Color.Yellow;
                Color          indent1        = Color.White;
                MessageBuilder messageBuilder = Message
                                                .Build(Color.DarkBlue)
                                                .Text(indent0, "Introduction", 1)
                                                .Text(indent1, "  - Who am I?", 1)
                                                .Text(indent0, "What is ZZT?", 1)
                                                .Text(indent1, "  - Created by Tim Sweeney (of Unreal fame) in 1991", 1)
                                                .Text(indent1, "  - ZZT is accessible -- you don't have to be an artist or sound engineer to create a game", 1)
                                                .Text(indent0, "Why recreate an old DOS game?", 1)
                                                .Text(indent1, "  - Rekindle the awesomeness of ZZT using modern tools and graphics capabilities", 1)
                                                .Text(indent1, "  - For the challenge and learning experience", 1)
                                                .Text(indent1, "  - For fun!");

                context.EnqueueCommand(Commands.Message(messageBuilder));

                messageBuilder = Message
                                 .Build(Color.DarkRed)
                                 .Question(
                    "Unlock the next board?",
                    Color.Yellow,
                    Color.White,
                    Color.Yellow,
                    Color.Gray,
                    MessageAnswer.Build("Yes", new EventHandlerCollection(new YesAnswerSelectedEventHandler(@event.Target))),
                    MessageAnswer.Build("No"));

                context.EnqueueCommand(Commands.Message(messageBuilder));

                return(EventResult.Completed);
            }
Example #2
0
 private void OnAnswerReceived(MessageAnswer ans)
 {
     gotAnswer?.Invoke(ans);
     m_successPanel.SetActive(false);
     m_warningPanel.SetActive(false);
     m_messagePanel.SetActive(false);
 }
Example #3
0
        private void KeyDown(KeyboardState keyboardState, Keys keys)
        {
            MessageAnswer[] answers = _messageRendererState.AnswerSelectionManager.IfNotNull(arg => arg.Answers.ToArray()) ?? new MessageAnswer[0];

            if (answers.Length > 0)
            {
                switch (keys)
                {
                case TextAdventure.Xna.Constants.MessageRenderer.Input.AcceptKey:
                    MessageAnswer selectedAnswer = _messageRendererState.AnswerSelectionManager.SelectedAnswer;

                    _worldInstance.MessageMananger.SelectAnswer(selectedAnswer);
                    break;

                case TextAdventure.Xna.Constants.MessageRenderer.Input.NextAnswerKey:
                    _messageRendererState.AnswerSelectionManager.SelectNextAnswer();
                    break;

                case TextAdventure.Xna.Constants.MessageRenderer.Input.PreviousAnswerKey:
                    _messageRendererState.AnswerSelectionManager.SelectPreviousAnswer();
                    break;
                }
            }
            if (keys == TextAdventure.Xna.Constants.MessageRenderer.Input.AcceptKey)
            {
                _messageClosingDelegate(_lastGameTime);
            }
        }
 private MessageTextAnswer GetMessageTextAnswer(MessageQuestion question, MessageAnswer answer)
 {
     return(new MessageTextAnswer(
                answer,
                answer.Text,
                _font.MeasureString(answer.Text) + TextAdventure.Xna.Constants.MessageRenderer.ShadowOffset,
                question.UnselectedAnswerForegroundColor,
                question.SelectedAnswerForegroundColor,
                question.SelectedAnswerBackgroundColor));
 }
Example #5
0
        public IActionResult SendMail(MessageAnswer messageAnswer)
        {
            messageAnswer.Answer       += "<br /><br />Buss Application Team";
            messageAnswer.Message.Title = "ODPOWIEDŹ - " + messageAnswer.Message.Title;

            EmailSender emailSender = new EmailSender();

            emailSender.SendEmailAsync(messageAnswer.Message.Mail, messageAnswer.Message.Title, messageAnswer.Answer);

            _unitOfWork.Messages.StatusAsRead(messageAnswer.Message.Id);

            return(View(nameof(Index)));
        }
Example #6
0
        public MessageAnswerSelectionManager(IEnumerable <MessageAnswer> answers)
        {
            answers.ThrowIfNull("answers");

            _answers = answers.ToArray();

            if (!_answers.Any())
            {
                throw new ArgumentException("Must provide at least one answer.", "answers");
            }

            _selectedAnswer = _answers.First();
        }
Example #7
0
        public void SelectPreviousAnswer()
        {
            int index = Array.IndexOf(_answers, _selectedAnswer);

            if (index == 0)
            {
                index = _answers.Length - 1;
            }
            else
            {
                index--;
            }

            _selectedAnswer = _answers[index];
        }
Example #8
0
        public void SelectNextAnswer()
        {
            int index = Array.IndexOf(_answers, _selectedAnswer);

            if (index == _answers.Length - 1)
            {
                index = 0;
            }
            else
            {
                index++;
            }

            _selectedAnswer = _answers[index];
        }
        public MessageTextAnswer(
            MessageAnswer answer,
            string text,
            Vector2 size,
            Color unselectedAnswerForegroundColor,
            Color selectedAnswerForegroundColor,
            Color selectedAnswerBackgroundColor)
            : base(text, size, false)
        {
            answer.ThrowIfNull("answer");

            _answer = answer;
            _unselectedAnswerForegroundColor = unselectedAnswerForegroundColor;
            _selectedAnswerForegroundColor   = selectedAnswerForegroundColor;
            _selectedAnswerBackgroundColor   = selectedAnswerBackgroundColor;
        }
            public override EventResult HandleEvent(EventContext context, PlayerTouchedActorInstanceEvent @event)
            {
                Color          indent0        = Color.Yellow;
                Color          indent1        = Color.White;
                MessageBuilder messageBuilder = Message
                                                .Build(new Color(43, 96, 80))
                                                .Text(indent0, "Messages", 1)
                                                .Text(indent1, "  - Display scrollable text to the player", 1)
                                                .Text(indent1, "  - Text, colors, line breaks", 1)
                                                .Text(indent1, "  - Questions and answers", 1)
                                                .Text(indent1, "L", 1)
                                                .Text(indent1, "o", 1)
                                                .Text(indent1, "r", 1)
                                                .Text(indent1, "e", 1)
                                                .Text(indent1, "m", 2)
                                                .Text(indent1, "i", 1)
                                                .Text(indent1, "p", 1)
                                                .Text(indent1, "s", 1)
                                                .Text(indent1, "u", 1)
                                                .Text(indent1, "m", 2)
                                                .Text(indent1, "L", 1)
                                                .Text(indent1, "o", 1)
                                                .Text(indent1, "r", 1)
                                                .Text(indent1, "e", 1)
                                                .Text(indent1, "m", 2)
                                                .Text(indent1, "i", 1)
                                                .Text(indent1, "p", 1)
                                                .Text(indent1, "s", 1)
                                                .Text(indent1, "u", 1)
                                                .Text(indent1, "m", 2)
                                                .Question(
                    "The only guarantee in life is...",
                    Color.White,
                    Color.Gray,
                    Color.White,
                    Color.DarkMagenta,
                    MessageAnswer.Build("Death"),
                    MessageAnswer.Build("Taxes"),
                    MessageAnswer.Build("XNA"));

                context.EnqueueCommand(Commands.Message(messageBuilder));

                return(EventResult.Completed);
            }
Example #11
0
        public IActionResult Details(int?id)
        {
            MessageAnswer messageAnswer = new MessageAnswer();

            if (id == null)
            {
                return(View(nameof(Index)));
            }

            messageAnswer.Message = _unitOfWork.Messages.Get(id.GetValueOrDefault());
            messageAnswer.Answer  = "";

            if (messageAnswer.Message == null)
            {
                return(NotFound());
            }

            return(View(messageAnswer));
        }
 public void No_Click()
 {
     answer = MessageAnswer.No;
     CloseWindow();
 }
 public void Yes_Click()
 {
     answer = MessageAnswer.Yes;
     CloseWindow();
 }
 public void Cancel_Click()
 {
     answer = MessageAnswer.Cancel;
     CloseWindow();
 }