Commit 85ac055e authored by mercury233's avatar mercury233

fix

parent f4429938
...@@ -36,7 +36,7 @@ function c101010081.regop(e,tp,eg,ep,ev,re,r,rp) ...@@ -36,7 +36,7 @@ function c101010081.regop(e,tp,eg,ep,ev,re,r,rp)
c:RegisterFlagEffect(101010081,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1) c:RegisterFlagEffect(101010081,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end end
function c101010081.cfilter(c) function c101010081.cfilter(c)
return c:IsType(TYPE_MONSTER) and c:IsAbleToHand() return c:IsType(TYPE_MONSTER) and c:IsAbleToHand() and not c:IsCode(101010081)
end end
function c101010081.spcon(e,tp,eg,ep,ev,re,r,rp) function c101010081.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(101010081)>0 return e:GetHandler():GetFlagEffect(101010081)>0
......
...@@ -50,7 +50,7 @@ function c101011008.atcon(e) ...@@ -50,7 +50,7 @@ function c101011008.atcon(e)
return Duel.IsExistingMatchingCard(c101011008.atfilter,e:GetHandlerPlayer(),LOCATION_MZONE,0,1,e:GetHandler()) return Duel.IsExistingMatchingCard(c101011008.atfilter,e:GetHandlerPlayer(),LOCATION_MZONE,0,1,e:GetHandler())
end end
function c101011008.srfilter(c) function c101011008.srfilter(c)
return c:IsSetCard(0x237) and c:IsAbleToHand() and not c:IsCode(101011008) return c:IsSetCard(0x237) and c:IsAbleToHand() and not c:IsCode(101011008) and c:IsType(TYPE_MONSTER)
end end
function c101011008.srcost(e,tp,eg,ep,ev,re,r,rp,chk) function c101011008.srcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToGraveAsCost,tp,LOCATION_HAND+LOCATION_ONFIELD,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToGraveAsCost,tp,LOCATION_HAND+LOCATION_ONFIELD,0,1,nil) end
......
...@@ -73,8 +73,11 @@ function c101011038.rsop(e,tp,eg,ep,ev,re,r,rp) ...@@ -73,8 +73,11 @@ function c101011038.rsop(e,tp,eg,ep,ev,re,r,rp)
tc:CompleteProcedure() tc:CompleteProcedure()
end end
end end
function c101011038.cfilter(c)
return c:IsType(TYPE_RITUAL) and c:IsType(TYPE_MONSTER)
end
function c101011038.val(e,c) function c101011038.val(e,c)
local g=Duel.GetFieldGroup(e:GetHandlerPlayer(),LOCATION_GRAVE,0) local g=Duel.GetFieldGroup(e:GetHandlerPlayer(),LOCATION_GRAVE,0)
local sg=g:Filter(Card.IsType,nil,TYPE_RITUAL) local sg=g:Filter(c101011038.cfilter,nil)
return sg:GetCount()*300 return sg:GetCount()*300
end end
...@@ -74,13 +74,16 @@ function c101011039.rsop(e,tp,eg,ep,ev,re,r,rp) ...@@ -74,13 +74,16 @@ function c101011039.rsop(e,tp,eg,ep,ev,re,r,rp)
tc:CompleteProcedure() tc:CompleteProcedure()
end end
end end
function c101011039.cfilter(c)
return c:IsType(TYPE_RITUAL) and c:IsType(TYPE_MONSTER)
end
function c101011039.descon(e,tp,eg,ep,ev,re,r,rp) function c101011039.descon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_RITUAL) return e:GetHandler():IsSummonType(SUMMON_TYPE_RITUAL)
end end
function c101011039.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c101011039.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_ONFIELD) and chkc:IsControler(1-tp) end if chkc then return chkc:IsLocation(LOCATION_ONFIELD) and chkc:IsControler(1-tp) end
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsType,tp,LOCATION_GRAVE,0,1,nil,TYPE_RITUAL) and Duel.IsExistingMatchingCard(aux.TRUE,tp,0,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c101011039.cfilter,tp,LOCATION_GRAVE,0,1,nil) and Duel.IsExistingMatchingCard(aux.TRUE,tp,0,LOCATION_ONFIELD,1,nil) end
local g=Duel.GetMatchingGroup(Card.IsType,tp,LOCATION_GRAVE,0,nil,TYPE_RITUAL) local g=Duel.GetMatchingGroup(c101011039.cfilter,tp,LOCATION_GRAVE,0,nil)
local gc=g:GetClassCount(Card.GetCode) local gc=g:GetClassCount(Card.GetCode)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local sg=Duel.SelectTarget(tp,aux.TRUE,tp,0,LOCATION_ONFIELD,1,gc,nil) local sg=Duel.SelectTarget(tp,aux.TRUE,tp,0,LOCATION_ONFIELD,1,gc,nil)
......
...@@ -85,7 +85,7 @@ function c101011040.tfilter(c,tp) ...@@ -85,7 +85,7 @@ function c101011040.tfilter(c,tp)
return c:IsOnField() and c:IsControler(tp) return c:IsOnField() and c:IsControler(tp)
end end
function c101011040.disfilter(c) function c101011040.disfilter(c)
return c:IsType(TYPE_RITUAL) and c:IsAbleToDeck() return c:IsType(TYPE_RITUAL) and c:IsAbleToDeck() and c:IsType(TYPE_MONSTER)
end end
function c101011040.discon(e,tp,eg,ep,ev,re,r,rp) function c101011040.discon(e,tp,eg,ep,ev,re,r,rp)
if rp==tp or e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) then return false end if rp==tp or e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) then return false 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