Skip to content

Commit 6cc0b33

Browse files
committed
added new rush cards
1 parent d276c66 commit 6cc0b33

File tree

3 files changed

+88
-1
lines changed

3 files changed

+88
-1
lines changed

proc_rush.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ local LEGEND_LIST={160001000,160205001,160418001,160002000,160421015,160404001,1
99
160429002,160208063,160208064,160208065,160014065,160446002,160015056,160210001,160207060,160210032,160210029,
1010
160210058,160440010,160016033,160016034,160440011,160211080,160402039,160017033,160402040,160429003,160320014,
1111
160320038,160018036,160212004,160212003,160402044,160212075,160212001,160402045,160019063,160019064,160019065,
12-
160213078,160213082,160402047,160213084,160020059,160213076,160020001,160020040,160020000}
12+
160213078,160213082,160402047,160213084,160020059,160213076,160020001,160020040,160020000,160214052}
1313
-- Returns if a card is a Legend. Can be updated if a GetOT function is added to the core
1414
function Card.IsLegend(c)
1515
return c:IsHasEffect(EFFECT_IS_LEGEND) or c:IsOriginalCode(table.unpack(LEGEND_LIST))

rush/c160214050.lua

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
--エクスキューティー・メイト
2+
--Executie Mates
3+
--scripted by YoshiDuels
4+
local s,id=GetID()
5+
function s.initial_effect(c)
6+
--Increase Level by 1
7+
local e1=Effect.CreateEffect(c)
8+
e1:SetDescription(aux.Stringid(id,0))
9+
e1:SetType(EFFECT_TYPE_IGNITION)
10+
e1:SetRange(LOCATION_MZONE)
11+
e1:SetCountLimit(1)
12+
e1:SetCost(s.cost)
13+
e1:SetTarget(s.target)
14+
e1:SetOperation(s.operation)
15+
c:RegisterEffect(e1)
16+
aux.GlobalCheck(s,function()
17+
local ge1=Effect.CreateEffect(c)
18+
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
19+
ge1:SetCode(EVENT_DRAW)
20+
ge1:SetOperation(s.checkop)
21+
Duel.RegisterEffect(ge1,0)
22+
end)
23+
end
24+
function s.checkop(e,tp,eg,ep,ev,re,r,rp)
25+
if Duel.IsMainPhase() then
26+
Duel.RegisterFlagEffect(rp,id,RESET_PHASE|PHASE_END,0,1)
27+
end
28+
end
29+
function s.cfilter(c)
30+
return c:IsMonster() and c:IsLevel(6) and c:IsDefense(500) and not c:IsPublic()
31+
end
32+
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
33+
if chk==0 then return Duel.IsExistingMatchingCard(s.cfilter,tp,LOCATION_HAND,0,1,nil) end
34+
end
35+
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
36+
if chk==0 then return e:GetHandler():HasLevel() end
37+
end
38+
function s.operation(e,tp,eg,ep,ev,re,r,rp)
39+
--Requirement
40+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM)
41+
local tc=Duel.SelectMatchingCard(tp,s.cfilter,tp,LOCATION_HAND,0,1,1,nil)
42+
Duel.ConfirmCards(1-tp,tc)
43+
Duel.ShuffleHand(tp)
44+
--Effect
45+
local c=e:GetHandler()
46+
c:UpdateLevel(2,RESETS_STANDARD_PHASE_END,c)
47+
if Duel.GetFlagEffect(tp,id)==0 and Duel.IsPlayerCanDraw(tp,1) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
48+
Duel.BreakEffect()
49+
Duel.Draw(tp,1,REASON_EFFECT)
50+
end
51+
local e1=Effect.CreateEffect(c)
52+
e1:SetType(EFFECT_TYPE_FIELD)
53+
e1:SetCode(EFFECT_CANNOT_ATTACK)
54+
e1:SetProperty(EFFECT_FLAG_OATH)
55+
e1:SetTargetRange(LOCATION_MZONE,0)
56+
e1:SetTarget(s.ftarget)
57+
e1:SetReset(RESET_PHASE|PHASE_END)
58+
Duel.RegisterEffect(e1,tp)
59+
end
60+
function s.ftarget(e,c)
61+
return c:IsLevelAbove(7)
62+
end

rush/c160214052.lua

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
--ハーピィの羽根帚
2+
local s,id=GetID()
3+
function s.initial_effect(c)
4+
--Activate
5+
local e1=Effect.CreateEffect(c)
6+
e1:SetCategory(CATEGORY_DESTROY)
7+
e1:SetType(EFFECT_TYPE_ACTIVATE)
8+
e1:SetCode(EVENT_FREE_CHAIN)
9+
e1:SetTarget(s.target)
10+
e1:SetOperation(s.activate)
11+
c:RegisterEffect(e1)
12+
end
13+
function s.filter(c)
14+
return c:IsType(TYPE_SPELL+TYPE_TRAP)
15+
end
16+
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
17+
local c=e:GetHandler()
18+
if chk==0 then return Duel.IsExistingMatchingCard(s.filter,tp,0,LOCATION_ONFIELD,1,c) end
19+
local sg=Duel.GetMatchingGroup(s.filter,tp,0,LOCATION_ONFIELD,c)
20+
Duel.SetOperationInfo(0,CATEGORY_DESTROY,sg,#sg,0,0)
21+
end
22+
function s.activate(e,tp,eg,ep,ev,re,r,rp)
23+
local sg=Duel.GetMatchingGroup(s.filter,tp,0,LOCATION_ONFIELD,e:GetHandler())
24+
Duel.Destroy(sg,REASON_EFFECT)
25+
end

0 commit comments

Comments
 (0)