Skip to content

Commit 5d71a09

Browse files
authored
Hexic Iotaworks PhLib update:官库更新
1 parent d0b5a2b commit 5d71a09

File tree

10 files changed

+28
-16
lines changed

10 files changed

+28
-16
lines changed

projects/1.20-fabric/assets/modrinth-hexic/hexcasting/patchouli_books/thehexbook/en_us/entries/addon/hexic/metatables.json renamed to projects/1.20-fabric/assets/modrinth-hexic/hexcasting/patchouli_books/thehexbook/en_us/entries/addon/iotaworks/metatables.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66
"pages": [
77
"I've discovered a way to create a new type of iota — an abhorrence against Nature of my own doing. This pattern weaves a 'sheath' of _media out of some iota, letting me customize several attributes of the new iota. Though this can make my spells more expressive, this ability is not to be taken lightly — I cannot imagine the mischief others would do with these 'patchwork' iotas.",
88
"To assemble a patchwork iota, I must provide four source iotas:$(br)$(li)The 'userdata' iota, passed to my overload _Hexes.$(li)The 'display' iota, visible to my eyes.$(li)A color for the iota, as an RGB vector in the 0-1 range.$(li)A pointer to an $(thing)overload map./$",
9-
"Such an 'overload map' is merely a regular $(l:addon/hexic/maps)$(thing)Map/$ iota (mapping patterns to the _Hexes they should be replaced with), but stored within a $(l:properties)$(thing)Property/$. I assume that Nature's reason for boxing like this is to save space: it's likely I'll have many patched iotas all using the same overloads. This also gives me the convenience of updating every instance with merely $(l:properties#hexcellular:set_property)$(action)Schrödinger's Gambit/$, rather than finding and updating them all by hand.",
9+
"Such an 'overload map' is merely a regular $(l:addon/phlib/maps)$(thing)Map/$ iota (mapping patterns to the _Hexes they should be replaced with), but stored within a $(l:properties)$(thing)Property/$. I assume that Nature's reason for boxing like this is to save space: it's likely I'll have many patched iotas all using the same overloads. This also gives me the convenience of updating every instance with merely $(l:properties#hexcellular:set_property)$(action)Schrödinger's Gambit/$, rather than finding and updating them all by hand.",
1010
{
1111
"type": "hexcasting:pattern",
12-
"anchor": "hexic:metatable",
13-
"op_id": "hexic:metatable",
12+
"anchor": "iotaworks:metatable",
13+
"op_id": "iotaworks:metatable",
1414
"input": "iota, iota, vec, property",
1515
"output": "patchwork",
1616
"text": "$(br)Constructs a Patchwork iota from the userdata (iota stored inside), display iota (visible to my eyes), color, and an overload map."
@@ -28,7 +28,7 @@
2828
{
2929
"type": "patchouli:text",
3030
"flag": "mod:hexdoc",
31-
"text": "These $(thing)overload maps/$ resemble a technique I've seen before — the concept of redefining patterns on a fundamental level resembles the moon cultists' (little time to explain) $(l:https://www.lua.org/pil/13.html)metatables/$, which allow associating a table with another table to redefine its operations. When my 'metamethods' are invoked, the userdata iota is pushed to the top of the stack. All other information about the patchwork disintegrates: I'll need to recreate it from scratch (maybe I should use a 'constructor' macro?) if I want to return a new iota of the same type."
31+
"text": "These $(thing)overload maps/$ resemble a technique I've heard of before — the concept of redefining patterns on a fundamental level resembles the moon cultists' (little time to explain) $(l:https://www.lua.org/pil/13.html)metatables/$, which allow associating a table with another table to redefine its operations. When my 'metamethods' are invoked, the userdata iota is pushed to the top of the stack. All other information about the patchwork disintegrates: I'll need to recreate it from scratch (maybe I should use a 'constructor' macro?) if I want to return a new iota of the same type."
3232
},
3333
{
3434
"type": "patchouli:text",

projects/1.20-fabric/assets/modrinth-hexic/hexcasting/patchouli_books/thehexbook/en_us/entries/addon/hexic/maps.json renamed to projects/1.20-fabric/assets/modrinth-hexic/hexcasting/patchouli_books/thehexbook/en_us/entries/addon/phlib/maps.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
"Maps are an efficient structure holding pairings of some iota to some other iota. While this is perfectly possible using merely list operations, dedicated map iotas use some arcane substance called a '$(thing)Hash/$'. While this doesn't reduce the $(o)operations/$ required to access a map, it desperately reduces the load on Nature, nearing O(1) for most access.",
88
{
99
"type": "hexcasting:pattern",
10-
"op_id": "hexic:empty_map",
11-
"anchor": "hexic:empty_map",
10+
"op_id": "phlib:empty_map",
11+
"anchor": "phlib:empty_map",
1212
"input": "",
1313
"output": "map<⊥, ⊥>",
1414
"text": "Creates a new empty map for my usage."

projects/1.20-fabric/assets/modrinth-hexic/hexcasting/patchouli_books/thehexbook/zh_cn/entries/addon/hexic/metatables.json renamed to projects/1.20-fabric/assets/modrinth-hexic/hexcasting/patchouli_books/thehexbook/zh_cn/entries/addon/iotaworks/metatables.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66
"pages": [
77
"我找到了制造新种类 iota 的方法——由我对自然行径的憎恶催生。这个图案会在 iota 外部编织一层$(media)媒质/$“鞘”,以让我自定义新 iota 的多个属性。虽然这么做会让我的咒术更昂贵,但也不应轻视这种力量——我无法想象,其他人靠这些“修补”iota 能干出什么恶事。",
88
"构造修补 iota 时,必须提供 4 个来源 iota:$(br)$(li)自定义数据(userdata),真正传递给重载$(hex)咒术/$的 iota。$(li)所谓“展示”iota,我视角下 iota 的样子。$(li)Iota 的颜色,形式为 RGB 向量,分量值域为 0 到 1。$(li)指向$(thing)重载映射/$的指针。",
9-
"此处提到的“重载映射”只是一个普通的$(l:addon/hexic/maps)$(thing)映射/$ iota(图案至$(hex)咒术/$的映射,后者替代前者执行),但需整体存储在$(l:properties)$(thing)质性/$内。我推测自然进行封装是为了省空间,因为我可能会在多个修补 iota 中用到同一个重载映射。这同时也方便我更新所有实例——用一条$(l:properties#hexcellular:set_property)$(action)薛定谔之策略/$就可以了,不需要逐一找出更新。",
9+
"此处提到的“重载映射”只是一个普通的$(l:addon/phlib/maps)$(thing)映射/$ iota(图案至$(hex)咒术/$的映射,后者替代前者执行),但需整体存储在$(l:properties)$(thing)质性/$内。我推测自然进行封装是为了省空间,因为我可能会在多个修补 iota 中用到同一个重载映射。这同时也方便我更新所有实例——用一条$(l:properties#hexcellular:set_property)$(action)薛定谔之策略/$就可以了,不需要逐一找出更新。",
1010
{
1111
"type": "hexcasting:pattern",
12-
"anchor": "hexic:metatable",
13-
"op_id": "hexic:metatable",
12+
"anchor": "iotaworks:metatable",
13+
"op_id": "iotaworks:metatable",
1414
"input": "iota, iota, vec, property",
1515
"output": "patchwork",
1616
"text": "$(br)使用自定义数据(userdata,内部存储的 iota)、展示 iota(实际看见的 iota)、颜色、重载映射创建一个修补 iota。"
@@ -28,7 +28,7 @@
2828
{
2929
"type": "patchouli:text",
3030
"flag": "mod:hexdoc",
31-
"text": "这些$(thing)重载映射/$和我之前见过的一种技巧很像:在基础层面上重新定义图案。那些月之邪教徒(没位置解释)用到的$(l:https://www.lua.org/pil/13.html)元表/$——关联两张表来重新定义运算符——也跟它很类似。每当唤起我这边的“元方法”时,即会将自定义数据压栈。修补 iota 的其他信息则都遗失了;如果要返回同种 iota,就需要从头再构建一遍。也许可以用个“构造”宏?"
31+
"text": "这些$(thing)重载映射/$和我之前听过的一种技巧很像:在基础层面上重新定义图案。那些月之邪教徒(没位置解释)用到的$(l:https://www.lua.org/pil/13.html)元表/$——关联两张表来重新定义运算符——也跟它很类似。每当唤起我这边的“元方法”时,即会将自定义数据压栈。修补 iota 的其他信息则都遗失了;如果要返回同种 iota,就需要从头再构建一遍。也许可以用个“构造”宏?"
3232
},
3333
{
3434
"type": "patchouli:text",

projects/1.20-fabric/assets/modrinth-hexic/hexcasting/patchouli_books/thehexbook/zh_cn/entries/addon/hexic/maps.json renamed to projects/1.20-fabric/assets/modrinth-hexic/hexcasting/patchouli_books/thehexbook/zh_cn/entries/addon/phlib/maps.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
"映射是能存储 iota 对的高效结构。虽然这种功能只靠列表操作也能做到,但专门设计的映射 iota 用到了某种奥秘物件,称作“$(thing)哈希/$”。这种区别并不会减少访问映射所需$(o)运算符/$的数量,却能大幅降低自然的负载,大多数访问下接近于 O(1)。",
88
{
99
"type": "hexcasting:pattern",
10-
"op_id": "hexic:empty_map",
11-
"anchor": "hexic:empty_map",
10+
"op_id": "phlib:empty_map",
11+
"anchor": "phlib:empty_map",
1212
"input": "",
1313
"output": "map<⊥, ⊥>",
1414
"text": "创建一个空映射以供使用。"

projects/1.20-fabric/assets/modrinth-hexic/hexic/lang/en_us.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
"hexcasting.action.hexic:deleteworld": "Shatter Demiplane",
88
"hexcasting.action.hexic:drop": "Rejection Distillation",
99
"hexcasting.action.hexic:dye_offhand": "Apply Pigment",
10-
"hexcasting.action.hexic:empty_map": "Vacant Reflection: Map",
1110
"hexcasting.action.hexic:erase": "Erase Block",
1211
"hexcasting.action.hexic:extract": "Excisor's Gambit",
1312
"hexcasting.action.hexic:fox": "Vulpine Gambit",
@@ -21,7 +20,6 @@
2120
"hexcasting.action.hexic:make_cme": "Thoth's Pseudogambit",
2221
"hexcasting.action.hexic:makeworld": "Conjure Demiplane",
2322
"hexcasting.action.hexic:malloc": "Allocator's Purification",
24-
"hexcasting.action.hexic:metatable": "Patchwork Exaltation",
2523
"hexcasting.action.hexic:modulo": "Modulus Distillation II",
2624
"hexcasting.action.hexic:murmur": "Murmur Reflection",
2725
"hexcasting.action.hexic:nbt/deserialize": "Importer's Purification",

projects/1.20-fabric/assets/modrinth-hexic/hexic/lang/zh_cn.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
"hexcasting.action.hexic:deleteworld": "击碎半位面",
88
"hexcasting.action.hexic:drop": "拒斥之馏化",
99
"hexcasting.action.hexic:dye_offhand": "应用染色剂",
10-
"hexcasting.action.hexic:empty_map": "空无之精思:映射",
1110
"hexcasting.action.hexic:erase": "清除方块",
1211
"hexcasting.action.hexic:extract": "切除器之策略",
1312
"hexcasting.action.hexic:fox": "狐狸之策略",
@@ -21,7 +20,6 @@
2120
"hexcasting.action.hexic:make_cme": "托特之伪策略",
2221
"hexcasting.action.hexic:makeworld": "构筑半位面",
2322
"hexcasting.action.hexic:malloc": "分配器之纯化",
24-
"hexcasting.action.hexic:metatable": "修补之提整",
2523
"hexcasting.action.hexic:modulo": "余数之馏化,第二型",
2624
"hexcasting.action.hexic:murmur": "私语之精思",
2725
"hexcasting.action.hexic:nbt/deserialize": "导入器之纯化",
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"hexcasting.action.phlib:empty_map": "Vacant Reflection: Map"
3+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"modmenu.nameTranslation.iotaworks": "Iota工程",
3+
"modmenu.descriptionTranslation.iotaworks": "能操纵iota本身的咒法学附属。",
4+
"hexcasting.action.iotaworks:metatable": "修补之提整"
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"modmenu.nameTranslation.iotaworks": "Iotaworks",
3+
"modmenu.descriptionTranslation.iotaworks": "A Hex Casting addon for manipulating iotas.",
4+
"hexcasting.action.iotaworks:metatable": "Patchwork Exaltation"
5+
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"hexcasting.action.phlib:empty_map": "空无之精思:映射"
3+
}

0 commit comments

Comments
 (0)