#grid #cells #color #macroquad #text #left #corner

bin+lib macroquad_grid

与 macroquad 一起使用的网格

2 个版本

0.1.1 2023 年 5 月 11 日
0.1.0 2023 年 5 月 11 日

#787 in 图像

MIT/Apache

19KB
221

真正的说明很快就会到来

感觉我花了很多时间写了一些好的旧文档注释,所以为什么不去看看那些呢

注意

  • draw_rect 函数的实现与 draw_text 函数的不匹配

-- draw_rect 接收 (x, y) 作为左上角

-- draw_text 接收 (x, y) 作为文本的左下角

矩形在给定的 xy 对的下方和右侧,而文本在给定的 xy 对的上方和右侧


lib.rs:

一个与 macroquad 库一起使用的网格

所以如果你正在

  • 制作数独游戏
  • 棋类游戏
  • 战斗舰
  • 等等。

你可能需要一个网格来工作

这是一个与 macroquad 一起使用的网格!

有一个名为 Grid 的结构体和一个枚举,如果你想让网格不在左上角(除非你使用枚举 + setter 在网格上移动它,网格的左上角是屏幕的左上角)

这个crate 必须与 macroquad 一起使用

它是一个附加组件!你可以在你的 macroquad 程序中使用网格

你可以用网格做什么

在 src/grid/main.rs 中,我调用了网格结构体上的每个方法,所以这应该很有帮助

大多数都是设置器,所以应该是相当直接的

总结

你可以创建一个网格,然后给单元格着色,在单元格中写文本,是的

尴尬

所以很多 set_color 方法可能看起来很相似,我保证它们并不都做同样的事情。

详细说明!

单元格有一个默认的背景颜色和一个默认的选择颜色,每个默认值都可以用其中一个设置器重写

你也可以使用第三个设置器显式地着色一个单元格

单元格之间的间隙也可以用设置器着色

恐慌

因此,当你创建一个网格时,它将具有宽度(如果使用Grid的新方法,则由你设置)和高度。我创建了一个二维向量,具有高度内部向量,每个内部向量包含宽度单元格。如果你尝试选择、写入、着色等,而行的列数大于宽度或高度,则此创建将引发恐慌。

TL;DR

不要对不存在或超出范围的单元格进行着色/写入/设置。

依赖项

~19MB
~234K SLoC