1: package.path = [[.\lua_lib\?.lua;]] .. package.path
2: package.cpath = [[.\lua_lib\?.dll;]] .. package.cpath
3: local 字集库 = require("u8_to_a")
4: local 文件系库 = require("lfs")
5: local 基算库 = require(字集库.u8_to_a("算机_程语_月_基类_数_基算"))
6: local 前缀库 = require(字集库.u8_to_a("算机_程语_月_基类_文_前缀"))
7: local 文库 = require(字集库.u8_to_a("算机_程语_月_基类_文"))
8: local 后缀库 = require(字集库.u8_to_a("算机_程语_月_基类_文_后缀"))
9: local 历排库 = require(字集库.u8_to_a("算机_程语_月_基类_能_传能_历_基类_表_排_取全"))
10: local 历对库 = require(字集库.u8_to_a("算机_程语_月_基类_能_传能_历_基类_表_对_取全"))
11: local 历文库 = require(字集库.u8_to_a("算机_程语_月_基类_能_传能_历_基类_文_取全"))
12: local 数库 = require(字集库.u8_to_a("算机_程语_月_基类_数"))
13: local 基类库 = require(字集库.u8_to_a("算机_程语_月_基类_能_传能_基类"))
14: local 筛卡库 = require(字集库.u8_to_a("游戏王_则拟器_原版_残局_卡_全筛"))
15: local 卡档库 = require(字集库.u8_to_a("游戏王_则拟器_原版_卡档"))
16: local 排算库 = require(字集库.u8_to_a("算机_程语_月_基类_表_排_基类_数"))
17: local 删注库 = require(字集库.u8_to_a("算机_程语_月_注_删_不虑字串"))
18: local 读文件库 = require(字集库.u8_to_a("算机_基统_窗群_文件系_小文件_读"))
19: local 写文件库 = require(字集库.u8_to_a("算机_基统_窗群_文件系_小文件_写"))
20: local string = string
21: local os = os
22: local table = table
23: local s = {}
24: --~ 卡对排
25: function s.筛有效果卡(u1_0)
26: return 历排库.历排(u1_0, 筛卡库.筛有效果卡)
27: end
28: --~ 卡编排
29: function s.取卡对_一维(u1_0)
30: return 历排库.历排(u1_0, 卡档库.取卡对)
31: end
32: do
f1bea6a75e 2024-02-13 33: local k1, k2, k3
34: --~ 非空单行,且无换行符
f1bea6a75e 2024-02-13 35: k1 = "[^\n]+"
36: --~ 卡编所在函式
f1bea6a75e 2024-02-13 37: k2 = "Debug%.AddCard.+"
38: --~ 卡编
f1bea6a75e 2024-02-13 39: k3 = "[0-9]+"
40: --~ 文
41: function s.局筛卡编(u1)
42: local h1_0
43: --~ 卡编排
f1bea6a75e 2024-02-13 44: h1_0 = 历文库.历文(u1, string.gmatch, k1)
f1bea6a75e 2024-02-13 45: h1_0 = 历排库.历排(h1_0, string.match, k2)
f1bea6a75e 2024-02-13 46: return 历排库.历排(h1_0, string.match, k3)
47: end
48: end
49: do
f1bea6a75e 2024-02-13 50: local k1, k2, k3, k4
51: --~ 非空单行,且无换行符
f1bea6a75e 2024-02-13 52: k1 = "[^\n]+"
53: --~ 玩家讯所在函式
f1bea6a75e 2024-02-13 54: k2 = "Debug%.SetPlayerInfo.+"
55: --~ 玩家编号
f1bea6a75e 2024-02-13 56: k3 = "[0-9]+"
57: --~ 玩家血量
f1bea6a75e 2024-02-13 58: k4 = "[0-9]+"
59: --~ 文
60: function s.局筛血(u1)
61: local h1_0
62: --~ 血排
f1bea6a75e 2024-02-13 63: h1_0 = 历文库.历文(u1, string.gmatch, k1)
f1bea6a75e 2024-02-13 64: h1_0 = 历排库.历排(h1_0, string.match, k2)
f1bea6a75e 2024-02-13 65: h1_0 = 历排库.历排(h1_0, string.gsub, k3, "", 1)
f1bea6a75e 2024-02-13 66: return 历排库.历排(h1_0, string.match, k4)
67: end
68: end
69: do
f1bea6a75e 2024-02-13 70: local k1, k2, k3
71: --~ 非空单行,且无换行符
f1bea6a75e 2024-02-13 72: k1 = "[^\n]+"
73: --~ 残局讯所在函式
f1bea6a75e 2024-02-13 74: k2 = 文库.连("Debug", "%.", "ReloadFieldBegin", ".+")
75: --~ 则数
f1bea6a75e 2024-02-13 76: k3 = "[0-9]"
77: --~ 文
78: function s.局筛则数(u1)
f1bea6a75e 2024-02-13 79: local k4
80: local h1_0
81: --~ 则数排
f1bea6a75e 2024-02-13 82: h1_0 = 历文库.历文(u1, string.gmatch, k1)
f1bea6a75e 2024-02-13 83: h1_0 = 历排库.历排(h1_0, string.match, k2)
84: --~ 则数
f1bea6a75e 2024-02-13 85: k4 = string.match(h1_0[1], k3)
f1bea6a75e 2024-02-13 86: assert(k4, u1)
f1bea6a75e 2024-02-13 87: return k4 or 5
88: end
89: end
90: --~ 卡对排
91: --~ 血排
92: function s.荐名(u1_0, u2_0)
f1bea6a75e 2024-02-13 93: local k1, k2, k3
94: local h1_0
95: --~ 攻击力排
96: h1_0 = 历排库.历排(u1_0, 筛卡库.筛怪兽卡)
97: h1_0 = 历排库.历排(h1_0, 筛卡库.筛攻击力)
98: --~ 总攻
f1bea6a75e 2024-02-13 99: k1 = 排算库.总和(h1_0)
100: --~ 总血
f1bea6a75e 2024-02-13 101: k2 = 排算库.总和(u2_0)
102: --~ 荐名
f1bea6a75e 2024-02-13 103: k3 = 基算库.除法(k1, k2)
f1bea6a75e 2024-02-13 104: k3 = 数库.指数次(k3, 2)
f1bea6a75e 2024-02-13 105: if 数库.是否错值(k3) then
106: return 0
107: else
f1bea6a75e 2024-02-13 108: k3 = 数库.几位小数(k3, 1)
f1bea6a75e 2024-02-13 109: return tostring(基算库.乘法(k3, 1000))
110: end
111: end
112: --~ 文件
113: --~ 编号
114: --~ 文件路
115: function s.察编号(u1, u2, u3)
f1bea6a75e 2024-02-13 116: local k1
f1bea6a75e 2024-02-13 117: k1 = string.gsub(u1, 文库.连("Debug", "%.", "SetAIName", "[^\n]+"), 文库.连([[Debug.SetAIName("]], u2, [[")]]))
f1bea6a75e 2024-02-13 118: if k1 == u1 then
119: else
f1bea6a75e 2024-02-13 120: 写文件库.写文件(u3, k1)
121: end
122: end
123: --~ 目对
124: function s.残局改名(u1_0)
125: local h1_0, h2_0, h3_0, h4_0, h5_0, h6_0, h7_0, h8_0, h9_0
126: local h10_0, h11_0, h12_0
127: --~ 文件名排
128: h1_0 = 历文库.历文(u1_0.文件目, 文件系库.dir)
129: h1_0 = 历排库.历排(h1_0, 后缀库.全筛后缀, ".lua")
130: --~ 文件排
131: h2_0 = 历排库.历排(h1_0, 后缀库.全筛后缀, ".lua")
132: h2_0 = 历排库.历排(h2_0, 前缀库.加前缀, u1_0.文件目)
133: h2_0 = 历排库.历排(h2_0, 读文件库.读文件)
134: h2_0 = 历排库.历排(h2_0, 删注库.删注)
135: --~ 则数排
136: h3_0 = 历排库.历排(h2_0, s.局筛则数)
137: --~ 各文件的卡编排
138: h4_0 = 历排库.历排(h2_0, s.局筛卡编)
139: --~ 各文件的卡对排
140: h5_0 = 历排库.历排(h4_0, s.取卡对_一维)
141: --~ 有效果卡的卡对排
142: h6_0 = 历排库.历排(h5_0, s.筛有效果卡)
143: --~ 有效果卡的张数排
144: h7_0 = 历排库.历排(h6_0, table.maxn)
145: --~ 血排
146: h11_0 = 历排库.历排(h2_0, s.局筛血)
147: --~ 荐名排
148: h8_0 = 历排库.历二排(h6_0, h11_0, s.荐名)
149: --~ 新名排
150: h9_0 = 历排库.历排(h1_0, string.gsub, 字集库.u8_to_a(文库.连(" ", ".+")), "")
151: --~ 编号排
152: h10_0 = 历排库.历排(h1_0, string.gsub, 字集库.u8_to_a(文库.连(" ", ".+")), "")
153: h9_0 = 历排库.历排(h9_0, string.gsub, 文库.连("%.", "lua", "$"), "")
154: for u1 = 1, #h1_0 do
155: h9_0[u1] = 文库.连(字集库.a_to_u8(u1_0.文件目), 字集库.a_to_u8(h9_0[u1]), " ", h3_0[u1], "_", 数库.几位整数(h7_0[u1], 2))
156: if h8_0[u1] == 0 then
157: h9_0[u1] = 文库.连(h9_0[u1], ".", "lua")
158: else
159: h9_0[u1] = 文库.连(h9_0[u1], "_", h8_0[u1], ".", "lua")
160: end
161: end
162: h1_0 = 历排库.历排(h1_0, 前缀库.加前缀, u1_0.文件目)
163: h9_0 = 历排库.历排(h9_0, 字集库.u8_to_a)
164: 历排库.历二排(h1_0, h9_0, os.rename)
165: h10_0 = 历排库.历排(h10_0, 字集库.a_to_u8)
166: --~ 文排
167: h12_0 = 历排库.历排(h9_0, 读文件库.读文件)
168: 历排库.历三排(h12_0, h10_0, h9_0, s.察编号)
169: end
170: s.目对 = {
171: ["文件目"] = "../single/"
172: , ["卡档路"] = [[D:\install\YGOPro\cards.cdb]]
173: }
174: s.目对 = 历对库.历值(s.目对, 基类库.操类, "string", 字集库.u8_to_a)
175: 卡档库.启卡档(s.目对.卡档路)
176: s.残局改名(s.目对)