界面和游戏逻辑第八周进展

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了界面和游戏逻辑第八周进展相关的知识,希望对你有一定的参考价值。

由于human出牌的时候,牌总是和right玩家的胡同一时间出来,为了更有时序感,考虑的时候修改了结构,只新开一个线程,把click事件和问胡分开,由此结构也更简单和清楚,也由此少了100多行代码,切实感受到了先做规划的重要,但是也确实是刚开始的时候不懂的用线程,只能是摸索中前进。

c#中,要在一个类中的函数中使用另一个类的变量和方法等。

调整出牌显示时序。

谁开始的初始化有问题,已改正。

三方面联合初步调试,开始着手加入动画

用private ManualResetEvent human_movedone = new ManualResetEvent(false);来控制线程而不再用thread.sleep.

time控件只能在主线程中使用,要实现ai玩家的出牌,故用System.Timers.Timer类。

为了避免出现同时有多条线程在执行timer里的内容,应该在timer_tick开始时timer_stop,结束的时候timer_start.

ManulResetEvent和AutoResetEvent:ManulResetEvent的waitone后不会重置,需要手动用reset,而AutoResetEvent自动重置。

pictureBox_human_move.BringToFront();控件显示优先级提高,pictureBox_human_move.SendToBack()放最下面的层,显示优先级降低。

基本完成四个玩家的出牌动画。

由于显示的图片过多,打开程序和最小化-还原的时候出现闪烁,设置双缓存也不能明显改善,故尽量把开始时候显示的图片压缩,让它需要显示的时候再显示而不是不需要显示的时候显示card back。

碰的时候牌回收,原来自己的回合不能杠,已改。摸的牌放在picturebox14,出完牌再整理。

以上是关于界面和游戏逻辑第八周进展的主要内容,如果未能解决你的问题,请参考以下文章

第八周新蜂新NABCD

2018-2019-1 20165228 《信息安全系统设计基础》第八周学习总结

2018-2019-1 20165236《信息安全系统设计基础》第八周学习总结

2018-2019-1 20165220 《信息安全系统设计基础》第八周学习总结

2018-2019-1 20165234 《信息安全系统设计基础》第八周学习总结

2018-2019-1 20165314《信息安全系统设计基础》第八周学习总结