首页 > 解决方案 > 在控制台窗口中创建单独的颜色

问题描述

我正在尝试制作一个迷宫游戏,其中玩家用图标“$”显示。

玩家可以使用箭头键在控制台窗口中移动。玩家将遇到诸如“U”之类的敌人。这个敌人只能上下移动。如果玩家接触到任何敌人,他们就会死亡。

这是我游戏的基本要点。我已经完成了游戏的碰撞和敌人,这一切都完美无缺。但是我想为游戏中的对象添加颜色。

例如,我希望我的玩家角色可以是蓝色而“U”敌人可以是红色。我无法在不导致极度缓慢或闪烁的情况下实现颜色。

我制作游戏的方式是将所有敌人写入一个char[][]包含所有位置的数组。然后在针对特定滴答声完成所有移动和碰撞后,将char[][]数组传输到字符串。然后我一次打印字符串以避免任何闪烁。

但是,为了更改我的字符的颜色,它们需要以单独的字符串打印。但是,这将不允许我更改单个颜色,因为Console.ForegroundColor = ConsoleColor.Blue;会更改整个游戏的颜色,因为整个游戏都打印到一个字符串上。我想不出办法解决这个问题有没有人知道解决方案。

还有什么方法可以将不使用的东西绘制到控制台窗口,Console.Write();或者Console.WriteLine();因为我想向控制台输出不是字符串的东西。

标签: c#console

解决方案


推荐阅读