色环设计

该程序的难点在于字符串的书写角度,理解了这个就已经理解了这个程序的核心内容,需要注意的地方是这个程序的每一圈代表一个 for 循环,我开始写的时候认为一个 for 循环嵌套一个 for 循环,但是后面我发现 for 循环嵌套的太多,就会导致程序运行的速度变慢,为了提高程序的速度,我将所有的 for 循环分开写,不用循环嵌套。然后用一个 while 循环来控制主循环。还有一个问题,程序中我没有用 Sleep 函数,直接使用了获取系统时间的函数,通过慢羊羊的指导,后续又加以修正,让钟表产生旋转的效果。在这里要感谢慢羊羊,感谢他对我编写的每一个程序进行指导,并给我一个展示的平台,让我对编程产生了浓厚的兴趣,由衷的感谢他。
写程序总是兴趣使然,实现自己的想法所带来的成就感还是挺不错。如果发现一个自己想用程序实现的东西,总是心中念念不忘,然后悄悄酝酿着,积累着,当有足够的能力将所看所学所想的组合起来时,那可能就是创新吧。多想,多
...一个群里的大佬做的 DOS 版我的世界让我想到了这个游戏,后面去看了看 Terraria 的视频,学习了下,做了个极其简陋的沙盒游戏
开发环境:VS2019 + EasyX_20210730
一个类似于二维版我的世界和泰拉瑞亚的沙盒游戏,你可以建造属于你的一片天地
(但因为目前方块过少,效果极其单调。。)
WASD 键:移动
Q 键:打开制作页面,再次按下返回
E 键:打开背包页面,再次按下返回
R 键:查看角色属性
ESC:设置页面(可调整为观察模式、普通模式,查看当前坐标)
大键盘1键:保存!!
制作页面:鼠标滚轮选择目标制作物品(部分物品需在工作台或熔炉旁才能制作)
背包页面:鼠标选中背包物品后拖动至使用栏便可更换使用栏物
...在 4399 上面看到一个很有趣的小游戏:合成立方体(游戏原地址)。
游戏中,玩家需要通过所给的形状去尽可能拼凑出完整的一行一列,然后完整的行列会增加分数,一旦所给的形状无法被塞下,游戏结束。非常简单的游戏,我用了 EasyX 去复原了一下。
游戏运行截图如下:
点击这里下载游戏完整源代码
鼠标左键拖动图形移动,松开时自动吸附,按下 ctrl 键的同时拖动则不进行吸附,右键单击图形顺时针旋转 45°,ESC 结束游戏。
1. 增加了点吸附效果,拖动图形松开后,触发边吸附的同时也会触发点吸附。
2. 拖动图形的同时,若按下 ctrl 键,则不会进行吸附。
不定期更新,力求完善。。。
简要介绍程序中的一些点。
使用模板类和 lambda 表达式实现了属性,用于对外暴露字段,详见 C# 属性。
使用属性可以简化程序,减少繁琐的 get 函数和 set 函数,提高了程序的可读性。
因为是自行封装的属性,所以存在很大的缺陷,很大程度上增加了类的大小(因为把函数成员变成了数据成员),属性的重写以及访问控制的不完善等。
使用 Tangram 类来管
...