Commit d02298dc authored by mercury233's avatar mercury233

fix "after this card resolves"

parent 9eba77e3
...@@ -38,19 +38,21 @@ function c11109820.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -38,19 +38,21 @@ function c11109820.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end end
function c11109820.operation(e,tp,eg,ep,ev,re,r,rp) function c11109820.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
--change damage if e:IsHasType(EFFECT_TYPE_ACTIVATE) then
local e1=Effect.CreateEffect(c) --change damage
e1:SetType(EFFECT_TYPE_FIELD) local e1=Effect.CreateEffect(c)
e1:SetCode(EFFECT_CHANGE_DAMAGE) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e1:SetCode(EFFECT_CHANGE_DAMAGE)
e1:SetTargetRange(0,1) e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetValue(0) e1:SetTargetRange(0,1)
e1:SetReset(RESET_PHASE+PHASE_END) e1:SetValue(0)
Duel.RegisterEffect(e1,tp) e1:SetReset(RESET_PHASE+PHASE_END)
local e2=e1:Clone() Duel.RegisterEffect(e1,tp)
e2:SetCode(EFFECT_NO_EFFECT_DAMAGE) local e2=e1:Clone()
e2:SetReset(RESET_PHASE+PHASE_END) e2:SetCode(EFFECT_NO_EFFECT_DAMAGE)
Duel.RegisterEffect(e2,tp) e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp)
end
--sp_summon --sp_summon
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
local tc1=g:GetFirst() local tc1=g:GetFirst()
......
...@@ -48,6 +48,7 @@ function c13965201.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -48,6 +48,7 @@ function c13965201.activate(e,tp,eg,ep,ev,re,r,rp)
local sg=g:Select(tp,1,1,nil) local sg=g:Select(tp,1,1,nil)
Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP)
end end
if not e:IsHasType(EFFECT_TYPE_ACTIVATE) then return end
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_CANNOT_SPECIAL_SUMMON) e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
......
...@@ -46,6 +46,7 @@ function c18027138.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -46,6 +46,7 @@ function c18027138.activate(e,tp,eg,ep,ev,re,r,rp)
end end
Duel.SpecialSummonComplete() Duel.SpecialSummonComplete()
end end
if not e:IsHasType(EFFECT_TYPE_ACTIVATE) then return end
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_SELECT_BATTLE_TARGET) e1:SetCode(EFFECT_CANNOT_SELECT_BATTLE_TARGET)
......
...@@ -47,6 +47,7 @@ function c23002292.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -47,6 +47,7 @@ function c23002292.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmCards(tp,sg) Duel.ConfirmCards(tp,sg)
end end
end end
if not e:IsHasType(EFFECT_TYPE_ACTIVATE) then return end
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_CANNOT_ACTIVATE) e1:SetCode(EFFECT_CANNOT_ACTIVATE)
......
...@@ -35,6 +35,7 @@ function c31706048.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -35,6 +35,7 @@ function c31706048.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.ShuffleDeck(tp) Duel.ShuffleDeck(tp)
end end
end end
if not e:IsHasType(EFFECT_TYPE_ACTIVATE) then return end
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_CANNOT_SPECIAL_SUMMON) e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
......
...@@ -31,6 +31,7 @@ function c43455065.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -31,6 +31,7 @@ function c43455065.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.DiscardHand(tp,nil,ct,ct,REASON_EFFECT+REASON_DISCARD) Duel.DiscardHand(tp,nil,ct,ct,REASON_EFFECT+REASON_DISCARD)
end end
end end
if not e:IsHasType(EFFECT_TYPE_ACTIVATE) then return end
local rct=1 local rct=1
if Duel.GetTurnPlayer()~=tp then rct=2 end if Duel.GetTurnPlayer()~=tp then rct=2 end
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -32,6 +32,7 @@ function c56256517.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -32,6 +32,7 @@ function c56256517.activate(e,tp,eg,ep,ev,re,r,rp)
tc:RegisterFlagEffect(56256517,RESET_EVENT+RESETS_STANDARD,0,1,fid) tc:RegisterFlagEffect(56256517,RESET_EVENT+RESETS_STANDARD,0,1,fid)
tc=g:GetNext() tc=g:GetNext()
end end
if not e:IsHasType(EFFECT_TYPE_ACTIVATE) then return end
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE) e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
......
...@@ -21,14 +21,16 @@ function c68191756.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -21,14 +21,16 @@ function c68191756.target(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function c68191756.activate(e,tp,eg,ep,ev,re,r,rp) function c68191756.activate(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local e1=Effect.CreateEffect(c) if e:IsHasType(EFFECT_TYPE_ACTIVATE) then
e1:SetType(EFFECT_TYPE_FIELD) local e1=Effect.CreateEffect(c)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(1,0) e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetTarget(c68191756.splimit) e1:SetTargetRange(1,0)
e1:SetReset(RESET_PHASE+PHASE_END) e1:SetTarget(c68191756.splimit)
Duel.RegisterEffect(e1,tp) e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
if Duel.GetLocationCount(tp,LOCATION_MZONE)<1 then return end if Duel.GetLocationCount(tp,LOCATION_MZONE)<1 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c68191756.filter,tp,LOCATION_HAND+LOCATION_DECK,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,c68191756.filter,tp,LOCATION_HAND+LOCATION_DECK,0,1,1,nil,e,tp)
......
...@@ -40,18 +40,20 @@ function c71867500.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -40,18 +40,20 @@ function c71867500.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g1,g1:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g1,g1:GetCount(),0,0)
end end
function c71867500.activate(e,tp,eg,ep,ev,re,r,rp) function c71867500.activate(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler()) if e:IsHasType(EFFECT_TYPE_ACTIVATE) then
e1:SetType(EFFECT_TYPE_FIELD) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetCode(EFFECT_CHANGE_DAMAGE) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e1:SetCode(EFFECT_CHANGE_DAMAGE)
e1:SetTargetRange(0,1) e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetValue(0) e1:SetTargetRange(0,1)
e1:SetReset(RESET_PHASE+PHASE_END) e1:SetValue(0)
Duel.RegisterEffect(e1,tp) e1:SetReset(RESET_PHASE+PHASE_END)
local e2=e1:Clone() Duel.RegisterEffect(e1,tp)
e2:SetCode(EFFECT_NO_EFFECT_DAMAGE) local e2=e1:Clone()
e2:SetReset(RESET_PHASE+PHASE_END) e2:SetCode(EFFECT_NO_EFFECT_DAMAGE)
Duel.RegisterEffect(e2,tp) e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp)
end
local ct=Duel.GetLocationCount(tp,LOCATION_MZONE) local ct=Duel.GetLocationCount(tp,LOCATION_MZONE)
if ct<1 then return end if ct<1 then return end
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)
......
...@@ -31,6 +31,7 @@ function c76751255.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -31,6 +31,7 @@ function c76751255.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.BreakEffect() Duel.BreakEffect()
Duel.Draw(p,ct+1,REASON_EFFECT) Duel.Draw(p,ct+1,REASON_EFFECT)
end end
if not e:IsHasType(EFFECT_TYPE_ACTIVATE) then return end
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_CANNOT_DRAW) e1:SetCode(EFFECT_CANNOT_DRAW)
......
...@@ -29,6 +29,7 @@ function c85636437.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -29,6 +29,7 @@ function c85636437.activate(e,tp,eg,ep,ev,re,r,rp)
if tc:IsFaceup() and tc:IsRelateToEffect(e) then if tc:IsFaceup() and tc:IsRelateToEffect(e) then
Duel.Damage(1-tp,math.ceil(tc:GetBaseAttack()/2),REASON_EFFECT) Duel.Damage(1-tp,math.ceil(tc:GetBaseAttack()/2),REASON_EFFECT)
end end
if not e:IsHasType(EFFECT_TYPE_ACTIVATE) then return end
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e1: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