Commit 6010f7f8 authored by TanakaKotoha's avatar TanakaKotoha

fix

parent 6be75a82
No preview for this file type
...@@ -44,7 +44,7 @@ function cm.val(e,c) ...@@ -44,7 +44,7 @@ function cm.val(e,c)
return c:GetEquipCount()*100 return c:GetEquipCount()*100
end end
function cm.filter(c,cc) function cm.filter(c,cc)
return c:IsSetCard(0x374) and c:IsType(TYPE_SPELL+TYPE_CONTINUOUS) and not c:IsForbidden() and c:CheckUniqueOnField(tp,LOCATION_ONFIELD,cc) return c:IsSetCard(0x374) and c:IsType(TYPE_SPELL) and c:IsType(TYPE_CONTINUOUS) and not c:IsForbidden() and c:CheckUniqueOnField(tp,LOCATION_ONFIELD,cc)
end end
function cm.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and cm.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and cm.filter(chkc) end
......
...@@ -56,6 +56,7 @@ function c66915001.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -56,6 +56,7 @@ function c66915001.spop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c66915001.filter,tp,LOCATION_EXTRA,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,c66915001.filter,tp,LOCATION_EXTRA,0,1,1,nil,e,tp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,true,false,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,true,false,POS_FACEUP)
Duel.Hint(HINT_MUSIC,0,aux.Stringid(81013009,2))
end end
end end
function c66915001.seqcon(e,tp,eg,ep,ev,re,r,rp) function c66915001.seqcon(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -25,7 +25,7 @@ function c66915002.initial_effect(c) ...@@ -25,7 +25,7 @@ function c66915002.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c66915002.filter(c) function c66915002.filter(c)
return ((c:GetType()==TYPE_SPELL+TYPE_CONTINUOUS or c:GetType()==TYPE_TRAP+TYPE_CONTINUOUS)and c:IsSetCard(0x374)) and c:IsSSetable() or c:IsCode(66915001) return ((c:IsType(TYPE_CONTINUOUS) and c:IsSetCard(0x374)) or c:IsCode(66915001)) and c:IsSSetable()
end end
function c66915002.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c66915002.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.IsExistingMatchingCard(c66915002.filter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c66915002.filter,tp,LOCATION_DECK,0,1,nil) end
...@@ -36,6 +36,7 @@ function c66915002.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -36,6 +36,7 @@ function c66915002.activate(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SSet(tp,g) Duel.SSet(tp,g)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc:IsType(TYPE_TRAP) then
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN) e1:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN)
...@@ -43,6 +44,7 @@ function c66915002.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -43,6 +44,7 @@ function c66915002.activate(e,tp,eg,ep,ev,re,r,rp)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
end end
end
end end
function c66915002.descost(e,tp,eg,ep,ev,re,r,rp,chk) function c66915002.descost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() end if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() end
...@@ -62,6 +64,7 @@ function c66915002.activates(e,tp,eg,ep,ev,re,r,rp) ...@@ -62,6 +64,7 @@ function c66915002.activates(e,tp,eg,ep,ev,re,r,rp)
if tc:IsRelateToEffect(e) and tc:IsSSetable() then if tc:IsRelateToEffect(e) and tc:IsSSetable() then
Duel.SSet(tp,tc) Duel.SSet(tp,tc)
Duel.ConfirmCards(1-tp,tc) Duel.ConfirmCards(1-tp,tc)
if tc:IsType(TYPE_TRAP) then
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN) e1:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN)
...@@ -69,4 +72,5 @@ function c66915002.activates(e,tp,eg,ep,ev,re,r,rp) ...@@ -69,4 +72,5 @@ function c66915002.activates(e,tp,eg,ep,ev,re,r,rp)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
end end
end
end end
\ No newline at end of file
...@@ -59,6 +59,7 @@ function cm.tgop(e,tp,eg,ep,ev,re,r,rp) ...@@ -59,6 +59,7 @@ function cm.tgop(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SSet(tp,g) Duel.SSet(tp,g)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc:IsType(TYPE_TRAP) then
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN) e1:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN)
...@@ -66,4 +67,5 @@ function cm.tgop(e,tp,eg,ep,ev,re,r,rp) ...@@ -66,4 +67,5 @@ function cm.tgop(e,tp,eg,ep,ev,re,r,rp)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
end end
end
end end
...@@ -39,15 +39,4 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -39,15 +39,4 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
tc:CopyEffect(gc:GetCode(),RESET_EVENT+RESETS_STANDARD) tc:CopyEffect(gc:GetCode(),RESET_EVENT+RESETS_STANDARD)
end end
end end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetReset(RESET_PHASE+PHASE_END)
e1:SetTargetRange(1,0)
e1:SetTarget(cm.splimit)
Duel.RegisterEffect(e1,tp)
end
function cm.splimit(e,c,sump,sumtype,sumpos,targetp,se)
return c:IsLocation(LOCATION_EXTRA)
end end
...@@ -57,6 +57,8 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -57,6 +57,8 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(cm.tdfilter,tp,LOCATION_SZONE,0,nil) local g=Duel.GetMatchingGroup(cm.tdfilter,tp,LOCATION_SZONE,0,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
local ct=Duel.SendtoDeck(g,nil,2,REASON_EFFECT) local ct=Duel.SendtoDeck(g,nil,2,REASON_EFFECT)
local hg1=Duel.GetMatchingGroup(cm.thfilter1,tp,LOCATION_DECK+LOCATION_GRAVE+LOCATION_REMOVED,0,nil)
local hg2=Duel.GetMatchingGroup(Card.IsAbleToHand,tp,LOCATION_GRAVE,0,nil)
if ct>=1 then if ct>=1 then
Duel.BreakEffect() Duel.BreakEffect()
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
...@@ -66,17 +68,24 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -66,17 +68,24 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE) e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
e:GetHandler():RegisterEffect(e1) e:GetHandler():RegisterEffect(e1)
end end
local hg1=Duel.GetMatchingGroup(cm.thfilter1,tp,LOCATION_DECK+LOCATION_GRAVE+LOCATION_REMOVED,0,nil)
if ct>=2 and hg1:GetCount()>0 then if ct>=2 and hg1:GetCount()>0 then
Duel.BreakEffect() Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET)
local ag=Duel.SelectMatchingCard(tp,cm.thfilter1,tp,LOCATION_DECK+LOCATION_GRAVE+LOCATION_REMOVED,0,1,1,nil) local ag=Duel.SelectMatchingCard(tp,cm.thfilter1,tp,LOCATION_DECK+LOCATION_GRAVE+LOCATION_REMOVED,0,1,1,nil)
if ag:GetCount()>0 then if ag:GetCount()>0 then
Duel.SSet(tp,ag) Duel.SSet(tp,ag)
local tc=ag:GetFirst()
if tc:IsType(TYPE_TRAP) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN)
e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1)
end end
end end
local hg2=Duel.GetMatchingGroup(Card.IsAbleToHand,tp,LOCATION_GRAVE,0,nil) end
if ct>=3 and hg1:GetCount()>=2 then if ct>=3 and hg2:GetCount()>=2 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToHand,tp,LOCATION_GRAVE,0,2,2,nil) local g=Duel.SelectMatchingCard(tp,Card.IsAbleToHand,tp,LOCATION_GRAVE,0,2,2,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
......
...@@ -115,7 +115,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -115,7 +115,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,true,true,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,true,true,POS_FACEUP)
g:GetFirst():CompleteProcedure() g:GetFirst():CompleteProcedure()
Duel.Hint(HINT_MUSIC,0,aux.Stringid(m,2)) Duel.Hint(HINT_MUSIC,0,aux.Stringid(81005036,0))
local e3=Effect.CreateEffect(e:GetHandler()) local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
......
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