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