Commit b506b2d7 authored by tsubaki's avatar tsubaki

2.0prepsilon update

parent 4d7f7a0f
Pipeline #32963 passed with stage
in 10 seconds
No preview for this file type
No preview for this file type
...@@ -73,7 +73,7 @@ ...@@ -73,7 +73,7 @@
86379752 0 --花咲爷『对华丽的仁者之嫉妒』 86379752 0 --花咲爷『对华丽的仁者之嫉妒』
86379692 0 --隙间妖怪✿八云紫 86379692 0 --隙间妖怪✿八云紫
86379013 0 --梦符『刈安色的错综迷梦』 86379013 0 --梦符『刈安色的错综迷梦』
86379702 0 --就在你的身后✿古明地恋 86379702 1 --就在你的身后✿古明地恋
--花草卡? --花草卡?
99677001 0 --茨歌仙✿ 99677001 0 --茨歌仙✿
99677002 1 --茨华仙✿神仙思想喜爱动物的仙人 99677002 1 --茨华仙✿神仙思想喜爱动物的仙人
......
...@@ -133,15 +133,15 @@ function c20050.cost3(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -133,15 +133,15 @@ function c20050.cost3(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function c20050.tg3(e,tp,eg,ep,ev,re,r,rp,chk) function c20050.tg3(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.IsExistingMatchingCard(c20050.filter3,tp,LOCATION_DECK,0,1,nil,e,tp) end and Duel.IsExistingMatchingCard(c20050.filter3,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE)
end end
function c20050.op3(e,tp,eg,ep,ev,re,r,rp) function c20050.op3(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
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
local ct=e:GetLabel() local ct=e:GetLabel()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c20050.filter3,tp,LOCATION_DECK,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,c20050.filter3,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end end
......
...@@ -26,13 +26,14 @@ function c22056.initial_effect(c) ...@@ -26,13 +26,14 @@ function c22056.initial_effect(c)
e4:SetProperty(EFFECT_FLAG_DAMAGE_STEP) e4:SetProperty(EFFECT_FLAG_DAMAGE_STEP)
e4:SetCode(EVENT_BATTLE_DESTROYED) e4:SetCode(EVENT_BATTLE_DESTROYED)
e4:SetRange(LOCATION_HAND) e4:SetRange(LOCATION_HAND)
e4:SetCountLimit(1,22056)
e4:SetCondition(c22056.spcon) e4:SetCondition(c22056.spcon)
e4:SetTarget(c22056.sptg) e4:SetTarget(c22056.sptg)
e4:SetOperation(c22056.spop) e4:SetOperation(c22056.spop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
local e6=e4:Clone() local e6=e4:Clone()
e6:SetRange(LOCATION_GRAVE) e6:SetRange(LOCATION_GRAVE)
e6:SetCountLimit(1,22056+EFFECT_COUNT_CODE_DUEL) e6:SetCountLimit(1,22056)
c:RegisterEffect(e6) c:RegisterEffect(e6)
--Scarlet Destiny --Scarlet Destiny
local e5=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
......
...@@ -25,13 +25,14 @@ function c22060.initial_effect(c) ...@@ -25,13 +25,14 @@ function c22060.initial_effect(c)
e4:SetProperty(EFFECT_FLAG_DAMAGE_STEP) e4:SetProperty(EFFECT_FLAG_DAMAGE_STEP)
e4:SetCode(EVENT_DESTROY) e4:SetCode(EVENT_DESTROY)
e4:SetRange(LOCATION_HAND) e4:SetRange(LOCATION_HAND)
e4:SetCountLimit(1,22060)
e4:SetCondition(c22060.spcon) e4:SetCondition(c22060.spcon)
e4:SetTarget(c22060.sptg) e4:SetTarget(c22060.sptg)
e4:SetOperation(c22060.spop) e4:SetOperation(c22060.spop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
local e6=e4:Clone() local e6=e4:Clone()
e6:SetRange(LOCATION_GRAVE) e6:SetRange(LOCATION_GRAVE)
e6:SetCountLimit(1,22060+EFFECT_COUNT_CODE_DUEL) e6:SetCountLimit(1,22060)
c:RegisterEffect(e6) c:RegisterEffect(e6)
--maintain --maintain
local e5=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
......
...@@ -20,7 +20,7 @@ function c22130.initial_effect(c) ...@@ -20,7 +20,7 @@ function c22130.initial_effect(c)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function c22130.cffilter(c) function c22130.cffilter(c)
return ((c:IsSetCard(0x177) and c:IsType(TYPE_SPELL)) or c:IsCode(22017)) and not c:IsPublic() return ((c:IsSetCard(0x177) and c:IsType(TYPE_SPELL)) or c:IsSetCard(0x811,0x111)) and not c:IsPublic()
end end
function c22130.spfilter(c,e,tp) function c22130.spfilter(c,e,tp)
return c:IsSetCard(0x111) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x111) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
......
...@@ -30,7 +30,7 @@ function c23099.initial_effect(c) ...@@ -30,7 +30,7 @@ function c23099.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c23099.cfilter(c) function c23099.cfilter(c)
return c:IsFaceup() and c:IsAbleToHandAsCost() and c:IsSetCard(0x817) and c:IsType(TYPE_TUNER) return c:IsAbleToHandAsCost() and c:IsSetCard(0x817) and c:IsType(TYPE_TUNER)
end end
function c23099.filter(c) function c23099.filter(c)
return c:IsFaceup() and c:IsDestructable() and c:IsType(TYPE_SPELL+TYPE_TRAP) return c:IsFaceup() and c:IsDestructable() and c:IsType(TYPE_SPELL+TYPE_TRAP)
...@@ -41,7 +41,7 @@ function c23099.allfilter(c) ...@@ -41,7 +41,7 @@ function c23099.allfilter(c)
end end
function c23099.spcost(e,tp,eg,ep,ev,re,r,rp,chk) function c23099.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
local a=Duel.IsExistingMatchingCard(c23099.cfilter,tp,LOCATION_MZONE,0,1,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>-1 local a=Duel.IsExistingMatchingCard(c23099.cfilter,tp,LOCATION_MZONE,0,1,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>-1
local b=Duel.IsExistingMatchingCard(c23099.filter,tp,LOCATION_ONFIELD,0,2,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 local b=Duel.IsExistingMatchingCard(c23099.filter,tp,LOCATION_ONFIELD,0,1,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
if chk==0 then return (a) or (b) end if chk==0 then return (a) or (b) end
if a and b then if a and b then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
...@@ -49,9 +49,9 @@ function c23099.spcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -49,9 +49,9 @@ function c23099.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if c23099.cfilter(g1:GetFirst()) then if c23099.cfilter(g1:GetFirst()) then
Duel.SendtoHand(g1,nil,REASON_COST) Duel.SendtoHand(g1,nil,REASON_COST)
else else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) -- Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g2=Duel.SelectMatchingCard(tp,c23099.filter,tp,LOCATION_ONFIELD,0,1,1,g1:GetFirst()) -- local g2=Duel.SelectMatchingCard(tp,c23099.filter,tp,LOCATION_ONFIELD,0,1,1,g1:GetFirst())
g1:Merge(g2) -- g1:Merge(g2)
Duel.Destroy(g1,REASON_COST) Duel.Destroy(g1,REASON_COST)
end end
elseif a then elseif a then
...@@ -60,7 +60,7 @@ function c23099.spcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -60,7 +60,7 @@ function c23099.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SendtoHand(g,nil,REASON_COST) Duel.SendtoHand(g,nil,REASON_COST)
else else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c23099.filter,tp,LOCATION_ONFIELD,0,2,2,nil) local g=Duel.SelectMatchingCard(tp,c23099.filter,tp,LOCATION_ONFIELD,0,1,1,nil)
Duel.Destroy(g,REASON_COST) Duel.Destroy(g,REASON_COST)
end end
end end
......
...@@ -27,7 +27,7 @@ function c24044.initial_effect(c) ...@@ -27,7 +27,7 @@ function c24044.initial_effect(c)
e4:SetDescription(aux.Stringid(24044,1)) e4:SetDescription(aux.Stringid(24044,1))
e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e4:SetCode(EVENT_DAMAGE_STEP_END) e4:SetCode(EVENT_DAMAGE_STEP_END)
e4:SetCountLimit(1,24044) e4:SetCountLimit(1,24045)
e4:SetTarget(c24044.settg2) e4:SetTarget(c24044.settg2)
e4:SetOperation(c24044.setop2) e4:SetOperation(c24044.setop2)
c:RegisterEffect(e4) c:RegisterEffect(e4)
......
...@@ -13,14 +13,14 @@ function c27064.initial_effect(c) ...@@ -13,14 +13,14 @@ function c27064.initial_effect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e2:SetCode(EVENT_TO_GRAVE) e2:SetCode(EVENT_TO_GRAVE)
e2:SetCountLimit(1,27064) e2:SetCountLimit(1,27064)
e2:SetCondition(c27064.condition) --e2:SetCondition(c27064.condition)
e2:SetTarget(c27064.target) e2:SetTarget(c27064.target)
e2:SetOperation(c27064.operation) e2:SetOperation(c27064.operation)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e5=e2:Clone() local e5=e2:Clone()
e5:SetCondition(c27064.condition5) e5:SetCondition(c27064.condition5)
e5:SetOperation(c27064.operation5) e5:SetOperation(c27064.operation5)
c:RegisterEffect(e5) --c:RegisterEffect(e5)
--cannot attack --cannot attack
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
...@@ -53,7 +53,7 @@ function c27064.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -53,7 +53,7 @@ function c27064.target(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end end
function c27064.filter(c) function c27064.filter(c)
return c:IsSetCard(0x240) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() return c:IsSetCard(0x240,0x168) and c:IsAbleToHand()
end end
function c27064.operation(e,tp,eg,ep,ev,re,r,rp) function c27064.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
......
...@@ -39,7 +39,7 @@ end ...@@ -39,7 +39,7 @@ end
c29501.DescSetName=0x826 c29501.DescSetName=0x826
function c29501.matfilter(c) function c29501.matfilter(c)
return c:IsSetCard(0x208) return c:IsSetCard(0x208) and not c:IsLinkType(TYPE_TOKEN)
end end
function c29501.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c29501.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetAttack()>=1000 end if chk==0 then return e:GetHandler():GetAttack()>=1000 end
......
...@@ -4,20 +4,20 @@ local s,id=GetID() ...@@ -4,20 +4,20 @@ local s,id=GetID()
function s.initial_effect(c) function s.initial_effect(c)
-- ①效果:无效+额外效果 -- ①效果:无效+额外效果
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_DISABLE+CATEGORY_DESTROY+CATEGORY_TOHAND) e1:SetCategory(CATEGORY_DISABLE+CATEGORY_DESTROY+CATEGORY_TOHAND)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetRange(LOCATION_MZONE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCountLimit(1,id)
e1:SetTarget(s.target) e1:SetTarget(s.target)
e1:SetOperation(s.operation) e1:SetOperation(s.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function s.nbfilter(c) function s.nbfilter(c)
return c:IsFaceup() and aux.NegateAnyFilter(c) return aux.NegateAnyFilter(c)
end
function s.ngefilter(c,e)
return aux.NegateAnyFilter(c) and c:IsRelateToEffect(e)
end end
-- ①效果目标:选择对方场上1张卡 -- ①效果目标:选择对方场上1张卡
...@@ -25,15 +25,17 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -25,15 +25,17 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and chkc:IsFaceup() end if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(s.nbfilter,tp,0,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingTarget(s.nbfilter,tp,0,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
local g=Duel.SelectTarget(tp,s.nbfilter,tp,0,LOCATION_ONFIELD,1,1,nil) local g=Duel.SelectTarget(tp,s.nbfilter,tp,0,LOCATION_ONFIELD,1,2,nil)
Duel.SetOperationInfo(0,CATEGORY_DISABLE,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DISABLE,g,#g,0,LOCATION_ONFIELD)
end end
-- ①效果操作:无效+额外效果 -- ①效果操作:无效+额外效果
function s.operation(e,tp,eg,ep,ev,re,r,rp) function s.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local tc=Duel.GetFirstTarget() local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(s.ngefilter,nil,e)
if tc and tc:IsRelateToEffect(e) and tc:IsFaceup() and tc:IsCanBeDisabledByEffect(e) then if #g>0 then
local tc=g:GetFirst()
while tc do
-- 无效效果 -- 无效效果
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
...@@ -49,18 +51,19 @@ function s.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -49,18 +51,19 @@ function s.operation(e,tp,eg,ep,ev,re,r,rp)
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_DISABLE_TRAPMONSTER) e3:SetCode(EFFECT_DISABLE_TRAPMONSTER)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e3)
end
tc=g:GetNext()
end end
Duel.AdjustInstantly() Duel.AdjustInstantly()
Duel.NegateRelatedChain(tc,RESET_TURN_SET) --Duel.NegateRelatedChain(tc,RESET_TURN_SET)
-- 额外效果1:卡组更多时破坏 -- 额外效果1:卡组更多时破坏
if Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>Duel.GetFieldGroupCount(1-tp,LOCATION_DECK,0) then if Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>Duel.GetFieldGroupCount(1-tp,LOCATION_DECK,0) then
Duel.Destroy(tc,REASON_EFFECT) Duel.Destroy(g,REASON_EFFECT)
end end
-- 额外效果2:场上有0x833怪兽时加入手卡 -- 额外效果2:场上有0x833怪兽时加入手卡
if Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_MZONE,0,1,nil) then if Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_MZONE,0,1,nil) then
Duel.SendtoHand(tc,nil,REASON_EFFECT) Duel.SendtoHand(g,tp,REASON_EFFECT)
end end
end end
end end
......
...@@ -53,7 +53,7 @@ function c60218.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -53,7 +53,7 @@ function c60218.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e2,tp) Duel.RegisterEffect(e2,tp)
end end
function c60218.tg(e,c) function c60218.tg(e,c)
return c:IsFaceup() and c:IsPreviousLocation(0x51) return c:IsFaceup() and c:IsSummonType(SUMMON_TYPE_SPECIAL)--and c:IsPreviousLocation(0x51)
end end
function c60218.adval1(e,c) function c60218.adval1(e,c)
return c:GetAttack()/2 return c:GetAttack()/2
......
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