Commit d25b875a authored by VanillaSalt's avatar VanillaSalt

fix

parent 5c808195
...@@ -10,7 +10,10 @@ function c22888900.initial_effect(c) ...@@ -10,7 +10,10 @@ function c22888900.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c22888900.cfilter(c) function c22888900.cfilter(c)
return c:IsFaceup() and (c:IsType(TYPE_FUSION+TYPE_RITUAL) or bit.band(c:GetSummonType(),SUMMON_TYPE_ADVANCE)==SUMMON_TYPE_ADVANCE) local sumtype=c:GetSummonType()
return c:IsFaceup() and (bit.band(sumtype,SUMMON_TYPE_ADVANCE)==SUMMON_TYPE_ADVANCE
or bit.band(sumtype,SUMMON_TYPE_RITUAL)==SUMMON_TYPE_RITUAL
or bit.band(sumtype,SUMMON_TYPE_FUSION)==SUMMON_TYPE_FUSION)
end end
function c22888900.condition(e,tp,eg,ep,ev,re,r,rp) function c22888900.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c22888900.cfilter,tp,LOCATION_MZONE,0,1,nil) return Duel.IsExistingMatchingCard(c22888900.cfilter,tp,LOCATION_MZONE,0,1,nil)
......
...@@ -68,12 +68,13 @@ function c29223325.descon(e,tp,eg,ep,ev,re,r,rp) ...@@ -68,12 +68,13 @@ function c29223325.descon(e,tp,eg,ep,ev,re,r,rp)
return rp~=tp and e:GetHandler():GetPreviousControler()==tp return rp~=tp and e:GetHandler():GetPreviousControler()==tp
end end
function c29223325.desop(e,tp,eg,ep,ev,re,r,rp) function c29223325.desop(e,tp,eg,ep,ev,re,r,rp)
local ph=Duel.GetCurrentPhase()
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_SKIP_BP) e1:SetCode(EFFECT_SKIP_BP)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(0,1) e1:SetTargetRange(0,1)
if Duel.GetTurnPlayer()~=tp and Duel.GetCurrentPhase()==PHASE_BATTLE then if Duel.GetTurnPlayer()~=tp and ph>PHASE_MAIN1 and ph<PHASE_MAIN2 then
e1:SetLabel(Duel.GetTurnCount()) e1:SetLabel(Duel.GetTurnCount())
e1:SetCondition(c29223325.skipcon) e1:SetCondition(c29223325.skipcon)
e1:SetReset(RESET_PHASE+PHASE_BATTLE+RESET_OPPO_TURN,2) e1:SetReset(RESET_PHASE+PHASE_BATTLE+RESET_OPPO_TURN,2)
......
...@@ -13,7 +13,8 @@ end ...@@ -13,7 +13,8 @@ end
function c5616412.condition(e,tp,eg,ep,ev,re,r,rp) function c5616412.condition(e,tp,eg,ep,ev,re,r,rp)
local a=Duel.GetAttacker() local a=Duel.GetAttacker()
local d=Duel.GetAttackTarget() local d=Duel.GetAttackTarget()
return d and a:IsControler(1-tp) and a:IsRelateToBattle() and d:IsRelateToBattle() and d:GetDefence()>a:GetAttack() return d and a:IsControler(1-tp) and a:IsRelateToBattle()
and d:IsDefencePos() and d:IsRelateToBattle() and d:GetDefence()>a:GetAttack()
end end
function c5616412.target(e,tp,eg,ep,ev,re,r,rp,chk) function c5616412.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetAttacker():IsDestructable() end if chk==0 then return Duel.GetAttacker():IsDestructable() end
......
...@@ -17,7 +17,8 @@ end ...@@ -17,7 +17,8 @@ end
function c68057622.descon(e,tp,eg,ep,ev,re,r,rp) function c68057622.descon(e,tp,eg,ep,ev,re,r,rp)
local a=Duel.GetAttacker() local a=Duel.GetAttacker()
local at=Duel.GetAttackTarget() local at=Duel.GetAttackTarget()
return at and a:IsControler(1-tp) and at:IsRelateToBattle() and a:IsRelateToBattle() and a:GetAttack()<at:GetDefence() return at and a:IsControler(1-tp) and a:IsRelateToBattle()
and at:IsDefencePos() and at:IsRelateToBattle() and a:GetAttack()<at:GetDefence()
end end
function c68057622.desop(e,tp,eg,ep,ev,re,r,rp) function c68057622.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(Duel.GetAttacker(),REASON_EFFECT) Duel.Destroy(Duel.GetAttacker(),REASON_EFFECT)
......
...@@ -14,11 +14,11 @@ end ...@@ -14,11 +14,11 @@ end
function c80802524.condition(e,tp,eg,ep,ev,re,r,rp) function c80802524.condition(e,tp,eg,ep,ev,re,r,rp)
local tc=eg:GetFirst() local tc=eg:GetFirst()
e:SetLabel(tc:GetCode()) e:SetLabel(tc:GetCode())
return rp~=tp and eg:GetCount()==1 return rp~=tp and eg:GetCount()==1 and tc:IsReason(REASON_DESTROY) and tc:IsReason(REASON_BATTLE+REASON_EFFECT)
and tc:IsPreviousLocation(LOCATION_MZONE) and tc:GetPreviousControler()==tp and tc:IsSetCard(0x8d) and tc:IsPreviousLocation(LOCATION_MZONE) and tc:GetPreviousControler()==tp and tc:IsSetCard(0x8d)
end end
function c80802524.filter(c,e,tp,code) function c80802524.filter(c,e,tp,code)
return c:IsSetCard(0x8d) and c:GetCode()~=code and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x8d) and c:GetCode()~=code and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEDOWN)
end end
function c80802524.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c80802524.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_GRAVE) and c80802524.filter(chkc,e,tp,e:GetLabel()) end if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_GRAVE) and c80802524.filter(chkc,e,tp,e:GetLabel()) end
......
...@@ -27,6 +27,7 @@ function c84536654.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -27,6 +27,7 @@ function c84536654.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end end
function c84536654.activate(e,tp,eg,ep,ev,re,r,rp) function c84536654.activate(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<0 then return end
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if not tc:IsRelateToEffect(e) then return end if not tc:IsRelateToEffect(e) then return end
local code=tc:GetCode() local code=tc:GetCode()
......
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