Commit eae4d6e4 authored by POLYMER's avatar POLYMER

fix

parent 23cdb929
...@@ -2,14 +2,15 @@ ...@@ -2,14 +2,15 @@
function c11621418.initial_effect(c) function c11621418.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
--cannot special summon --cannot special summon
local e1=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION) e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(c11621418.splimit) e0:SetValue(c11621418.splimit)
c:RegisterEffect(e1) c:RegisterEffect(e0)
--special summon (hand/grave) --special summon (hand/grave)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(11621418,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND+LOCATION_GRAVE) e1:SetRange(LOCATION_HAND+LOCATION_GRAVE)
...@@ -19,6 +20,7 @@ function c11621418.initial_effect(c) ...@@ -19,6 +20,7 @@ function c11621418.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--negate --negate
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(11621418,1))
e2:SetCategory(CATEGORY_NEGATE+CATEGORY_TOHAND+CATEGORY_SEARCH) e2:SetCategory(CATEGORY_NEGATE+CATEGORY_TOHAND+CATEGORY_SEARCH)
e2:SetType(EFFECT_TYPE_QUICK_O) e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_CHAINING) e2:SetCode(EVENT_CHAINING)
...@@ -30,68 +32,68 @@ function c11621418.initial_effect(c) ...@@ -30,68 +32,68 @@ function c11621418.initial_effect(c)
e2:SetOperation(c11621418.disop) e2:SetOperation(c11621418.disop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Atk up --Atk up
local e2=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_UPDATE_ATTACK) e3:SetCode(EFFECT_UPDATE_ATTACK)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE) e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e2:SetValue(c11621418.atkval) e3:SetValue(c11621418.atkval)
c:RegisterEffect(e2) c:RegisterEffect(e3)
local e3=e2:Clone() local e4=e3:Clone()
e3:SetCode(EFFECT_UPDATE_DEFENSE) e4:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e3) c:RegisterEffect(e4)
--xx --xx
local e1=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD) e5:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CHANGE_CODE) e5:SetCode(EFFECT_CHANGE_CODE)
e1:SetRange(LOCATION_MZONE) e5:SetRange(LOCATION_MZONE)
e1:SetTargetRange(0,0x7f) e5:SetTargetRange(0,0x7f)
e1:SetTarget(c11621418.crtg) e5:SetTarget(c11621418.crtg)
e1:SetValue(11621402) e5:SetValue(11621402)
c:RegisterEffect(e1) c:RegisterEffect(e5)
-- --
local e2=Effect.CreateEffect(c) local e6=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD) e6:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_CHANGE_RACE) e6:SetCode(EFFECT_CHANGE_RACE)
e2:SetRange(LOCATION_MZONE) e6:SetRange(LOCATION_MZONE)
e2:SetTargetRange(0,0x7f) e6:SetTargetRange(0,0x7f)
e2:SetTarget(c11621418.crtg) e6:SetTarget(c11621418.crtg)
e2:SetValue(RACE_ZOMBIE) e6:SetValue(RACE_ZOMBIE)
c:RegisterEffect(e2) c:RegisterEffect(e6)
-- --
local e3=Effect.CreateEffect(c) local e7=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD) e7:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_CHANGE_ATTRIBUTE) e7:SetCode(EFFECT_CHANGE_ATTRIBUTE)
e3:SetRange(LOCATION_MZONE) e7:SetRange(LOCATION_MZONE)
e3:SetTargetRange(0,0x7f) e7:SetTargetRange(0,0x7f)
e3:SetTarget(c11621418.crtg) e7:SetTarget(c11621418.crtg)
e3:SetValue(ATTRIBUTE_LIGHT) e7:SetValue(ATTRIBUTE_LIGHT)
c:RegisterEffect(e3) c:RegisterEffect(e7)
-- --
local e4=Effect.CreateEffect(c) local e8=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD) e8:SetType(EFFECT_TYPE_FIELD)
e4:SetCode(EFFECT_CHANGE_LEVEL) e8:SetCode(EFFECT_CHANGE_LEVEL)
e4:SetRange(LOCATION_MZONE) e8:SetRange(LOCATION_MZONE)
e4:SetTargetRange(0,0x7f) e8:SetTargetRange(0,0x7f)
e4:SetTarget(c11621418.crtg1) e8:SetTarget(c11621418.crtg1)
e4:SetValue(3) e8:SetValue(3)
c:RegisterEffect(e4) c:RegisterEffect(e8)
local e4=Effect.CreateEffect(c) local e9=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD) e9:SetType(EFFECT_TYPE_FIELD)
e4:SetCode(EFFECT_CHANGE_RANK) e9:SetCode(EFFECT_CHANGE_RANK)
e4:SetRange(LOCATION_MZONE) e9:SetRange(LOCATION_MZONE)
e4:SetTargetRange(0,0x7f) e9:SetTargetRange(0,0x7f)
e4:SetTarget(c11621418.crtg2) e9:SetTarget(c11621418.crtg2)
e4:SetValue(3) e9:SetValue(3)
c:RegisterEffect(e4) c:RegisterEffect(e9)
local e4=Effect.CreateEffect(c) local e10=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD) e10:SetType(EFFECT_TYPE_FIELD)
e4:SetCode(EFFECT_UPDATE_LINK) e10:SetCode(EFFECT_UPDATE_LINK)
e4:SetRange(LOCATION_MZONE) e10:SetRange(LOCATION_MZONE)
e4:SetTargetRange(0,0x7f) e10:SetTargetRange(0,0x7f)
e4:SetTarget(c11621418.crtg3) e10:SetTarget(c11621418.crtg3)
e4:SetValue(3) e10:SetValue(3)
c:RegisterEffect(e4) c:RegisterEffect(e10)
if not c11621418.global_check then if not c11621418.global_check then
c11621418.global_check=true c11621418.global_check=true
local ge1=Effect.CreateEffect(c) local ge1=Effect.CreateEffect(c)
...@@ -167,6 +169,7 @@ function c11621418.disop(e,tp,eg,ep,ev,re,r,rp) ...@@ -167,6 +169,7 @@ function c11621418.disop(e,tp,eg,ep,ev,re,r,rp)
if tc and Duel.SendtoHand(tc,tp,REASON_EFFECT)~=0 then if tc and Duel.SendtoHand(tc,tp,REASON_EFFECT)~=0 then
Duel.ConfirmCards(1-tp,tc) Duel.ConfirmCards(1-tp,tc)
if Duel.Release(tc,REASON_RULE)~=0 and Duel.NegateActivation(ev) and c:IsRelateToEffect(e) then if Duel.Release(tc,REASON_RULE)~=0 and Duel.NegateActivation(ev) and c:IsRelateToEffect(e) then
c:RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(11621418,2))
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:SetCode(EVENT_CHAINING) e1:SetCode(EVENT_CHAINING)
......
...@@ -7,7 +7,7 @@ function cm.initial_effect(c) ...@@ -7,7 +7,7 @@ function cm.initial_effect(c)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_CHANGE_POS_E) e1:SetCode(EFFECT_CANNOT_CHANGE_POS_E)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCondition(cm.poscon) e1:SetCondition(cm.poscon)
c:RegisterEffect(e1) c:RegisterEffect(e1)
...@@ -15,7 +15,7 @@ function cm.initial_effect(c) ...@@ -15,7 +15,7 @@ function cm.initial_effect(c)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION) e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.poscon) e2:SetCondition(cm.poscon)
c:RegisterEffect(e2) c:RegisterEffect(e2)
...@@ -23,7 +23,7 @@ function cm.initial_effect(c) ...@@ -23,7 +23,7 @@ function cm.initial_effect(c)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_SET_POSITION) e3:SetCode(EFFECT_SET_POSITION)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE+EFFECT_FLAG_IGNORE_IMMUNE) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetTarget(function(e,c) return c==e:GetHandler() end) e3:SetTarget(function(e,c) return c==e:GetHandler() end)
...@@ -44,12 +44,13 @@ function cm.initial_effect(c) ...@@ -44,12 +44,13 @@ function cm.initial_effect(c)
--set --set
local e5=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
e5:SetDescription(aux.Stringid(m,1)) e5:SetDescription(aux.Stringid(m,1))
e5:SetCategory(CATEGORY_SUMMON)
e5:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e5:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e5:SetCode(EVENT_TO_GRAVE) e5:SetCode(EVENT_TO_GRAVE)
e5:SetProperty(EFFECT_FLAG_DELAY) e5:SetProperty(EFFECT_FLAG_DELAY)
e5:SetCondition(cm.setcon) e5:SetCondition(cm.sumcon)
e5:SetTarget(cm.settg) e5:SetTarget(cm.sumtg)
e5:SetOperation(cm.setop) e5:SetOperation(cm.sumop)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function cm.BRAVE(c) function cm.BRAVE(c)
...@@ -83,24 +84,31 @@ end ...@@ -83,24 +84,31 @@ end
function cm.setfilter(c,e,tp) function cm.setfilter(c,e,tp)
return c:IsFaceup() and c:GetSequence()<5 return c:IsFaceup() and c:GetSequence()<5
end end
function cm.setcon(e) function cm.sumcon(e)
local tp=e:GetHandlerPlayer() local tp=e:GetHandlerPlayer()
return not Duel.IsExistingMatchingCard(cm.setfilter,tp,LOCATION_SZONE,0,1,nil) return not Duel.IsExistingMatchingCard(cm.setfilter,tp,LOCATION_SZONE,0,1,nil)
end end
function cm.settg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.sumfilter(c,tp)
if chk==0 then return e:GetHandler():IsCanTurnSet() and Duel.GetLocationCount(tp,LOCATION_SZONE)>0 end if not cm.BRAVE(c) then return false end
if c:IsLocation(LOCATION_SZONE) and c:IsLevelAbove(5) then
local min,max=c:GetTributeRequirement()
local ct=Duel.GetMatchingGroupCount(Card.IsFacedown,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,c)
local ct1=Duel.GetReleaseGroupCount(tp)
ct=ct+ct1
if ct<1 or ct<min then return false end
end
return c:IsSummonable(true,nil,1)
end end
function cm.setop(e,tp,eg,ep,ev,re,r,rp) function cm.sumtg(e,tp,eg,ep,ev,re,r,rp,chk)
if Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end if chk==0 then return eg:IsExists(cm.sfilter,1,nil,nil,tp) and Duel.IsExistingMatchingCard(cm.sumfilter,tp,LOCATION_HAND+LOCATION_SZONE,0,1,nil,tp) end
local c=e:GetHandler() Duel.SetOperationInfo(0,CATEGORY_SUMMON,nil,1,0,0)
if not c:IsRelateToEffect(e) then return end end
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEDOWN,true) function cm.sumop(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmCards(1-tp,c) if not e:GetHandler():IsRelateToEffect(e) then return end
local e1=Effect.CreateEffect(e:GetHandler()) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SUMMON)
e1:SetCode(EFFECT_CHANGE_TYPE) local g=Duel.SelectMatchingCard(tp,cm.sumfilter,tp,LOCATION_HAND+LOCATION_SZONE,0,1,1,nil,tp)
e1:SetType(EFFECT_TYPE_SINGLE) local tc=g:GetFirst()
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) if tc then
e1:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET) Duel.Summon(tp,tc,true,nil,1)
e1:SetValue(TYPE_SPELL+TYPE_CONTINUOUS) end
c:RegisterEffect(e1)
end end
\ No newline at end of file
...@@ -7,7 +7,7 @@ function cm.initial_effect(c) ...@@ -7,7 +7,7 @@ function cm.initial_effect(c)
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetCode(EFFECT_CANNOT_CHANGE_POS_E) e0:SetCode(EFFECT_CANNOT_CHANGE_POS_E)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetRange(LOCATION_MZONE) e0:SetRange(LOCATION_MZONE)
e0:SetCondition(cm.poscon) e0:SetCondition(cm.poscon)
c:RegisterEffect(e0) c:RegisterEffect(e0)
...@@ -24,7 +24,7 @@ function cm.initial_effect(c) ...@@ -24,7 +24,7 @@ function cm.initial_effect(c)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION) e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.poscon) e2:SetCondition(cm.poscon)
c:RegisterEffect(e2) c:RegisterEffect(e2)
...@@ -32,7 +32,7 @@ function cm.initial_effect(c) ...@@ -32,7 +32,7 @@ function cm.initial_effect(c)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_SET_POSITION) e3:SetCode(EFFECT_SET_POSITION)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE+EFFECT_FLAG_IGNORE_IMMUNE) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetTarget(function(e,c) return c==e:GetHandler() end) e3:SetTarget(function(e,c) return c==e:GetHandler() end)
...@@ -128,7 +128,7 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -128,7 +128,7 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
if Duel.SendtoDeck(g,nil,2,REASON_EFFECT)~=0 and Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil,tp) and Duel.SelectYesNo(tp,aux.Stringid(m,2)) then if Duel.SendtoDeck(g,nil,2,REASON_EFFECT)~=0 and Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil,tp) and Duel.SelectYesNo(tp,aux.Stringid(m,2)) then
Duel.BreakEffect() Duel.BreakEffect()
local g=Duel.GetFirstMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,nil) local g=Duel.GetFirstMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,nil)
if g then if #g>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
end end
......
...@@ -7,7 +7,7 @@ function cm.initial_effect(c) ...@@ -7,7 +7,7 @@ function cm.initial_effect(c)
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetCode(EFFECT_CANNOT_CHANGE_POS_E) e0:SetCode(EFFECT_CANNOT_CHANGE_POS_E)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetRange(LOCATION_MZONE) e0:SetRange(LOCATION_MZONE)
e0:SetCondition(cm.poscon) e0:SetCondition(cm.poscon)
c:RegisterEffect(e0) c:RegisterEffect(e0)
...@@ -24,7 +24,7 @@ function cm.initial_effect(c) ...@@ -24,7 +24,7 @@ function cm.initial_effect(c)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION) e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.poscon) e2:SetCondition(cm.poscon)
c:RegisterEffect(e2) c:RegisterEffect(e2)
...@@ -32,7 +32,7 @@ function cm.initial_effect(c) ...@@ -32,7 +32,7 @@ function cm.initial_effect(c)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_SET_POSITION) e3:SetCode(EFFECT_SET_POSITION)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE+EFFECT_FLAG_IGNORE_IMMUNE) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetTarget(function(e,c) return c==e:GetHandler() end) e3:SetTarget(function(e,c) return c==e:GetHandler() end)
......
...@@ -7,7 +7,7 @@ function cm.initial_effect(c) ...@@ -7,7 +7,7 @@ function cm.initial_effect(c)
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetCode(EFFECT_CANNOT_CHANGE_POS_E) e0:SetCode(EFFECT_CANNOT_CHANGE_POS_E)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetRange(LOCATION_MZONE) e0:SetRange(LOCATION_MZONE)
e0:SetCondition(cm.poscon) e0:SetCondition(cm.poscon)
c:RegisterEffect(e0) c:RegisterEffect(e0)
...@@ -24,7 +24,7 @@ function cm.initial_effect(c) ...@@ -24,7 +24,7 @@ function cm.initial_effect(c)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION) e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.poscon) e2:SetCondition(cm.poscon)
c:RegisterEffect(e2) c:RegisterEffect(e2)
...@@ -32,7 +32,7 @@ function cm.initial_effect(c) ...@@ -32,7 +32,7 @@ function cm.initial_effect(c)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_SET_POSITION) e3:SetCode(EFFECT_SET_POSITION)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE+EFFECT_FLAG_IGNORE_IMMUNE) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetTarget(function(e,c) return c==e:GetHandler() end) e3:SetTarget(function(e,c) return c==e:GetHandler() end)
......
...@@ -7,7 +7,7 @@ function cm.initial_effect(c) ...@@ -7,7 +7,7 @@ function cm.initial_effect(c)
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetCode(EFFECT_CANNOT_CHANGE_POS_E) e0:SetCode(EFFECT_CANNOT_CHANGE_POS_E)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetRange(LOCATION_MZONE) e0:SetRange(LOCATION_MZONE)
e0:SetCondition(cm.poscon) e0:SetCondition(cm.poscon)
c:RegisterEffect(e0) c:RegisterEffect(e0)
...@@ -24,7 +24,7 @@ function cm.initial_effect(c) ...@@ -24,7 +24,7 @@ function cm.initial_effect(c)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION) e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.poscon) e2:SetCondition(cm.poscon)
c:RegisterEffect(e2) c:RegisterEffect(e2)
...@@ -32,7 +32,7 @@ function cm.initial_effect(c) ...@@ -32,7 +32,7 @@ function cm.initial_effect(c)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_SET_POSITION) e3:SetCode(EFFECT_SET_POSITION)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE+EFFECT_FLAG_IGNORE_IMMUNE) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetTarget(function(e,c) return c==e:GetHandler() end) e3:SetTarget(function(e,c) return c==e:GetHandler() end)
...@@ -122,12 +122,12 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -122,12 +122,12 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
end end
end end
else else
local tg=Duel.GetFirstMatchingCard(cm.filter,tp,LOCATION_DECK,0,nil,tp) local tg=Duel.GetFirstMatchingCard(cm.filter,tp,LOCATION_DECK,0,nil)
local tc=tg local tc=tg
if tc then if tc then
local te=tc:GetActivateEffect() local te=tc:GetActivateEffect()
local b1=tc:IsAbleToHand() local b1=tc:IsAbleToHand()
local b2=te:IsActivatable(tp,true,true) local b2=te:IsActivatable(tp)
if b1 and (not b2 or Duel.SelectYesNo(tp,aux.Stringid(m,2))) then if b1 and (not b2 or Duel.SelectYesNo(tp,aux.Stringid(m,2))) then
Duel.SendtoHand(tc,nil,REASON_EFFECT) Duel.SendtoHand(tc,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,tc) Duel.ConfirmCards(1-tp,tc)
......
...@@ -7,7 +7,7 @@ function cm.initial_effect(c) ...@@ -7,7 +7,7 @@ function cm.initial_effect(c)
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetCode(EFFECT_CANNOT_CHANGE_POS_E) e0:SetCode(EFFECT_CANNOT_CHANGE_POS_E)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetRange(LOCATION_MZONE) e0:SetRange(LOCATION_MZONE)
e0:SetCondition(cm.poscon) e0:SetCondition(cm.poscon)
c:RegisterEffect(e0) c:RegisterEffect(e0)
...@@ -24,7 +24,7 @@ function cm.initial_effect(c) ...@@ -24,7 +24,7 @@ function cm.initial_effect(c)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION) e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.poscon) e2:SetCondition(cm.poscon)
c:RegisterEffect(e2) c:RegisterEffect(e2)
...@@ -32,7 +32,7 @@ function cm.initial_effect(c) ...@@ -32,7 +32,7 @@ function cm.initial_effect(c)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_SET_POSITION) e3:SetCode(EFFECT_SET_POSITION)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE+EFFECT_FLAG_IGNORE_IMMUNE) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetTarget(function(e,c) return c==e:GetHandler() end) e3:SetTarget(function(e,c) return c==e:GetHandler() end)
...@@ -77,9 +77,8 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -77,9 +77,8 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=g:GetFirst() local tc=g:GetFirst()
while tc do while tc do
bool1=1 bool1=1
if not tc:IsImmuneToEffect(e) and Duel.GetLocationCount(1-tp,LOCATION_SZONE)>0 if Duel.GetLocationCount(1-tp,LOCATION_SZONE)>0 and tc:IsCanTurnSet() and not tc:IsType(TYPE_PENDULUM+TYPE_TOKEN) then
and not tc:IsType(TYPE_PENDULUM+TYPE_TOKEN) then if Duel.MoveToField(tc,tp,1-tp,LOCATION_SZONE,POS_FACEDOWN,true)~=0 then
if Duel.MoveToField(tc,tp,1-tp,LOCATION_SZONE,POS_FACEDOWN,true)~=0 then
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetCode(EFFECT_CHANGE_TYPE) e1:SetCode(EFFECT_CHANGE_TYPE)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
...@@ -88,9 +87,11 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -88,9 +87,11 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
e1:SetValue(TYPE_SPELL+TYPE_CONTINUOUS) e1:SetValue(TYPE_SPELL+TYPE_CONTINUOUS)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
bool1=0 bool1=0
else
Duel.Remove(tc,POS_FACEDOWN,REASON_RULE)
end end
end end
if tc:IsAbleToRemove(tp,POS_FACEDOWN,REASON_RULE) and bool1==1 then if not tc:IsType(TYPE_TOKEN) and (tc:IsFaceup() or not tc:IsLocation(LOCATION_REMOVED)) and bool1==1 then
Duel.Remove(tc,POS_FACEDOWN,REASON_RULE) Duel.Remove(tc,POS_FACEDOWN,REASON_RULE)
end end
tc=g:GetNext() tc=g:GetNext()
......
...@@ -7,7 +7,7 @@ function cm.initial_effect(c) ...@@ -7,7 +7,7 @@ function cm.initial_effect(c)
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetCode(EFFECT_CANNOT_CHANGE_POS_E) e0:SetCode(EFFECT_CANNOT_CHANGE_POS_E)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetRange(LOCATION_MZONE) e0:SetRange(LOCATION_MZONE)
e0:SetCondition(cm.poscon) e0:SetCondition(cm.poscon)
c:RegisterEffect(e0) c:RegisterEffect(e0)
...@@ -24,7 +24,7 @@ function cm.initial_effect(c) ...@@ -24,7 +24,7 @@ function cm.initial_effect(c)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION) e2:SetCode(EFFECT_CANNOT_CHANGE_POSITION)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.poscon) e2:SetCondition(cm.poscon)
c:RegisterEffect(e2) c:RegisterEffect(e2)
...@@ -32,7 +32,7 @@ function cm.initial_effect(c) ...@@ -32,7 +32,7 @@ function cm.initial_effect(c)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_SET_POSITION) e3:SetCode(EFFECT_SET_POSITION)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE+EFFECT_FLAG_IGNORE_IMMUNE) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetTarget(function(e,c) return c==e:GetHandler() end) e3:SetTarget(function(e,c) return c==e:GetHandler() end)
...@@ -103,6 +103,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -103,6 +103,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.ChangePosition(tc,POS_FACEDOWN_DEFENSE) Duel.ChangePosition(tc,POS_FACEDOWN_DEFENSE)
else else
Duel.ChangePosition(tc,POS_FACEDOWN) Duel.ChangePosition(tc,POS_FACEDOWN)
Duel.RaiseEvent(tc,EVENT_SSET,e,REASON_EFFECT,tp,tp,0)
end end
local g=Duel.GetOperatedGroup() local g=Duel.GetOperatedGroup()
if #g>0 then bool1=0 end if #g>0 then bool1=0 end
......
...@@ -2,6 +2,21 @@ ...@@ -2,6 +2,21 @@
local m=14000508 local m=14000508
local cm=_G["c"..m] local cm=_G["c"..m]
cm.named_with_Spositch=1 cm.named_with_Spositch=1
if not require and loadfile then
function require(str)
require_list=require_list or {}
if not require_list[str] then
if string.find(str,"%.") then
require_list[str]=loadfile(str)
else
require_list[str]=loadfile(str..".lua")
end
require_list[str]()
return require_list[str]
end
return require_list[str]
end
end
xpcall(function() require("expansions/script/c14000501") end,function() require("script/c14000501") end) xpcall(function() require("expansions/script/c14000501") end,function() require("script/c14000501") end)
function cm.initial_effect(c) function cm.initial_effect(c)
--xyz summon --xyz summon
...@@ -11,7 +26,7 @@ function cm.initial_effect(c) ...@@ -11,7 +26,7 @@ function cm.initial_effect(c)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE+EFFECT_FLAG_CANNOT_INACTIVATE) e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCode(EVENT_CHAIN_SOLVING) e1:SetCode(EVENT_CHAIN_SOLVING)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1) e1:SetCountLimit(1)
......
...@@ -4,7 +4,7 @@ function s.initial_effect(c) ...@@ -4,7 +4,7 @@ function s.initial_effect(c)
--tograve --tograve
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0)) e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_TOGRAVE) e1:SetCategory(CATEGORY_TOGRAVE+CATEGORY_DECKDES)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_STANDBY_PHASE) e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_STANDBY_PHASE)
......
...@@ -131,4 +131,7 @@ function s.fop(e,tp,eg,ep,ev,re,r,rp) ...@@ -131,4 +131,7 @@ function s.fop(e,tp,eg,ep,ev,re,r,rp)
end end
tc:CompleteProcedure() tc:CompleteProcedure()
end end
end
function s.fdfilter(c)
return c:IsLocation(LOCATION_MZONE) and c:IsFacedown() or c:IsLocation(LOCATION_HAND)
end end
\ No newline at end of file
...@@ -10,7 +10,7 @@ function c9910663.initial_effect(c) ...@@ -10,7 +10,7 @@ function c9910663.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--destroy --destroy
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_DESTROY+CATEGORY_SPECIAL_SUMMON) e2:SetCategory(CATEGORY_DESTROY+CATEGORY_SPECIAL_SUMMON+CATEGORY_DECKDES)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_SUMMON_SUCCESS) e2:SetCode(EVENT_SUMMON_SUCCESS)
e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET) e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_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