예제 #1
0
 //Reset all of the slider values for the newly selected contract type
 private void setContractType(contractTypeContainer c)
 {
     contractType = c;
     cFRew        = c.RewardFund.reverseLog();
     cFAdv        = c.AdvanceFund.reverseLog();
     cFPen        = c.PenaltyFund.reverseLog();
     cRRew        = c.RewardRep.reverseLog();
     cRPen        = c.PenaltyRep.reverseLog();
     cSRew        = c.RewardScience.reverseLog();
     cDur         = c.DurationTime.reverseLog();
     cOffer       = c.MaxOffer.reverseLog();
     cActive      = c.MaxActive.reverseLog();
 }
 private string stringConcat(contractTypeContainer c)
 {
     string[] s = new string[9];
     s[0] = c.RewardFund.ToString("N3");
     s[1] = c.AdvanceFund.ToString("N3");
     s[2] = c.PenaltyFund.ToString("N3");
     s[3] = c.RewardRep.ToString("N3");
     s[4] = c.PenaltyRep.ToString("N3");
     s[5] = c.RewardScience.ToString("N3");
     s[6] = c.DurationTime.ToString("N3");
     s[7] = c.MaxOffer.ToString("N1");
     s[8] = c.MaxActive.ToString("N1");
     return(string.Join(",", s));
 }
        private void contractChanged(float[] originals, contractTypeContainer c)
        {
            DMC_MBE.LogFormatted_DebugOnly("Contract Value Event Fired; Type: {0}", c.Name);
            var cList = ContractSystem.Instance.Contracts;

            for (int i = 0; i < cList.Count; i++)
            {
                if (cList[i].ContractState == Contract.State.Active || cList[i].ContractState == Contract.State.Offered)
                {
                    updateContractValues(c, cList[i], originals);
                }
            }
            for (int j = 0; j < masterList.Count; j++)
            {
                masterList.ElementAt(j).Value.updateContractInfo();
            }
        }
 private void updateContractValues(contractTypeContainer cC, Contract c, float[] O)
 {
     if (cTypeList.ContainsValue(cC))
     {
         if (c.GetType() == cC.ContractType)
         {
             DMC_MBE.LogFormatted_DebugOnly("Contract Values Updating; Type: {0}", cC.Name);
             DMC_MBE.LogFormatted_DebugOnly("Original Contract Values: {0}; New Values: {1}", printArray(O), printArray(cC.ContractValues));
             c.FundsCompletion      = (c.FundsCompletion / O[0]) * cC.RewardFund;
             c.FundsAdvance         = (c.FundsAdvance / O[1]) * cC.AdvanceFund;
             c.FundsFailure         = (c.FundsFailure / O[2]) * cC.PenaltyFund;
             c.ReputationCompletion = (c.ReputationCompletion / O[3]) * cC.RewardRep;
             c.ReputationFailure    = (c.ReputationFailure / O[4]) * cC.PenaltyRep;
             c.ScienceCompletion    = (c.ScienceCompletion / O[5]) * cC.RewardScience;
             c.TimeDeadline         = (c.TimeDeadline / O[6]) * cC.DurationTime;
         }
     }
 }