游戏王残局简化版

Diff
Login

Diff

Differences From Artifact [70de9b64f1]:

To Artifact [68283b6180]:


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
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


-
+


-
+



-
-
+
+


-
+



-
+







-- 不用这套方案了
--~ 卡对排
function d.荐名(o1_0)
function d.荐名(u1_0)
  local h1_0
  --~ 卡名对
  h1_0 = 历对库.历对(o1_0, d.卡对消重)
  h1_0 = 历对库.历对(u1_0, d.卡对消重)
  return 对库.对长(h1_0)
  end
--~ 卡对
function d.卡对消重(o1, o1_0)
  return o1_0.name, true
function d.卡对消重(u1, u1_0)
  return u1_0.name, true
  end
--~ 卡对排
function d.荐名(o1_0)
function d.荐名(u1_0)
  local k1, k2
  local h1_0
  --~ 攻击力排
  h1_0 = 历排库.历排(o1_0, 筛卡库.筛怪兽卡)
  h1_0 = 历排库.历排(u1_0, 筛卡库.筛怪兽卡)
  h1_0 = 历排库.历排(h1_0, 筛卡库.筛攻击力)
  if h1_0[1] then
    --~ 攻击力均差阶
    k1 = 排算库.均差(h1_0)
    if k1 > 0 then
      --~ 补值
      k2 = 数库.指数(100, 基算库.除法(k1, 300))
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
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







-
+


-
+


-
+








-
+


-
+



-
-
+
+


-
+




-
+

-
+





-
+







      return 0
      end
  else
    return 0
    end
  end
--~ 卡对排
function d.荐名(o1_0)
function d.荐名(u1_0)
  local k1
  --~ 名
  k1 = d.荐字段名(o1_0)
  k1 = d.荐字段名(u1_0)
  if k1 then
  else
    k1 = d.荐卡名(o1_0)
    k1 = d.荐卡名(u1_0)
    end
  if k1 then
    return k1
  else
    return "请便"
    end
  end
--~ 卡对排
function d.荐卡名(o1_0)
function d.荐卡名(u1_0)
  local h1_0
  --~ 卡名排
  h1_0 = 历排库.历排(o1_0, d.取卡名)
  h1_0 = 历排库.历排(u1_0, d.取卡名)
  return 历排取一库.筛最短文(h1_0)
  end
--~ 卡对
function d.取卡名(o1_0)
  return o1_0.name
function d.取卡名(u1_0)
  return u1_0.name
  end
--~ 卡对排
function d.取字段对(o1_0)
function d.取字段对(u1_0)
  local k1, k2, k3, k4
  local h1_0
  --~ 字段对
  h1_0 = {}
  for o1 = 1, #o1_0 do
  for u1 = 1, #u1_0 do
    --~ 字段数
    k1 = 字节库.to_uint64(o1_0[o1].setcode)
    k1 = 字节库.to_uint64(u1_0[u1].setcode)
    if k1 < 1 then
    else
      if k1 > 0xffffFFFFffff then
        k1 = k1 - 1
      else
        for o2 = 1, 11112222 do
        for u2 = 1, 11112222 do
          if k1 < 1 then
            break
          else
            --~ 大字段号
            k2 = 位算库.位和(k1, 0xffff)
            k1 = 位算库.位右移(k1, 基算库.乘法(4, 4))
            --~ 字段名
112
113
114
115
116
117
118
119

120
121
122
123

124
125
126
127
128
129
112
113
114
115
116
117
118

119
120
121
122

123
124
125
126
127
128
129







-
+



-
+






          end
        end
      end
    end
  return h1_0
  end
--~ 卡对排
function d.荐字段名(o1_0)
function d.荐字段名(u1_0)
  local k1
  local h1_0
  --~ 字段对
  h1_0 = d.取字段对(o1_0)
  h1_0 = d.取字段对(u1_0)
  --~ 最大的字段名数量
  _, k1 = 历对取一库.筛最大值(h1_0)
  --~ 最高频字段名对
  h2_0 = 历对库.历对(h1_0, 历对库.全等筛值, k1)
  return 历对取一库.筛最短键(h2_0)
  end