Commit 825592d5 authored by POLYMER's avatar POLYMER

fix

parent ca847b46
...@@ -97,12 +97,14 @@ function c12869010.spcost1(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -97,12 +97,14 @@ function c12869010.spcost1(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SendtoGrave(g,REASON_COST) Duel.SendtoGrave(g,REASON_COST)
end end
function c12869010.sptg1(e,tp,eg,ep,ev,re,r,rp,chk) function c12869010.sptg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER) end if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER)
and e:GetHandler():GetFlagEffect(12869011)==0 end
Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,2,0,0) Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,2,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,0,0)
if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetHandler():IsOriginalCodeRule(12869095) then if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetHandler():IsOriginalCodeRule(12869095) then
Duel.SetChainLimit(c12869010.chainlm) Duel.SetChainLimit(c12869010.chainlm)
end end
e:GetHandler():RegisterFlagEffect(12869011,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end end
function c12869010.spop1(e,tp,eg,ep,ev,re,r,rp) function c12869010.spop1(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER) then if Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER) then
...@@ -120,12 +122,14 @@ function c12869010.qcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -120,12 +122,14 @@ function c12869010.qcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(12869010)>0 and Duel.IsEnvironment(12869005) return e:GetHandler():GetFlagEffect(12869010)>0 and Duel.IsEnvironment(12869005)
end end
function c12869010.qtg(e,tp,eg,ep,ev,re,r,rp,chk) function c12869010.qtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER) end if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER)
and e:GetHandler():GetFlagEffect(12869011)==0 end
Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,2,0,0) Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,2,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,0,0)
if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) then if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) then
Duel.SetChainLimit(c12869010.chainlm) Duel.SetChainLimit(c12869010.chainlm)
end end
e:GetHandler():RegisterFlagEffect(12869011,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end end
function c12869010.chainlm(e,ep,tp) function c12869010.chainlm(e,ep,tp)
return tp==ep return tp==ep
......
...@@ -101,12 +101,14 @@ function c12869015.spcost1(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -101,12 +101,14 @@ function c12869015.spcost1(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.Remove(g,POS_FACEUP,REASON_COST) Duel.Remove(g,POS_FACEUP,REASON_COST)
end end
function c12869015.sptg1(e,tp,eg,ep,ev,re,r,rp,chk) function c12869015.sptg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER) end if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER)
and e:GetHandler():GetFlagEffect(12869016)==0 end
Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,2,0,0) Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,2,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,0,0)
if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetHandler():IsOriginalCodeRule(12869095) then if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetHandler():IsOriginalCodeRule(12869095) then
Duel.SetChainLimit(c12869015.chainlm) Duel.SetChainLimit(c12869015.chainlm)
end end
e:GetHandler():RegisterFlagEffect(12869016,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end end
function c12869015.spop1(e,tp,eg,ep,ev,re,r,rp) function c12869015.spop1(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER) then if Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER) then
...@@ -124,12 +126,14 @@ function c12869015.qcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -124,12 +126,14 @@ function c12869015.qcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(12869015)>0 and Duel.IsEnvironment(12869005) return e:GetHandler():GetFlagEffect(12869015)>0 and Duel.IsEnvironment(12869005)
end end
function c12869015.qtg(e,tp,eg,ep,ev,re,r,rp,chk) function c12869015.qtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER) end if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER)
and e:GetHandler():GetFlagEffect(12869016)==0 end
Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,2,0,0) Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,2,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,0,0)
if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) then if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) then
Duel.SetChainLimit(c12869015.chainlm) Duel.SetChainLimit(c12869015.chainlm)
end end
e:GetHandler():RegisterFlagEffect(12869016,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end end
function c12869015.chainlm(e,ep,tp) function c12869015.chainlm(e,ep,tp)
return tp==ep return tp==ep
......
...@@ -105,12 +105,14 @@ function c12869020.spcost1(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -105,12 +105,14 @@ function c12869020.spcost1(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SendtoDeck(g,nil,SEQ_DECKSHUFFLE,REASON_COST) Duel.SendtoDeck(g,nil,SEQ_DECKSHUFFLE,REASON_COST)
end end
function c12869020.sptg1(e,tp,eg,ep,ev,re,r,rp,chk) function c12869020.sptg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER) end if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER)
and e:GetHandler():GetFlagEffect(12869021)==0 end
Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,2,0,0) Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,2,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,0,0)
if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetHandler():IsOriginalCodeRule(12869095) then if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetHandler():IsOriginalCodeRule(12869095) then
Duel.SetChainLimit(c12869020.chainlm) Duel.SetChainLimit(c12869020.chainlm)
end end
e:GetHandler():RegisterFlagEffect(12869021,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end end
function c12869020.spop1(e,tp,eg,ep,ev,re,r,rp) function c12869020.spop1(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER) then if Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER) then
...@@ -128,12 +130,14 @@ function c12869020.qcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -128,12 +130,14 @@ function c12869020.qcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(12869020)>0 and Duel.IsEnvironment(12869005) return e:GetHandler():GetFlagEffect(12869020)>0 and Duel.IsEnvironment(12869005)
end end
function c12869020.qtg(e,tp,eg,ep,ev,re,r,rp,chk) function c12869020.qtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER) end if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.IsPlayerCanSpecialSummonMonster(tp,12869000,0,TYPES_TOKEN_MONSTER,0,0,1,RACE_AQUA,ATTRIBUTE_WATER)
and e:GetHandler():GetFlagEffect(12869021)==0 end
Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,2,0,0) Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,2,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,0,0)
if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) then if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) then
Duel.SetChainLimit(c12869020.chainlm) Duel.SetChainLimit(c12869020.chainlm)
end end
e:GetHandler():RegisterFlagEffect(12869021,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end end
function c12869020.chainlm(e,ep,tp) function c12869020.chainlm(e,ep,tp)
return tp==ep return tp==ep
......
...@@ -64,6 +64,10 @@ function c12869030.indop(e,tp,eg,ep,ev,re,r,rp) ...@@ -64,6 +64,10 @@ function c12869030.indop(e,tp,eg,ep,ev,re,r,rp)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1,true) rc:RegisterEffect(e1,true)
local e2=e1:Clone() local e2=e1:Clone()
e2:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_NO_TURN_RESET)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetLabelObject(e1)
e2:SetCondition(c12869030.qcon) e2:SetCondition(c12869030.qcon)
e2:SetTarget(c12869030.qtg) e2:SetTarget(c12869030.qtg)
rc:RegisterEffect(e2,true) rc:RegisterEffect(e2,true)
...@@ -86,9 +90,6 @@ function c12869030.tg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -86,9 +90,6 @@ function c12869030.tg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c12869030.filter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil,e,tp) local g=Duel.SelectTarget(tp,c12869030.filter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
if e:GetHandler():IsOriginalCodeRule(12869095) then
Duel.SetChainLimit(c12869030.chainlm)
end
e:Reset() e:Reset()
e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(12869030,3)) e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(12869030,3))
end end
...@@ -106,19 +107,21 @@ function c12869030.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -106,19 +107,21 @@ function c12869030.op(e,tp,eg,ep,ev,re,r,rp)
Duel.SpecialSummonComplete() Duel.SpecialSummonComplete()
end end
function c12869030.icon(e,tp,eg,ep,ev,re,r,rp) function c12869030.icon(e,tp,eg,ep,ev,re,r,rp)
return not e:GetHandler():IsOriginalCodeRule(12869095) or not Duel.IsEnvironment(12869005) return not e:GetHandler():IsOriginalCodeRule(12869095)
end end
function c12869030.qcon(e,tp,eg,ep,ev,re,r,rp) function c12869030.qcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsOriginalCodeRule(12869095) and Duel.IsEnvironment(12869005) return e:GetHandler():IsOriginalCodeRule(12869095)
and (Duel.IsEnvironment(12869005) or Duel.IsMainPhase() and Duel.GetCurrentChain()==0 and Duel.GetTurnPlayer()==tp)
end end
function c12869030.qtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c12869030.qtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and c12869030.filter(chkc,e,tp) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and c12869030.filter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c12869030.filter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil,e,tp) end and Duel.IsExistingTarget(c12869030.filter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c12869030.filter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil,e,tp) local g=Duel.SelectTarget(tp,c12869030.filter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
Duel.SetChainLimit(c12869030.chainlm) Duel.SetChainLimit(c12869030.chainlm)
e:GetLabelObject():Reset()
e:Reset() e:Reset()
e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(12869030,3)) e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(12869030,3))
end end
......
...@@ -60,15 +60,10 @@ function c12869035.indop(e,tp,eg,ep,ev,re,r,rp) ...@@ -60,15 +60,10 @@ function c12869035.indop(e,tp,eg,ep,ev,re,r,rp)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE) e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE)
e1:SetCountLimit(1) e1:SetCountLimit(1)
e1:SetCondition(c12869035.icon)
e1:SetTarget(c12869035.tg) e1:SetTarget(c12869035.tg)
e1:SetOperation(c12869035.op) e1:SetOperation(c12869035.op)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1,true) rc:RegisterEffect(e1,true)
local e2=e1:Clone()
e2:SetCondition(c12869035.qcon)
e2:SetTarget(c12869035.qtg)
rc:RegisterEffect(e2,true)
if not rc:IsType(TYPE_EFFECT) then if not rc:IsType(TYPE_EFFECT) then
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
...@@ -96,22 +91,6 @@ function c12869035.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -96,22 +91,6 @@ function c12869035.op(e,tp,eg,ep,ev,re,r,rp)
Duel.Remove(tc,POS_FACEUP,REASON_EFFECT) Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)
end end
end end
function c12869035.icon(e,tp,eg,ep,ev,re,r,rp)
return not e:GetHandler():IsOriginalCodeRule(12869095) or not Duel.IsEnvironment(12869005)
end
function c12869035.qcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsOriginalCodeRule(12869095) and Duel.IsEnvironment(12869005)
end
function c12869035.qtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsAbleToRemove() end
if chk==0 then return Duel.IsExistingTarget(Card.IsAbleToRemove,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectTarget(tp,Card.IsAbleToRemove,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,1,0,0)
e:Reset()
e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(12869035,3))
Duel.SetChainLimit(c12869035.chainlm)
end
function c12869035.chainlm(e,ep,tp) function c12869035.chainlm(e,ep,tp)
return tp==ep return tp==ep
end end
\ No newline at end of file
...@@ -55,21 +55,15 @@ function c12869040.indop(e,tp,eg,ep,ev,re,r,rp) ...@@ -55,21 +55,15 @@ function c12869040.indop(e,tp,eg,ep,ev,re,r,rp)
e1:SetDescription(aux.Stringid(12869040,0)) e1:SetDescription(aux.Stringid(12869040,0))
e1:SetCategory(CATEGORY_DESTROY+CATEGORY_DISABLE) e1:SetCategory(CATEGORY_DESTROY+CATEGORY_DISABLE)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetProperty(EFFECT_FLAG_CLIENT_HINT+EFFECT_FLAG_NO_TURN_RESET) e1:SetProperty(EFFECT_FLAG_CLIENT_HINT+EFFECT_FLAG_NO_TURN_RESET+EFFECT_FLAG_DAMAGE_CAL+EFFECT_FLAG_DAMAGE_STEP)
e1:SetCode(EVENT_CHAINING) e1:SetCode(EVENT_CHAINING)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetHintTiming(0,TIMING_MAIN_END+TIMING_END_PHASE+TIMING_STANDBY_PHASE+TIMINGS_CHECK_MONSTER)
e1:SetCountLimit(1) e1:SetCountLimit(1)
e1:SetCondition(c12869040.icon)
e1:SetTarget(c12869040.target) e1:SetTarget(c12869040.target)
e1:SetCondition(c12869040.condition) e1:SetCondition(c12869040.condition)
e1:SetOperation(c12869040.op) e1:SetOperation(c12869040.op)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1,true) rc:RegisterEffect(e1,true)
local e2=e1:Clone()
e2:SetCondition(c12869040.qcon)
e2:SetTarget(c12869040.qtg)
rc:RegisterEffect(e2,true)
if not rc:IsType(TYPE_EFFECT) then if not rc:IsType(TYPE_EFFECT) then
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
...@@ -104,27 +98,6 @@ function c12869040.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -104,27 +98,6 @@ function c12869040.op(e,tp,eg,ep,ev,re,r,rp)
Duel.Remove(eg,POS_FACEUP,REASON_EFFECT) Duel.Remove(eg,POS_FACEUP,REASON_EFFECT)
end end
end end
function c12869040.icon(e,tp,eg,ep,ev,re,r,rp)
return not e:GetHandler():IsOriginalCodeRule(12869095) or not Duel.IsEnvironment(12869005)
end
function c12869040.qcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsOriginalCodeRule(12869095) and Duel.IsEnvironment(12869005)
end
function c12869040.qtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Auxiliary.nbcon(tp,re) end
Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0)
if re:GetHandler():IsRelateToEffect(re) then
Duel.SetOperationInfo(0,CATEGORY_REMOVE,eg,1,0,0)
end
if re:GetActivateLocation()==LOCATION_GRAVE then
e:SetCategory(e:GetCategory()|CATEGORY_GRAVE_ACTION)
else
e:SetCategory(e:GetCategory()&~CATEGORY_GRAVE_ACTION)
end
Duel.SetChainLimit(c12869040.chainlm)
e:Reset()
e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(12869040,3))
end
function c12869040.chainlm(e,ep,tp) function c12869040.chainlm(e,ep,tp)
return tp==ep return tp==ep
end end
\ No newline at end of file
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
local s,id,o=GetID() local s,id,o=GetID()
function s.initial_effect(c) function s.initial_effect(c)
--synchro summon --synchro summon
aux.AddSynchroProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0x6a70),aux.NonTuner(nil),1,1) aux.AddSynchroMixProcedure(c,aux.Tuner(aux.FilterBoolFunction(Card.IsSetCard,0x6a70)),nil,nil,aux.NonTuner(nil),1,1)
c:EnableReviveLimit() c:EnableReviveLimit()
--token --token
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -102,9 +102,6 @@ function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -102,9 +102,6 @@ function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(12869045,3)) e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(12869045,3))
if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetHandler():IsOriginalCodeRule(12869095) then
Duel.SetChainLimit(s.chainlm)
end
end end
function s.thop(e,tp,eg,ep,ev,re,r,rp) function s.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
...@@ -115,10 +112,11 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -115,10 +112,11 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function s.icon(e,tp,eg,ep,ev,re,r,rp) function s.icon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(id)==0 or e:GetHandler():IsOriginalCodeRule(12869095) and not Duel.IsEnvironment(12869005) return e:GetHandler():GetFlagEffect(id)==0
end end
function s.qcon(e,tp,eg,ep,ev,re,r,rp) function s.qcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(id)>0 and Duel.IsEnvironment(12869005) return e:GetHandler():GetFlagEffect(id)>0
and (Duel.IsEnvironment(12869005) or Duel.IsMainPhase() and Duel.GetCurrentChain()==0 and Duel.GetTurnPlayer()==tp)
end end
function s.qtg(e,tp,eg,ep,ev,re,r,rp,chk) function s.qtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_DECK,0,1,nil) end
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
local s,id,o=GetID() local s,id,o=GetID()
function s.initial_effect(c) function s.initial_effect(c)
--synchro summon --synchro summon
aux.AddSynchroProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0x6a70),aux.NonTuner(nil),1) aux.AddSynchroMixProcedure(c,aux.Tuner(aux.FilterBoolFunction(Card.IsSetCard,0x6a70)),nil,nil,aux.NonTuner(nil),1,99)
c:EnableReviveLimit() c:EnableReviveLimit()
--token --token
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -101,9 +101,6 @@ function s.drtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -101,9 +101,6 @@ function s.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetTargetParam(1) Duel.SetTargetParam(1)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1) Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(12869050,3)) e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(12869050,3))
if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetHandler():IsOriginalCodeRule(12869095) then
Duel.SetChainLimit(s.chainlm)
end
end end
function s.drop(e,tp,eg,ep,ev,re,r,rp) function s.drop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM) local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
...@@ -112,10 +109,11 @@ function s.drop(e,tp,eg,ep,ev,re,r,rp) ...@@ -112,10 +109,11 @@ function s.drop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function s.icon(e,tp,eg,ep,ev,re,r,rp) function s.icon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(id)==0 or e:GetHandler():IsOriginalCodeRule(12869095) and not Duel.IsEnvironment(12869005) return e:GetHandler():GetFlagEffect(id)==0
end end
function s.qcon(e,tp,eg,ep,ev,re,r,rp) function s.qcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(id)>0 and Duel.IsEnvironment(12869005) return e:GetHandler():GetFlagEffect(id)>0
and (Duel.IsEnvironment(12869005) or Duel.IsMainPhase() and Duel.GetCurrentChain()==0 and Duel.GetTurnPlayer()==tp)
end end
function s.qtg(e,tp,eg,ep,ev,re,r,rp,chk) function s.qtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDraw(tp,1) and Duel.GetFlagEffect(tp,id)<2 end if chk==0 then return Duel.IsPlayerCanDraw(tp,1) and Duel.GetFlagEffect(tp,id)<2 end
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
local s,id,o=GetID() local s,id,o=GetID()
function s.initial_effect(c) function s.initial_effect(c)
--synchro summon --synchro summon
aux.AddSynchroProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0x6a70),aux.NonTuner(nil),1) aux.AddSynchroMixProcedure(c,aux.Tuner(aux.FilterBoolFunction(Card.IsSetCard,0x6a70)),nil,nil,aux.NonTuner(nil),1,99)
c:EnableReviveLimit() c:EnableReviveLimit()
--token --token
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -101,9 +101,6 @@ end ...@@ -101,9 +101,6 @@ end
function s.sstg(e,tp,eg,ep,ev,re,r,rp,chk) function s.sstg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_DECK,0,1,nil) end
e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(12869055,3)) e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(12869055,3))
if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetHandler():IsOriginalCodeRule(12869095) then
Duel.SetChainLimit(s.chainlm)
end
end end
function s.ssop(e,tp,eg,ep,ev,re,r,rp) function s.ssop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET)
...@@ -119,10 +116,11 @@ function s.ssop(e,tp,eg,ep,ev,re,r,rp) ...@@ -119,10 +116,11 @@ function s.ssop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function s.icon(e,tp,eg,ep,ev,re,r,rp) function s.icon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(id)==0 or e:GetHandler():IsOriginalCodeRule(12869095) and not Duel.IsEnvironment(12869005) return e:GetHandler():GetFlagEffect(id)==0
end end
function s.qcon(e,tp,eg,ep,ev,re,r,rp) function s.qcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(id)>0 and Duel.IsEnvironment(12869005) return e:GetHandler():GetFlagEffect(id)>0
and (Duel.IsEnvironment(12869005) or Duel.IsMainPhase() and Duel.GetCurrentChain()==0 and Duel.GetTurnPlayer()==tp)
end end
function s.qtg(e,tp,eg,ep,ev,re,r,rp,chk) function s.qtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_DECK,0,1,nil) end
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
local s,id,o=GetID() local s,id,o=GetID()
function s.initial_effect(c) function s.initial_effect(c)
--synchro summon --synchro summon
aux.AddSynchroProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0x6a70),aux.NonTuner(nil),1) aux.AddSynchroMixProcedure(c,aux.Tuner(aux.FilterBoolFunction(Card.IsSetCard,0x6a70)),nil,nil,aux.NonTuner(nil),1,99)
c:EnableReviveLimit() c:EnableReviveLimit()
--token --token
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -30,6 +30,7 @@ function s.initial_effect(c) ...@@ -30,6 +30,7 @@ function s.initial_effect(c)
e2:SetProperty(EFFECT_FLAG_NO_TURN_RESET) e2:SetProperty(EFFECT_FLAG_NO_TURN_RESET)
e2:SetCountLimit(1) e2:SetCountLimit(1)
e2:SetTarget(s.imtg) e2:SetTarget(s.imtg)
e2:SetCondition(s.icon)
e2:SetCost(s.imcost) e2:SetCost(s.imcost)
e2:SetOperation(s.imop) e2:SetOperation(s.imop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
...@@ -124,9 +125,6 @@ function s.imcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -124,9 +125,6 @@ function s.imcost(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function s.imtg(e,tp,eg,ep,ev,re,r,rp,chk) function s.imtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetHandler():IsOriginalCodeRule(12869095) then
Duel.SetChainLimit(s.chainlm)
end
end end
function s.imop(e,tp,eg,ep,ev,re,r,rp) function s.imop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
...@@ -146,10 +144,11 @@ function s.efilter(e,re) ...@@ -146,10 +144,11 @@ function s.efilter(e,re)
return e:GetOwnerPlayer()~=re:GetOwnerPlayer() return e:GetOwnerPlayer()~=re:GetOwnerPlayer()
end end
function s.icon(e,tp,eg,ep,ev,re,r,rp) function s.icon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(id)==0 or e:GetHandler():IsOriginalCodeRule(12869095) and not Duel.IsEnvironment(12869005) return e:GetHandler():GetFlagEffect(id)==0
end end
function s.qcon(e,tp,eg,ep,ev,re,r,rp) function s.qcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(id)>0 and Duel.IsEnvironment(12869005) return e:GetHandler():GetFlagEffect(id)>0
and (Duel.IsEnvironment(12869005) or Duel.IsMainPhase() and Duel.GetCurrentChain()==0 and Duel.GetTurnPlayer()==tp)
end end
function s.qtg(e,tp,eg,ep,ev,re,r,rp,chk) function s.qtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -97,10 +97,11 @@ function s.efcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -97,10 +97,11 @@ function s.efcost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SendtoGrave(cg,REASON_COST) Duel.SendtoGrave(cg,REASON_COST)
end end
function s.eftg(e,tp,eg,ep,ev,re,r,rp,chk) function s.eftg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return e:GetHandler():GetFlagEffect(id+o)==0 end
if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetHandler():IsOriginalCodeRule(12869095) then if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetHandler():IsOriginalCodeRule(12869095) then
Duel.SetChainLimit(s.chainlm) Duel.SetChainLimit(s.chainlm)
end end
e:GetHandler():RegisterFlagEffect(id+o,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end end
function s.efop(e,tp,eg,ep,ev,re,r,rp) function s.efop(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
...@@ -130,10 +131,11 @@ function s.qcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -130,10 +131,11 @@ function s.qcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(id)>0 and Duel.IsEnvironment(12869005) return e:GetHandler():GetFlagEffect(id)>0 and Duel.IsEnvironment(12869005)
end end
function s.qtg(e,tp,eg,ep,ev,re,r,rp,chk) function s.qtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return e:GetHandler():GetFlagEffect(id+o)==0 end
if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) then if e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) then
Duel.SetChainLimit(s.chainlm) Duel.SetChainLimit(s.chainlm)
end end
e:GetHandler():RegisterFlagEffect(id+o,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end end
function s.chainlm(e,ep,tp) function s.chainlm(e,ep,tp)
return tp==ep return tp==ep
......
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