//reaction to receiving delivery public void GetDelivery() { if (MainPlayer.instance.MyCovertIntention == CovertIntention.Deliver && GameManager.instance.MyGameState == Game_State.SelectWhom) { Briefcase brf = MainPlayer.instance.MyBriefCaseSelect; Briefcase_Type brf_color = brf.myBriefCaseType; MainPlayer.instance.DeliverWhom = this; transform.FindChild("brf_inPossession").gameObject.SetActive(true); switch (brf_color) { case Briefcase_Type.GREY: transform.FindChild("brf_inPossession").gameObject.GetComponent <Image>().color = Color.grey; break; case Briefcase_Type.YELLOW: transform.FindChild("brf_inPossession").gameObject.GetComponent <Image>().color = Color.yellow; break; case Briefcase_Type.RED: transform.FindChild("brf_inPossession").gameObject.GetComponent <Image>().color = Color.red; break; default: break; } TurnOffMyReticle(); } }
public void RandomizeBriefcaseValues__ShouldNotHaveRepeatingValues() { Game game = new Game(); BriefcaseService briefcaseProcessor = new BriefcaseService(game); List <Briefcase> briefcases = briefcaseProcessor.RandomizeBriefcaseValues(); Briefcase firstBriefcase = briefcases.First(); double amount = firstBriefcase.Amount; bool isAmountDuplicated = CheckAmountForDuplicates(briefcases, firstBriefcase); Assert.False(isAmountDuplicated); }
/// <summary> /// 刷新指纹信息 /// </summary> /// <param name="kkno">开课编号</param> /// <param name="ClassBriefcase">该节课的Briefcase</param> public void RefreshStudentInformation(long kkno, Briefcase ClassBriefcase) { IQueryable <XKTABLE_VIEWRO> xktableView1s = from c in remoteDataAdapter.GetTable <XKTABLE_VIEWRO>() where c.KKNO == kkno select c; ClassBriefcase.AddTable( OfflineHelper.TableListToDataTable( xktableView1s.ToList(), "XKTABLE_VIEW1")); // 获取指纹信息并添加到Birefcase ClassBriefcase.WriteBriefcase(); //保存更改 }
//this method signature means deliver public void PerformMyDecision(Briefcase brf, Individual deliverTo) { brf.NoMas(); if ((brf.myBriefCaseType == Briefcase_Type.YELLOW && deliverTo.I_AM_YELLOW) || (brf.myBriefCaseType == Briefcase_Type.RED && deliverTo.I_AM_RED) || (brf.myBriefCaseType == Briefcase_Type.GREY && deliverTo.I_AM_GREY)) { deliverTo.IHaveMySpecialBriefcase = true; //Debug.Log ("My name is : "+deliverTo.Index+" and I have my mask "); if (CheckIfEveryOneHasTheirSpecialBrief()) { PlayerPrefs.SetInt("money", PlayerPrefs.GetInt("money") + 40003); GameManager.instance.MyGameState = Game_State.Win; GameManager.instance.Win_GUI.SetActive(true); } } }
private bool CheckAmountForDuplicates(List <Briefcase> briefcases, Briefcase firstBriefcase) { foreach (Briefcase briefcase in briefcases) { if (briefcase == firstBriefcase) { continue; } if (briefcase.Amount == firstBriefcase.Amount) { return(true); } } return(false); }
public List <Briefcase> RandomizeBriefcaseValues() { briefcases = new List <Briefcase>(); int briefcaseValuesCount = briefcaseValues.Count; for (int i = 0; i < briefcaseValuesCount; i++) { Briefcase briefcase = new Briefcase() { Number = i + 1, Amount = GetRandomAmountFromBriefcaseValues() }; briefcases.Add(briefcase); } return(briefcases); }
private DataTable backupDisplayTable; //显示表用于显示的datatable的备份 public ManualRollCall(Briefcase _classBriefcase, long _jieci, DataTable dmTable, DateTime RollcallTime) { InitializeComponent(); /////////////////////////////////////// this.classBriefcase = _classBriefcase; //本门课的briefcase(通过该窗口的构造函数传进来) this.jieci = _jieci; //节次编号 _dmTable = dmTable; _rollCallTime = RollcallTime; //以上语句在为成员赋值 不要管啦//////////////////// Briefcase propertieBriefcase = new FileBriefcase (Properties.Settings.Default.PropertiesBriefcaseFolder, true); //打开propertiesBriefcase,用于获取班级表 bjTable = propertieBriefcase.FindTable("ClassNameTable"); //班级表 xkTable = classBriefcase.FindTable("XKTABLE_VIEW1"); //拉出选课表 获取学生信息 }
/// <summary> /// Populates the Briefcases. /// Precondition: None /// Post-condition: this.Briefcases.briefcase.DollarAmount == this.ChosenGameAmounts.ElementAt(Random.Next()) /// </summary> /// <param name="gameType">Type of the game.</param> /// <returns>The list populated with specified amounts based on game type.</returns> public void PopulateBriefcases(string gameType) { var random = new Random(); const int totalBriefcases = 26; var outputCases = new List <Briefcase>(); this.setGameTypeAmounts(gameType); var amounts = this.ChosenGameTypeAmounts.ToList(); for (var i = 1; i <= totalBriefcases; i++) { var randomNumber = random.Next(0, amounts.Count); var currentBriefcase = new Briefcase(i - 1, amounts.ElementAt(randomNumber)); outputCases.Add(currentBriefcase); amounts.RemoveAt(randomNumber); } this.Briefcases = outputCases; }
public Game PlayRound(int roundNumber, int briefcaseToOpenCount) { Console.WriteLine($"Round {roundNumber}"); for (int i = 1; i <= briefcaseToOpenCount; i++) { int briefcaseNumber = GetBriefcaseNumber(); Briefcase briefcase = _briefcaseService.LoadBriefcase(briefcaseNumber); DisplayBriefcase(briefcase); _game = _game.RemoveBriefcaseFromList(briefcase); } double bankerOffer = _bankerOfferService.CalculateOffer(_game.RemainingBriefcases, roundNumber); Console.WriteLine($"The banker's offer is: {bankerOffer.Format()}"); _game.BankerOffers.Add(bankerOffer); _game.GameState = GetContestantsDecision(); _game.WinCondition = GetContestantsWinCondition(roundNumber); return(_game); }
public void AddBriefcases() { Briefcase briefcase = new Briefcase(); using (var cn = new SqlConnection()) { cn.ConnectionString = ConfigurationManager .ConnectionStrings[CONNECTION_NAME] .ConnectionString; // this is a stored procedure, making note to change later.... return(cn.Query <Briefcase>("AddBriefcases", commandType: CommandType.StoredProcedure)); } //using (var context = new ShowContext(CONNECTION_NAME)) //{ // briefcase.Amount = 0.01M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 1M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 5M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 10M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 25M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 50M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 75M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 100M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 200M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 300M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 400M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 500M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 750M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 1000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 5000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 10000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 25000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 50000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 75000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 100000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 200000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 300000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 400000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 500000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 750000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); // briefcase.Amount = 1000000M; // context.Briefcases.Add(briefcase); // context.SaveChanges(); //} }
public static Game RemoveBriefcaseFromList(this Game game, Briefcase briefcase) { game.RemainingBriefcases.Remove(briefcase); game.RemovedBriefcases.Add(briefcase); return(game); }
//this method signature means deliver public void PerformMyDecision (Briefcase brf, Individual deliverTo) { brf.NoMas (); if ((brf.myBriefCaseType == Briefcase_Type.YELLOW && deliverTo.I_AM_YELLOW) || (brf.myBriefCaseType == Briefcase_Type.RED && deliverTo.I_AM_RED) || (brf.myBriefCaseType == Briefcase_Type.GREY && deliverTo.I_AM_GREY )) { deliverTo.IHaveMySpecialBriefcase = true; //Debug.Log ("My name is : "+deliverTo.Index+" and I have my mask "); if(CheckIfEveryOneHasTheirSpecialBrief()){ PlayerPrefs.SetInt ("money", PlayerPrefs.GetInt ("money") + 40003); GameManager.instance.MyGameState = Game_State.Win; GameManager.instance.Win_GUI.SetActive(true); } } }
private void DisplayBriefcase(Briefcase briefcase) { Console.WriteLine($"Briefcase number {briefcase.Number} contains..."); Console.WriteLine(briefcase.Amount.Format()); }
/// <summary> /// 下载课程的过程中比较费时的操作都在这个函数里面 /// </summary> /// <param name="kkno">开课编号</param> /// <param name="courseBriefcase">该堂课要存的briefcase</param> private static void DownloadData(long kkno, Briefcase courseBriefcase) { Thread.Sleep(1000);//等待进度条窗口建立完毕 _waitform.Invoke(new MethodInvoker(() => _waitform.SetInfo("下载学生信息 \n 该过程可能会比较耗时"))); var fDataModule = new DataModule(); // 再新建一个datamodule.. 好浪费资源的说 反正C#会自己做内存回收... var xktable = from c in fDataModule.GetxktableViewros() // 将选课表(学生信息)拿出来 where c.KKNO == kkno select c; _waitform.Invoke(new MethodInvoker(() => _waitform.SetInfo("下载学生信息 \n 该过程会耗时30秒左右"))); // 更改等待窗口的文字 var xkDatatable = EnumerableExtension.ListToDataTable(xktable.ToList(), "XKTABLE"); // 下载选课表 _waitform.Invoke(new MethodInvoker(() => _waitform.SetValue(20))); // 设置进度条 20 courseBriefcase.AddTable(xkDatatable); // 将选课表加到briefcase中 courseBriefcase.WriteBriefcase(); // 写入硬盘 var sktable = from c in fDataModule.GetSktable07Viewro() where c.KKNO == kkno select c; // 拉取上课表 var dmtable = from c in fDataModule.GetdmTable() where c.KKNO == kkno select c; //拉取选课表 _waitform.Invoke(new MethodInvoker(() => _waitform.SetInfo("下载课程信息 \n 该过程不会消耗太长时间"))); _waitform.Invoke(new MethodInvoker(() => _waitform.SetValue(50))); var sktableList = sktable.ToList(); // 下载上课表 var skdatatable = EnumerableExtension.ListToDataTable(sktableList, "SKTABLE"); //将上课表转换成datatable courseBriefcase.AddTable(skdatatable); // 将datatable写入briefcase中 courseBriefcase.WriteBriefcase(); // 写入硬盘 _waitform.Invoke(new MethodInvoker(() => _waitform.SetInfo("下载考勤信息 \n 该过程不会消耗太长时间"))); var dmtableList = dmtable.ToList(); // 下载点名表 foreach (var sktable07Viewro in sktable) { var viewro = sktable07Viewro; // resharper说一定要这么写 var dmtablesinglelist = from c in dmtableList where c.SKNO == viewro.SKNO select c; var dmtableSingleDatatable = EnumerableExtension.ListToDataTable(dmtablesinglelist.ToList(), sktable07Viewro.SKNO.ToString(CultureInfo.InvariantCulture)); // 将list转换成datatable courseBriefcase.AddTable(dmtableSingleDatatable); _waitform.Invoke(new MethodInvoker(() => _waitform.Increase(1))); // 每次下载都在进度条上加1 } courseBriefcase.WriteBriefcase(); // 保存将对briefcase的更改写入硬盘 var classInfoTable = courseBriefcase.FindTable("ClassInfo"); //以下注释的代码作为参考用. //courseInfoTable.Columns.Add ("上课编号", typeof (string)); //courseInfoTable.Columns.Add ("上课日期", typeof (string)); //courseInfoTable.Columns.Add ("上课状态", typeof (string)); foreach (var sktable07Viewro in sktableList) { var viewro = sktable07Viewro; //resharper说要这么写 var classInfoRow = classInfoTable.NewRow(); //新建一行 classInfoRow["上课编号"] = viewro.SKNO.ToString(CultureInfo.InvariantCulture); //指定这一行的上课编号 classInfoRow["上课日期"] = viewro.YDSKDATE.ToString(); //指定这一行的上课日期 if (viewro.SKZT == 0) //将上课状态转换成文字 { classInfoRow["上课状态"] = "未签到"; } else { classInfoRow["上课状态"] = "已签到"; } classInfoTable.Rows.Add(classInfoRow);//将这一行加到datatable里 } courseBriefcase.AddTable(classInfoTable);//将datatable加到briefcase里 courseBriefcase.WriteBriefcase(); _waitform.Invoke(new MethodInvoker(() => _waitform.Close())); //关闭进度窗口 }