游戏王残局简化版

Diff
Login

Diff

Differences From Artifact [68283b6180]:

To Artifact [69bf46dcf7]:


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







-
+






-
-
+
+

-
-
-
-
-
+
+
+
+
+












-
+

-
-
+
+

-
+

-
-
+
+

















-
+





-
-
+
+

-
-
+
+


-
+



-
-
+
+

-
-
-
-
+
+
+
+

-
+

-
+

-
-
-
-
-
+
+
+
+
+

-
+
















-
+




-
+

-
+


  end
--~ 卡对
function d.卡对消重(u1, u1_0)
  return u1_0.name, true
  end
--~ 卡对排
function d.荐名(u1_0)
  local k1, k2
  local h1, h2
  local h1_0
  --~ 攻击力排
  h1_0 = 历排库.历排(u1_0, 筛卡库.筛怪兽卡)
  h1_0 = 历排库.历排(h1_0, 筛卡库.筛攻击力)
  if h1_0[1] then
    --~ 攻击力均差阶
    k1 = 排算库.均差(h1_0)
    if k1 > 0 then
    h1 = 排算库.均差(h1_0)
    if h1 > 0 then
      --~ 补值
      k2 = 数库.指数(100, 基算库.除法(k1, 300))
      k1 = 基算库.除法(基算库.加法(k1, k2), 100)
      if k1 > 1 then
        k1 = 数库.指数次(k1, 2)
        return 数库.向下取整(k1)
      h2 = 数库.指数(100, 基算库.除法(h1, 300))
      h1 = 基算库.除法(基算库.加法(h1, h2), 100)
      if h1 > 1 then
        h1 = 数库.指数次(h1, 2)
        return 数库.向下取整(h1)
      else
        return 0
        end
    else
      return 0
      end
  else
    return 0
    end
  end
--~ 卡对排
function d.荐名(u1_0)
  local k1
  local h1
  --~ 名
  k1 = d.荐字段名(u1_0)
  if k1 then
  h1 = d.荐字段名(u1_0)
  if h1 then
  else
    k1 = d.荐卡名(u1_0)
    h1 = d.荐卡名(u1_0)
    end
  if k1 then
    return k1
  if h1 then
    return h1
  else
    return "请便"
    end
  end
--~ 卡对排
function d.荐卡名(u1_0)
  local h1_0
  --~ 卡名排
  h1_0 = 历排库.历排(u1_0, d.取卡名)
  return 历排取一库.筛最短文(h1_0)
  end
--~ 卡对
function d.取卡名(u1_0)
  return u1_0.name
  end
--~ 卡对排
function d.取字段对(u1_0)
  local k1, k2, k3, k4
  local h1, h2, h3, h4
  local h1_0
  --~ 字段对
  h1_0 = {}
  for u1 = 1, #u1_0 do
    --~ 字段数
    k1 = 字节库.to_uint64(u1_0[u1].setcode)
    if k1 < 1 then
    h1 = 字节库.to_uint64(u1_0[u1].setcode)
    if h1 < 1 then
    else
      if k1 > 0xffffFFFFffff then
        k1 = k1 - 1
      if h1 > 0xffffFFFFffff then
        h1 = h1 - 1
      else
        for u2 = 1, 11112222 do
          if k1 < 1 then
          if h1 < 1 then
            break
          else
            --~ 大字段号
            k2 = 位算库.位和(k1, 0xffff)
            k1 = 位算库.位右移(k1, 基算库.乘法(4, 4))
            h2 = 位算库.位和(h1, 0xffff)
            h1 = 位算库.位右移(h1, 基算库.乘法(4, 4))
            --~ 字段名
            k3 = 字段名对[tonumber(k2)]
            if k3 then
              if h1_0[k3] then
                h1_0[k3] = 基算库.加法(h1_0[k3], 1)
            h3 = 字段名对[tonumber(h2)]
            if h3 then
              if h1_0[h3] then
                h1_0[h3] = 基算库.加法(h1_0[h3], 1)
              else
                h1_0[k3] = 1
                h1_0[h3] = 1
                end
              if k2 > 0xfff then
              if h2 > 0xfff then
                --~ 小字段号
                k4 = 位算库.位和(k2, 0xfff)
                k3 = 字段名对[tonumber(k4)]
                if k3 then
                  if h1_0[k3] then
                    h1_0[k3] = 基算库.加法(h1_0[k3], 1)
                h4 = 位算库.位和(h2, 0xfff)
                h3 = 字段名对[tonumber(h4)]
                if h3 then
                  if h1_0[h3] then
                    h1_0[h3] = 基算库.加法(h1_0[h3], 1)
                  else
                    h1_0[k3] = 1
                    h1_0[h3] = 1
                    end
                else
                  end
              else
                end
            else
              end
            end
          end
        end
      end
    end
  return h1_0
  end
--~ 卡对排
function d.荐字段名(u1_0)
  local k1
  local h1
  local h1_0
  --~ 字段对
  h1_0 = d.取字段对(u1_0)
  --~ 最大的字段名数量
  _, k1 = 历对取一库.筛最大值(h1_0)
  _, h1 = 历对取一库.筛最大值(h1_0)
  --~ 最高频字段名对
  h2_0 = 历对库.历对(h1_0, 历对库.全等筛值, k1)
  h2_0 = 历对库.历对(h1_0, 历对库.全等筛值, h1)
  return 历对取一库.筛最短键(h2_0)
  end