Commit 47c014de authored by DailyShana's avatar DailyShana

fix

parent 03a2fb48
...@@ -86,7 +86,7 @@ end ...@@ -86,7 +86,7 @@ end
function c17228908.tglimit(e,c) function c17228908.tglimit(e,c)
return not c:IsType(TYPE_TOKEN) return not c:IsType(TYPE_TOKEN)
end end
function c17228908.repfilter(c,tp,e) function c17228908.repfilter(c,tp)
return c:IsFaceup() and c:IsType(TYPE_NORMAL) and c:IsLocation(LOCATION_MZONE) return c:IsFaceup() and c:IsType(TYPE_NORMAL) and c:IsLocation(LOCATION_MZONE)
and c:IsReason(REASON_BATTLE+REASON_EFFECT) and c:GetFlagEffect(17228908)==0 and c:IsReason(REASON_BATTLE+REASON_EFFECT) and c:GetFlagEffect(17228908)==0
end end
...@@ -94,31 +94,29 @@ function c17228908.desfilter(c,tp) ...@@ -94,31 +94,29 @@ function c17228908.desfilter(c,tp)
return c:IsRace(RACE_DINOSAUR) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) return c:IsRace(RACE_DINOSAUR) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c17228908.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c17228908.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
local ct=eg:FilterCount(c17228908.repfilter,nil,tp,e) local ct=eg:FilterCount(c17228908.repfilter,nil,tp)
if chk==0 then return ct>0 if chk==0 then return ct>0
and Duel.IsExistingMatchingCard(c17228908.desfilter,tp,LOCATION_HAND+LOCATION_DECK,0,ct,nil,tp) end and Duel.IsExistingMatchingCard(c17228908.desfilter,tp,LOCATION_HAND+LOCATION_DECK,0,ct,nil,tp) end
if Duel.SelectYesNo(tp,aux.Stringid(17228908,1)) then if Duel.SelectYesNo(tp,aux.Stringid(17228908,1)) then
local g=eg:Filter(c17228908.repfilter,nil,tp,e)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local tg=Duel.SelectMatchingCard(tp,c17228908.desfilter,tp,LOCATION_HAND+LOCATION_DECK,0,g:GetCount(),g:GetCount(),nil,tp) local tg=Duel.SelectMatchingCard(tp,c17228908.desfilter,tp,LOCATION_HAND+LOCATION_DECK,0,ct,ct,nil,tp)
Duel.SetTargetCard(tg) local g=e:GetLabelObject()
g:Clear()
local tc=tg:GetFirst() local tc=tg:GetFirst()
while tc do while tc do
tc:RegisterFlagEffect(17228908,RESET_EVENT+0x1fc0000+RESET_CHAIN,0,1) tc:RegisterFlagEffect(17228908,RESET_EVENT+0x1fc0000+RESET_CHAIN,0,1)
tc:SetStatus(STATUS_DESTROY_CONFIRMED,true) tc:SetStatus(STATUS_DESTROY_CONFIRMED,true)
g:AddCard(tc)
tc=tg:GetNext() tc=tg:GetNext()
end end
e:GetLabelObject():Clear()
e:GetLabelObject():Merge(g)
return true return true
else return false end else return false end
end end
function c17228908.repval(e,c) function c17228908.repval(e,c)
local g=e:GetLabelObject() return c17228908.repfilter(c,e:GetHandlerPlayer())
return g:IsContains(c)
end end
function c17228908.repop(e,tp,eg,ep,ev,re,r,rp) function c17228908.repop(e,tp,eg,ep,ev,re,r,rp)
local tg=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local tg=e:GetLabelObject()
local tc=tg:GetFirst() local tc=tg:GetFirst()
while tc do while tc do
tc:SetStatus(STATUS_DESTROY_CONFIRMED,false) tc:SetStatus(STATUS_DESTROY_CONFIRMED,false)
......
...@@ -78,7 +78,7 @@ function c18940556.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -78,7 +78,7 @@ function c18940556.desop(e,tp,eg,ep,ev,re,r,rp)
end end
function c18940556.tgtg(e,tp,eg,ep,ev,re,r,rp,chk) function c18940556.tgtg(e,tp,eg,ep,ev,re,r,rp,chk)
local d=Duel.GetAttackTarget() local d=Duel.GetAttackTarget()
if chk ==0 then return Duel.GetAttacker()==e:GetHandler() and d and d:IsDefensePos() end if chk==0 then return Duel.GetAttacker()==e:GetHandler() and d and d:IsDefensePos() end
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,1000) Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,1000)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,d,1,0,0) Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,d,1,0,0)
end end
......
...@@ -58,10 +58,10 @@ function c43490025.xyzcon(e,c,og,min,max) ...@@ -58,10 +58,10 @@ function c43490025.xyzcon(e,c,og,min,max)
if 2<=ct then return false end if 2<=ct then return false end
if min and (min>2 or max<2) then return false end if min and (min>2 or max<2) then return false end
local mg=nil local mg=nil
local altmg = nil local altmg=nil
if og then if og then
mg=og:Filter(c43490025.mfilter,nil,c) mg=og:Filter(c43490025.mfilter,nil,c)
altmg = og altmg=og
else else
mg=Duel.GetMatchingGroup(c43490025.mfilter,tp,LOCATION_MZONE,0,nil,c) mg=Duel.GetMatchingGroup(c43490025.mfilter,tp,LOCATION_MZONE,0,nil,c)
altmg=Duel.GetFieldGroup(tp,LOCATION_MZONE,0) altmg=Duel.GetFieldGroup(tp,LOCATION_MZONE,0)
......
...@@ -67,7 +67,7 @@ function c44335251.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -67,7 +67,7 @@ function c44335251.desop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and Duel.Destroy(tc,REASON_EFFECT)>0 then if tc:IsRelateToEffect(e) and Duel.Destroy(tc,REASON_EFFECT)>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c44335251.spfilter),tp,LOCATION_GRAVE,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,c44335251.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.BreakEffect() Duel.BreakEffect()
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP_DEFENSE) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP_DEFENSE)
......
--RR-レヴォリューション・ファルコン-エアレイド --RR-レヴォリューション・ファルコン-エアレイド
function c79985120.initial_effect(c) function c79985120.initial_effect(c)
--xyz summon --xyz summon
aux.AddXyzProcedure(c,aux.FilterBoolFunction(Card.IsRace,RACE_WINDBEAST),6,3,c79985120.ovfilter,aux.Stringid(79985120,0),2,c79985120.xyzop) aux.AddXyzProcedure(c,aux.FilterBoolFunction(Card.IsRace,RACE_WINDBEAST),6,3,c79985120.ovfilter,aux.Stringid(79985120,0),3,c79985120.xyzop)
c:EnableReviveLimit() c:EnableReviveLimit()
--atkup --atkup
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -41,9 +41,9 @@ function c79985120.descon(e,tp,eg,ep,ev,re,r,rp) ...@@ -41,9 +41,9 @@ function c79985120.descon(e,tp,eg,ep,ev,re,r,rp)
end end
function c79985120.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c79985120.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) end
if chk==0 then return Duel.IsExistingTarget(aux.TRUE,tp,0,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(nil,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,aux.TRUE,tp,0,LOCATION_MZONE,1,1,nil) local g=Duel.SelectTarget(tp,nil,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,g:GetFirst():GetAttack()/2) Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,g:GetFirst():GetAttack()/2)
end end
......
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