Skip to content

Commit d1d126d

Browse files
committed
Action Card Cover (back) handling
1 parent 382f50c commit d1d126d

File tree

2 files changed

+43
-7
lines changed

2 files changed

+43
-7
lines changed

unofficial/c150000086.lua

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
--クイズ・フロンティア-エクストラ・ステージ
2+
--Quiz Quest - Extra Stage
3+
local s,id=GetID()
4+
function s.initial_effect(c)
5+
--Activate
6+
local e1=Effect.CreateEffect(c)
7+
e1:SetType(EFFECT_TYPE_ACTIVATE)
8+
e1:SetCode(EVENT_FREE_CHAIN)
9+
c:RegisterEffect(e1)
10+
c:Type(c:Type()|TYPE_FIELD)
11+
end

unofficial/c151000000.lua

Lines changed: 32 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -39,15 +39,32 @@ if not ActionDuel then
3939
e6:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_IGNORE_RANGE+EFFECT_FLAG_IGNORE_IMMUNE)
4040
e6:SetCode(EFFECT_QP_ACT_IN_NTPHAND)
4141
e6:SetTargetRange(0xff,0xff)
42-
e6:SetTarget(function(e,c) return c:IsActionCard() and not c:IsType(TYPE_FIELD) end)
42+
e6:SetTarget(function(e,c) return c:IsActionCard() end)
4343
Duel.RegisterEffect(e6,0)
4444
local e7=Effect.GlobalEffect()
4545
e7:SetType(EFFECT_TYPE_FIELD)
4646
e7:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_IGNORE_RANGE+EFFECT_FLAG_IGNORE_IMMUNE)
4747
e7:SetCode(EFFECT_BECOME_QUICK)
4848
e7:SetTargetRange(0xff,0xff)
49-
e7:SetTarget(function(e,c) return c:IsActionCard() and not c:IsType(TYPE_FIELD) end)
49+
e7:SetTarget(function(e,c) return c:IsActionCard() end)
5050
Duel.RegisterEffect(e7,0)
51+
local e7=Effect.GlobalEffect()
52+
e7:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
53+
e7:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_IGNORE_RANGE+EFFECT_FLAG_IGNORE_IMMUNE)
54+
e7:SetCode(EVENT_ADJUST)
55+
e7:SetOperation(ActionDuel.cover)
56+
Duel.RegisterEffect(e7,0)
57+
end
58+
59+
function ActionDuel.cfilter(c)
60+
return c:IsType(TYPE_ACTION) and c:GetFlagEffect(COVER_ACTION)==0
61+
end
62+
63+
function ActionDuel.cover(e,tp,eg,ep,ev,re,r,rp)
64+
for c in aux.Next(Duel.GetMatchingGroup(ActionDuel.cfilter,0,0xff,0xff,nil)) do
65+
c:Cover(COVER_ACTION)
66+
c:RegisterFlagEffect(COVER_ACTION,0,0,0)
67+
end
5168
end
5269

5370
function ActionDuel.op(e,tp,eg,ep,ev,re,r,rp)
@@ -108,6 +125,7 @@ if not ActionDuel then
108125
ee:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
109126
ee:SetValue(1)
110127
tc:RegisterEffect(ee)
128+
if not tc.tableAction then tc.tableAction=tableActionGeneric end
111129
-- add ability Yell when Vanilla mode activated
112130
if Duel.IsExistingMatchingCard(Card.IsCode,tp,0xff,0xff,1,nil,CARD_VANILLA_MODE) then
113131
table.insert(tc.tableAction,CARD_POTENTIAL_YELL)
@@ -135,7 +153,7 @@ if not ActionDuel then
135153
end
136154
--Check whether tp already has an Action Card in hand
137155
function ActionDuel.handcheck(tp)
138-
if Duel.IsPlayerAffectedByEffect(tp,151000000) then
156+
if Duel.IsPlayerAffectedByEffect(tp,CARD_EARTHBOUND_TUNDRA) then
139157
return Duel.IsExistingMatchingCard(ActionDuel.acfilter,tp,LOCATION_HAND,0,2,nil)
140158
else
141159
return Duel.IsExistingMatchingCard(ActionDuel.acfilter,tp,LOCATION_HAND,0,1,nil)
@@ -230,19 +248,26 @@ if not ActionDuel then
230248
ActionDuelRules()
231249

232250
Card.IsActionCard=function(c)
233-
return c:IsType(TYPE_ACTION) and not c:IsType(TYPE_FIELD)
251+
return c:IsType(TYPE_ACTION) and not c.af
234252
end
235253

236254
Card.IsActionField=function(c)
237-
return c:IsType(TYPE_ACTION) and c:IsType(TYPE_FIELD)
255+
return c:IsType(TYPE_ACTION) and c.af
238256
end
239257

240-
CARD_ACTION_COVER=151000000
258+
COVER_ACTION=301
241259
CARD_VANILLA_MODE=511004400
242260
CARD_POTENTIAL_YELL=511004399
243261
CARD_ABILITY_YELL=511004401
244262
CARD_ABILITY_YELL=511004401
245-
CARD_EARTHBOUND_TUNDRA=151000000
263+
CARD_EARTHBOUND_TUNDRA=150000000
264+
265+
local tableActionGeneric={
266+
150000024,150000033,
267+
150000047,150000042,
268+
150000011,150000044,
269+
150000022,150000020
270+
}
246271

247272
local OCGActionFields={
248273
4064256,

0 commit comments

Comments
 (0)