Esempio n. 1
0
 public DialogTrigger(MessageCenterMessageType onMessage, string dialogueGuid, bool isInterrupt, DesignConditional conditional)
 {
     this.onMessage    = onMessage;
     this.dialogueGuid = dialogueGuid;
     this.isInterrupt  = isInterrupt;
     this.conditional  = conditional;
 }
Esempio n. 2
0
 public DialogTrigger(MessageCenterMessageType onMessage, string dialogueGuid, bool isInterrupt)
 {
     this.onMessage    = onMessage;
     this.dialogueGuid = dialogueGuid;
     this.isInterrupt  = isInterrupt;
     this.conditional  = ScriptableObject.CreateInstance <AlwaysTrueConditional>();
 }
 public GenericTriggerBuilder(ContractTypeBuilder contractTypeBuilder, string name, MessageCenterMessageType triggerMessageType, GenericCompoundConditional conditional, string description, List <DesignResult> results)
 {
     this.name = name;
     this.triggerMessageType = triggerMessageType;
     this.conditional        = conditional;
     this.description        = description;
     this.results            = results;
 }
 public ShowObjectiveTrigger(MessageCenterMessageType onMessage, string lanceTargetGuid, string objectiveGuid, bool isContractObjective, DesignConditional conditional)
 {
     this.onMessage           = onMessage;
     this.lanceTargetGuid     = lanceTargetGuid;
     this.objectiveGuid       = objectiveGuid;
     this.isContractObjective = isContractObjective;
     this.conditional         = conditional;
 }
Esempio n. 5
0
        public WithdrawChunkTrigger(MessageCenterMessageType onMessage, string chunkGuid)
        {
            this.onMessage = onMessage;
            this.chunkGuid = chunkGuid;
            ChunkMatchesChunkGuidConditional chunkConditional = ScriptableObject.CreateInstance <ChunkMatchesChunkGuidConditional>();

            chunkConditional.ChunkGuid = chunkGuid;
            this.conditional           = chunkConditional;
        }
        public ShowObjectiveTrigger(MessageCenterMessageType onMessage, string lanceTargetGuid, string objectiveGuid, bool isContractObjective)
        {
            this.onMessage           = onMessage;
            this.lanceTargetGuid     = lanceTargetGuid;
            this.objectiveGuid       = objectiveGuid;
            this.isContractObjective = isContractObjective;
            LanceDetectedConditional lanceDetectedConditional = ScriptableObject.CreateInstance <LanceDetectedConditional>();

            lanceDetectedConditional.TargetLanceGuid = lanceTargetGuid;
            this.conditional = lanceDetectedConditional;
        }
Esempio n. 7
0
        private void BuildSimpleDialogue()
        {
            DialogueFactory.CreateDialogLogic(this.parent, this.name, this.guid, this.showOnlyOnce);

            if (this.trigger != null)
            {
                MessageCenterMessageType triggerMessageType = (MessageCenterMessageType)Enum.Parse(typeof(MessageCenterMessageType), this.trigger);
                DialogTrigger            dialogueTrigger    = new DialogTrigger(triggerMessageType, this.guid);
                dialogueTrigger.Run();
            }
        }
Esempio n. 8
0
        public EndCombatTrigger(MessageCenterMessageType onMessage, string objectiveGuid, EndCombatType type)
        {
            this.onMessage     = onMessage;
            this.objectiveGuid = objectiveGuid;
            this.type          = type;

            ObjectiveStatusConditional objectiveStatusConditional = ScriptableObject.CreateInstance <ObjectiveStatusConditional>();

            objectiveStatusConditional.objective.EncounterObjectGuid = objectiveGuid;
            objectiveStatusConditional.objectiveStatus = ObjectiveStatusEvaluationType.Success;

            this.conditional = objectiveStatusConditional;
        }
Esempio n. 9
0
        public GenericTrigger(string name, string description, MessageCenterMessageType onMessage, DesignConditional conditional, List <DesignResult> results)
        {
            this.name        = name;
            this.description = description;
            this.onMessage   = onMessage;
            this.conditional = conditional;
            this.results     = results.Select(r => (DesignResultBox) new EncounterResultBox(r)).ToList();

            if (this.conditional == null)
            {
                this.conditional = ScriptableObject.CreateInstance <AlwaysTrueConditional>();
            }
        }
        public GenericTriggerBuilder(ContractTypeBuilder contractTypeBuilder, JObject trigger, string name)
        {
            this.contractTypeBuilder = contractTypeBuilder;
            this.trigger             = trigger;

            this.name        = name;
            this.triggerOn   = trigger["TriggerOn"].ToString();
            this.description = (trigger.ContainsKey("Description")) ? trigger["Description"].ToString() : "";

            this.conditionalEvaluationString = (trigger.ContainsKey("SucceedOn")) ? trigger["SucceedOn"].ToString() : "All";
            this.conditionalEvaluation       = (LogicEvaluation)Enum.Parse(typeof(LogicEvaluation), conditionalEvaluationString);

            if (trigger.ContainsKey("Conditionals"))
            {
                ConditionalBuilder conditionalBuilder = new ConditionalBuilder(contractTypeBuilder, (JArray)trigger["Conditionals"]);
                this.conditional = conditionalBuilder.Build();
                this.conditional.whichMustBeTrue = this.conditionalEvaluation;
            }

            if (trigger.ContainsKey("Results"))
            {
                ResultsBuilder resultsBuilder = new ResultsBuilder(contractTypeBuilder, (JArray)trigger["Results"]);
                this.results = resultsBuilder.Build();
            }
            else
            {
                Main.Logger.LogError("[GenericTriggerBuilder] Generic Triggers require 'Results'");
            }

            if (!Enum.TryParse(this.triggerOn, out triggerMessageType))
            {
                MessageTypes messageType;
                if (!Enum.TryParse(this.triggerOn, out messageType))
                {
                    Main.Logger.LogError("[GenericTriggerBuilder] Invalid 'TriggerOn' provided.");
                }
                else
                {
                    triggerMessageType = (MessageCenterMessageType)messageType;
                }
            }
        }
Esempio n. 11
0
 public EndCombatTrigger(MessageCenterMessageType onMessage, string objectiveGuid, DesignConditional conditional)
 {
     this.onMessage     = onMessage;
     this.objectiveGuid = objectiveGuid;
     this.conditional   = conditional;
 }
Esempio n. 12
0
 public WithdrawChunkTrigger(MessageCenterMessageType onMessage, string chunkGuid, DesignConditional conditional)
 {
     this.onMessage   = onMessage;
     this.chunkGuid   = chunkGuid;
     this.conditional = conditional;
 }
Esempio n. 13
0
 public static void MessageCenter_RemoveSubscriber_Prefix(MessageCenter __instance, MessageCenterMessageType GUID, ReceiveMessageCenterMessage subscriber,
                                                          Dictionary <MessageCenterMessageType, List <MessageSubscription> > ___messageTable)
 {
     if (GUID == MessageCenterMessageType.FloatieMessage)
     {
         List <MessageSubscription> list = ___messageTable[GUID];
         Mod.Log.Info($"MCMT subscription list is size: {list.Count}");
     }
     //} else {
     //    Mod.Log.Info("MCMT not floatie, skipping.");
     //}
 }