Commit 19ec4643 authored by VanillaSalt's avatar VanillaSalt

fix

parent d26fd747
...@@ -5,7 +5,7 @@ function c164710.initial_effect(c) ...@@ -5,7 +5,7 @@ function c164710.initial_effect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetHintTiming(0,0x1c0) e1:SetHintTiming(0,0x1c0)
e1:SetOperation(c164710.activate) e1:SetOperation(c164710.lvop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--lv --lv
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
...@@ -17,15 +17,6 @@ function c164710.initial_effect(c) ...@@ -17,15 +17,6 @@ function c164710.initial_effect(c)
e2:SetOperation(c164710.lvop) e2:SetOperation(c164710.lvop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c164710.activate(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_UPDATE_LEVEL)
e1:SetTargetRange(LOCATION_HAND,LOCATION_HAND)
e1:SetValue(-1)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
function c164710.lvcost(e,tp,eg,ep,ev,re,r,rp,chk) function c164710.lvcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToRemoveAsCost() end if chk==0 then return e:GetHandler():IsAbleToRemoveAsCost() end
Duel.Remove(e:GetHandler(),POS_FACEUP,REASON_COST) Duel.Remove(e:GetHandler(),POS_FACEUP,REASON_COST)
......
...@@ -9,7 +9,6 @@ function c16909657.initial_effect(c) ...@@ -9,7 +9,6 @@ function c16909657.initial_effect(c)
e2:SetCondition(c16909657.spcon) e2:SetCondition(c16909657.spcon)
e2:SetTarget(c16909657.sptg) e2:SetTarget(c16909657.sptg)
e2:SetOperation(c16909657.spop) e2:SetOperation(c16909657.spop)
e2:SetLabelObject(e1)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c16909657.spcon(e,tp,eg,ep,ev,re,r,rp) function c16909657.spcon(e,tp,eg,ep,ev,re,r,rp)
...@@ -18,14 +17,14 @@ function c16909657.spcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -18,14 +17,14 @@ function c16909657.spcon(e,tp,eg,ep,ev,re,r,rp)
return c:IsRelateToBattle() and bc:GetPreviousAttackOnField()==0 return c:IsRelateToBattle() and bc:GetPreviousAttackOnField()==0
end end
function c16909657.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c16909657.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local tc=e:GetLabelObject():GetLabelObject() local tc=e:GetHandler():GetBattleTarget()
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and tc:IsCanBeSpecialSummoned(e,0,tp,false,false) end and tc:IsCanBeSpecialSummoned(e,0,tp,false,false) end
tc:CreateEffectRelation(e) tc:CreateEffectRelation(e)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,tc,1,0,LOCATION_GRAVE) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,tc,1,0,LOCATION_GRAVE)
end end
function c16909657.spop(e,tp,eg,ep,ev,re,r,rp) function c16909657.spop(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject():GetLabelObject() local tc=e:GetHandler():GetBattleTarget()
if tc:IsRelateToEffect(e) and Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP_DEFENCE)~=0 then if tc:IsRelateToEffect(e) and Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP_DEFENCE)~=0 then
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
......
...@@ -46,22 +46,22 @@ function c34614289.postg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -46,22 +46,22 @@ function c34614289.postg(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function c34614289.posop(e,tp,eg,ep,ev,re,r,rp) function c34614289.posop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(Card.IsRelateToEffect,nil,e) local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(Card.IsRelateToEffect,nil,e)
local tc=g:GetFirst() Duel.ChangePosition(g,POS_FACEUP_DEFENCE,POS_FACEUP_DEFENCE,POS_FACEUP_ATTACK,POS_FACEUP_ATTACK)
local og=Duel.GetOperatedGroup()
local tc=og:GetFirst()
while tc do while tc do
if Duel.ChangePosition(tc,POS_FACEUP_DEFENCE,POS_FACEUP_DEFENCE,POS_FACEUP_ATTACK,POS_FACEUP_ATTACK)~=0 then Duel.NegateRelatedChain(tc,RESET_TURN_SET)
Duel.NegateRelatedChain(tc,RESET_TURN_SET) 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_DISABLE)
e1:SetCode(EFFECT_DISABLE) e1:SetReset(RESET_EVENT+0x1fe0000)
e1:SetReset(RESET_EVENT+0x1fe0000) tc:RegisterEffect(e1)
tc:RegisterEffect(e1) local e2=Effect.CreateEffect(e:GetHandler())
local e2=Effect.CreateEffect(e:GetHandler()) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetCode(EFFECT_DISABLE_EFFECT)
e2:SetCode(EFFECT_DISABLE_EFFECT) e2:SetValue(RESET_TURN_SET)
e2:SetValue(RESET_TURN_SET) e2:SetReset(RESET_EVENT+0x1fe0000)
e2:SetReset(RESET_EVENT+0x1fe0000) tc:RegisterEffect(e2)
tc:RegisterEffect(e2) tc=og:GetNext()
end
tc=g:GetNext()
end end
end end
...@@ -24,10 +24,8 @@ function c73779005.thcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -24,10 +24,8 @@ function c73779005.thcon(e,tp,eg,ep,ev,re,r,rp)
local d=Duel.GetAttackTarget() local d=Duel.GetAttackTarget()
if not d then return false end if not d then return false end
if d:IsControler(tp) then a,d=d,a end if d:IsControler(tp) then a,d=d,a end
if a:IsType(TYPE_NORMAL) return a:IsType(TYPE_NORMAL)
and not a:IsStatus(STATUS_BATTLE_DESTROYED) and d:IsStatus(STATUS_BATTLE_DESTROYED) then and not a:IsStatus(STATUS_BATTLE_DESTROYED) and d:IsStatus(STATUS_BATTLE_DESTROYED)
return true
else return false end
end end
function c73779005.filter(c) function c73779005.filter(c)
return c:IsType(TYPE_NORMAL) and c:IsLevelAbove(4) and c:IsAbleToHand() return c:IsType(TYPE_NORMAL) and c:IsLevelAbove(4) and c:IsAbleToHand()
...@@ -37,6 +35,7 @@ function c73779005.thtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -37,6 +35,7 @@ function c73779005.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end end
function c73779005.thop(e,tp,eg,ep,ev,re,r,rp) function c73779005.thop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c73779005.filter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c73779005.filter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
......
...@@ -40,7 +40,7 @@ end ...@@ -40,7 +40,7 @@ end
function c98229575.atkop(e,tp,eg,ep,ev,re,r,rp) function c98229575.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local at=Duel.GetAttacker() local at=Duel.GetAttacker()
if at:IsFaceup() and at:IsRelateToBattle() then if c:IsFaceup() and c:IsRelateToEffect(e) and at:IsFaceup() and at:IsRelateToBattle() then
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetCode(EFFECT_UPDATE_ATTACK)
......
...@@ -218,7 +218,7 @@ function Auxiliary.XyzCondition2(f,lv,minc,maxc,alterf,desc,op) ...@@ -218,7 +218,7 @@ function Auxiliary.XyzCondition2(f,lv,minc,maxc,alterf,desc,op)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE) local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft local ct=-ft
if minc<=ct then return false end if minc<=ct then return false end
if ct<1 and Duel.IsExistingMatchingCard(Auxiliary.XyzAlterFilter,tp,LOCATION_MZONE,0,1,nil,alterf,c) if ct<1 and not og and Duel.IsExistingMatchingCard(Auxiliary.XyzAlterFilter,tp,LOCATION_MZONE,0,1,nil,alterf,c)
and (not op or op(e,tp,0)) then and (not op or op(e,tp,0)) then
return true return true
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