Exemplo n.º 1
0
        public override void Run(RunPayload payload)
        {
            Main.Logger.Log($"[AddContractObjectiveToEncounter] Adding Contract Objective to Encounter");
            ContractObjectiveGameLogic contractObjectiveGameLogic = MissionControl.Instance.EncounterLayerData.gameObject.AddComponent <ContractObjectiveGameLogic>();
            ContractObjectiveOverride  contractObjectiveOverride  = MissionControl.Instance.CurrentContract.Override.contractObjectiveList.First(
                item => item.GUID == contractObjectiveOverrideGuid
                );

            contractObjectiveGameLogic.title               = contractObjectiveOverride.title;
            contractObjectiveGameLogic.description         = contractObjectiveOverride.description;
            contractObjectiveGameLogic.forPlayer           = contractObjectiveOverride.forPlayer;
            contractObjectiveGameLogic.primary             = contractObjectiveOverride.isPrimary;
            contractObjectiveGameLogic.encounterObjectGuid = contractObjectiveOverrideGuid;
        }
Exemplo n.º 2
0
        public override void Run(RunPayload payload)
        {
            string objectiveTypeLabel = isPrimary ? "primary" : "secondary";

            Main.Logger.Log($"[AddContractObjective] Adding contract objective '{contractObjectiveGuid}' as a {objectiveTypeLabel} objective");
            ContractOverride          contractOverride          = ((ContractOverridePayload)payload).ContractOverride;
            ContractObjectiveOverride contractObjectiveOverride = new ContractObjectiveOverride();

            ContractObjectiveRef contractObjectiveRef = new ContractObjectiveRef();

            contractObjectiveRef.EncounterObjectGuid    = contractObjectiveGuid;
            contractObjectiveOverride.contractObjective = contractObjectiveRef;

            contractObjectiveOverride.isPrimary      = isPrimary;
            contractObjectiveOverride.title          = title;
            contractObjectiveOverride.description    = "MC" + description; // Important and used for objective cleanup
            contractObjectiveOverride.objectiveGuids = ObjectiveGuids;
            contractObjectiveOverride.forPlayer      = TeamController.Player1;

            contractOverride.contractObjectiveList.Add(contractObjectiveOverride);
            contractObjectiveOverride.SetContractContext(contractOverride.contract);
        }
Exemplo n.º 3
0
        public override void Run(RunPayload payload)
        {
            string objectiveTypeLabel = isPrimary ? "primary" : "secondary";

            Main.Logger.Log($"[AddPartialContractObjective] Adding contract objective '{contractObjectiveGuid}' as a {objectiveTypeLabel} objective");
            ContractOverride          contractOverride          = MissionControl.Instance.CurrentContract.Override;
            ContractObjectiveOverride contractObjectiveOverride = new ContractObjectiveOverride();

            ContractObjectiveRef contractObjectiveRef = new ContractObjectiveRef();

            contractObjectiveRef.EncounterObjectGuid    = contractObjectiveGuid;
            contractObjectiveOverride.contractObjective = contractObjectiveRef;

            contractObjectiveOverride.isPrimary      = isPrimary;
            contractObjectiveOverride.title          = title;
            contractObjectiveOverride.description    = description;
            contractObjectiveOverride.objectiveGuids = ObjectiveGuids;
            contractObjectiveOverride.forPlayer      = TeamController.Player1;

            contractOverride.contractObjectiveList.Add(contractObjectiveOverride);
            contractObjectiveOverride.SetContractContext(contractOverride.contract);
        }