public override int DetermineReward(int points, Quest quest, EntityType entityType)
        {
            var val = (int)pointsCurve.Evaluate(points);

            if (!StringField.IsNullOrEmpty(thing))
            {
                var bodyText = BodyTextQuestContent.CreateInstance <BodyTextQuestContent>();
                bodyText.bodyText = new StringField(val + " " + thing);
                quest.offerContentList.Add(bodyText);
            }

            var messageQuestAction = MessageQuestAction.CreateInstance <MessageQuestAction>();

            messageQuestAction.senderID        = new StringField(QuestMachineTags.QUESTGIVERID);
            messageQuestAction.targetID        = target;
            messageQuestAction.message         = message;
            messageQuestAction.parameter       = parameter;
            messageQuestAction.value.valueType = MessageValueType.Int;
            messageQuestAction.value.intValue  = val;
            var successInfo = quest.GetStateInfo(QuestState.Successful);

            successInfo.actionList.Add(messageQuestAction);

            return(consumePoints ? (points - val) : points);
        }
        public QuestContent CreateBodyContent(StringField text)
        {
            var content = BodyTextQuestContent.CreateInstance <BodyTextQuestContent>();

            content.name     = "text";
            content.bodyText = new StringField(text);
            return(content);
        }
Example #3
0
 private static void ApplyBodyTextQuestContentProxyData(BodyTextQuestContent bodyTextQuestContent, string s)
 {
     if (bodyTextQuestContent == null || s == null)
     {
         return;
     }
     bodyTextQuestContent.originalText = new StringField(s);
 }
Example #4
0
        protected virtual void AddBodyContent(BodyTextQuestContent bodyContent)
        {
            var instance = Instantiate <UnityUITextTemplate>(currentBodyTemplate);

            currentContentManager.Add(instance, currentContentContainer);
            instance.Assign(bodyContent.runtimeText);
            currentIconList = null;
        }
        protected QuestContent CreateBodyContent(string text)
        {
            var content = BodyTextQuestContent.CreateInstance <BodyTextQuestContent>();

            content.name     = "text";
            content.bodyText = new StringField(text);
            AddAndSaveSubasset(content);
            return(content);
        }
Example #6
0
        public override int DetermineReward(int points, Quest quest, EntityType entityType)
        {
            var xp = (entityType != null) ? (int)(points * entityType.GetRewardMultiplier(RewardMultiplier.XP)) : points;

            var bodyText = BodyTextQuestContent.CreateInstance <BodyTextQuestContent>();

            bodyText.bodyText = new StringField(xp + " XP");
            quest.offerContentList.Add(bodyText);

            var xpAction = MessageQuestAction.CreateInstance <MessageQuestAction>();

            xpAction.senderID  = new StringField(QuestMachineTags.QUESTGIVERID); // Send from quest giver.
            xpAction.targetID  = new StringField(QuestMachineTags.QUESTERID);    // Send to quester (player).
            xpAction.message   = new StringField("Add XP");
            xpAction.parameter = new StringField(xp.ToString());
            xpAction.value     = new MessageValue(xp);
            var successInfo = quest.GetStateInfo(QuestState.Successful);

            successInfo.actionList.Add(xpAction);

            return(points);
        }
Example #7
0
 private static string GetBodyTextQuestContentProxyData(BodyTextQuestContent bodyTextQuestContent)
 {
     return(StringField.GetStringValue(bodyTextQuestContent.originalText));
 }