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
|
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
|
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
|
--~ 效果
k1 = Effect.GlobalEffect()
k1:SetCode(EFFECT_USE_EXTRA_MZONE)
k1:SetValue(k1)
Duel.RegisterEffect(k1, 0)
end
do
local h1, h2, h3, h4
--~ 印卡过多之示
h1 = "印卡过多"
--~ 现之印卡数
h2 = 1
--~ 印手卡之上限
h3 = 0
--~ 总印卡之上限
h4 = 0
--~ 「调该效果」的效果
--~ 「调该效果」的玩家
s["_印卡"] = function(u1, u2)
local h5, h6
--~ 印卡之卡编
h5 = Duel.AnnounceCard(u2)
local k1, k2, k3, k4
--~ 印卡过多时的提示
k1 = "印卡过多"
--~ 现在的印卡数量
k2 = 1
--~ 手卡印卡数量的上限
k3 = 0
--~ 印卡总数量的上限
k4 = 0
--~ 「调用这个效果」的效果
--~ 「调用这个效果」的玩家
f["_印卡"] = function(o1, o2)
local k5, k6
--~ 要印的卡的卡编
k5 = Duel.AnnounceCard(o2)
--~ 卡
h6 = Duel.CreateToken(u2, h5)
if h2 <= h3 then
h2 = h2 + 1
Duel.SendtoHand(h6, nil, REASON_RULE)
k6 = Duel.CreateToken(o2, k5)
if k2 <= k3 then
k2 = k2 + 1
Duel.SendtoHand(k6, nil, REASON_RULE)
else
if h2 <= h4 then
h2 = h2 + 1
Duel.SendtoDeck(h6, u2, 0, REASON_RULE)
if k2 <= k4 then
k2 = k2 + 1
Duel.SendtoDeck(k6, o2, 0, REASON_RULE)
else
Debug.ShowHint(h1)
u1:Reset()
Debug.ShowHint(k1)
o1:Reset()
end
end
end
--~ 印卡的启动源
--~ 手卡印卡数量的上限
--~ 印卡总数量的上限
s["印卡"] = function(u1, u2, u3)
local h5, h6
h3 = u2
h4 = u3 or u2
Debug.ShowHint("点对方额外卡组,可印卡\n只能印手卡" .. h3 .. "张\n最多可印" .. h4 .. "张")
h5 = Effect.CreateEffect(u1)
h5:SetType(EFFECT_TYPE_IGNITION)
h5:SetProperty(EFFECT_FLAG_BOTH_SIDE + EFFECT_FLAG_UNCOPYABLE + EFFECT_FLAG_CANNOT_NEGATE + EFFECT_FLAG_CANNOT_DISABLE)
h5:SetTarget(s["不被连锁"])
h5:SetRange(LOCATION_EXTRA)
h5:SetOperation(s["_印卡"])
u1:RegisterEffect(h5)
f["印卡"] = function(o1, o2, o3)
local k5
k3 = o2
k4 = o3 or o2
Debug.ShowHint("点对方额外卡组,可印卡\n只能印手卡 " .. k3 .. " 张\n最多可印 " .. k4 .. " 张")
k5 = Effect.CreateEffect(o1)
k5:SetType(EFFECT_TYPE_IGNITION)
k5:SetProperty(EFFECT_FLAG_BOTH_SIDE + EFFECT_FLAG_UNCOPYABLE + EFFECT_FLAG_CANNOT_NEGATE + EFFECT_FLAG_CANNOT_DISABLE)
k5:SetTarget(f["不被连锁"])
k5:SetRange(LOCATION_EXTRA)
k5:SetOperation(f["_印卡"])
o1:RegisterEffect(k5)
end
end
s["开局示"] = function()
local h1, h2, h3
--~ 此局效卡之数
h2 = Duel.GetMatchingGroupCount(s["是否效卡"], 0, s["全区"], s["全区"], nil)
--~ 超量材组
|