//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; } } }