Commit 564e85f6 authored by DailyShana's avatar DailyShana Committed by mercury233

update effect triggered by activation of effects (#1296)

parent bfcf52a3
...@@ -15,18 +15,11 @@ function c10071151.initial_effect(c) ...@@ -15,18 +15,11 @@ function c10071151.initial_effect(c)
e1:SetOperation(c10071151.desop) e1:SetOperation(c10071151.desop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--mill --mill
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_MZONE)
e2:SetOperation(aux.chainreg)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(10071151,1)) e3:SetDescription(aux.Stringid(10071151,1))
e3:SetCategory(CATEGORY_DECKDES) e3:SetCategory(CATEGORY_DECKDES)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e3:SetCode(EVENT_CHAIN_SOLVED) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1) e3:SetCountLimit(1)
e3:SetCondition(c10071151.ddcon) e3:SetCondition(c10071151.ddcon)
...@@ -66,7 +59,7 @@ function c10071151.ddcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -66,7 +59,7 @@ function c10071151.ddcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local rc=re:GetHandler() local rc=re:GetHandler()
return re:IsActiveType(TYPE_MONSTER) and rc~=c return re:IsActiveType(TYPE_MONSTER) and rc~=c
and rc:IsSetCard(0x38) and rc:IsControler(tp) and c:GetFlagEffect(1)>0 and rc:IsSetCard(0x38) and rc:IsControler(tp)
end end
function c10071151.ddtg(e,tp,eg,ep,ev,re,r,rp,chk) function c10071151.ddtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -12,18 +12,11 @@ function c13923256.initial_effect(c) ...@@ -12,18 +12,11 @@ function c13923256.initial_effect(c)
e1:SetOperation(c13923256.thop) e1:SetOperation(c13923256.thop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--destroy --destroy
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_MZONE)
e2:SetOperation(aux.chainreg)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(13923256,1)) e3:SetDescription(aux.Stringid(13923256,1))
e3:SetCategory(CATEGORY_DESTROY) e3:SetCategory(CATEGORY_DESTROY)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,13923257) e3:SetCountLimit(1,13923257)
...@@ -59,7 +52,7 @@ function c13923256.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -59,7 +52,7 @@ function c13923256.thop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c13923256.descon(e,tp,eg,ep,ev,re,r,rp) function c13923256.descon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsSetCard(0x137) and rp==tp and re:GetHandler()~=e:GetHandler() and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsSetCard(0x137) and rp==tp and re:GetHandler()~=e:GetHandler()
end end
function c13923256.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c13923256.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and chkc:IsType(TYPE_SPELL+TYPE_TRAP) end if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and chkc:IsType(TYPE_SPELL+TYPE_TRAP) end
......
--天空聖騎士アークパーシアス --天空聖騎士アークパーシアス
function c16261341.initial_effect(c) function c16261341.initial_effect(c)
--special summon --special summon
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_CHAINING)
e1:SetRange(LOCATION_HAND+LOCATION_GRAVE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetOperation(aux.chainreg)
c:RegisterEffect(e1)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(16261341,0)) e3:SetDescription(aux.Stringid(16261341,0))
e3:SetCategory(CATEGORY_SPECIAL_SUMMON) e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetRange(LOCATION_HAND+LOCATION_GRAVE) e3:SetRange(LOCATION_HAND+LOCATION_GRAVE)
e3:SetCode(EVENT_CHAIN_SOLVED) e3:SetCode(EVENT_CHAINING)
e3:SetProperty(EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCondition(c16261341.spcon1) e3:SetCondition(c16261341.spcon1)
e3:SetCost(c16261341.spcost) e3:SetCost(c16261341.spcost)
...@@ -41,7 +34,7 @@ function c16261341.initial_effect(c) ...@@ -41,7 +34,7 @@ function c16261341.initial_effect(c)
c:RegisterEffect(e6) c:RegisterEffect(e6)
end end
function c16261341.spcon1(e,tp,eg,ep,ev,re,r,rp) function c16261341.spcon1(e,tp,eg,ep,ev,re,r,rp)
return rp==tp and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_COUNTER) and e:GetHandler():GetFlagEffect(1)>0 return rp==tp and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_COUNTER)
end end
function c16261341.spcon2(e,tp,eg,ep,ev,re,r,rp) function c16261341.spcon2(e,tp,eg,ep,ev,re,r,rp)
local dp=Duel.GetChainInfo(ev,CHAININFO_DISABLE_PLAYER) local dp=Duel.GetChainInfo(ev,CHAININFO_DISABLE_PLAYER)
......
...@@ -23,18 +23,11 @@ function c19959563.initial_effect(c) ...@@ -23,18 +23,11 @@ function c19959563.initial_effect(c)
e2:SetOperation(c19959563.operation) e2:SetOperation(c19959563.operation)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--mill --mill
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE)
e3:SetOperation(aux.chainreg)
c:RegisterEffect(e3)
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(19959563,1)) e4:SetDescription(aux.Stringid(19959563,1))
e4:SetCategory(CATEGORY_DECKDES) e4:SetCategory(CATEGORY_DECKDES)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e4:SetCode(EVENT_CHAIN_SOLVED) e4:SetCode(EVENT_CHAINING)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetCountLimit(1) e4:SetCountLimit(1)
e4:SetCondition(c19959563.ddcon) e4:SetCondition(c19959563.ddcon)
...@@ -72,7 +65,7 @@ function c19959563.ddcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -72,7 +65,7 @@ function c19959563.ddcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local rc=re:GetHandler() local rc=re:GetHandler()
return re:IsActiveType(TYPE_MONSTER) and rc~=c return re:IsActiveType(TYPE_MONSTER) and rc~=c
and rc:IsSetCard(0x38) and rc:IsControler(tp) and c:GetFlagEffect(1)>0 and rc:IsSetCard(0x38) and rc:IsControler(tp)
end end
function c19959563.ddtg(e,tp,eg,ep,ev,re,r,rp,chk) function c19959563.ddtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -12,18 +12,11 @@ function c2645637.initial_effect(c) ...@@ -12,18 +12,11 @@ function c2645637.initial_effect(c)
e1:SetOperation(c2645637.disop) e1:SetOperation(c2645637.disop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--atk --atk
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(2645637,0)) e2:SetDescription(aux.Stringid(2645637,0))
e2:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_DISABLE) e2:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_DISABLE)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_CHAIN_SOLVING) e2:SetCode(EVENT_CHAINING)
e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET) e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(2,2645637) e2:SetCountLimit(2,2645637)
...@@ -43,7 +36,6 @@ function c2645637.disop(e,tp,eg,ep,ev,re,r,rp) ...@@ -43,7 +36,6 @@ function c2645637.disop(e,tp,eg,ep,ev,re,r,rp)
end end
function c2645637.atkcon(e,tp,eg,ep,ev,re,r,rp) function c2645637.atkcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_MONSTER) and Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION)==LOCATION_GRAVE return re:IsActiveType(TYPE_MONSTER) and Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION)==LOCATION_GRAVE
and e:GetHandler():GetFlagEffect(1)>0
end end
function c2645637.spfilter(c) function c2645637.spfilter(c)
return c:GetSummonLocation()==LOCATION_GRAVE return c:GetSummonLocation()==LOCATION_GRAVE
......
...@@ -22,29 +22,13 @@ function c2819435.initial_effect(c) ...@@ -22,29 +22,13 @@ function c2819435.initial_effect(c)
local e3=e2:Clone() local e3=e2:Clone()
e3:SetCode(EVENT_SPSUMMON_SUCCESS) e3:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--chk
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e4:SetCode(EVENT_CHAINING)
e4:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e4:SetRange(LOCATION_FZONE)
e4:SetOperation(c2819435.reg1)
c:RegisterEffect(e4)
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e5:SetCode(EVENT_CHAIN_SOLVED)
e5:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e5:SetRange(LOCATION_FZONE)
e5:SetOperation(c2819435.reg2)
c:RegisterEffect(e5)
--token --token
local e6=Effect.CreateEffect(c) local e6=Effect.CreateEffect(c)
e6:SetDescription(aux.Stringid(2819435,1)) e6:SetDescription(aux.Stringid(2819435,1))
e6:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOKEN) e6:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOKEN)
e6:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e6:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e6:SetCode(EVENT_CHAIN_END) e6:SetCode(EVENT_CHAINING)
e6:SetRange(LOCATION_FZONE) e6:SetRange(LOCATION_FZONE)
e6:SetCondition(c2819435.spcon)
e6:SetCost(c2819435.cost) e6:SetCost(c2819435.cost)
e6:SetTarget(c2819435.sptg) e6:SetTarget(c2819435.sptg)
e6:SetOperation(c2819435.spop) e6:SetOperation(c2819435.spop)
...@@ -94,27 +78,12 @@ function c2819435.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -94,27 +78,12 @@ function c2819435.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
end end
end end
function c2819435.reg1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:GetFlagEffect(2819435)>0 then
c:ResetFlagEffect(2819435)
end
if c:GetFlagEffect(1)==0 then
c:RegisterFlagEffect(1,RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET+RESET_CHAIN,0,1)
end
end
function c2819435.reg2(e,tp,eg,ep,ev,re,r,rp)
if rp==1-tp and e:GetHandler():GetFlagEffect(1)>0 then
e:GetHandler():RegisterFlagEffect(2819435,RESET_EVENT+RESETS_STANDARD,0,1)
end
end
function c2819435.spcon(e,tp,eg,ep,ev,re,r,rp)
return not Duel.IsExistingMatchingCard(Card.IsType,tp,LOCATION_MZONE,0,1,nil,TYPE_TOKEN)
and e:GetHandler():GetFlagEffect(2819435)>0
end
function c2819435.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c2819435.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsPlayerCanSpecialSummonMonster(tp,2819436,0xfa,0x4011,2000,2000,6,RACE_WYRM,ATTRIBUTE_WATER) end and Duel.IsPlayerCanSpecialSummonMonster(tp,2819436,0xfa,0x4011,2000,2000,6,RACE_WYRM,ATTRIBUTE_WATER)
and e:GetHandler():GetFlagEffect(2819435)==0
and not Duel.IsExistingMatchingCard(Card.IsType,tp,LOCATION_MZONE,0,1,nil,TYPE_TOKEN) end
e:GetHandler():RegisterFlagEffect(2819435,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,0,1)
Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,1,0,0) Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,0,0)
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription()) Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
......
...@@ -9,18 +9,11 @@ function c28201945.initial_effect(c) ...@@ -9,18 +9,11 @@ function c28201945.initial_effect(c)
e1:SetValue(c28201945.efilter) e1:SetValue(c28201945.efilter)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--spsummon --spsummon
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_MZONE)
e2:SetOperation(aux.chainreg)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(28201945,0)) e3:SetDescription(aux.Stringid(28201945,0))
e3:SetCategory(CATEGORY_SEARCH+CATEGORY_SPECIAL_SUMMON) e3:SetCategory(CATEGORY_SEARCH+CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetProperty(EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCountLimit(1,28201945) e3:SetCountLimit(1,28201945)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
...@@ -35,7 +28,7 @@ function c28201945.efilter(e,te) ...@@ -35,7 +28,7 @@ function c28201945.efilter(e,te)
end end
function c28201945.spcon(e,tp,eg,ep,ev,re,r,rp) function c28201945.spcon(e,tp,eg,ep,ev,re,r,rp)
local c=re:GetHandler() local c=re:GetHandler()
return rp==tp and re:IsHasType(EFFECT_TYPE_ACTIVATE) and c:GetType()==TYPE_TRAP and c:IsSetCard(0x4c,0x89) and e:GetHandler():GetFlagEffect(1)>0 return rp==tp and re:IsHasType(EFFECT_TYPE_ACTIVATE) and c:GetType()==TYPE_TRAP and c:IsSetCard(0x4c,0x89)
end end
function c28201945.filter(c,e,tp,ft) function c28201945.filter(c,e,tp,ft)
return c:IsSetCard(0x108a) and c:GetCode()~=28201945 and c:IsType(TYPE_MONSTER) and (c:IsAbleToHand() or (ft>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false))) return c:IsSetCard(0x108a) and c:GetCode()~=28201945 and c:IsType(TYPE_MONSTER) and (c:IsAbleToHand() or (ft>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false)))
......
...@@ -12,20 +12,12 @@ function c31629407.initial_effect(c) ...@@ -12,20 +12,12 @@ function c31629407.initial_effect(c)
e2:SetCode(EFFECT_TRAP_ACT_IN_HAND) e2:SetCode(EFFECT_TRAP_ACT_IN_HAND)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--special summon --special summon
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetCondition(aux.mskregcon)
e0:SetOperation(aux.mskreg)
c:RegisterEffect(e0)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(31629407,0)) e3:SetDescription(aux.Stringid(31629407,0))
e3:SetCategory(CATEGORY_SPECIAL_SUMMON) e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,31629407) e3:SetCountLimit(1,31629407)
e3:SetCondition(c31629407.spcon) e3:SetCondition(c31629407.spcon)
...@@ -34,7 +26,7 @@ function c31629407.initial_effect(c) ...@@ -34,7 +26,7 @@ function c31629407.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c31629407.spcon(e,tp,eg,ep,ev,re,r,rp) function c31629407.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(ev)>0 return re:IsHasType(EFFECT_TYPE_ACTIVATE) and e:GetHandler():GetColumnGroup():IsContains(re:GetHandler())
end end
function c31629407.spfilter(c,e,tp) function c31629407.spfilter(c,e,tp)
return c:IsLevelBelow(4) and c:IsSetCard(0x108) and not c:IsCode(31629407) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE) return c:IsLevelBelow(4) and c:IsSetCard(0x108) and not c:IsCode(31629407) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE)
......
...@@ -12,20 +12,12 @@ function c32841045.initial_effect(c) ...@@ -12,20 +12,12 @@ function c32841045.initial_effect(c)
e2:SetCode(EFFECT_TRAP_ACT_IN_HAND) e2:SetCode(EFFECT_TRAP_ACT_IN_HAND)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--search --search
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetCondition(aux.mskregcon)
e0:SetOperation(aux.mskreg)
c:RegisterEffect(e0)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(32841045,0)) e3:SetDescription(aux.Stringid(32841045,0))
e3:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e3:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,32841045) e3:SetCountLimit(1,32841045)
e3:SetCondition(c32841045.thcon) e3:SetCondition(c32841045.thcon)
...@@ -34,7 +26,7 @@ function c32841045.initial_effect(c) ...@@ -34,7 +26,7 @@ function c32841045.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c32841045.thcon(e,tp,eg,ep,ev,re,r,rp) function c32841045.thcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(ev)>0 return re:IsHasType(EFFECT_TYPE_ACTIVATE) and e:GetHandler():GetColumnGroup():IsContains(re:GetHandler())
end end
function c32841045.thfilter(c,rc) function c32841045.thfilter(c,rc)
return c:IsSetCard(0x108) and not c:IsCode(rc:GetCode()) and c:IsAbleToHand() return c:IsSetCard(0x108) and not c:IsCode(rc:GetCode()) and c:IsAbleToHand()
......
...@@ -10,19 +10,12 @@ function c33158448.initial_effect(c) ...@@ -10,19 +10,12 @@ function c33158448.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetValue(c33158448.atkval) e1:SetValue(c33158448.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_MZONE)
e2:SetOperation(aux.chainreg)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(33158448,0)) e3:SetDescription(aux.Stringid(33158448,0))
e3:SetCategory(CATEGORY_LVCHANGE) e3:SetCategory(CATEGORY_LVCHANGE)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCondition(c33158448.lvcon) e3:SetCondition(c33158448.lvcon)
e3:SetOperation(c33158448.lvop) e3:SetOperation(c33158448.lvop)
...@@ -50,7 +43,7 @@ function c33158448.atkval(e,c) ...@@ -50,7 +43,7 @@ function c33158448.atkval(e,c)
return c:GetLevel()*300 return c:GetLevel()*300
end end
function c33158448.lvcon(e,tp,eg,ep,ev,re,r,rp) function c33158448.lvcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107) and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107)
end end
function c33158448.lvop(e,tp,eg,ep,ev,re,r,rp) function c33158448.lvop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -16,25 +16,18 @@ function c35191415.initial_effect(c) ...@@ -16,25 +16,18 @@ function c35191415.initial_effect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetRange(LOCATION_HAND) e2:SetRange(LOCATION_HAND)
e2:SetCode(EVENT_CHAIN_SOLVING) e2:SetCode(EVENT_CHAINING)
e2:SetCountLimit(1,35191415) e2:SetCountLimit(1,35191415)
e2:SetCondition(c35191415.condition1) e2:SetCondition(c35191415.condition1)
e2:SetTarget(c35191415.target1) e2:SetTarget(c35191415.target1)
e2:SetOperation(c35191415.operation1) e2:SetOperation(c35191415.operation1)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--spsummon (DM) --spsummon (DM)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e3:SetCode(EVENT_CHAINING)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetRange(LOCATION_MZONE)
e3:SetOperation(aux.chainreg)
c:RegisterEffect(e3)
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(35191415,1)) e4:SetDescription(aux.Stringid(35191415,1))
e4:SetCategory(CATEGORY_SPECIAL_SUMMON) e4:SetCategory(CATEGORY_SPECIAL_SUMMON)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e4:SetCode(EVENT_CHAIN_SOLVING) e4:SetCode(EVENT_CHAINING)
e4:SetProperty(EFFECT_FLAG_NO_TURN_RESET+EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY) e4:SetProperty(EFFECT_FLAG_NO_TURN_RESET+EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetCountLimit(1,35191416) e4:SetCountLimit(1,35191416)
...@@ -58,7 +51,7 @@ function c35191415.operation1(e,tp,eg,ep,ev,re,r,rp) ...@@ -58,7 +51,7 @@ function c35191415.operation1(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c35191415.condition2(e,tp,eg,ep,ev,re,r,rp) function c35191415.condition2(e,tp,eg,ep,ev,re,r,rp)
return rp==tp and re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and e:GetHandler():GetFlagEffect(1)>0 return rp==tp and re:IsActiveType(TYPE_SPELL+TYPE_TRAP)
end end
function c35191415.filter(c,e,tp) function c35191415.filter(c,e,tp)
return c:IsCode(46986414) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsCode(46986414) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
......
...@@ -6,7 +6,7 @@ function c35488287.initial_effect(c) ...@@ -6,7 +6,7 @@ function c35488287.initial_effect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY) e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_CHAIN_SOLVING) e1:SetCode(EVENT_CHAINING)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,35488287) e1:SetCountLimit(1,35488287)
e1:SetCondition(c35488287.spcon) e1:SetCondition(c35488287.spcon)
......
...@@ -16,18 +16,10 @@ function c36429703.initial_effect(c) ...@@ -16,18 +16,10 @@ function c36429703.initial_effect(c)
e1:SetOperation(c36429703.spop) e1:SetOperation(c36429703.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--set --set
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_MZONE)
e2:SetCondition(c36429703.regcon)
e2:SetOperation(aux.chainreg)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(36429703,1)) e3:SetDescription(aux.Stringid(36429703,1))
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e3:SetCode(EVENT_CHAIN_SOLVED) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,36429704) e3:SetCountLimit(1,36429704)
e3:SetCondition(c36429703.setcon) e3:SetCondition(c36429703.setcon)
...@@ -74,13 +66,10 @@ function c36429703.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -74,13 +66,10 @@ function c36429703.spop(e,tp,eg,ep,ev,re,r,rp)
end end
Duel.SpecialSummonComplete() Duel.SpecialSummonComplete()
end end
function c36429703.regcon(e,tp,eg,ep,ev,re,r,rp) function c36429703.setcon(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler() local rc=re:GetHandler()
return re:IsActiveType(TYPE_XYZ) and rc:IsSetCard(0xba) and rc:IsControler(tp) return re:IsActiveType(TYPE_XYZ) and rc:IsSetCard(0xba) and rc:IsControler(tp)
end end
function c36429703.setcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(1)>0
end
function c36429703.setfilter(c) function c36429703.setfilter(c)
return c:IsSetCard(0x95) and c:IsType(TYPE_SPELL) and c:IsSSetable() return c:IsSetCard(0x95) and c:IsType(TYPE_SPELL) and c:IsSSetable()
end end
......
...@@ -23,18 +23,11 @@ function c37414347.initial_effect(c) ...@@ -23,18 +23,11 @@ function c37414347.initial_effect(c)
e3:SetValue(1) e3:SetValue(1)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--counter --counter
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(37414347,0)) e4:SetDescription(aux.Stringid(37414347,0))
e4:SetCategory(CATEGORY_COUNTER) e4:SetCategory(CATEGORY_COUNTER)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e4:SetCode(EVENT_CHAIN_SOLVING) e4:SetCode(EVENT_CHAINING)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetCondition(c37414347.ctcon) e4:SetCondition(c37414347.ctcon)
e4:SetTarget(c37414347.cttg) e4:SetTarget(c37414347.cttg)
...@@ -63,7 +56,7 @@ function c37414347.atkval(e,c) ...@@ -63,7 +56,7 @@ function c37414347.atkval(e,c)
return lg:GetSum(Card.GetLevel)*300 return lg:GetSum(Card.GetLevel)*300
end end
function c37414347.ctcon(e,tp,eg,ep,ev,re,r,rp) function c37414347.ctcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107) and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107)
end end
function c37414347.cttg(e,tp,eg,ep,ev,re,r,rp,chk) function c37414347.cttg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -21,18 +21,11 @@ function c40140448.initial_effect(c) ...@@ -21,18 +21,11 @@ function c40140448.initial_effect(c)
e2:SetOperation(c40140448.srop) e2:SetOperation(c40140448.srop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--to hand --to hand
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE)
e3:SetOperation(aux.chainreg)
c:RegisterEffect(e3)
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(40140448,1)) e4:SetDescription(aux.Stringid(40140448,1))
e4:SetCategory(CATEGORY_TOHAND) e4:SetCategory(CATEGORY_TOHAND)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e4:SetCode(EVENT_CHAIN_SOLVING) e4:SetCode(EVENT_CHAINING)
e4:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY) e4:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetCountLimit(1,40140449) e4:SetCountLimit(1,40140449)
...@@ -68,7 +61,7 @@ function c40140448.srop(e,tp,eg,ep,ev,re,r,rp) ...@@ -68,7 +61,7 @@ function c40140448.srop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c40140448.thcon(e,tp,eg,ep,ev,re,r,rp) function c40140448.thcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsSetCard(0x137) and rp==tp and re:GetHandler()~=e:GetHandler() and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsSetCard(0x137) and rp==tp and re:GetHandler()~=e:GetHandler()
end end
function c40140448.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c40140448.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsAbleToHand() end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsAbleToHand() end
......
...@@ -4,19 +4,12 @@ function c4179255.initial_effect(c) ...@@ -4,19 +4,12 @@ function c4179255.initial_effect(c)
aux.AddSynchroProcedure(c,nil,aux.NonTuner(nil),1) aux.AddSynchroProcedure(c,nil,aux.NonTuner(nil),1)
c:EnableReviveLimit() c:EnableReviveLimit()
--draw --draw
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetCode(EVENT_CHAINING)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DRAW) e1:SetCategory(CATEGORY_DRAW)
e1:SetDescription(aux.Stringid(4179255,0)) e1:SetDescription(aux.Stringid(4179255,0))
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e1:SetCode(EVENT_CHAIN_SOLVED) e1:SetCode(EVENT_CHAINING)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,4179255) e1:SetCountLimit(1,4179255)
e1:SetCondition(c4179255.drcon) e1:SetCondition(c4179255.drcon)
...@@ -41,7 +34,6 @@ function c4179255.initial_effect(c) ...@@ -41,7 +34,6 @@ function c4179255.initial_effect(c)
end end
function c4179255.drcon(e,tp,eg,ep,ev,re,r,rp) function c4179255.drcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and re and re:IsActiveType(TYPE_FIELD) and re:IsHasType(EFFECT_TYPE_ACTIVATE) return Duel.GetTurnPlayer()==tp and re and re:IsActiveType(TYPE_FIELD) and re:IsHasType(EFFECT_TYPE_ACTIVATE)
and e:GetHandler():GetFlagEffect(1)>0
end end
function c4179255.drtg(e,tp,eg,ep,ev,re,r,rp,chk) function c4179255.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -6,7 +6,7 @@ function c42790071.initial_effect(c) ...@@ -6,7 +6,7 @@ function c42790071.initial_effect(c)
e2:SetCategory(CATEGORY_SPECIAL_SUMMON) e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetRange(LOCATION_HAND) e2:SetRange(LOCATION_HAND)
e2:SetCode(EVENT_CHAIN_SOLVING) e2:SetCode(EVENT_CHAINING)
e2:SetCountLimit(1,42790071) e2:SetCountLimit(1,42790071)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCondition(c42790071.spcon1) e2:SetCondition(c42790071.spcon1)
......
--微炎星-リュウシシン --微炎星-リュウシシン
function c43748308.initial_effect(c) function c43748308.initial_effect(c)
--set --set
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCode(EVENT_CHAINING)
e1:SetRange(LOCATION_MZONE)
e1:SetOperation(aux.chainreg)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(43748308,0)) e2:SetDescription(aux.Stringid(43748308,0))
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_CHAIN_SOLVING) e2:SetCode(EVENT_CHAINING)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1) e2:SetCountLimit(1)
...@@ -34,7 +27,7 @@ function c43748308.initial_effect(c) ...@@ -34,7 +27,7 @@ function c43748308.initial_effect(c)
end end
function c43748308.setcon(e,tp,eg,ep,ev,re,r,rp) function c43748308.setcon(e,tp,eg,ep,ev,re,r,rp)
return rp==tp and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_SPELL+TYPE_TRAP) return rp==tp and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_SPELL+TYPE_TRAP)
and re:GetHandler():IsSetCard(0x7c) and e:GetHandler():GetFlagEffect(1)>0 and re:GetHandler():IsSetCard(0x7c)
end end
function c43748308.filter(c) function c43748308.filter(c)
return c:IsSetCard(0x7c) and c:IsType(TYPE_TRAP) and c:IsSSetable() return c:IsSetCard(0x7c) and c:IsType(TYPE_TRAP) and c:IsSSetable()
......
...@@ -32,18 +32,11 @@ function c44133040.initial_effect(c) ...@@ -32,18 +32,11 @@ function c44133040.initial_effect(c)
e5:SetValue(aux.tgoval) e5:SetValue(aux.tgoval)
c:RegisterEffect(e5) c:RegisterEffect(e5)
--atkup --atkup
local e6=Effect.CreateEffect(c)
e6:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e6:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e6:SetCode(EVENT_CHAINING)
e6:SetRange(LOCATION_SZONE)
e6:SetOperation(aux.chainreg)
c:RegisterEffect(e6)
local e7=Effect.CreateEffect(c) local e7=Effect.CreateEffect(c)
e7:SetDescription(aux.Stringid(44133040,0)) e7:SetDescription(aux.Stringid(44133040,0))
e7:SetCategory(CATEGORY_ATKCHANGE) e7:SetCategory(CATEGORY_ATKCHANGE)
e7:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e7:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e7:SetCode(EVENT_CHAIN_SOLVED) e7:SetCode(EVENT_CHAINING)
e7:SetRange(LOCATION_SZONE) e7:SetRange(LOCATION_SZONE)
e7:SetCondition(c44133040.atkcon) e7:SetCondition(c44133040.atkcon)
e7:SetOperation(c44133040.atkop) e7:SetOperation(c44133040.atkop)
...@@ -82,7 +75,7 @@ end ...@@ -82,7 +75,7 @@ end
function c44133040.atkcon(e,tp,eg,ep,ev,re,r,rp) function c44133040.atkcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local rc=re:GetHandler() local rc=re:GetHandler()
return rp==tp and c:GetFlagEffect(1)>0 return rp==tp
and ((re:IsActiveType(TYPE_MONSTER) and c:GetEquipTarget()==rc) and ((re:IsActiveType(TYPE_MONSTER) and c:GetEquipTarget()==rc)
or (re:IsHasType(EFFECT_TYPE_ACTIVATE) and rc:IsSetCard(0x129) and rc~=c)) or (re:IsHasType(EFFECT_TYPE_ACTIVATE) and rc:IsSetCard(0x129) and rc~=c))
end end
......
--強欲な壺の精霊 --強欲な壺の精霊
function c4896788.initial_effect(c) function c4896788.initial_effect(c)
--draw --draw
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCode(EVENT_CHAINING)
e1:SetRange(LOCATION_MZONE)
e1:SetOperation(aux.chainreg)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_DRAW) e2:SetCategory(CATEGORY_DRAW)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_CHAIN_SOLVING) e2:SetCode(EVENT_CHAINING)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCondition(c4896788.drcon) e2:SetCondition(c4896788.drcon)
...@@ -20,7 +13,7 @@ function c4896788.initial_effect(c) ...@@ -20,7 +13,7 @@ function c4896788.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c4896788.drcon(e,tp,eg,ep,ev,re,r,rp) function c4896788.drcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsAttackPos() and e:GetHandler():GetFlagEffect(1)>0 return e:GetHandler():IsAttackPos()
and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:GetHandler():IsCode(55144522) and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:GetHandler():IsCode(55144522)
end end
function c4896788.drtg(e,tp,eg,ep,ev,re,r,rp,chk) function c4896788.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -28,19 +28,12 @@ function c49655592.initial_effect(c) ...@@ -28,19 +28,12 @@ function c49655592.initial_effect(c)
e3:SetTargetRange(0,1) e3:SetTargetRange(0,1)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--lv up --lv up
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(49655592,0)) e4:SetDescription(aux.Stringid(49655592,0))
e4:SetCategory(CATEGORY_LVCHANGE) e4:SetCategory(CATEGORY_LVCHANGE)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e4:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e4:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e4:SetCode(EVENT_CHAIN_SOLVING) e4:SetCode(EVENT_CHAINING)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetCondition(c49655592.lvcon) e4:SetCondition(c49655592.lvcon)
e4:SetOperation(c49655592.lvop) e4:SetOperation(c49655592.lvop)
...@@ -68,7 +61,7 @@ function c49655592.atkval(e,c) ...@@ -68,7 +61,7 @@ function c49655592.atkval(e,c)
return c:GetLevel()*300 return c:GetLevel()*300
end end
function c49655592.lvcon(e,tp,eg,ep,ev,re,r,rp) function c49655592.lvcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107) and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107)
end end
function c49655592.lvop(e,tp,eg,ep,ev,re,r,rp) function c49655592.lvop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -4,17 +4,10 @@ function c50237654.initial_effect(c) ...@@ -4,17 +4,10 @@ function c50237654.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcCodeFun(c,{46986414,38033121},aux.FilterBoolFunction(Card.IsRace,RACE_SPELLCASTER),1,true,true) aux.AddFusionProcCodeFun(c,{46986414,38033121},aux.FilterBoolFunction(Card.IsRace,RACE_SPELLCASTER),1,true,true)
--draw --draw
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DRAW) e1:SetCategory(CATEGORY_DRAW)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_CHAIN_SOLVING) e1:SetCode(EVENT_CHAINING)
e1:SetProperty(EFFECT_FLAG_DELAY) e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1) e1:SetCountLimit(1)
...@@ -33,7 +26,7 @@ function c50237654.initial_effect(c) ...@@ -33,7 +26,7 @@ function c50237654.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c50237654.drcon(e,tp,eg,ep,ev,re,r,rp) function c50237654.drcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_SPELL+TYPE_TRAP)
end end
function c50237654.drtg(e,tp,eg,ep,ev,re,r,rp,chk) function c50237654.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDraw(tp,1) end if chk==0 then return Duel.IsPlayerCanDraw(tp,1) end
......
...@@ -12,20 +12,12 @@ function c5230799.initial_effect(c) ...@@ -12,20 +12,12 @@ function c5230799.initial_effect(c)
e2:SetCode(EFFECT_TRAP_ACT_IN_HAND) e2:SetCode(EFFECT_TRAP_ACT_IN_HAND)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--draw --draw
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetCondition(aux.mskregcon)
e0:SetOperation(aux.mskreg)
c:RegisterEffect(e0)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(5230799,0)) e3:SetDescription(aux.Stringid(5230799,0))
e3:SetCategory(CATEGORY_DRAW) e3:SetCategory(CATEGORY_DRAW)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_PLAYER_TARGET) e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_PLAYER_TARGET)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,5230799) e3:SetCountLimit(1,5230799)
e3:SetCondition(c5230799.drcon) e3:SetCondition(c5230799.drcon)
...@@ -35,7 +27,7 @@ function c5230799.initial_effect(c) ...@@ -35,7 +27,7 @@ function c5230799.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c5230799.drcon(e,tp,eg,ep,ev,re,r,rp) function c5230799.drcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(ev)>0 return re:IsHasType(EFFECT_TYPE_ACTIVATE) and e:GetHandler():GetColumnGroup():IsContains(re:GetHandler())
end end
function c5230799.cfilter(c) function c5230799.cfilter(c)
return c:IsSetCard(0x108) and c:IsDiscardable() return c:IsSetCard(0x108) and c:IsDiscardable()
......
...@@ -6,7 +6,7 @@ function c53724621.initial_effect(c) ...@@ -6,7 +6,7 @@ function c53724621.initial_effect(c)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_DRAW) e2:SetCategory(CATEGORY_DRAW)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_CHAIN_SOLVING) e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_PZONE) e2:SetRange(LOCATION_PZONE)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCountLimit(1,53724621) e2:SetCountLimit(1,53724621)
......
...@@ -12,19 +12,11 @@ function c55591586.initial_effect(c) ...@@ -12,19 +12,11 @@ function c55591586.initial_effect(c)
e1:SetOperation(c55591586.spop) e1:SetOperation(c55591586.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--atk --atk
--atk up
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(55591586,1)) e2:SetDescription(aux.Stringid(55591586,1))
e2:SetCategory(CATEGORY_ATKCHANGE) e2:SetCategory(CATEGORY_ATKCHANGE)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e2:SetCode(EVENT_CHAIN_SOLVED) e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1) e2:SetCountLimit(1)
e2:SetCondition(c55591586.atkcon) e2:SetCondition(c55591586.atkcon)
...@@ -73,7 +65,7 @@ function c55591586.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -73,7 +65,7 @@ function c55591586.spop(e,tp,eg,ep,ev,re,r,rp,c)
end end
function c55591586.atkcon(e,tp,eg,ep,ev,re,r,rp) function c55591586.atkcon(e,tp,eg,ep,ev,re,r,rp)
local loc=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION) local loc=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION)
return re:IsActiveType(TYPE_MONSTER) and loc==LOCATION_HAND and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_MONSTER) and loc==LOCATION_HAND
end end
function c55591586.atkop(e,tp,eg,ep,ev,re,r,rp) function c55591586.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -6,17 +6,10 @@ function c55870497.initial_effect(c) ...@@ -6,17 +6,10 @@ function c55870497.initial_effect(c)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--set --set
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_SZONE)
e2:SetOperation(aux.chainreg)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(55870497,0)) e3:SetDescription(aux.Stringid(55870497,0))
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetProperty(EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetRange(LOCATION_SZONE) e3:SetRange(LOCATION_SZONE)
e3:SetCondition(c55870497.skipcon) e3:SetCondition(c55870497.skipcon)
...@@ -25,7 +18,7 @@ function c55870497.initial_effect(c) ...@@ -25,7 +18,7 @@ function c55870497.initial_effect(c)
end end
function c55870497.skipcon(e,tp,eg,ep,ev,re,r,rp) function c55870497.skipcon(e,tp,eg,ep,ev,re,r,rp)
return rp==tp and re:IsHasType(EFFECT_TYPE_ACTIVATE) return rp==tp and re:IsHasType(EFFECT_TYPE_ACTIVATE)
and re:GetHandler():IsSetCard(0x60) and e:GetHandler():GetFlagEffect(1)>0 and re:GetHandler():IsSetCard(0x60)
end end
function c55870497.skipop(e,tp,eg,ep,ev,re,r,rp) function c55870497.skipop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end if not e:GetHandler():IsRelateToEffect(e) then return end
......
...@@ -13,18 +13,11 @@ function c56166150.initial_effect(c) ...@@ -13,18 +13,11 @@ function c56166150.initial_effect(c)
e1:SetOperation(c56166150.spop) e1:SetOperation(c56166150.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--mill --mill
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(56166150,1)) e2:SetDescription(aux.Stringid(56166150,1))
e2:SetCategory(CATEGORY_DECKDES) e2:SetCategory(CATEGORY_DECKDES)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e2:SetCode(EVENT_CHAIN_SOLVED) e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1) e2:SetCountLimit(1)
e2:SetCondition(c56166150.ddcon) e2:SetCondition(c56166150.ddcon)
...@@ -63,7 +56,7 @@ function c56166150.ddcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -63,7 +56,7 @@ function c56166150.ddcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local rc=re:GetHandler() local rc=re:GetHandler()
return re:IsActiveType(TYPE_MONSTER) and rc~=c return re:IsActiveType(TYPE_MONSTER) and rc~=c
and rc:IsSetCard(0x38) and rc:IsControler(tp) and c:GetFlagEffect(1)>0 and rc:IsSetCard(0x38) and rc:IsControler(tp)
end end
function c56166150.ddtg(e,tp,eg,ep,ev,re,r,rp,chk) function c56166150.ddtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -29,15 +29,8 @@ function c58116537.initial_effect(c) ...@@ -29,15 +29,8 @@ function c58116537.initial_effect(c)
e2:SetTarget(c58116537.atktg) e2:SetTarget(c58116537.atktg)
e2:SetOperation(c58116537.atkop) e2:SetOperation(c58116537.atkop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_SZONE)
e3:SetOperation(aux.chainreg)
c:RegisterEffect(e3)
local e4=e2:Clone() local e4=e2:Clone()
e4:SetCode(EVENT_CHAIN_SOLVING) e4:SetCode(EVENT_CHAINING)
e4:SetCondition(c58116537.atkcon2) e4:SetCondition(c58116537.atkcon2)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
...@@ -112,5 +105,5 @@ function c58116537.atkop(e,tp,eg,ep,ev,re,r,rp) ...@@ -112,5 +105,5 @@ function c58116537.atkop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c58116537.atkcon2(e,tp,eg,ep,ev,re,r,rp) function c58116537.atkcon2(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsSetCard(0x137) and rp==tp and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsSetCard(0x137) and rp==tp
end end
...@@ -7,7 +7,7 @@ function c59297550.initial_effect(c) ...@@ -7,7 +7,7 @@ function c59297550.initial_effect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_TRIGGER_O+EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_TRIGGER_O+EFFECT_TYPE_FIELD)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCode(EVENT_CHAIN_SOLVING) e1:SetCode(EVENT_CHAINING)
e1:SetCountLimit(1) e1:SetCountLimit(1)
e1:SetCondition(c59297550.spcon) e1:SetCondition(c59297550.spcon)
e1:SetTarget(c59297550.sptg) e1:SetTarget(c59297550.sptg)
......
--ダーク・ホルス・ドラゴン --ダーク・ホルス・ドラゴン
function c66214679.initial_effect(c) function c66214679.initial_effect(c)
--special summon --special summon
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(66214679,0)) e1:SetDescription(aux.Stringid(66214679,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_CHAIN_SOLVED) e1:SetCode(EVENT_CHAINING)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1) e1:SetCountLimit(1)
e1:SetCondition(c66214679.spcon) e1:SetCondition(c66214679.spcon)
...@@ -25,7 +18,6 @@ function c66214679.spcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -25,7 +18,6 @@ function c66214679.spcon(e,tp,eg,ep,ev,re,r,rp)
local ph=Duel.GetCurrentPhase() local ph=Duel.GetCurrentPhase()
return Duel.GetTurnPlayer()~=tp and (ph==PHASE_MAIN1 or ph==PHASE_MAIN2) return Duel.GetTurnPlayer()~=tp and (ph==PHASE_MAIN1 or ph==PHASE_MAIN2)
and re:IsActiveType(TYPE_SPELL) and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_SPELL) and re:IsHasType(EFFECT_TYPE_ACTIVATE)
and e:GetHandler():GetFlagEffect(1)>0
end end
function c66214679.filter(c,e,tp) function c66214679.filter(c,e,tp)
return c:IsLevel(4) and c:IsAttribute(ATTRIBUTE_DARK) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsLevel(4) and c:IsAttribute(ATTRIBUTE_DARK) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
......
...@@ -15,19 +15,12 @@ function c67045745.initial_effect(c) ...@@ -15,19 +15,12 @@ function c67045745.initial_effect(c)
e2:SetValue(c67045745.indval) e2:SetValue(c67045745.indval)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--lv up --lv up
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(67045745,0)) e3:SetDescription(aux.Stringid(67045745,0))
e3:SetCategory(CATEGORY_LVCHANGE) e3:SetCategory(CATEGORY_LVCHANGE)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCondition(c67045745.lvcon) e3:SetCondition(c67045745.lvcon)
e3:SetOperation(c67045745.lvop) e3:SetOperation(c67045745.lvop)
...@@ -54,7 +47,7 @@ function c67045745.indval(e,c) ...@@ -54,7 +47,7 @@ function c67045745.indval(e,c)
else return false end else return false end
end end
function c67045745.lvcon(e,tp,eg,ep,ev,re,r,rp) function c67045745.lvcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107) and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107)
end end
function c67045745.lvop(e,tp,eg,ep,ev,re,r,rp) function c67045745.lvop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -17,19 +17,12 @@ function c6764709.initial_effect(c) ...@@ -17,19 +17,12 @@ function c6764709.initial_effect(c)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetValue(c6764709.atkval) e2:SetValue(c6764709.atkval)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE)
e3:SetOperation(aux.chainreg)
c:RegisterEffect(e3)
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(6764709,0)) e4:SetDescription(aux.Stringid(6764709,0))
e4:SetCategory(CATEGORY_LVCHANGE) e4:SetCategory(CATEGORY_LVCHANGE)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e4:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e4:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e4:SetCode(EVENT_CHAIN_SOLVING) e4:SetCode(EVENT_CHAINING)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetCondition(c6764709.lvcon) e4:SetCondition(c6764709.lvcon)
e4:SetOperation(c6764709.lvop) e4:SetOperation(c6764709.lvop)
...@@ -63,7 +56,7 @@ function c6764709.atkval(e,c) ...@@ -63,7 +56,7 @@ function c6764709.atkval(e,c)
return c:GetLevel()*300 return c:GetLevel()*300
end end
function c6764709.lvcon(e,tp,eg,ep,ev,re,r,rp) function c6764709.lvcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107) and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107)
end end
function c6764709.lvop(e,tp,eg,ep,ev,re,r,rp) function c6764709.lvop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -12,20 +12,12 @@ function c68024506.initial_effect(c) ...@@ -12,20 +12,12 @@ function c68024506.initial_effect(c)
e2:SetCode(EFFECT_TRAP_ACT_IN_HAND) e2:SetCode(EFFECT_TRAP_ACT_IN_HAND)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--special summon --special summon
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetCondition(aux.mskregcon)
e0:SetOperation(aux.mskreg)
c:RegisterEffect(e0)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(68024506,0)) e3:SetDescription(aux.Stringid(68024506,0))
e3:SetCategory(CATEGORY_SPECIAL_SUMMON) e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET) e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,68024506) e3:SetCountLimit(1,68024506)
e3:SetCondition(c68024506.spcon) e3:SetCondition(c68024506.spcon)
...@@ -34,7 +26,7 @@ function c68024506.initial_effect(c) ...@@ -34,7 +26,7 @@ function c68024506.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c68024506.spcon(e,tp,eg,ep,ev,re,r,rp) function c68024506.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(ev)>0 return re:IsHasType(EFFECT_TYPE_ACTIVATE) and e:GetHandler():GetColumnGroup():IsContains(re:GetHandler())
end end
function c68024506.filter(c,e,tp) function c68024506.filter(c,e,tp)
return c:IsSetCard(0x108) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE) return c:IsSetCard(0x108) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE)
......
...@@ -12,20 +12,12 @@ function c68246154.initial_effect(c) ...@@ -12,20 +12,12 @@ function c68246154.initial_effect(c)
e2:SetCode(EFFECT_TRAP_ACT_IN_HAND) e2:SetCode(EFFECT_TRAP_ACT_IN_HAND)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--tohand --tohand
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetCondition(aux.mskregcon)
e0:SetOperation(aux.mskreg)
c:RegisterEffect(e0)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(68246154,0)) e3:SetDescription(aux.Stringid(68246154,0))
e3:SetCategory(CATEGORY_TOHAND) e3:SetCategory(CATEGORY_TOHAND)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,68246154) e3:SetCountLimit(1,68246154)
e3:SetCondition(c68246154.thcon) e3:SetCondition(c68246154.thcon)
...@@ -34,7 +26,7 @@ function c68246154.initial_effect(c) ...@@ -34,7 +26,7 @@ function c68246154.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c68246154.thcon(e,tp,eg,ep,ev,re,r,rp) function c68246154.thcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(ev)>0 return re:IsHasType(EFFECT_TYPE_ACTIVATE) and e:GetHandler():GetColumnGroup():IsContains(re:GetHandler())
end end
function c68246154.thfilter(c,rc) function c68246154.thfilter(c,rc)
return c:IsSetCard(0x108) and not c:IsCode(rc:GetCode()) and c:IsAbleToHand() return c:IsSetCard(0x108) and not c:IsCode(rc:GetCode()) and c:IsAbleToHand()
......
...@@ -4,18 +4,11 @@ function c69121954.initial_effect(c) ...@@ -4,18 +4,11 @@ function c69121954.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0x11a),2,2) aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0x11a),2,2)
--to hand --to hand
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetCode(EVENT_CHAINING)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(69121954,0)) e1:SetDescription(aux.Stringid(69121954,0))
e1:SetCategory(CATEGORY_TOHAND) e1:SetCategory(CATEGORY_TOHAND)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_CHAIN_SOLVED) e1:SetCode(EVENT_CHAINING)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET) e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,69121954) e1:SetCountLimit(1,69121954)
...@@ -37,7 +30,6 @@ function c69121954.initial_effect(c) ...@@ -37,7 +30,6 @@ function c69121954.initial_effect(c)
end end
function c69121954.thcon(e,tp,eg,ep,ev,re,r,rp) function c69121954.thcon(e,tp,eg,ep,ev,re,r,rp)
return rp==tp and re and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:GetHandler():IsCode(90173539) return rp==tp and re and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:GetHandler():IsCode(90173539)
and e:GetHandler():GetFlagEffect(1)>0
end end
function c69121954.thfilter(c) function c69121954.thfilter(c)
return c:IsType(TYPE_MONSTER) and c:IsSetCard(0x11a) and c:IsAbleToHand() return c:IsType(TYPE_MONSTER) and c:IsSetCard(0x11a) and c:IsAbleToHand()
......
...@@ -7,7 +7,7 @@ function c69488544.initial_effect(c) ...@@ -7,7 +7,7 @@ function c69488544.initial_effect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY) e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_CHAIN_SOLVED) e1:SetCode(EVENT_CHAINING)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCondition(c69488544.spcon) e1:SetCondition(c69488544.spcon)
e1:SetTarget(c69488544.sptg) e1:SetTarget(c69488544.sptg)
......
...@@ -12,19 +12,11 @@ function c7084129.initial_effect(c) ...@@ -12,19 +12,11 @@ function c7084129.initial_effect(c)
e1:SetOperation(c7084129.thop) e1:SetOperation(c7084129.thop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--tohand (self) --tohand (self)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_PLAYER_TARGET)
e2:SetCode(EFFECT_ACTIVATE_COST)
e2:SetTargetRange(1,0)
e2:SetRange(LOCATION_GRAVE)
e2:SetOperation(aux.chainreg)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(7084129,1)) e3:SetDescription(aux.Stringid(7084129,1))
e3:SetCategory(CATEGORY_TOHAND) e3:SetCategory(CATEGORY_TOHAND)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetProperty(EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetRange(LOCATION_GRAVE) e3:SetRange(LOCATION_GRAVE)
e3:SetCountLimit(1,7084130) e3:SetCountLimit(1,7084130)
...@@ -50,7 +42,7 @@ function c7084129.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -50,7 +42,7 @@ function c7084129.thop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c7084129.condition(e,tp,eg,ep,ev,re,r,rp) function c7084129.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()~=tp and rp==tp and re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and e:GetHandler():GetFlagEffect(1)>0 return Duel.GetTurnPlayer()~=tp and rp==tp and re:IsActiveType(TYPE_SPELL+TYPE_TRAP)
end end
function c7084129.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c7084129.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,Card.IsRace,1,nil,RACE_SPELLCASTER) end if chk==0 then return Duel.CheckReleaseGroup(tp,Card.IsRace,1,nil,RACE_SPELLCASTER) end
......
...@@ -24,20 +24,12 @@ function c71095768.initial_effect(c) ...@@ -24,20 +24,12 @@ function c71095768.initial_effect(c)
e2:SetOperation(c71095768.spop) e2:SetOperation(c71095768.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--destroy --destroy
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE)
e3:SetCondition(c71095768.regcon)
e3:SetOperation(aux.chainreg)
c:RegisterEffect(e3)
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(71095768,1)) e4:SetDescription(aux.Stringid(71095768,1))
e4:SetCategory(CATEGORY_DESTROY) e4:SetCategory(CATEGORY_DESTROY)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e4:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET) e4:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e4:SetCode(EVENT_CHAIN_SOLVING) e4:SetCode(EVENT_CHAINING)
e4:SetCountLimit(1,71095769) e4:SetCountLimit(1,71095769)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetCondition(c71095768.descon) e4:SetCondition(c71095768.descon)
...@@ -131,16 +123,13 @@ function c71095768.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -131,16 +123,13 @@ function c71095768.spop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
end end
function c71095768.regcon(e,tp,eg,ep,ev,re,r,rp) function c71095768.descon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local zone=(c:GetLinkedZone(0) & 0x7f) | ((c:GetLinkedZone(1) & 0x7f)<<0x10) local zone=(c:GetLinkedZone(0) & 0x7f) | ((c:GetLinkedZone(1) & 0x7f)<<0x10)
local seq=c71095768[2] local seq=c71095768[2]
return seq and bit.extract(zone,seq)~=0 if not seq or bit.extract(zone,seq)==0 then return false end
end
function c71095768.descon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetChainInfo(ev,CHAININFO_CHAIN_ID)==c71095768[0] return Duel.GetChainInfo(ev,CHAININFO_CHAIN_ID)==c71095768[0]
and c71095768[1]==LOCATION_MZONE and re:IsActiveType(TYPE_XYZ) and c71095768[1]==LOCATION_MZONE and re:IsActiveType(TYPE_XYZ)
and e:GetHandler():GetFlagEffect(1)>0
end end
function c71095768.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c71095768.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsOnField() and chkc:IsType(TYPE_SPELL+TYPE_TRAP) end if chkc then return chkc:IsControler(1-tp) and chkc:IsOnField() and chkc:IsType(TYPE_SPELL+TYPE_TRAP) end
......
...@@ -16,19 +16,11 @@ function c71696014.initial_effect(c) ...@@ -16,19 +16,11 @@ function c71696014.initial_effect(c)
e1:SetOperation(c71696014.operation1) e1:SetOperation(c71696014.operation1)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--spsummon (self) --spsummon (self)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_PLAYER_TARGET)
e2:SetCode(EFFECT_ACTIVATE_COST)
e2:SetTargetRange(1,0)
e2:SetRange(LOCATION_GRAVE)
e2:SetOperation(aux.chainreg)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(71696014,1)) e3:SetDescription(aux.Stringid(71696014,1))
e3:SetCategory(CATEGORY_SPECIAL_SUMMON) e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetProperty(EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetRange(LOCATION_GRAVE) e3:SetRange(LOCATION_GRAVE)
e3:SetCountLimit(1,71696015) e3:SetCountLimit(1,71696015)
...@@ -64,7 +56,7 @@ function c71696014.operation1(e,tp,eg,ep,ev,re,r,rp) ...@@ -64,7 +56,7 @@ function c71696014.operation1(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c71696014.condition2(e,tp,eg,ep,ev,re,r,rp) function c71696014.condition2(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()~=tp and rp==tp and re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and e:GetHandler():GetFlagEffect(1)>0 return Duel.GetTurnPlayer()~=tp and rp==tp and re:IsActiveType(TYPE_SPELL+TYPE_TRAP)
end end
function c71696014.target2(e,tp,eg,ep,ev,re,r,rp,chk) function c71696014.target2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
......
...@@ -13,20 +13,13 @@ function c73639099.initial_effect(c) ...@@ -13,20 +13,13 @@ function c73639099.initial_effect(c)
e1:SetValue(c73639099.efilter) e1:SetValue(c73639099.efilter)
c:RegisterEffect(e1) c:RegisterEffect(e1)
-- --
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_MZONE)
e2:SetOperation(aux.chainreg)
c:RegisterEffect(e2)
--special summon --special summon
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(73639099,0)) e3:SetDescription(aux.Stringid(73639099,0))
e3:SetCategory(CATEGORY_SPECIAL_SUMMON) e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,73639099) e3:SetCountLimit(1,73639099)
e3:SetCondition(c73639099.spcon) e3:SetCondition(c73639099.spcon)
...@@ -38,7 +31,7 @@ function c73639099.initial_effect(c) ...@@ -38,7 +31,7 @@ function c73639099.initial_effect(c)
e4:SetDescription(aux.Stringid(73639099,1)) e4:SetDescription(aux.Stringid(73639099,1))
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e4:SetProperty(EFFECT_FLAG_DELAY) e4:SetProperty(EFFECT_FLAG_DELAY)
e4:SetCode(EVENT_CHAIN_SOLVING) e4:SetCode(EVENT_CHAINING)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetCountLimit(1,73639100) e4:SetCountLimit(1,73639100)
e4:SetCondition(c73639099.setcon) e4:SetCondition(c73639099.setcon)
...@@ -56,7 +49,7 @@ function c73639099.efilter(e,te) ...@@ -56,7 +49,7 @@ function c73639099.efilter(e,te)
return te:IsActiveType(TYPE_TRAP) return te:IsActiveType(TYPE_TRAP)
end end
function c73639099.spcon(e,tp,eg,ep,ev,re,r,rp) function c73639099.spcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:GetHandler():GetType()==TYPE_TRAP and e:GetHandler():GetFlagEffect(1) return re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:GetHandler():GetType()==TYPE_TRAP
end end
function c73639099.cfilter(c,code) function c73639099.cfilter(c,code)
return c:IsFaceup() and c:IsCode(code) return c:IsFaceup() and c:IsCode(code)
...@@ -81,7 +74,7 @@ end ...@@ -81,7 +74,7 @@ end
function c73639099.setcon(e,tp,eg,ep,ev,re,r,rp) function c73639099.setcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local rc=re:GetHandler() local rc=re:GetHandler()
return re:IsActiveType(TYPE_MONSTER) and rc~=c and rc:IsSetCard(0x108a) and rc:IsControler(tp) and c:GetFlagEffect(1)>0 return re:IsActiveType(TYPE_MONSTER) and rc~=c and rc:IsSetCard(0x108a) and rc:IsControler(tp)
end end
function c73639099.setfilter(c) function c73639099.setfilter(c)
return c:IsSetCard(0x4c,0x89) and c:GetType()==TYPE_TRAP and c:IsSSetable() return c:IsSetCard(0x4c,0x89) and c:GetType()==TYPE_TRAP and c:IsSSetable()
......
--EMスカイ・マジシャン --EMスカイ・マジシャン
function c73734821.initial_effect(c) function c73734821.initial_effect(c)
--atk up --atk up
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(73734821,0)) e1:SetDescription(aux.Stringid(73734821,0))
e1:SetCategory(CATEGORY_ATKCHANGE) e1:SetCategory(CATEGORY_ATKCHANGE)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e1:SetCode(EVENT_CHAIN_SOLVED) e1:SetCode(EVENT_CHAINING)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1) e1:SetCountLimit(1)
e1:SetCondition(c73734821.atkcon) e1:SetCondition(c73734821.atkcon)
...@@ -47,7 +40,7 @@ function c73734821.initial_effect(c) ...@@ -47,7 +40,7 @@ function c73734821.initial_effect(c)
end end
function c73734821.atkcon(e,tp,eg,ep,ev,re,r,rp) function c73734821.atkcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL) and re:IsHasType(EFFECT_TYPE_ACTIVATE) return re:IsActiveType(TYPE_SPELL) and re:IsHasType(EFFECT_TYPE_ACTIVATE)
and rp==tp and e:GetHandler():GetFlagEffect(1)>0 and rp==tp
end end
function c73734821.atkop(e,tp,eg,ep,ev,re,r,rp) function c73734821.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -27,19 +27,12 @@ function c75059201.initial_effect(c) ...@@ -27,19 +27,12 @@ function c75059201.initial_effect(c)
e3:SetValue(c75059201.tgval) e3:SetValue(c75059201.tgval)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--lv up --lv up
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(75059201,0)) e4:SetDescription(aux.Stringid(75059201,0))
e4:SetCategory(CATEGORY_LVCHANGE) e4:SetCategory(CATEGORY_LVCHANGE)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e4:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e4:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e4:SetCode(EVENT_CHAIN_SOLVING) e4:SetCode(EVENT_CHAINING)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetCondition(c75059201.lvcon) e4:SetCondition(c75059201.lvcon)
e4:SetOperation(c75059201.lvop) e4:SetOperation(c75059201.lvop)
...@@ -83,7 +76,7 @@ function c75059201.tgval(e,re,rp) ...@@ -83,7 +76,7 @@ function c75059201.tgval(e,re,rp)
else return false end else return false end
end end
function c75059201.lvcon(e,tp,eg,ep,ev,re,r,rp) function c75059201.lvcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107) and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107)
end end
function c75059201.lvop(e,tp,eg,ep,ev,re,r,rp) function c75059201.lvop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -11,19 +11,12 @@ function c75676192.initial_effect(c) ...@@ -11,19 +11,12 @@ function c75676192.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetValue(c75676192.atkval) e1:SetValue(c75676192.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_MZONE)
e2:SetOperation(aux.chainreg)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(75676192,0)) e3:SetDescription(aux.Stringid(75676192,0))
e3:SetCategory(CATEGORY_LVCHANGE) e3:SetCategory(CATEGORY_LVCHANGE)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCondition(c75676192.lvcon) e3:SetCondition(c75676192.lvcon)
e3:SetOperation(c75676192.lvop) e3:SetOperation(c75676192.lvop)
...@@ -57,7 +50,7 @@ function c75676192.atkval(e,c) ...@@ -57,7 +50,7 @@ function c75676192.atkval(e,c)
return c:GetLevel()*300 return c:GetLevel()*300
end end
function c75676192.lvcon(e,tp,eg,ep,ev,re,r,rp) function c75676192.lvcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107) and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107)
end end
function c75676192.lvop(e,tp,eg,ep,ev,re,r,rp) function c75676192.lvop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -12,18 +12,11 @@ function c77539547.initial_effect(c) ...@@ -12,18 +12,11 @@ function c77539547.initial_effect(c)
e1:SetOperation(c77539547.thop) e1:SetOperation(c77539547.thop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--disable --disable
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_MZONE)
e2:SetOperation(aux.chainreg)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(77539547,1)) e3:SetDescription(aux.Stringid(77539547,1))
e3:SetCategory(CATEGORY_DISABLE) e3:SetCategory(CATEGORY_DISABLE)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,77539548) e3:SetCountLimit(1,77539548)
...@@ -59,7 +52,7 @@ function c77539547.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -59,7 +52,7 @@ function c77539547.thop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c77539547.discon(e,tp,eg,ep,ev,re,r,rp) function c77539547.discon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsSetCard(0x137) and rp==tp and re:GetHandler()~=e:GetHandler() and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsSetCard(0x137) and rp==tp and re:GetHandler()~=e:GetHandler()
end end
function c77539547.distg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c77539547.distg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and aux.disfilter1(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and aux.disfilter1(chkc) end
......
...@@ -34,18 +34,11 @@ function c78310590.initial_effect(c) ...@@ -34,18 +34,11 @@ function c78310590.initial_effect(c)
e3:SetOperation(c78310590.spop) e3:SetOperation(c78310590.spop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--spsummon (deck) --spsummon (deck)
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e4:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e4:SetCode(EVENT_CHAINING)
e4:SetRange(LOCATION_MZONE)
e4:SetOperation(aux.chainreg)
c:RegisterEffect(e4)
local e5=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
e5:SetDescription(aux.Stringid(78310590,2)) e5:SetDescription(aux.Stringid(78310590,2))
e5:SetCategory(CATEGORY_SPECIAL_SUMMON) e5:SetCategory(CATEGORY_SPECIAL_SUMMON)
e5:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e5:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e5:SetCode(EVENT_CHAIN_SOLVING) e5:SetCode(EVENT_CHAINING)
e5:SetProperty(EFFECT_FLAG_DELAY) e5:SetProperty(EFFECT_FLAG_DELAY)
e5:SetRange(LOCATION_MZONE) e5:SetRange(LOCATION_MZONE)
e5:SetCountLimit(1,78310592) e5:SetCountLimit(1,78310592)
...@@ -109,7 +102,7 @@ function c78310590.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -109,7 +102,7 @@ function c78310590.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end end
function c78310590.spcon2(e,tp,eg,ep,ev,re,r,rp) function c78310590.spcon2(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL)and re:GetHandler():IsSetCard(0x20ec) and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_SPELL)and re:GetHandler():IsSetCard(0x20ec)
end end
function c78310590.spfilter(c,e,tp) function c78310590.spfilter(c,e,tp)
return c:IsLevelBelow(4) and c:IsSetCard(0x10ec) and c:IsType(TYPE_PENDULUM) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsLevelBelow(4) and c:IsSetCard(0x10ec) and c:IsType(TYPE_PENDULUM) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
......
...@@ -15,18 +15,11 @@ function c83550869.initial_effect(c) ...@@ -15,18 +15,11 @@ function c83550869.initial_effect(c)
e2:SetCode(EVENT_FLIP) e2:SetCode(EVENT_FLIP)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--mill --mill
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(83550869,1)) e3:SetDescription(aux.Stringid(83550869,1))
e3:SetCategory(CATEGORY_DECKDES) e3:SetCategory(CATEGORY_DECKDES)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e3:SetCode(EVENT_CHAIN_SOLVED) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1) e3:SetCountLimit(1)
e3:SetCondition(c83550869.ddcon) e3:SetCondition(c83550869.ddcon)
...@@ -59,7 +52,7 @@ function c83550869.ddcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -59,7 +52,7 @@ function c83550869.ddcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local rc=re:GetHandler() local rc=re:GetHandler()
return re:IsActiveType(TYPE_MONSTER) and rc~=c return re:IsActiveType(TYPE_MONSTER) and rc~=c
and rc:IsSetCard(0x38) and rc:IsControler(tp) and c:GetFlagEffect(1)>0 and rc:IsSetCard(0x38) and rc:IsControler(tp)
end end
function c83550869.ddtg(e,tp,eg,ep,ev,re,r,rp,chk) function c83550869.ddtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -13,18 +13,11 @@ function c84673417.initial_effect(c) ...@@ -13,18 +13,11 @@ function c84673417.initial_effect(c)
e1:SetOperation(c84673417.atkop) e1:SetOperation(c84673417.atkop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--mill --mill
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(84673417,1)) e2:SetDescription(aux.Stringid(84673417,1))
e2:SetCategory(CATEGORY_DECKDES) e2:SetCategory(CATEGORY_DECKDES)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e2:SetCode(EVENT_CHAIN_SOLVED) e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1) e2:SetCountLimit(1)
e2:SetCondition(c84673417.ddcon) e2:SetCondition(c84673417.ddcon)
...@@ -67,7 +60,7 @@ function c84673417.ddcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -67,7 +60,7 @@ function c84673417.ddcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local rc=re:GetHandler() local rc=re:GetHandler()
return re:IsActiveType(TYPE_MONSTER) and rc~=c return re:IsActiveType(TYPE_MONSTER) and rc~=c
and rc:IsSetCard(0x38) and rc:IsControler(tp) and c:GetFlagEffect(1)>0 and rc:IsSetCard(0x38) and rc:IsControler(tp)
end end
function c84673417.ddtg(e,tp,eg,ep,ev,re,r,rp,chk) function c84673417.ddtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -17,19 +17,12 @@ function c93449450.initial_effect(c) ...@@ -17,19 +17,12 @@ function c93449450.initial_effect(c)
e2:SetValue(c93449450.immval) e2:SetValue(c93449450.immval)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--lv up --lv up
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetOperation(aux.chainreg)
c:RegisterEffect(e0)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(93449450,0)) e3:SetDescription(aux.Stringid(93449450,0))
e3:SetCategory(CATEGORY_LVCHANGE) e3:SetCategory(CATEGORY_LVCHANGE)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCondition(c93449450.lvcon) e3:SetCondition(c93449450.lvcon)
e3:SetOperation(c93449450.lvop) e3:SetOperation(c93449450.lvop)
...@@ -61,7 +54,7 @@ function c93449450.immval(e,te) ...@@ -61,7 +54,7 @@ function c93449450.immval(e,te)
else return false end else return false end
end end
function c93449450.lvcon(e,tp,eg,ep,ev,re,r,rp) function c93449450.lvcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107) and e:GetHandler():GetFlagEffect(1)>0 return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x107)
end end
function c93449450.lvop(e,tp,eg,ep,ev,re,r,rp) function c93449450.lvop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -12,20 +12,12 @@ function c94418111.initial_effect(c) ...@@ -12,20 +12,12 @@ function c94418111.initial_effect(c)
e2:SetCode(EFFECT_TRAP_ACT_IN_HAND) e2:SetCode(EFFECT_TRAP_ACT_IN_HAND)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--draw --draw
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetCode(EVENT_CHAINING)
e0:SetRange(LOCATION_MZONE)
e0:SetCondition(aux.mskregcon)
e0:SetOperation(aux.mskreg)
c:RegisterEffect(e0)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(94418111,0)) e3:SetDescription(aux.Stringid(94418111,0))
e3:SetCategory(CATEGORY_TODECK+CATEGORY_DRAW) e3:SetCategory(CATEGORY_TODECK+CATEGORY_DRAW)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET) e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e3:SetCode(EVENT_CHAIN_SOLVING) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,94418111) e3:SetCountLimit(1,94418111)
e3:SetCondition(c94418111.tdcon) e3:SetCondition(c94418111.tdcon)
...@@ -34,7 +26,7 @@ function c94418111.initial_effect(c) ...@@ -34,7 +26,7 @@ function c94418111.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c94418111.tdcon(e,tp,eg,ep,ev,re,r,rp) function c94418111.tdcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(ev)>0 return re:IsHasType(EFFECT_TYPE_ACTIVATE) and e:GetHandler():GetColumnGroup():IsContains(re:GetHandler())
end end
function c94418111.filter(c) function c94418111.filter(c)
return c:IsSetCard(0x108) and c:IsAbleToDeck() return c:IsSetCard(0x108) and c:IsAbleToDeck()
......
...@@ -10,7 +10,7 @@ function c95714077.initial_effect(c) ...@@ -10,7 +10,7 @@ function c95714077.initial_effect(c)
e2:SetDescription(aux.Stringid(95714077,0)) e2:SetDescription(aux.Stringid(95714077,0))
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e2:SetType(EFFECT_TYPE_TRIGGER_O+EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_TRIGGER_O+EFFECT_TYPE_FIELD)
e2:SetCode(EVENT_CHAIN_SOLVING) e2:SetCode(EVENT_CHAINING)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetRange(LOCATION_SZONE) e2:SetRange(LOCATION_SZONE)
e2:SetCountLimit(1) e2:SetCountLimit(1)
......
...@@ -2187,14 +2187,6 @@ function Auxiliary.evospcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -2187,14 +2187,6 @@ function Auxiliary.evospcon(e,tp,eg,ep,ev,re,r,rp)
local st=e:GetHandler():GetSummonType() local st=e:GetHandler():GetSummonType()
return st>=(SUMMON_TYPE_SPECIAL+150) and st<(SUMMON_TYPE_SPECIAL+180) return st>=(SUMMON_TYPE_SPECIAL+150) and st<(SUMMON_TYPE_SPECIAL+180)
end end
--chain reg condition for magical musketeer monsters
function Auxiliary.mskregcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsHasType(EFFECT_TYPE_ACTIVATE) and e:GetHandler():GetColumnGroup():IsContains(re:GetHandler())
end
--chain reg for magical musketeer monsters
function Auxiliary.mskreg(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():RegisterFlagEffect(ev,RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET+RESET_CHAIN,0,1)
end
--filter for necro_valley test --filter for necro_valley test
function Auxiliary.NecroValleyFilter(f) function Auxiliary.NecroValleyFilter(f)
return function(target,...) return function(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