Exemplo n.º 1
0
    private void PostOrderGetAIDiplomaticTermsEvaluation()
    {
        MajorEmpire majorEmpire  = this.selectedEmpire as MajorEmpire;
        MajorEmpire majorEmpire2 = base.Empire as MajorEmpire;

        if (majorEmpire == null || majorEmpire2 == null)
        {
            return;
        }
        List <DiplomaticTerm> list = new List <DiplomaticTerm>();

        DepartmentOfForeignAffairs.GetAllAvailableDiplomaticTerm(this.DiplomaticContract, base.Empire, this.SelectedEmpire, ref list);
        DepartmentOfForeignAffairs.GetAllAvailableDiplomaticTerm(this.DiplomaticContract, this.SelectedEmpire, base.Empire, ref list);
        OrderGetAIDiplomaticTermEvaluation order = new OrderGetAIDiplomaticTermEvaluation(majorEmpire, majorEmpire2, list.ToArray());
        Ticket ticket;

        base.PlayerController.PostOrder(order, out ticket, new EventHandler <TicketRaisedEventArgs>(this.OnPostOrderGetAIDiplomaticTermsEvaluationResponse));
    }
Exemplo n.º 2
0
    private void OnPostOrderGetAIDiplomaticTermsEvaluationResponse(object sender, TicketRaisedEventArgs ticketRaisedEventArgs)
    {
        OrderGetAIDiplomaticTermEvaluation orderGetAIDiplomaticTermEvaluation = ticketRaisedEventArgs.Order as OrderGetAIDiplomaticTermEvaluation;

        if (orderGetAIDiplomaticTermEvaluation == null)
        {
            Diagnostics.LogError("Invalid ticket raised event args.");
            return;
        }
        if (ticketRaisedEventArgs.Result == PostOrderResponse.Processed)
        {
            Diagnostics.Assert(orderGetAIDiplomaticTermEvaluation.DiplomaticTerms.Length == orderGetAIDiplomaticTermEvaluation.DiplomaticTermEvaluations.Length);
            this.diplomaticTermsAndEvalutations.Clear();
            for (int i = 0; i < orderGetAIDiplomaticTermEvaluation.DiplomaticTerms.Length; i++)
            {
                this.diplomaticTermsAndEvalutations.Add(orderGetAIDiplomaticTermEvaluation.DiplomaticTerms[i], orderGetAIDiplomaticTermEvaluation.DiplomaticTermEvaluations[i]);
            }
        }
    }