Commit 1a33fafe authored by JoyJ's avatar JoyJ

add genkai-toppa-2 and genkai-toppa-3

parent d2798cde
......@@ -190,7 +190,8 @@ if not _GENKAITOPPA then
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(26420373,0))
e2:SetCategory(CATEGORY_ATKCHANGE)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1)
e2:SetTarget(_GENKAITOPPA.SolfachordAtkChangeTarget)
......
--村规决斗:限界突破 III
--天气本家怪兽增加效果
--·这张卡通常召唤的场合才能发动。从卡组把最多2只【天气】怪兽在场上特殊召唤。这个效果的发动后,直到回合结束自己不是【天气】怪兽不能特殊召唤。这个效果不会被无效化。
--·这张卡特殊召唤的场合才能发动。选场上1张卡的效果无效化。
--·这张卡在对方回合被送去墓地或除外的场合才能发动。自己从卡组抽1张,然后可以从手卡把1只【天气】怪兽特殊召唤。
--
--天气本家陷阱·魔法卡增加效果
--·自己·对方回合可以发动。这张卡返回卡组,从自己卡组·手卡·墓地·除外的卡中把1张【天气】永续魔法·陷阱卡在自己场上表侧表示放置。
--
--影灵衣本家仪式怪兽(索菲娅除外)增加效果
--·多个卡名的此类效果1回合最多能使用5次。
--这张卡可以从卡组当作仪式召唤特殊召唤。这个方法特殊召唤的这张卡离场时返回卡组,在下个对方回合的结束阶段返回卡组。
--只要这个方法特殊召唤的这张卡在场上表侧表示存在,双方不能从额外卡组把怪兽特殊召唤。
--
--永火本家怪兽增加效果(包括百眼龙)
--·把手卡的这张卡给对方观看才能发动。这张卡和手卡中【永火】以外的怪兽全部送去墓地。那之后,自己可以抽2张。
--·多个卡名的此类效果1回合只能使用最多3次。这张卡在墓地的场合,把自己·对方场上1张卡送去墓地才能发动。和对方握手。那之后,可以把这张卡特殊召唤,从墓地把1张【永火】魔法·陷阱卡加入手卡。这个效果的发动后,自己不是【永火】怪兽不能特殊召唤,不是同调怪兽不能从额外卡组特殊召唤。
--·只要这张卡在场上表侧表示存在,自己即使基本分变为0也不会败北。
--
--【真红眼】本家卡增加效果(除凡骨黑龙外;包括永续陷阱)
--·只要这张卡在场上存在,自己场上原本是通常怪兽的【真红眼黑龙】的攻击力增加10000点,不受对方卡的效果影响。这个效果不会被无效化。
CUNGUI = {}
function Auxiliary.PreloadUds()
--adjust
local e1=Effect.GlobalEffect()
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e1:SetCode(EVENT_ADJUST)
e1:SetCountLimit(1)
e1:SetOperation(CUNGUI.AdjustOperation)
Duel.RegisterEffect(e1,0)
end
CUNGUI.RegisteredMonsters = Group.CreateGroup()
function CUNGUI.AdjustOperation(e,tp,eg,ep,ev,re,r,rp)
local g = Duel.GetFieldGroup(tp,0x7f,0x7f)
g:ForEach(CUNGUI.RegisterMonsterSpecialEffects)
if not CUNGUI.DrawInit then
CUNGUI.DrawInit = true
--Duel.Draw(1,2,REASON_RULE)
end
end
function CUNGUI.RegisterMonsterSpecialEffects(c)
if CUNGUI.RegisteredMonsters:IsContains(c) then return end
CUNGUI.RegisteredMonsters:AddCard(c)
--永火 0xb
--真红眼 0x3b
--天气 0x109
--影灵衣 0xb4
if c:IsSetCard(0xb4) and c:IsType(TYPE_MONSTER) and c:IsType(TYPE_RITUAL) and not c:IsCode(21105106) then
CUNGUI.InitNekroz(c)
elseif c:IsSetCard(0x7c) then
CUNGUI.InitRedEye(c)
elseif c:IsSetCard(0x109) then
CUNGUI.InitWeather(c)
elseif c:IsSetCard(0xb) and c:IsType(TYPE_MONSTER) then
CUNGUI.InitInfernity(c)
end
end
function InitWeather(c)
end
function CUNGUI.InitFireFormation(c)
--【炎舞】魔法·陷阱卡得到以下效果:
--这个卡名的这个效果1回合只能使用1次,这张卡送去墓地或被除外的场合才能选以下1个效果发动。
--·选1张自己卡组·墓地·除外的【炎星】或【炎舞】卡加入手卡。
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(41546,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_REMOVE)
e1:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
e1:SetCountLimit(1,c:GetCode()+51)
e1:SetTarget(CUNGUI.ywthtg)
e1:SetOperation(CUNGUI.ywthop)
c:RegisterEffect(e1)
e1=e1:Clone()
e1:SetCode(EVENT_TO_GRAVE)
c:RegisterEffect(e1)
--·选1只自己卡组·墓地·除外的【炎星】怪兽特殊召唤。
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(102380,0))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_REMOVE)
e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
e2:SetCountLimit(1,c:GetCode()+51)
e2:SetTarget(CUNGUI.ywsptg)
e2:SetOperation(CUNGUI.ywspop)
c:RegisterEffect(e2)
e2=e2:Clone()
e2:SetCode(EVENT_TO_GRAVE)
c:RegisterEffect(e2)
--·选2张自己墓地·除外的【炎舞】魔法·陷阱卡在场上表侧表示放置。
local e3=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(102380,0))
e2:SetCategory(CATEGORY_LEAVE_GRAVE)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_REMOVE)
e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
e2:SetCountLimit(1,c:GetCode()+51)
e2:SetTarget(CUNGUI.ywtftg)
e2:SetOperation(CUNGUI.ywtfop)
c:RegisterEffect(e3)
e3=e3:Clone()
e3:SetCode(EVENT_TO_GRAVE)
c:RegisterEffect(e3)
end
function CUNGUI.ywtffilter(c)
return c:IsAbleToHand() and (not c:IsLocation(LOCATION_REMOVED) or c:IsFaceup())
and c:IsSetCard(0x79) and c:CheckUniqueOnField(tp) and not c:IsForbidden()
end
function CUNGUI.ywtftg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>1
and Duel.IsExistingMatchingCard(CUNGUI.ywtffilter,tp,0x30,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,nil,2,tp,0x30)
end
function CUNGUI.ywtfop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_SZONE)<2 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(CUNGUI.ywtffilter),tp,0x30,0,2,2,nil)
if #g<2 then return end
for tc in aux.Next(g) do
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
end
end
function CUNGUI.ywthfilter(c)
return c:IsAbleToHand() and (not c:IsLocation(LOCATION_REMOVED) or c:IsFaceup())
and (c:IsSetCard(0x79) or c:IsSetCard(0x7c))
end
function CUNGUI.ywthtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.IsExistingMatchingCard(CUNGUI.ywthfilter,tp,0x31,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,0x31)
end
function CUNGUI.ywthop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(CUNGUI.ywthfilter),tp,0x31,0,1,1,nil)
if #g<1 then return end
Duel.SendtoHand(g,nil,REASON_EFFECT)
end
function CUNGUI.ywspfilter(c,e,tp)
return c:IsSetCard(0x79) and (not c:IsLocation(LOCATION_REMOVED) or c:IsFaceup())
and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function CUNGUI.ywsptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.GetMZoneCount(tp)>0
and Duel.IsExistingMatchingCard(CUNGUI.ywspfilter,tp,0x31,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,0x31)
end
function CUNGUI.ywspop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(CUNGUI.ywspfilter),tp,0x31,0,1,1,nil)
if #g<1 then return end
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
function CUNGUI.InitNekroz(c)
--影灵衣本家仪式怪兽(索菲娅除外)增加效果
--·多个卡名的此类效果1回合最多能使用5次。
--这张卡可以从卡组当作仪式召唤特殊召唤。这个方法特殊召唤的这张卡离场时返回卡组,在下个对方回合的结束阶段返回卡组。
--只要这个方法特殊召唤的这张卡在场上表侧表示存在,双方不能从额外卡组把怪兽特殊召唤。
--special summon
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_SPSUMMON_PROC)
e1:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e1:SetRange(LOCATION_DECK)
e1:SetValue(SUMMON_VALUE_SELF)
c:RegisterEffect(e1)
e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(1,1)
e1:SetCondition(CUNGUI.neksplcon)
e1:SetTarget(CUNGUI.neksplimit)
c:RegisterEffect(e1)
end
function CUNGUI.neksplcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_VALUE_SELF)
end
function CUNGUI.splimit(e,c)
return c:IsLocation(LOCATION_EXTRA)
end
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment