Commit 8cd5ba11 authored by TanakaKotoha's avatar TanakaKotoha

fix k

parent 069b84bb
No preview for this file type
......@@ -50,12 +50,12 @@ function c66915001.filters(c,e,tp)
return c:IsSetCard(0x374) and c:IsFaceup()
end
function c66915001.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCountFromEx(tp)>0
if chk==0 then return Duel.GetLocationCountFromEx(tp,tp,c)>0
and Duel.IsExistingMatchingCard(c66915001.filter,tp,LOCATION_EXTRA,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end
function c66915001.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCountFromEx(tp)<=0 then return end
if Duel.GetLocationCountFromEx(tp,tp,c)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c66915001.filter,tp,LOCATION_EXTRA,0,1,1,nil,e,tp)
if g:GetCount()>0 then
......@@ -93,8 +93,7 @@ end
function c66915001.eftg(e,c)
local seq=c:GetSequence()
return c:IsType(TYPE_EFFECT) and c:IsSetCard(0x1374)
and seq<5 and math.abs(e:GetHandler():GetSequence()-seq)==1 or
math.abs(e:GetHandler():GetSequence()-seq)==-1
and seq<5 and math.abs(e:GetHandler():GetSequence()-seq)==1
end
function c66915001.sumlimit(e,c,sump,sumtype,sumpos,targetp)
return c:IsLocation(LOCATION_EXTRA) and not c:IsSetCard(0x1374)
......
......@@ -19,6 +19,7 @@ function c66915004.initial_effect(c)
e5:SetTargetRange(LOCATION_MZONE,0)
e5:SetTarget(c66915004.eftg)
e5:SetLabelObject(e22)
c:RegisterEffect(e5)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_CANNOT_BE_EFFECT_TARGET)
......@@ -33,6 +34,7 @@ function c66915004.initial_effect(c)
e55:SetTargetRange(LOCATION_MZONE,0)
e55:SetTarget(c66915004.eftg)
e55:SetLabelObject(e3)
c:RegisterEffect(e55)
--spsummon
local e222=Effect.CreateEffect(c)
e222:SetCategory(CATEGORY_SPECIAL_SUMMON)
......@@ -48,6 +50,7 @@ function c66915004.initial_effect(c)
e555:SetTargetRange(LOCATION_MZONE,0)
e555:SetTarget(c66915004.eftg)
e555:SetLabelObject(e222)
c:RegisterEffect(e555)
--spsummon limit
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
......
......@@ -25,6 +25,7 @@ function cm.initial_effect(c)
e5:SetTargetRange(LOCATION_MZONE,0)
e5:SetTarget(cm.eftg)
e5:SetLabelObject(e4)
c:RegisterEffect(e5)
--recover
local e11=Effect.CreateEffect(c)
e11:SetCategory(CATEGORY_RECOVER)
......@@ -40,6 +41,7 @@ function cm.initial_effect(c)
e55:SetTargetRange(LOCATION_MZONE,0)
e55:SetTarget(cm.eftg)
e55:SetLabelObject(e11)
c:RegisterEffect(e55)
--spsummon limit
local e22=Effect.CreateEffect(c)
e22:SetType(EFFECT_TYPE_FIELD)
......
......@@ -31,7 +31,7 @@ end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_SZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_SZONE,0,1,1,nil)
local g=Duel.SelectMatchingCard(tp,cm.cfilter,tp,LOCATION_SZONE,0,1,1,nil)
Duel.SendtoGrave(g,REASON_COST)
if Duel.IsExistingMatchingCard(cm.cfilters,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,nil) then
Duel.SetChainLimit(aux.FALSE)
......@@ -41,7 +41,7 @@ function cm.cfilters(c)
return c:IsFaceup() and c:IsCode(66915020)
end
function cm.cfilter(c)
return c:IsFaceup() and c:IsCode(66915001)
return c:IsFaceup() and c:IsCode(66915001) and c:IsAbleToGraveAsCost()
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsAbleToEnterBP() or (Duel.GetCurrentPhase()>=PHASE_BATTLE_START and Duel.GetCurrentPhase()<=PHASE_BATTLE)
......
......@@ -22,6 +22,7 @@ function cm.initial_effect(c)
e11:SetType(EFFECT_TYPE_QUICK_O)
e11:SetCode(EVENT_FREE_CHAIN)
e11:SetRange(LOCATION_MZONE)
e11:SetCountLimit(1,m)
e11:SetHintTiming(TIMING_BATTLE_START)
e11:SetCondition(cm.condition)
e11:SetTarget(cm.thtg)
......@@ -43,7 +44,7 @@ end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local ct=e:GetHandler():GetAttack()
local lp=Duel.GetLP(1-tp)
if Duel.GetFieldGroupCount(c:GetControler(),0,LOCATION_ONFIELD)>0 and Duel.GetFieldGroupCount(c:GetControler(),0,LOCATION_HAND)>0 then
if Duel.GetFieldGroupCount(1-tp,0,LOCATION_ONFIELD)>0 and Duel.GetFieldGroupCount(1-tp,0,LOCATION_HAND)>0 then
if ct>=lp then ct=lp end
Duel.SetLP(1-tp,lp-ct)
else
......
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