C#-以不同的速度移动控制台应用程序中的对象

C#-以不同的速度移动控制台应用程序中的对象,c#,object,console,move,C#,Object,Console,Move,我现在正在学习C#,最近有一次考试。我必须创建一个具有移动对象的控制台游戏。我几乎做到了所需的一切,除了我想不出一种方法如何使每个游戏对象以不同的速度移动(实际上只有两个移动对象,地板和角色),其中一个任务是增加角色速度或地板速度。。。。我想不出一个办法来分别改变他们的速度。。我目前正试图完成游戏,但我没有想到这一点,我的“结局”是有两个变量charSpeed和floorSpeed。。。谁能解释一下我是如何做到这一点的 谢谢 我的代码--目前一团糟,我只想弄清楚我想做的事情背后的逻辑是什么。一个

我现在正在学习C#,最近有一次考试。我必须创建一个具有移动对象的控制台游戏。我几乎做到了所需的一切,除了我想不出一种方法如何使每个游戏对象以不同的速度移动(实际上只有两个移动对象,地板和角色),其中一个任务是增加角色速度或地板速度。。。。我想不出一个办法来分别改变他们的速度。。我目前正试图完成游戏,但我没有想到这一点,我的“结局”是有两个变量charSpeed和floorSpeed。。。谁能解释一下我是如何做到这一点的

谢谢

我的代码--目前一团糟,我只想弄清楚我想做的事情背后的逻辑是什么。一个“一般解决方案”,这里我只有2个对象,如果我想改变10个对象的速度怎么办

另外,没有类,我可以进入结构,我还没有使用过类。
顺便说一句,我会接受任何关于我的代码的建议或批评,所以我仍然在学习,所以任何事情都是值得赞赏的,但我现在最关心的是如何解决手头的问题。

我会为每种不同的levep速度使用计时器。 计时器的回调将执行移动的逻辑


这当然需要对代码进行重构;)

发布你的代码,否则我们不知道你在说什么。我的代码目前一团糟,我没有在方法中提取它(或注释它),但在这里-,我只是在寻找我想要做的事情背后的基本逻辑,如果在控制台应用程序中有两个移动对象,并且希望它们以不同的速度移动,那么您通常会如何操作…为每个对象添加一个
speed
属性(或使用该属性创建一个父类),将默认值设为10(这是正常移动)。移动物体时,移动速度乘以它们。要加快移动速度,请将对象速度提高到10以上,将对象速度降低到10以下。如何分别为每个对象使用speed属性,我的速度当前由线程决定。Sleep(xx),第156行。
线程。Sleep
理论上是您的重绘速度(在处理下一次更改重绘之前需要等待多长时间).但是在你的代码里,你把所有的东西都上下左右移动了x个数量。把x和你的速度挂钩,你就有了地板/球员的速度差。我知道其中一个家伙做了类似的事情,你能解释一下这是怎么回事吗?我从来没见过它有一个外观:谢谢,但我需要更多,imple背后的逻辑是什么在我目前的情况下(或任何其他需要类似控制的游戏)调整计时器?我最终要用计时器做什么?