Commit 59afbe62 authored by POLYMER's avatar POLYMER

fix

parent f2ad39b3
...@@ -3096,7 +3096,7 @@ ...@@ -3096,7 +3096,7 @@
65000000 0 65000000 0
65020212 0 65020212 0
99922020 0 99922020 0
22022580 0 22022580 1
30005501 1 30005501 1
30005502 2 30005502 2
#221218 #221218
...@@ -6349,25 +6349,6 @@ ...@@ -6349,25 +6349,6 @@
11561073 0 11561073 0
65830045 0 65830045 0
71210146 0 71210146 0
22022430 0
22022440 0
22022450 0
22022460 0
22022470 0
22022480 0
22022490 0
22022500 0
22022510 0
22022520 0
22022530 0
22022540 0
22022550 0
22022560 0
22022570 0
22022590 0
22022600 0
22022610 0
22022620 0
71000100 0 71000100 0
71000101 0 71000101 0
71000102 0 71000102 0
......
No preview for this file type
No preview for this file type
...@@ -115,20 +115,19 @@ function s.setfilter(c,e,tp) ...@@ -115,20 +115,19 @@ function s.setfilter(c,e,tp)
end end
function s.tdop(e,tp,eg,ep,ev,re,r,rp) function s.tdop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
local flag=false local flag=tc:IsCode(74677422)
if tc:IsRelateToEffect(e) and Duel.SendtoDeck(tc,nil,SEQ_DECKSHUFFLE,REASON_EFFECT)~=0 and tc:IsLocation(LOCATION_DECK+LOCATION_EXTRA) then if tc:IsRelateToEffect(e) and Duel.SendtoDeck(tc,nil,SEQ_DECKSHUFFLE,REASON_EFFECT)~=0 and tc:IsLocation(LOCATION_DECK+LOCATION_EXTRA) then
flag=flag or tc:IsCode(74677422)
local g=Duel.GetMatchingGroup(s.setfilter,tp,LOCATION_GRAVE,0,nil,e,tp) local g=Duel.GetMatchingGroup(s.setfilter,tp,LOCATION_GRAVE,0,nil,e,tp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(id,2)) then if Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(id,2)) then
Duel.BreakEffect() Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sc=g:Select(tp,1,1,nil):GetFirst() local sc=g:Select(tp,1,1,nil):GetFirst()
flag=flag or sc:IsCode(74677422)
Duel.SpecialSummon(sc,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(sc,0,tp,tp,false,false,POS_FACEUP)
end end
if flag then if flag then
local dg=Duel.GetMatchingGroup(nil,tp,LOCATION_MZONE,LOCATION_MZONE,nil) local dg=Duel.GetMatchingGroup(nil,tp,LOCATION_MZONE,LOCATION_MZONE,nil)
if dg:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(id,3)) then if dg:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(id,3)) then
flag=flag or sc:IsCode(74677422)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local sg=dg:Select(tp,1,1,nil) local sg=dg:Select(tp,1,1,nil)
Duel.HintSelection(sg) Duel.HintSelection(sg)
......
...@@ -50,7 +50,7 @@ function c28315544.cfilter(c) ...@@ -50,7 +50,7 @@ function c28315544.cfilter(c)
return c:IsSummonLocation(LOCATION_DECK+LOCATION_EXTRA) and c:IsAttackPos() return c:IsSummonLocation(LOCATION_DECK+LOCATION_EXTRA) and c:IsAttackPos()
end end
function c28315544.reccon(e,tp,eg,ep,ev,re,r,rp) function c28315544.reccon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c28315544.cfilter,1,nil) return eg:IsExists(c28315544.cfilter,1,nil) and not eg:IsContains(e:GetHandler())
end end
function c28315544.tgfilter(c) function c28315544.tgfilter(c)
return c:IsSetCard(0x283) and c:IsAbleToGrave() return c:IsSetCard(0x283) and c:IsAbleToGrave()
......
...@@ -14,8 +14,8 @@ function c28321714.initial_effect(c) ...@@ -14,8 +14,8 @@ function c28321714.initial_effect(c)
e2:SetCategory(CATEGORY_TOGRAVE+CATEGORY_DECKDES) e2:SetCategory(CATEGORY_TOGRAVE+CATEGORY_DECKDES)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_LEAVE_FIELD) e2:SetCode(EVENT_LEAVE_FIELD)
e2:SetRange(LOCATION_GRAVE)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetRange(LOCATION_GRAVE)
e2:SetCondition(c28321714.tgcon) e2:SetCondition(c28321714.tgcon)
e2:SetCost(aux.bfgcost) e2:SetCost(aux.bfgcost)
e2:SetTarget(c28321714.tgtg) e2:SetTarget(c28321714.tgtg)
...@@ -96,7 +96,7 @@ function c28321714.chkfilter(c) ...@@ -96,7 +96,7 @@ function c28321714.chkfilter(c)
return c:IsPreviousLocation(LOCATION_MZONE) and c:IsReason(REASON_EFFECT) return c:IsPreviousLocation(LOCATION_MZONE) and c:IsReason(REASON_EFFECT)
end end
function c28321714.tgcon(e,tp,eg,ep,ev,re,r,rp) function c28321714.tgcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c28321714.chkfilter,1,nil) return eg:IsExists(Card.IsPreviousLocation,1,nil,LOCATION_MZONE)
end end
function c28321714.tgfilter(c) function c28321714.tgfilter(c)
return c:IsSetCard(0x286) and c:IsAbleToGrave() return c:IsSetCard(0x286) and c:IsAbleToGrave()
......
...@@ -66,6 +66,7 @@ function c28330319.tdop(e,tp,eg,ep,ev,re,r,rp) ...@@ -66,6 +66,7 @@ function c28330319.tdop(e,tp,eg,ep,ev,re,r,rp)
Duel.SendtoHand(tc,nil,REASON_EFFECT) Duel.SendtoHand(tc,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,tc) Duel.ConfirmCards(1-tp,tc)
if not (tc:IsLocation(LOCATION_HAND) and e:GetHandler():IsRelateToEffect(e)) then return end if not (tc:IsLocation(LOCATION_HAND) and e:GetHandler():IsRelateToEffect(e)) then return end
g:RemoveCard(tc)
g:AddCard(e:GetHandler()) g:AddCard(e:GetHandler())
Duel.SendtoDeck(g,nil,SEQ_DECKSHUFFLE,REASON_EFFECT) Duel.SendtoDeck(g,nil,SEQ_DECKSHUFFLE,REASON_EFFECT)
end end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--芬格尔 火之晨曦
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddCodeList(c,36700308)
--coin
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetCategory(CATEGORY_COIN+CATEGORY_DRAW+CATEGORY_TOGRAVE)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_SUMMON_SUCCESS)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCountLimit(1,id)
e2:SetTarget(s.cointg)
e2:SetOperation(s.coinop)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e3)
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(id,2))
e4:SetCategory(CATEGORY_TODECK+CATEGORY_SEARCH+CATEGORY_SPECIAL_SUMMON)
e4:SetType(EFFECT_TYPE_QUICK_O)
e4:SetCode(EVENT_BECOME_TARGET)
e4:SetRange(LOCATION_MZONE)
e4:SetCountLimit(1,id+1)
e4:SetCondition(s.thcon)
e4:SetTarget(s.thtg)
e4:SetOperation(s.thop)
c:RegisterEffect(e4)
s.effect_2=e4
end
function s.cointg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_COIN,nil,0,tp,1)
end
function s.wchfilter(c)
return not c:IsPublic()
end
function s.chkfilter(c)
return c:IsFaceupEx() and c:IsCode(36700308)
end
function s.spfilter2(c,e,tp)
return c:IsSetCard(0xc50) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP,1-tp)
end
function s.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local res=-1
if Duel.IsExistingMatchingCard(s.chkfilter,tp,LOCATION_ONFIELD+LOCATION_GRAVE,0,1,nil) then
local b1=Duel.IsExistingMatchingCard(s.wchfilter,tp,0,LOCATION_HAND,1,nil) and Duel.IsPlayerCanDraw(tp,1)
local b2=Duel.IsExistingMatchingCard(Card.IsAbleToGrave,tp,LOCATION_HAND,0,1,nil)
if b1 and not b2 then
Duel.Hint(HINT_OPSELECTED,1-tp,60)
res=1
end
if b2 and not b1 then
Duel.Hint(HINT_OPSELECTED,1-tp,61)
res=0
end
if b1 and b2 then
res=aux.SelectFromOptions(tp,
{b1,60,1},
{b2,61,0})
end
else
res=Duel.TossCoin(tp,1)
end
if res==1 then
local g=Duel.GetFieldGroup(tp,0,LOCATION_HAND)
if #g>0 then
Duel.ConfirmCards(tp,g)
Duel.Draw(tp,1,REASON_EFFECT)
end
elseif res==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToGrave,tp,LOCATION_HAND,0,1,1,nil)
if #g>0 then
Duel.SendtoGrave(g,REASON_EFFECT)
end
end
end
function s.thcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsContains(e:GetHandler())
end
function s.thfilter(c,e,tp)
return c:IsCode(36700308) and (c:IsAbleToHand() or c:IsCanBeSpecialSummoned(e,0,tp,false,false))
end
function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
return Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_DECK|LOCATION_GRAVE,0,1,nil,e,tp)
end
Duel.SetOperationInfo(0,CATEGORY_TODECK,e:GetHandler(),1,0,0)
end
function s.thop(e,tp)
local c=e:GetHandler()
if Duel.SendtoDeck(c,nil,SEQ_DECKSHUFFLE,REASON_EFFECT)>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_OPERATECARD)
local g=Duel.GetMatchingGroup(s.thfilter,tp,LOCATION_DECK|LOCATION_GRAVE,0,nil,e,tp)
if #g>0 then
local tc=g:Select(tp,1,1,nil):GetFirst()
if not(tc:IsCanBeSpecialSummoned(e,0,tp,false,false)or tc:IsAbleToHand()) then
return
end
if tc then
if tc:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.SelectYesNo(tp,aux.Stringid(id,3)) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
else
Duel.SendtoHand(tc,nil,REASON_EFFECT)
end
end
end
end
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--陈墨瞳 火之晨曦
local s,id,o=GetID()
function s.initial_effect(c)
--discard effect
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,id)
e1:SetCost(s.discost)
e1:SetTarget(s.distg)
e1:SetOperation(s.disop)
c:RegisterEffect(e1)
--when targeted
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_BECOME_TARGET)
e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,id+1)
e2:SetCondition(s.thcon)
e2:SetTarget(s.thtg)
e2:SetOperation(s.thop)
c:RegisterEffect(e2)
s.effect_2=e2
end
function s.discost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsDiscardable() end
Duel.SendtoGrave(c,REASON_COST+REASON_DISCARD)
end
function s.tgfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50)
end
function s.thfilter(c,tc)
return aux.IsCodeListed(c,tc:GetCode()) and c:IsAbleToHand()
end
function s.distg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.tgfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(s.tgfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,s.tgfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK+LOCATION_GRAVE)
end
function s.disop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if not tc:IsRelateToEffect(e) then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,s.thfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,1,nil,tc)
if #g>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
function s.thcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsContains(e:GetHandler())
end
function s.thtgfilter(c)
return (c:IsFaceup() or c:IsLocation(LOCATION_GRAVE)) and c:IsSetCard(0xc50)
end
function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE+LOCATION_GRAVE) and chkc:IsControler(tp) and s.thtgfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(s.thtgfilter,tp,LOCATION_MZONE+LOCATION_GRAVE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,s.thtgfilter,tp,LOCATION_MZONE+LOCATION_GRAVE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK+LOCATION_GRAVE)
if chk==1 then
return g:GetFirst()
end
end
function s.thop(e,tp,eg,ep,ev,re,r,rp,tsg)
local tc=Duel.GetFirstTarget()
if r==505 then
tc=tsg
else
if not tc:IsRelateToEffect(e) then return end
end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,s.thfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,1,nil,tc)
if #g>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--路明非 火之晨曦
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddCodeList(c,36700302,36700304)
--search
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCountLimit(1,id)
e1:SetTarget(s.thtg)
e1:SetOperation(s.thop)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e2)
--negate
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(id,1))
e3:SetCategory(CATEGORY_DISABLE)
e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_BECOME_TARGET)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,id+1)
e3:SetCondition(s.discon)
e3:SetTarget(s.distg)
e3:SetOperation(s.disop)
c:RegisterEffect(e3)
s.effect_2=e3
end
function s.thfilter(c)
return c:IsSetCard(0xc50) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() and not c:IsCode(id)
end
function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function s.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,s.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if #g>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
function s.discon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsContains(e:GetHandler())
end
function s.chkfilter(c)
return c:IsFaceupEx() and c:IsCode(36700302)
end
function s.distg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DISABLE,g,1,0,0)
if chk==1 then
return g:GetFirst()
end
end
function s.disop(e,tp,eg,ep,ev,re,r,rp,tsg)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if r==505 then
tc=tsg
else
if not tc or not tc:IsRelateToEffect(e) then return end
end
local has_chen=Duel.IsExistingMatchingCard(s.chkfilter,tp,LOCATION_ONFIELD+LOCATION_GRAVE,0,1,nil)
if has_chen then
--negate effect
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_DISABLE_EFFECT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e2)
--send to grave at end phase
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e3:SetRange(LOCATION_MZONE)
e3:SetCode(EVENT_PHASE+PHASE_END)
e3:SetCountLimit(1)
e3:SetOperation(s.tgop)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
e3:SetLabelObject(tc)
c:RegisterEffect(e3)
else
--cannot activate
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_TRIGGER)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
end
end
function s.tgop(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject()
if tc and tc:IsLocation(LOCATION_ONFIELD) then
Duel.SendtoGrave(tc,REASON_EFFECT)
end
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--恺撒 火之晨曦
local s,id,o=GetID()
function s.initial_effect(c)
--special summon and search/send
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SPECIAL_SUMMON+CATEGORY_SEARCH+CATEGORY_TOGRAVE)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,id)
e1:SetTarget(s.sptg)
e1:SetOperation(s.spop)
c:RegisterEffect(e1)
--special summon when targeted
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_BECOME_TARGET)
e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,id+1)
e2:SetCondition(s.spcon2)
e2:SetTarget(s.sptg2)
e2:SetOperation(s.spop2)
c:RegisterEffect(e2)
s.effect_2=e2
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsControler(tp) and chkc:IsAbleToHand() end
local c=e:GetHandler()
if chk==0 then return Duel.IsExistingTarget(Card.IsAbleToHand,tp,LOCATION_ONFIELD,0,1,nil)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND)
local g=Duel.SelectTarget(tp,Card.IsAbleToHand,tp,LOCATION_ONFIELD,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,0,0)
end
function s.thfilter(c,tc)
if tc:IsType(TYPE_MONSTER) then
return c:IsSetCard(0xc50) and not c:IsType(TYPE_MONSTER) and (c:IsAbleToHand() or c:IsAbleToGrave())
elseif tc:IsType(TYPE_SPELL) then
return c:IsSetCard(0xc50) and not c:IsType(TYPE_SPELL) and (c:IsAbleToHand() or c:IsAbleToGrave())
else
return c:IsSetCard(0xc50) and not c:IsType(TYPE_TRAP) and (c:IsAbleToHand() or c:IsAbleToGrave())
end
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
local c=e:GetHandler()
if not tc:IsRelateToEffect(e) or not c:IsRelateToEffect(e) then return end
if Duel.SendtoHand(tc,nil,REASON_EFFECT)>0 and tc:IsLocation(LOCATION_HAND) then
if Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)>0 then
local g=Duel.GetMatchingGroup(s.thfilter,tp,LOCATION_DECK,0,nil,tc)
if #g>0 and Duel.SelectYesNo(tp,aux.Stringid(id,2)) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_OPERATECARD)
local sg=g:Select(tp,1,1,nil)
local sc=sg:GetFirst()
local b1=sc:IsAbleToHand()
local b2=sc:IsAbleToGrave()
local op=0
if b1 and b2 then
op=Duel.SelectOption(tp,aux.Stringid(id,4),aux.Stringid(id,5))
elseif b1 then
op=0
else
op=1
end
if op==0 then
Duel.SendtoHand(sc,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,sc)
else
Duel.SendtoGrave(sc,REASON_EFFECT)
end
end
end
end
end
function s.spcon2(e,tp,eg,ep,ev,re,r,rp)
return eg:IsContains(e:GetHandler())
end
function s.spfilter(c,e,tp)
return c:IsSetCard(0xc50) and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function s.sptg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end
function s.spop2(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp)
if #g>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--诺玛 火之晨曦
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddCodeList(c,36700300,36700304)
--special summon
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_SEARCH+CATEGORY_TOHAND)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,id)
e1:SetCost(s.spcost)
e1:SetTarget(s.sptg)
e1:SetOperation(s.spop)
c:RegisterEffect(e1)
--destroy
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetCategory(CATEGORY_DESTROY)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_BECOME_TARGET)
e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,id+1)
e2:SetCondition(s.descon)
e2:SetTarget(s.destg)
e2:SetOperation(s.desop)
c:RegisterEffect(e2)
s.effect_2=e2
end
function s.spfilter(c)
return c:IsSetCard(0xc50) and c:IsType(TYPE_MONSTER) and not c:IsPublic() and c:IsLocation(LOCATION_HAND)
end
function s.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_HAND,0,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM)
local g=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_HAND,0,1,1,e:GetHandler())
Duel.ConfirmCards(1-tp,g)
e:SetLabelObject(g:GetFirst())
Duel.ShuffleHand(tp)
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,0,0)
end
function s.thfilter(c)
return c:IsSetCard(0xc50) and c:IsAbleToHand()
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=e:GetLabelObject()
if not c:IsRelateToEffect(e) then return end
if Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)>0 then
if tc and (tc:IsCode(36700300) or tc:IsCode(36700304)) and Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_DECK,0,1,nil)
and Duel.SelectYesNo(tp,aux.Stringid(id,2)) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,s.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if #g>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
end
end
function s.descon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsContains(e:GetHandler())
end
function s.desfilter(c,tc)
local sg=tc:GetColumnGroup()
return c:IsType(TYPE_MONSTER) and sg:IsContains(c)
end
function s.desfilter2(c,seq)
if seq<5 then
local seq2=c:GetSequence()
if seq2==5 then
return c:IsType(TYPE_MONSTER) and seq==1
elseif seq2==6 then
return c:IsType(TYPE_MONSTER) and seq==3
else
return (c:IsType(TYPE_MONSTER) and math.abs(seq2-seq)==1)
or (c:IsType(TYPE_SPELL+TYPE_TRAP) and c:GetSequence()==seq)
end
elseif seq==5 then
local seq2=c:GetSequence()
return c:IsType(TYPE_MONSTER) and seq2==1
else
return c:IsType(TYPE_MONSTER) and seq2==3
end
end
function s.destg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.IsExistingMatchingCard(s.desfilter,tp,0,LOCATION_MZONE,1,nil,c) end
local dg=Duel.GetMatchingGroup(s.desfilter,tp,0,LOCATION_MZONE,nil,c)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,dg,1,0,0)
if chk==1 then
return c
end
end
function s.desop(e,tp,eg,ep,ev,re,r,rp,tsg)
local c=e:GetHandler()
if r==505 then
c=tsg
end
local g=Duel.GetMatchingGroup(s.desfilter,tp,0,LOCATION_MZONE,nil,c)
if #g>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local dc=g:Select(tp,1,1,nil):GetFirst()
if dc then
local seq=dc:GetSequence()
Duel.Destroy(dc,REASON_EFFECT)
if Duel.IsExistingMatchingCard(s.desfilter2,tp,0,LOCATION_ONFIELD,1,nil,seq) then
local tc=Duel.GetMatchingGroup(s.desfilter2,tp,0,LOCATION_ONFIELD,nil,seq)
Duel.Destroy(tc,REASON_EFFECT)
end
end
end
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--帕西 火之晨曦
local s,id,o=GetID()
function s.initial_effect(c)
--special summon and add to hand
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOHAND)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,id)
e1:SetTarget(s.sptg)
e1:SetOperation(s.spop)
c:RegisterEffect(e1)
--destroy and send to grave
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetCategory(CATEGORY_DESTROY+CATEGORY_TOGRAVE)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_BECOME_TARGET)
e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,id+1)
e2:SetCondition(s.descon)
e2:SetTarget(s.destg)
e2:SetOperation(s.desop)
c:RegisterEffect(e2)
s.effect_2=e2
end
function s.thfilter(c)
return c:IsSetCard(0xc50) and c:IsAbleToHand()
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and s.thfilter(chkc) end
local c=e:GetHandler()
if chk==0 then return Duel.IsExistingTarget(s.thfilter,tp,LOCATION_GRAVE,0,1,nil)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectTarget(tp,s.thfilter,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,0,0)
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
local c=e:GetHandler()
if tc:IsRelateToEffect(e) then
if Duel.SendtoHand(tc,nil,REASON_EFFECT)>0 and tc:IsLocation(LOCATION_HAND) and c:IsRelateToEffect(e) then
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end
end
end
function s.descon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsContains(e:GetHandler())
end
function s.destg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_DESTROY,e:GetHandler(),1,0,0)
if chk==1 then
return e:GetHandler()
end
end
function s.tgfilter(c)
return c:IsType(TYPE_MONSTER) and c:IsAbleToGrave()
end
function s.desop(e,tp,eg,ep,ev,re,r,rp,tsg)
local c=e:GetHandler()
if r==505 then
c=tsg
end
if Duel.Destroy(c,REASON_EFFECT)>0 and Duel.IsExistingMatchingCard(s.tgfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(id,2)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,s.tgfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
if #g>0 then
Duel.SendtoGrave(g,REASON_EFFECT)
end
end
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--苏茜 火之晨曦
local s,id,o=GetID()
function s.initial_effect(c)
--special summon
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_PROC)
e1:SetRange(LOCATION_HAND)
e1:SetCondition(s.spcon)
e1:SetTarget(s.sptg)
e1:SetOperation(s.spop)
e1:SetCountLimit(1,id)
c:RegisterEffect(e1)
--special summon monster
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,0))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_BECOME_TARGET)
e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,id+1)
e2:SetCondition(s.spcon2)
e2:SetTarget(s.sptg2)
e2:SetOperation(s.spop2)
c:RegisterEffect(e2)
s.effect_2=e2
end
function s.discfilter(c)
return c:IsDiscardable()
end
function s.spcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(s.discfilter,tp,LOCATION_HAND,0,1,c)
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.GetMatchingGroup(s.discfilter,tp,LOCATION_HAND,0,e:GetHandler())
local sg=g:SelectSubGroup(tp,aux.TRUE,true,1,1)
if sg and #sg>0 then
sg:KeepAlive()
e:SetLabelObject(sg)
return true
end
return false
end
function s.thfilter(c)
return c:IsSetCard(0xc50) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHand()
end
function s.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=e:GetLabelObject()
local tc=g:GetFirst()
if Duel.SendtoGrave(g,REASON_DISCARD+REASON_COST)~=0 and tc:IsSetCard(0xc50)
and tc:IsType(TYPE_MONSTER) and Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_DECK,0,1,nil)
and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=Duel.SelectMatchingCard(tp,s.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if #sg>0 then
Duel.BreakEffect()
Duel.SendtoHand(sg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,sg)
end
end
g:DeleteGroup()
end
function s.spcon2(e,tp,eg,ep,ev,re,r,rp)
return eg:IsContains(e:GetHandler())
end
function s.spfilter(c,e,tp)
return c:IsLevelBelow(5) and c:IsRace(RACE_WARRIOR) and c:IsAttribute(ATTRIBUTE_FIRE) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function s.sptg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_HAND+LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_GRAVE)
end
function s.spop2(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(s.spfilter),tp,LOCATION_HAND+LOCATION_GRAVE,0,1,1,nil,e,tp)
if #g>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
\ No newline at end of file
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--楚子航 火之晨曦
local s,id,o=GetID()
function s.initial_effect(c)
--send to grave
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_TOGRAVE)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetCountLimit(1,36700358)
e1:SetTarget(s.tgtg)
e1:SetOperation(s.tgop)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e2)
--equip
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(id,1))
e3:SetCategory(CATEGORY_EQUIP)
e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_BECOME_TARGET)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,id+1)
e3:SetCondition(s.eqcon)
e3:SetTarget(s.eqtg)
e3:SetOperation(s.eqop)
c:RegisterEffect(e3)
s.effect_2=e3
end
function s.tgfilter(c)
return c:IsSetCard(0xc50) and c:IsAbleToGrave()
end
function s.tgtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(s.tgfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_DECK)
end
function s.tgop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,s.tgfilter,tp,LOCATION_DECK,0,1,1,nil)
if #g>0 then
Duel.SendtoGrave(g,REASON_EFFECT)
end
end
function s.eqcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsContains(e:GetHandler())
end
function s.eqfilter(c,ec)
return c:IsSetCard(0xc50) and c:IsType(TYPE_EQUIP) and c:CheckEquipTarget(ec)
end
function s.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingMatchingCard(s.eqfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil,e:GetHandler()) end
Duel.SetOperationInfo(0,CATEGORY_EQUIP,nil,1,tp,LOCATION_DECK+LOCATION_GRAVE)
if chk==1 then
return e:GetHandler()
end
end
function s.eqop(e,tp,eg,ep,ev,re,r,rp,tsg)
local c=e:GetHandler()
if r==505 then
c=tsg
else
if not c:IsRelateToEffect(e) or c:IsFacedown() or Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end
end
if c:IsFacedown() or Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(s.eqfilter),tp,LOCATION_DECK+LOCATION_GRAVE,0,1,1,nil,c)
local eq=g:GetFirst()
if eq and Duel.Equip(tp,eq,c) then
--ATK up
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(1000)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
--immune
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EFFECT_IMMUNE_EFFECT)
e2:SetValue(s.efilter)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e2)
end
end
function s.efilter(e,re)
return e:GetHandlerPlayer()~=re:GetOwnerPlayer()
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--诺玛·劳恩斯
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddCodeList(c,36700308)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
c:RegisterEffect(e1)
--code
aux.EnableChangeCode(c,36700308,LOCATION_HAND+LOCATION_DECK+LOCATION_ONFIELD+LOCATION_GRAVE)
--return to hand
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,0))
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SUMMON)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e2:SetCode(EVENT_BECOME_TARGET)
e2:SetRange(LOCATION_SZONE)
e2:SetCountLimit(1,id)
e2:SetCondition(s.thcon)
e2:SetTarget(s.thtg)
e2:SetOperation(s.thop)
c:RegisterEffect(e2)
--return to hand and search
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(id,1))
e3:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET)
e3:SetRange(LOCATION_SZONE)
e3:SetCountLimit(1,id+1)
e3:SetTarget(s.thtg2)
e3:SetOperation(s.thop2)
c:RegisterEffect(e3)
end
function s.thcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsFaceup() and eg:IsContains(e:GetHandler())
end
function s.thfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end
function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.thfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(s.thfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND)
local g=Duel.SelectTarget(tp,s.thfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
end
function s.thop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and Duel.SendtoHand(tc,nil,REASON_EFFECT)>0 and tc:IsLocation(LOCATION_HAND) then
--Extra summon
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_EXTRA_SUMMON_COUNT)
e1:SetTargetRange(LOCATION_HAND+LOCATION_MZONE,0)
e1:SetTarget(aux.TargetBoolFunction(Card.IsType,TYPE_MONSTER))
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
end
function s.thtg2(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.thfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(s.thfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND)
local g=Duel.SelectTarget(tp,s.thfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
end
function s.searchfilter(c)
return c:IsSetCard(0xc50) and c:IsAbleToHand()
end
function s.thop2(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and Duel.SendtoHand(tc,nil,REASON_EFFECT)>0 and tc:IsLocation(LOCATION_HAND) then
if Duel.IsExistingMatchingCard(s.searchfilter,tp,LOCATION_DECK,0,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(id,2)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,s.searchfilter,tp,LOCATION_DECK,0,1,1,nil)
if #g>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
end
end
--提示词索引说明:
--id,0: "返回手卡并额外召唤"
--id,1: "返回手卡并检索"
--id,2: "是否检索卡片?"
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--火之晨曦之门-卡塞尔学院
local s,id,o=GetID()
function s.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,id,EFFECT_COUNT_CODE_OATH)
e1:SetOperation(s.activate)
c:RegisterEffect(e1)
--search
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_FZONE)
e2:SetCountLimit(1,id+1)
e2:SetTarget(s.thtg)
e2:SetOperation(s.thop)
c:RegisterEffect(e2)
end
function s.thfilter(c)
return c:IsSetCard(0xc50) and c:IsAbleToHand()
end
function s.activate(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local g=Duel.GetMatchingGroup(s.thfilter,tp,LOCATION_DECK,0,nil)
if #g>0 and Duel.SelectYesNo(tp,aux.Stringid(id,0)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=g:Select(tp,1,1,nil)
Duel.SendtoHand(sg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,sg)
end
end
function s.monfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50) and c:IsType(TYPE_MONSTER)
end
function s.stfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50) and (c:IsType(TYPE_SPELL) or c:IsType(TYPE_TRAP))
end
function s.stfilter2(c)
return c:IsSetCard(0xc50) and (c:IsType(TYPE_SPELL) or c:IsType(TYPE_TRAP)) and c:IsAbleToHand()
end
function s.monfilter2(c)
return c:IsSetCard(0xc50) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end
function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local b1=Duel.IsExistingTarget(s.monfilter,tp,LOCATION_MZONE,0,1,nil) and
Duel.IsExistingMatchingCard(s.stfilter2,tp,LOCATION_DECK,0,1,nil)
local b2=Duel.IsExistingTarget(s.stfilter,tp,LOCATION_SZONE,0,1,nil) and
Duel.IsExistingMatchingCard(s.monfilter2,tp,LOCATION_DECK,0,1,nil)
if chk==0 then return b1 or b2 end
local op=0
if b1 and b2 then
op=Duel.SelectOption(tp,aux.Stringid(id,2),aux.Stringid(id,3))
elseif b1 then
op=0
else
op=1
end
e:SetLabel(op)
if op==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
Duel.SelectTarget(tp,s.monfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
Duel.SelectTarget(tp,s.stfilter,tp,LOCATION_SZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
end
function s.thop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local tc=Duel.GetFirstTarget()
if not tc:IsRelateToEffect(e) then return end
local op=e:GetLabel()
if op==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,s.stfilter2,tp,LOCATION_DECK,0,1,1,nil)
if #g>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,s.monfilter2,tp,LOCATION_DECK,0,1,1,nil)
if #g>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
end
--提示词索引说明:
--id,0: "加入手卡?"
--id,1: "加入手卡"
--id,2: "对象怪兽,检索魔法陷阱"
--id,3: "对象魔法陷阱,检索怪兽"
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--执行部载具-跑车
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddEquipSpellEffect(c,true,true,Card.IsFaceup,nil)
--search and destroy
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH+CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_SZONE)
e1:SetCountLimit(1,36700359)
e1:SetCondition(s.thcon)
e1:SetTarget(s.thtg)
e1:SetOperation(s.thop)
c:RegisterEffect(e1)
--equip from grave
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCategory(CATEGORY_EQUIP)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_TO_GRAVE)
e2:SetCountLimit(1,id+1)
e2:SetCondition(s.eqcon)
e2:SetTarget(s.eqtg)
e2:SetOperation(s.eqop)
c:RegisterEffect(e2)
end
function s.thcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetEquipTarget()
end
function s.thfilter(c)
return c:IsSetCard(0xc50) and c:IsType(TYPE_MONSTER) and c:IsLevelBelow(5) and c:IsAbleToHand()
end
function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,e:GetHandler(),1,0,0)
end
function s.thop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,s.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if #g>0 and Duel.SendtoHand(g,nil,REASON_EFFECT)>0 then
Duel.ConfirmCards(1-tp,g)
if c:IsRelateToEffect(e) then
Duel.BreakEffect()
Duel.Destroy(c,REASON_EFFECT)
end
end
end
function s.eqcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD)
end
function s.eqfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50) and c:IsType(TYPE_MONSTER)
end
function s.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.eqfilter(chkc) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingTarget(s.eqfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,s.eqfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,e:GetHandler(),1,0,0)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,0,0)
end
function s.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and tc:IsRelateToEffect(e) and tc:IsFaceup() and tc:IsControler(tp) then
Duel.Equip(tp,c,tc)
end
end
--提示词索引说明:
--id,0: "检索并破坏"
--id,1: "从墓地装备"
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--烈火再燃
local s,id,o=GetID()
function s.initial_effect(c)
--只能发动1张
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetHintTiming(0,TIMING_END_PHASE)
e1:SetCountLimit(1,id,EFFECT_COUNT_CODE_OATH)
e1:SetTarget(s.target)
e1:SetOperation(s.activate)
c:RegisterEffect(e1)
end
function s.rlfilter(c,e,tp)
return c:IsReleasableByEffect() and c:IsFaceup()
end
function s.spfilter(c,e,tp)
return c:IsSetCard(0xc50) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function s.thfilter(c,e,tp)
return c:IsSetCard(0xc50) and (c:IsAbleToHand() or c:IsCanBeSpecialSummoned(e,0,tp,false,false))
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local b1=Duel.IsExistingTarget(s.rlfilter,tp,LOCATION_MZONE,0,1,nil,e,tp)
and Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_HAND+LOCATION_DECK,0,1,nil,e,tp)
local b2=Duel.IsExistingTarget(s.thfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,nil,e,tp)
if chkc then
if e:GetLabel()==1 then
return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.rlfilter(chkc,e,tp)
else
return chkc:IsLocation(LOCATION_GRAVE+LOCATION_REMOVED) and chkc:IsControler(tp) and s.thfilter(chkc,e,tp)
end
end
if chk==0 then return b1 or b2 end
local op=0
if b1 and b2 then
op=Duel.SelectOption(tp,aux.Stringid(id,1),aux.Stringid(id,2))
elseif b1 then
op=Duel.SelectOption(tp,aux.Stringid(id,1))
else
op=Duel.SelectOption(tp,aux.Stringid(id,2))+1
end
e:SetLabel(op+1)
if op==0 then
e:SetProperty(EFFECT_FLAG_CARD_TARGET)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g=Duel.SelectTarget(tp,s.rlfilter,tp,LOCATION_MZONE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_RELEASE,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_DECK)
else
e:SetProperty(EFFECT_FLAG_CARD_TARGET)
e:SetCategory(CATEGORY_TOHAND+CATEGORY_SPECIAL_SUMMON)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,s.thfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
end
end
function s.activate(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if not tc or not tc:IsRelateToEffect(e) then return end
if e:GetLabel()==1 then
if Duel.Release(tc,REASON_EFFECT)>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_HAND+LOCATION_DECK,0,1,1,nil,e,tp)
if #g>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
else
if tc:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.SelectYesNo(tp,aux.Stringid(id,3)) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
else
Duel.SendtoHand(tc,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,tc)
end
end
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--沙漠之鹰
--aux.Stringid(id,0)="装备到「火之晨曦」怪兽"
local s,id,o=GetID()
function s.initial_effect(c)
--Activate
--equip limit
local ee=Effect.CreateEffect(c)
ee:SetType(EFFECT_TYPE_SINGLE)
ee:SetCode(EFFECT_EQUIP_LIMIT)
ee:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
ee:SetValue(s.eqlimit)
c:RegisterEffect(ee)
-- 装备效果
local e0=Effect.CreateEffect(c)
e0:SetCategory(CATEGORY_EQUIP)
e0:SetType(EFFECT_TYPE_ACTIVATE)
e0:SetCode(EVENT_FREE_CHAIN)
e0:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_CONTINUOUS_TARGET)
e0:SetTarget(s.eqstg)
e0:SetOperation(s.eqsop)
c:RegisterEffect(e0)
--攻击两次+改变数值
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_EQUIP)
e1:SetCode(EFFECT_EXTRA_ATTACK)
e1:SetValue(1)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_SET_ATTACK_FINAL)
e2:SetRange(LOCATION_SZONE)
e2:SetTargetRange(0,LOCATION_MZONE)
e2:SetCondition(s.atkcon)
e2:SetValue(s.atkval)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_SET_DEFENSE_FINAL)
e3:SetValue(s.defval)
c:RegisterEffect(e3)
--装备
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(id,0))
e4:SetCategory(CATEGORY_EQUIP)
e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e4:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e4:SetCode(EVENT_TO_GRAVE)
e4:SetCountLimit(1,id)
e4:SetCondition(s.eqcon)
e4:SetTarget(s.eqtg)
e4:SetOperation(s.eqop)
c:RegisterEffect(e4)
end
function s.eqlimit(e,c)
return c:IsSetCard(0xc50) and c:IsFaceup()
end
function s.atkcon(e)
local ec=e:GetHandler():GetEquipTarget()
return Duel.GetAttacker()==ec
end
function s.atkval(e,c)
return c:GetAttack()+500
end
function s.defval(e,c)
return c:GetDefense()+500
end
function s.eqcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD)
end
function s.eqfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50)
end
function s.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.eqfilter(chkc) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingTarget(s.eqfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,s.eqfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,e:GetHandler(),1,0,0)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,0,0)
end
function s.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and tc:IsRelateToEffect(e) and tc:IsFaceup() and tc:IsControler(tp) then
Duel.Equip(tp,c,tc)
end
end
-- 装备目标函数
function s.eqstg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and s.eqsfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(s.eqsfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,s.eqsfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,e:GetHandler(),1,0,0)
end
-- 装备操作函数
function s.eqsop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and tc:IsRelateToEffect(e) and tc:IsFaceup() and tc:IsSetCard(0xc50) then
Duel.Equip(tp,c,tc)
end
end
-- 装备目标过滤器
function s.eqsfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50) -- 0xc50是火之晨曦卡组的setcode
end
-- 装备限制函数
function s.eqslimit(e,c)
return c:IsFaceup() and c:IsSetCard(0xc50)
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--黑刃猎刀·狄克推多
--aux.Stringid(id,0)="装备到「火之晨曦」怪兽"
--aux.Stringid(id,1)="给与对方那只怪兽攻击力部分数值的伤害"
local s,id,o=GetID()
function s.initial_effect(c)
-- 装备效果
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_EQUIP)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_CONTINUOUS_TARGET)
e1:SetTarget(s.eqtg)
e1:SetOperation(s.eqop)
c:RegisterEffect(e1)
-- 装备限制
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_EQUIP_LIMIT)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetValue(s.eqlimit)
c:RegisterEffect(e2)
--Increase ATK
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_EQUIP)
e3:SetCode(EFFECT_UPDATE_ATTACK)
e3:SetValue(s.atkval)
c:RegisterEffect(e3)
--Piercing damage
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_EQUIP)
e4:SetCode(EFFECT_PIERCE)
c:RegisterEffect(e4)
--Inflict damage after battle
local e5=Effect.CreateEffect(c)
e5:SetDescription(aux.Stringid(id,1))
e5:SetCategory(CATEGORY_DAMAGE)
e5:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e5:SetCode(EVENT_BATTLE_DESTROYING)
e5:SetRange(LOCATION_SZONE)
e5:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e5:SetCountLimit(1,id)
e5:SetCondition(s.damcon)
e5:SetTarget(s.damtg)
e5:SetOperation(s.damop)
c:RegisterEffect(e5)
--Self-equip when sent to GY
local e6=Effect.CreateEffect(c)
e6:SetDescription(aux.Stringid(id,2))
e6:SetCategory(CATEGORY_EQUIP)
e6:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e6:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e6:SetCode(EVENT_TO_GRAVE)
e6:SetCountLimit(1,id+1)
e6:SetCondition(s.eqcon)
e6:SetTarget(s.eqtg2)
e6:SetOperation(s.eqop2)
c:RegisterEffect(e6)
end
function s.atkval(e,c)
return Duel.GetFieldGroupCount(0,LOCATION_MZONE,LOCATION_MZONE)*300
end
function s.damcon(e,tp,eg,ep,ev,re,r,rp)
local ec=e:GetHandler():GetEquipTarget()
return ec and eg:IsContains(ec) and ec:IsStatus(STATUS_OPPO_BATTLE)
end
function s.damtg(e,tp,eg,ep,ev,re,r,rp,chk)
local bc=e:GetHandler():GetEquipTarget():GetBattleTarget()
local dam=bc:GetAttack()
if dam<0 then dam=0 end
if chk==0 then return dam>0 end
Duel.SetTargetPlayer(1-tp)
Duel.SetTargetParam(dam)
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,dam)
end
function s.damop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Damage(p,d,REASON_EFFECT)
end
-- 装备目标过滤器
function s.eqfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50) -- 0xc50是火之晨曦卡组的setcode
end
-- 装备限制函数
function s.eqlimit(e,c)
return c:IsFaceup() and c:IsSetCard(0xc50)
end
-- 装备目标函数
function s.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and s.eqfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(s.eqfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,s.eqfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,e:GetHandler(),1,0,0)
end
-- 装备操作函数
function s.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and tc:IsRelateToEffect(e) and tc:IsFaceup() and tc:IsSetCard(0xc50) then
Duel.Equip(tp,c,tc)
end
end
-- 墓地装备条件
function s.eqcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD)
end
-- 墓地装备目标
function s.eqfilter2(c)
return c:IsFaceup() and c:IsSetCard(0xc50) and c:IsControler(tp)
end
function s.eqtg2(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and s.eqfilter2(chkc) end
if chk==0 then return e:GetHandler():IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingTarget(s.eqfilter2,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,s.eqfilter2,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,0,0)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,e:GetHandler(),1,0,0)
end
-- 墓地装备操作
function s.eqop2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and tc:IsRelateToEffect(e) and tc:IsFaceup() and tc:IsControler(tp) then
Duel.Equip(tp,c,tc)
end
end
\ No newline at end of file
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--孪生猎刀·奥古斯都
--aux.Stringid(id,0)="从卡组·墓地选择1张「火之晨曦」装备魔法卡装备"
--aux.Stringid(id,1)="将这张卡从墓地装备"
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddCodeList(c,36700306,id) -- 恺撒 火之晨曦
-- 装备效果
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_EQUIP)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_CONTINUOUS_TARGET)
e1:SetTarget(s.eqtg)
e1:SetOperation(s.eqop)
c:RegisterEffect(e1)
-- 装备限制
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_EQUIP_LIMIT)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetValue(s.eqlimit)
c:RegisterEffect(e2)
--Increase ATK
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_EQUIP)
e3:SetCode(EFFECT_UPDATE_ATTACK)
e3:SetValue(s.atkval)
c:RegisterEffect(e3)
--Cannot be destroyed by effects
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_EQUIP)
e4:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
e4:SetValue(1)
c:RegisterEffect(e4)
--Equip another equip card
local e5=Effect.CreateEffect(c)
e5:SetDescription(aux.Stringid(id,0))
e5:SetCategory(CATEGORY_EQUIP)
e5:SetType(EFFECT_TYPE_IGNITION)
e5:SetRange(LOCATION_SZONE)
e5:SetCountLimit(1,id)
e5:SetTarget(s.eqtarget)
e5:SetOperation(s.eqoperation)
c:RegisterEffect(e5)
--Equip from grave
local e6=Effect.CreateEffect(c)
e6:SetDescription(aux.Stringid(id,1))
e6:SetCategory(CATEGORY_EQUIP)
e6:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e6:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e6:SetCode(EVENT_TO_GRAVE)
e6:SetCountLimit(1,id+1)
e6:SetCondition(s.eqcon)
e6:SetTarget(s.eqtg2)
e6:SetOperation(s.eqop2)
c:RegisterEffect(e6)
end
function s.atkval(e,c)
return Duel.GetMatchingGroupCount(Card.IsMonster,e:GetHandlerPlayer(),LOCATION_GRAVE,0,nil)*200
end
-- 装备目标过滤器
function s.eqfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50) -- 0xc50是火之晨曦卡组的setcode
end
-- 装备限制函数
function s.eqlimit(e,c)
return c:IsFaceup() and c:IsSetCard(0xc50)
end
-- 装备目标函数
function s.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and s.eqfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(s.eqfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,s.eqfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,e:GetHandler(),1,0,0)
end
-- 装备操作函数
function s.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and tc:IsRelateToEffect(e) and tc:IsFaceup() and tc:IsSetCard(0xc50) then
Duel.Equip(tp,c,tc)
end
end
function s.eqfilter2(c,tp)
return c:IsSetCard(0xc50) and c:IsType(TYPE_EQUIP) and c:CheckUniqueOnField(tp) and not c:IsForbidden() and c:GetCode()~=id
end
function s.eqtgfilter(c,tp,ec)
return c:IsFaceup() and c:IsControler(tp) and ec:CheckEquipTarget(c)
end
function s.eqtarget(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingMatchingCard(s.eqfilter2,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil,tp)
and Duel.IsExistingMatchingCard(s.eqtgfilter,tp,LOCATION_MZONE,0,1,nil,tp,e:GetHandler())
end
Duel.SetOperationInfo(0,CATEGORY_EQUIP,nil,1,tp,LOCATION_DECK+LOCATION_GRAVE)
end
function s.kaiserfilter(c)
return c:IsFaceup() and c:IsCode(36700304)
end
function s.eqoperation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end
if Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectMatchingCard(tp,s.eqfilter2,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,1,nil,tp)
if #g>0 then
local tc=g:GetFirst()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
local tg=Duel.SelectMatchingCard(tp,s.eqtgfilter,tp,LOCATION_MZONE,0,1,1,nil,tp,tc)
if #tg>0 and Duel.Equip(tp,tc,tg:GetFirst()) then
--恺撒在场时抽卡效果
if Duel.IsExistingMatchingCard(s.tgfilter,tp,LOCATION_MZONE,0,1,nil)
and Duel.SelectYesNo(tp,aux.Stringid(id,2)) then
Duel.Draw(tp,1,REASON_EFFECT)
Duel.BreakEffect()
Duel.Destroy(c,REASON_EFFECT)
end
end
end
end
function s.tgfilter(c)
return c:IsFaceup() and c:IsCode(36700306)
end
function s.eqcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD)
end
function s.eqtgfilter2(c,tp)
return c:IsFaceup() and c:IsSetCard(0xc50) and c:IsControler(tp)
end
function s.eqtg2(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and s.eqtgfilter2(chkc,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingTarget(s.eqtgfilter2,tp,LOCATION_MZONE,0,1,nil,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,s.eqtgfilter2,tp,LOCATION_MZONE,0,1,1,nil,tp)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,e:GetHandler(),1,0,0)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,0,0)
end
function s.eqop2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and tc:IsRelateToEffect(e) and tc:IsFaceup() and tc:IsControler(tp) then
Duel.Equip(tp,c,tc)
end
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--御神刀·村雨
--aux.Stringid(id,0)="将怪兽变成里侧守备表示"
--aux.Stringid(id,1)="使自己的战士族和炎属性怪兽可以作2次攻击"
local s,id,o=GetID()
function s.initial_effect(c)
-- 装备效果
local e0=Effect.CreateEffect(c)
e0:SetCategory(CATEGORY_EQUIP)
e0:SetType(EFFECT_TYPE_ACTIVATE)
e0:SetCode(EVENT_FREE_CHAIN)
e0:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_CONTINUOUS_TARGET)
e0:SetTarget(s.eqtg)
e0:SetOperation(s.eqop)
c:RegisterEffect(e0)
--equip limit
local ee=Effect.CreateEffect(c)
ee:SetType(EFFECT_TYPE_SINGLE)
ee:SetCode(EFFECT_EQUIP_LIMIT)
ee:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
ee:SetValue(s.eqlimit)
c:RegisterEffect(ee)
--Increase ATK/DEF
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_EQUIP)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(1500)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e2)
--Cannot be targeted by opponent's effects
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_EQUIP)
e3:SetCode(EFFECT_CANNOT_BE_EFFECT_TARGET)
e3:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e3:SetValue(aux.tgoval)
c:RegisterEffect(e3)
--Change to face-down defense position
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(id,0))
e4:SetCategory(CATEGORY_POSITION)
e4:SetType(EFFECT_TYPE_IGNITION)
e4:SetRange(LOCATION_SZONE)
e4:SetProperty(EFFECT_FLAG_CARD_TARGET)
e4:SetCountLimit(1,id)
e4:SetTarget(s.postg)
e4:SetOperation(s.posop)
c:RegisterEffect(e4)
--Additional attacks
local e5=Effect.CreateEffect(c)
e5:SetDescription(aux.Stringid(id,1))
e5:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e5:SetCode(EVENT_DAMAGE_STEP_END)
e5:SetRange(LOCATION_SZONE)
e5:SetCondition(s.atkcon)
e5:SetCost(s.atkcost)
e5:SetOperation(s.atkop)
c:RegisterEffect(e5)
end
function s.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function s.posop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end
local tc=Duel.GetFirstTarget()
if tc and tc:IsRelateToEffect(e) and tc:IsFaceup() then
Duel.ChangePosition(tc,POS_FACEDOWN_DEFENSE)
--Negate targeted monster's effects during battle
local ec=c:GetEquipTarget()
if ec and ec:IsLocation(LOCATION_MZONE) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_DISABLE)
e1:SetTargetRange(0,LOCATION_MZONE)
e1:SetTarget(s.distg)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
end
end
function s.distg(e,c)
return c==Duel.GetAttackTarget() or c==Duel.GetAttacker()
end
function s.atkcon(e,tp,eg,ep,ev,re,r,rp)
local ec=e:GetHandler():GetEquipTarget()
return ec and ec==Duel.GetAttacker() and ec:IsRelateToBattle()
end
function s.atkcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() end
Duel.SendtoGrave(e:GetHandler(),REASON_COST)
end
function s.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local ph=Duel.GetCurrentPhase()
--Warrior monsters can attack twice
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_EXTRA_ATTACK)
e1:SetTargetRange(LOCATION_MZONE,0)
e1:SetTarget(aux.TargetBoolFunction(Card.IsRace,RACE_WARRIOR))
e1:SetValue(1)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
--FIRE monsters can attack twice
local e2=e1:Clone()
e2:SetTarget(aux.TargetBoolFunction(Card.IsAttribute,ATTRIBUTE_FIRE))
Duel.RegisterEffect(e2,tp)
end
-- 装备目标函数
function s.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and s.eqfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(s.eqfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,s.eqfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,e:GetHandler(),1,0,0)
end
-- 装备操作函数
function s.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and tc:IsRelateToEffect(e) and tc:IsFaceup() and tc:IsSetCard(0xc50) then
Duel.Equip(tp,c,tc)
end
end
-- 装备目标过滤器
function s.eqfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50) -- 0xc50是火之晨曦卡组的setcode
end
-- 装备限制函数
function s.eqlimit(e,c)
return c:IsFaceup() and c:IsSetCard(0xc50)
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--装备部回收处理
--aux.Stringid(id,0)="破坏场上的卡"
--aux.Stringid(id,1)="从墓地回收「火之晨曦」卡"
--aux.Stringid(id,2)="特殊召唤「火之晨曦」怪兽"
local s,id,o=GetID()
function s.initial_effect(c)
--Activate with 2 options
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetTarget(s.target)
e1:SetOperation(s.activate)
c:RegisterEffect(e1)
--Special Summon when leaves the field
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,2))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_LEAVE_FIELD)
e2:SetCountLimit(1,id)
e2:SetCondition(s.spcon)
e2:SetTarget(s.sptg)
e2:SetOperation(s.spop)
c:RegisterEffect(e2)
end
function s.faceupfilter(c)
return c:IsFaceup()
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local b1=Duel.IsExistingMatchingCard(s.faceupfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,e:GetHandler())
local b2=Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_GRAVE,0,1,nil)
if chk==0 then return b1 or b2 end
local op=0
if b1 and b2 then
op=Duel.SelectOption(tp,aux.Stringid(id,0),aux.Stringid(id,1))
elseif b1 then
op=Duel.SelectOption(tp,aux.Stringid(id,0))
else
op=Duel.SelectOption(tp,aux.Stringid(id,1))+1
end
e:SetLabel(op)
if op==0 then
e:SetCategory(CATEGORY_DESTROY)
e:SetProperty(EFFECT_FLAG_CARD_TARGET)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,s.faceupfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
else
e:SetCategory(CATEGORY_TOHAND)
e:SetProperty(EFFECT_FLAG_CARD_TARGET)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectTarget(tp,s.thfilter,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
end
end
function s.thfilter(c)
return c:IsSetCard(0xc50) and c:IsAbleToHand()
end
function s.activate(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local op=e:GetLabel()
local tc=Duel.GetFirstTarget()
if tc and tc:IsRelateToEffect(e) then
if op==0 then
Duel.Destroy(tc,REASON_EFFECT)
else
Duel.SendtoHand(tc,nil,REASON_EFFECT)
end
end
if c:IsRelateToEffect(e) then
c:CancelToGrave()
Duel.ChangePosition(c,POS_FACEDOWN)
Duel.RaiseEvent(c,EVENT_SSET,e,REASON_EFFECT,tp,tp,0)
end
end
function s.spcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:IsPreviousPosition(POS_FACEDOWN) and c:IsPreviousLocation(LOCATION_SZONE)
end
function s.spfilter(c,e,tp)
return c:IsSetCard(0xc50) and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp)
if #g>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
This diff is collapsed.
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--言灵 不要死
--aux.Stringid(id,0)="选择一只怪兽"
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddCodeList(c,36700304)
--Quick-Play Spell Card
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetTarget(s.target)
e1:SetOperation(s.operation)
c:RegisterEffect(e1)
if not s.global_flag then
s.global_flag=true
local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_DAMAGE)
ge1:SetRange(0xff)
ge1:SetCondition(s.quickcon_effect)
ge1:SetOperation(s.quickop)
c:RegisterEffect(ge1)
end
end
function s.chkfilter(c)
return aux.IsCodeListed(c,17243025) and c:IsType(TYPE_SPELL)
end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
local gg = Duel.GetMatchingGroup(s.chkfilter,tp,0x3,0,nil)
if not gg then return true end
if #gg>16 and Duel.GetFlagEffect(tp,17243025)<=0 then
Duel.RegisterFlagEffect(tp,17243025,0,0,0)
end
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
end
function s.lmffilter(c)
return c:IsFaceup() and c:IsCode(36700304)
end
function s.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc and tc:IsRelateToEffect(e) and tc:IsFaceup() then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetDescription(aux.Stringid(id,2))
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CLIENT_HINT)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetValue(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,2)
tc:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
tc:RegisterEffect(e2)
end
if Duel.IsExistingMatchingCard(s.lmffilter,tp,LOCATION_MZONE,0,1,nil) then
--自己不会因为基本分变成0而决斗失败
local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e3:SetCode(EFFECT_CANNOT_LOSE_KOISHI)
e3:SetTargetRange(1,0)
e3:SetValue(1)
e3:SetReset(RESET_PHASE+PHASE_END,2)
Duel.RegisterEffect(e3,tp)
end
end
-- 效果伤害条件
function s.quickcon_effect(e,tp,eg,ep,ev,re,r,rp)
return ep==tp and (r&REASON_EFFECT+REASON_BATTLE)~=0 and Duel.GetFlagEffect(tp,id)<=0
end
-- 快速发动操作
function s.quickop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
--act qp in hand
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_QP_ACT_IN_NTPHAND)
e2:SetRange(0xff)
e2:SetTarget(aux.TargetBoolFunction(Card.IsCode,id))
e2:SetTargetRange(LOCATION_HAND,0)
c:RegisterEffect(e2)
Duel.RegisterFlagEffect(tp,id,0,0,1)
end
-- 手牌中的路明非·七宗罪过滤器
function s.quickfilter(c)
return c:IsCode(36700352) and c:IsLocation(LOCATION_HAND)
end
-- 快速特殊召唤目标
function s.quicktg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
-- 快速特殊召唤操作
function s.quickop2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0 then
Duel.SpecialSummon(c,SUMMON_TYPE_LINK,tp,tp,false,false,POS_FACEUP)
end
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--言灵 镰鼬
--aux.Stringid(id,0)="宣言怪兽"
--aux.Stringid(id,1)="宣言魔法"
--aux.Stringid(id,2)="宣言陷阱"
--aux.Stringid(id,3)="是否禁止发动"
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddCodeList(c,36700306)
--Quick-play, guess card types
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCategory(CATEGORY_DRAW)
e1:SetHintTiming(0,TIMING_MAIN_END)
e1:SetTarget(s.target)
e1:SetOperation(s.activate)
e1:SetCountLimit(1,id,EFFECT_COUNT_CODE_OATH)
c:RegisterEffect(e1)
if not s.global_flag then
s.global_flag=true
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_QP_ACT_IN_NTPHAND)
e2:SetRange(0xff)
e2:SetCondition(s.con)
e2:SetTarget(aux.TargetBoolFunction(Card.IsCode,id))
e2:SetTargetRange(LOCATION_HAND,0)
c:RegisterEffect(e2)
end
end
function s.ksrfilter(c)
return c:IsFaceup() and c:IsCode(36700306)
end
function s.cfilter(c)
return (c:IsLocation(LOCATION_HAND) or c:IsFacedown())
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
local ct=Duel.GetMatchingGroupCount(s.cfilter,tp,0,LOCATION_HAND+LOCATION_SZONE,nil)
return ct>0 and Duel.IsPlayerCanDraw(tp,1)
end
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
end
function s.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(s.cfilter,tp,0,LOCATION_HAND+LOCATION_SZONE,nil)
if #g<=0 then return end
local ct=#g
local correct=0
local tdisable={}
for i=1,ct do
local tc=g:GetFirst()
g:RemoveCard(tc)
local opt={}
local opval={}
table.insert(opt,aux.Stringid(id,0))
table.insert(opval,TYPE_MONSTER)
table.insert(opt,aux.Stringid(id,1))
table.insert(opval,TYPE_SPELL)
table.insert(opt,aux.Stringid(id,2))
table.insert(opval,TYPE_TRAP)
local declaredType=opval[Duel.SelectOption(tp,table.unpack(opt))+1]
Duel.ConfirmCards(tp,tc)
if (declaredType==TYPE_MONSTER and tc:IsType(TYPE_MONSTER))
or (declaredType==TYPE_SPELL and tc:IsType(TYPE_SPELL))
or (declaredType==TYPE_TRAP and tc:IsType(TYPE_TRAP)) then
correct=correct+1
table.insert(tdisable,tc)
end
if tc:IsLocation(LOCATION_HAND) then
Duel.ShuffleHand(1-tp)
else
tc:CreateEffectRelation(e)
end
end
if correct>0 then
Duel.Draw(tp,correct,REASON_EFFECT)
if Duel.IsExistingMatchingCard(s.ksrfilter,tp,LOCATION_MZONE,0,1,nil)
and Duel.SelectYesNo(tp,aux.Stringid(id,3)) then
for _,tc in ipairs(tdisable) do
if tc:IsLocation(LOCATION_SZONE) and tc:IsRelateToEffect(e) and tc:IsFacedown() and tc:IsControler(1-tp) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_TRIGGER)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
elseif tc:IsLocation(LOCATION_HAND) and tc:IsControler(1-tp) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_CANNOT_TRIGGER)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
end
end
end
end
end
function s.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(s.ksrfilter,tp,LOCATION_MZONE,0,1,nil)
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--言灵 君焰
--aux.Stringid(id,0)="选择1只炎属性怪兽"
--aux.Stringid(id,1)="给予伤害"
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddCodeList(c,36700313)
--Normal Trap, can activate from hand
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_DESTROY+CATEGORY_DAMAGE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetTarget(s.target)
e1:SetOperation(s.activate)
c:RegisterEffect(e1)
--Activate from hand
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_TRAP_ACT_IN_HAND)
e2:SetCondition(s.handcon)
c:RegisterEffect(e2)
end
function s.czhfilter(c)
return c:IsFaceup() and c:IsCode(36700313)
end
function s.handcon(e)
return Duel.IsExistingMatchingCard(s.czhfilter,e:GetHandlerPlayer(),LOCATION_MZONE,0,1,nil)
end
function s.filter(c)
return c:IsFaceup() and c:IsAttribute(ATTRIBUTE_FIRE) and c:IsAbleToHand()
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(s.filter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(id,0))
local g=Duel.SelectTarget(tp,s.filter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,1,1-tp,LOCATION_MZONE)
end
function s.desfilter(c)
return c:IsFaceup() and c:IsDefenseBelow(3000)
end
function s.activate(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
local success=false
if tc:IsRelateToEffect(e) then
if Duel.SelectYesNo(tp,aux.Stringid(id,2))and Duel.SendtoHand(tc,nil,REASON_EFFECT) then
success=true
end
if success then
local g=Duel.GetMatchingGroup(s.desfilter,tp,0,LOCATION_MZONE,nil)
if #g>0 then
Duel.Destroy(g,REASON_EFFECT)
local ag=Duel.GetOperatedGroup()
local max_atk=ag:GetMaxGroup(s.atkfilter)
if max_atk>0 and Duel.IsExistingMatchingCard(s.czhfilter,tp,LOCATION_MZONE,0,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
Duel.BreakEffect()
Duel.Damage(1-tp,max_atk,REASON_EFFECT)
end
end
else
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_PHASE+PHASE_END)
e1:SetCountLimit(1)
e1:SetOperation(s.desop)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
end
end
function s.desop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(aux.TRUE,tp,0,LOCATION_MZONE,nil)
if #g>0 then
Duel.Destroy(g,REASON_EFFECT)
local ag=Duel.GetOperatedGroup()
local max_atk=ag:GetMaxGroup(s.atkfilter)
if max_atk>0 and Duel.IsExistingMatchingCard(s.czhfilter,tp,LOCATION_MZONE,0,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
Duel.BreakEffect()
Duel.Damage(1-tp,max_atk,REASON_EFFECT)
end
end
end
function s.atkfilter(c)
return c:GetBaseAttack()
end
\ No newline at end of file
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--言灵 青铜御座
--aux.Stringid(id,0)="选择一只怪兽提升攻击力"
--aux.Stringid(id,1)="改变怪兽表示形式"
--aux.Stringid(id,2)="选择怪兽"
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddCodeList(c,36700300)
--Quick-play, can activate from hand during opponent's turn
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_DEFCHANGE+CATEGORY_POSITION)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetHintTiming(0,TIMING_BATTLE_START+TIMING_BATTLE_PHASE)
e1:SetCondition(s.condition)
e1:SetTarget(s.target)
e1:SetOperation(s.activate)
c:RegisterEffect(e1)
--Damage effect when Fire's Dawn monster finishes battle
local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_DAMAGE)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_DAMAGE_STEP_END)
e2:SetRange(LOCATION_GRAVE)
e2:SetCondition(s.damcon)
e2:SetCost(s.damcost)
e2:SetTarget(s.damtg)
e2:SetOperation(s.damop)
c:RegisterEffect(e2)
end
function s.fglfilter(c)
return c:IsFaceup() and c:IsCode(36700300)
end
function s.fdfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50)
end
function s.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()~=tp and Duel.IsExistingMatchingCard(s.fglfilter,tp,LOCATION_MZONE,0,1,nil)
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(id,0))
Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,0,1,1,nil)
end
function s.activate(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if not tc:IsRelateToEffect(e) or not tc:IsFaceup() then return end
local def=tc:GetDefense()
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
if s.fdfilter(tc) then
e1:SetCode(EFFECT_SET_ATTACK_FINAL)
e1:SetValue(tc:GetAttack()*2)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_SET_DEFENSE_FINAL)
e2:SetValue(tc:GetDefense()*2)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e2)
else
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(def)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
end
local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_AVOID_BATTLE_DAMAGE)
e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e3:SetTargetRange(1,0)
e3:SetValue(1)
e3:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e3,tp)
if Duel.IsExistingMatchingCard(s.fglfilter,tp,LOCATION_MZONE,0,1,nil)
and Duel.IsExistingMatchingCard(Card.IsCanChangePosition,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil)
and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(id,2))
local g=Duel.SelectMatchingCard(tp,Card.IsCanChangePosition,tp,LOCATION_MZONE,LOCATION_MZONE,1,2,nil)
if #g>0 then
Duel.BreakEffect()
Duel.ChangePosition(g,POS_FACEUP_DEFENSE,POS_FACEDOWN_DEFENSE,POS_FACEUP_ATTACK,POS_FACEUP_ATTACK)
end
end
end
function s.damcon(e,tp,eg,ep,ev,re,r,rp)
local a=Duel.GetAttacker()
return a:IsControler(tp) and s.fdfilter(a)
end
function s.damcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToRemoveAsCost() end
Duel.Remove(e:GetHandler(),POS_FACEUP,REASON_COST)
end
function s.damtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetTargetPlayer(1-tp)
Duel.SetTargetParam(1500)
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,1500)
end
function s.damop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Damage(p,d,REASON_EFFECT)
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--肯德基叔叔
--aux.Stringid(id,0)="选择火之晨曦怪兽"
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddCodeList(c,36700300)
--code
aux.EnableChangeCode(c,36700300,LOCATION_HAND+LOCATION_DECK+LOCATION_ONFIELD+LOCATION_GRAVE)
--Special summon
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,0))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_ATKCHANGE+CATEGORY_DEFCHANGE)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_HAND)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetCountLimit(1,id)
e2:SetTarget(s.sptg)
e2:SetOperation(s.spop)
c:RegisterEffect(e2)
--Recover LP and boost ATK/DEF
local e3=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_RECOVER+CATEGORY_ATKCHANGE+CATEGORY_DEFCHANGE)
e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_BECOME_TARGET)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,id+1)
e3:SetCondition(s.reccon)
e3:SetOperation(s.recop)
c:RegisterEffect(e3)
s.effect_2=e3
end
function s.fdfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50)
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.fdfilter(chkc) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false)
and Duel.IsExistingTarget(s.fdfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(id,0))
Duel.SelectTarget(tp,s.fdfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(500)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_UPDATE_DEFENSE)
tc:RegisterEffect(e2)
if c:IsRelateToEffect(e) then
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end
end
end
function s.reccon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsContains(e:GetHandler())
end
function s.recop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and c:IsFaceup() then
local rec=c:GetAttack()
if Duel.Recover(tp,rec,REASON_EFFECT)~=0 then
--atk,def
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetTargetRange(LOCATION_MZONE,0)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
e1:SetValue(800)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EFFECT_UPDATE_DEFENSE)
Duel.RegisterEffect(e2,tp)
end
end
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--言灵 时间零
--aux.Stringid(id,0)="选择表侧表示怪兽"
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddCodeList(c,36700350)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOGRAVE)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,id,EFFECT_COUNT_CODE_OATH)
e1:SetTarget(s.target)
e1:SetOperation(s.activate)
c:RegisterEffect(e1)
end
function s.ahfilter(c)
return c:IsFaceup() and c:IsCode(36700350)
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(id,0))
Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,0,1,1,nil)
end
function s.activate(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if not tc:IsRelateToEffect(e) or not tc:IsFaceup() then return end
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e0:SetCode(EVENT_BATTLE_CONFIRM)
e0:SetCondition(s.tgcon)
e0:SetOperation(s.tgop)
e0:SetReset(RESET_PHASE+PHASE_END)
e0:SetLabelObject(tc)
e0:SetLabel(tc:GetFieldID())
Duel.RegisterEffect(e0,tp)
tc:RegisterFlagEffect(id,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetTargetRange(0,1)
e1:SetValue(s.aclimit)
e1:SetLabelObject(tc)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
if Duel.IsExistingMatchingCard(s.ahfilter,tp,LOCATION_MZONE,0,1,nil) then
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_DISABLE)
e2:SetTargetRange(0,LOCATION_ONFIELD)
e2:SetTarget(s.distg)
e2:SetCondition(s.discon)
e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp)
end
end
-- 限制对手的连锁效果
function s.aclimit(e,re,tp)
local tc=e:GetLabelObject()
return re:GetHandler():IsControler(1-e:GetHandlerPlayer()) and
Duel.GetChainInfo(Duel.GetCurrentChain(),CHAININFO_TRIGGERING_EFFECT):GetHandler()==tc
end
function s.tgcon(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject()
local fid=e:GetLabel()
local bc=tc:GetBattleTarget()
-- 确保目标怪兽和对方怪兽都存在且在战斗后仍在场上
return tc:IsRelateToBattle() and bc and bc:IsControler(1-tp) and bc:IsRelateToBattle() and tc:GetFieldID()==fid
end
function s.tgop(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject()
local a=Duel.GetAttacker()
local d=Duel.GetAttackTarget()
local oppc=nil
if a==tc and d and d:IsControler(1-tp) then
oppc=d
elseif d==tc and a:IsControler(1-tp) then
oppc=a
end
if oppc then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_DAMAGE_CALCULATING)
e1:SetReset(RESET_PHASE+PHASE_DAMAGE)
e1:SetOperation(s.damop)
e1:SetLabelObject(oppc)
Duel.RegisterEffect(e1,tp)
end
end
function s.damop(e,tp,eg,ep,ev,re,r,rp)
local oppc=e:GetLabelObject()
if oppc and oppc:IsRelateToBattle() then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_DAMAGE_STEP_END)
e1:SetReset(RESET_PHASE+PHASE_DAMAGE)
e1:SetLabelObject(oppc)
e1:SetOperation(function(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject()
if tc and tc:IsRelateToBattle() then
Duel.SendtoGrave(tc,REASON_EFFECT)
end
end)
Duel.RegisterEffect(e1,tp)
end
end
function s.discon(e)
return Duel.GetCurrentPhase()>=PHASE_BATTLE_START and Duel.GetCurrentPhase()<=PHASE_BATTLE
end
function s.distg(e,c)
return c:IsFaceup() and c:IsType(TYPE_MONSTER+TYPE_SPELL+TYPE_TRAP)
end
\ No newline at end of file
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--屠龙剑域
--aux.Stringid(id,0)="特殊召唤火之晨曦怪兽"
--aux.Stringid(id,1)="连接召唤火之晨曦连接怪兽"
local s,id,o=GetID()
function s.initial_effect(c)
--Activate
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_ACTIVATE)
e0:SetCode(EVENT_FREE_CHAIN)
c:RegisterEffect(e0)
--Special summon from GY when opponent summons
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetRange(LOCATION_SZONE)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e1:SetCountLimit(1,id)
e1:SetCondition(s.spcon)
e1:SetTarget(s.sptg)
e1:SetOperation(s.spop)
c:RegisterEffect(e1)
local e1b=e1:Clone()
e1b:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e1b)
--Link Summon on opponent effect activation
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_SZONE)
e2:SetCountLimit(1,id+1)
e2:SetCondition(s.lkcon)
e2:SetTarget(s.lktg)
e2:SetOperation(s.lkop)
c:RegisterEffect(e2)
--Change opponent monsters to Dragon + reduce ATK
local e3a=Effect.CreateEffect(c)
e3a:SetType(EFFECT_TYPE_FIELD)
e3a:SetCode(EFFECT_CHANGE_RACE)
e3a:SetRange(LOCATION_SZONE)
e3a:SetTargetRange(0,LOCATION_MZONE)
e3a:SetValue(RACE_DRAGON)
c:RegisterEffect(e3a)
local e3b=Effect.CreateEffect(c)
e3b:SetType(EFFECT_TYPE_FIELD)
e3b:SetCode(EFFECT_UPDATE_ATTACK)
e3b:SetRange(LOCATION_SZONE)
e3b:SetTargetRange(0,LOCATION_MZONE)
e3b:SetTarget(s.atktg)
e3b:SetValue(-500)
c:RegisterEffect(e3b)
end
function s.spcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(Card.IsControler,1,nil,1-tp)
end
function s.spfilter(c,e,tp)
return c:IsSetCard(0xc50) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and s.spfilter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(s.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,s.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end
end
function s.lkcon(e,tp,eg,ep,ev,re,r,rp)
return rp==1-tp and re:IsActiveType(TYPE_MONSTER+TYPE_SPELL+TYPE_TRAP)
end
function s.lkfilter(c,mg)
return c:IsSetCard(0xc50) and c:IsLinkSummonable(nil,mg,nil,nil,nil,2)
end
function s.lktg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
local mg=Duel.GetMatchingGroup(aux.FaceupFilter(Card.IsCanBeLinkMaterial),tp,LOCATION_MZONE,0,nil)
return Duel.IsExistingMatchingCard(s.lkfilter,tp,LOCATION_EXTRA,0,1,nil,mg)
end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end
function s.lkop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local mg=Duel.GetMatchingGroup(aux.FaceupFilter(Card.IsCanBeLinkMaterial),tp,LOCATION_MZONE,0,nil)
local g=Duel.GetMatchingGroup(s.lkfilter,tp,LOCATION_EXTRA,0,nil,mg)
if #g>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=g:Select(tp,1,1,nil)
local sc=sg:GetFirst()
Duel.LinkSummon(tp,sc,nil,mg,nil,nil,nil,2)
if sc:IsLocation(LOCATION_MZONE) then
-- Cannot be destroyed by effects
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
e1:SetValue(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
sc:RegisterEffect(e1)
end
end
end
function s.atktg(e,c)
return c:IsRace(RACE_DRAGON)
end
\ No newline at end of file
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--诺顿 火之晨曦
--aux.Stringid(id,0)="破坏对方场上的卡"
--aux.Stringid(id,1)="复制火之晨曦怪兽"
--aux.Stringid(id,2)="特殊召唤路明非"
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddCodeList(c,36700348,36700304)
--Link Summon
c:EnableReviveLimit()
aux.AddLinkProcedure(c,s.matfilter,3,5,s.lcheck)
--spsum condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetRange(LOCATION_EXTRA)
e0:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetValue(aux.linklimit)
c:RegisterEffect(e0)
--Destroy all cards on opponent's field when summoned
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetTarget(s.destg)
e1:SetOperation(s.desop)
c:RegisterEffect(e1)
--Copy name and effect
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_MZONE)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetCountLimit(1,id)
e2:SetTarget(s.cptg)
e2:SetOperation(s.cpop)
c:RegisterEffect(e2)
--Special summon "Luminous, Fire's Dawn" when leaving the field
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(id,2))
e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCode(EVENT_LEAVE_FIELD)
e3:SetCountLimit(1,id+1)
e3:SetTarget(s.sptg)
e3:SetOperation(s.spop)
c:RegisterEffect(e3)
s.effect_2=e2
end
-- Link material filter
function s.matfilter(c)
return c:IsRace(RACE_WARRIOR) and c:IsAttribute(ATTRIBUTE_FIRE)
end
-- Check if materials include "Constantine, Fire's Dawn"
function s.lcheck(g)
return g:IsExists(Card.IsCode,1,nil,36700348) and aux.dncheck(g)
end
-- Destroy effect target
function s.destg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(nil,tp,0,LOCATION_ONFIELD,1,nil) end
local g=Duel.GetMatchingGroup(nil,tp,0,LOCATION_ONFIELD,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,#g,0,0)
end
-- Destroy effect operation
function s.desop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(nil,tp,0,LOCATION_ONFIELD,nil)
if #g>0 then
Duel.Destroy(g,REASON_EFFECT)
end
end
-- Copy effect filter
function s.cpfilter(c)
return c:IsSetCard(0xc50) and c:IsType(TYPE_MONSTER) and (c:IsLocation(LOCATION_GRAVE) or c:IsLocation(LOCATION_REMOVED))
end
-- Copy effect target
function s.cptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_REMOVED) and s.cpfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(s.cpfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,LOCATION_GRAVE+LOCATION_REMOVED,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
Duel.SelectTarget(tp,s.cpfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,LOCATION_GRAVE+LOCATION_REMOVED,1,1,nil)
end
-- Copy effect operation
function s.cpop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if tc and tc:IsRelateToEffect(e) and c:IsRelateToEffect(e) and c:IsFaceup() then
local code=tc:GetOriginalCode()
c:CopyEffect(code,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,1)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCode(EFFECT_CHANGE_CODE)
e1:SetValue(code)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
end
end
-- Special summon filter
function s.spfilter(c,e,tp)
return c:IsCode(36700304) and c:IsCanBeSpecialSummoned(e,0,tp,true,false)
end
-- Special summon target
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end -- 必发效果,总是返回true
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA+LOCATION_GRAVE+LOCATION_REMOVED)
end
-- Special summon operation
function s.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_EXTRA+LOCATION_GRAVE+LOCATION_REMOVED,0,1,1,nil,e,tp)
if #g>0 then
Duel.SpecialSummon(g,0,tp,tp,true,false,POS_FACEUP)
end
end
\ No newline at end of file
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--罪与罚
--aux.Stringid(id,0)="特殊召唤火之晨曦怪兽"
local s,id,o=GetID()
function s.initial_effect(c)
--Activate
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_ACTIVATE)
e0:SetCode(EVENT_FREE_CHAIN)
c:RegisterEffect(e0)
--Special Summon when a "Fire's Dawn" monster leaves the field
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_LEAVE_FIELD)
e1:SetRange(LOCATION_SZONE)
e1:SetCountLimit(1,id)
e1:SetCondition(s.spcon)
e1:SetTarget(s.sptg)
e1:SetOperation(s.spop)
c:RegisterEffect(e1)
--No damage and battle destruction protection
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_AVOID_BATTLE_DAMAGE)
e2:SetRange(LOCATION_SZONE)
e2:SetTargetRange(LOCATION_MZONE,0)
e2:SetTarget(s.efilter)
e2:SetValue(1)
e2:SetCondition(s.protcon)
c:RegisterEffect(e2)
local e2b=Effect.CreateEffect(c)
e2b:SetType(EFFECT_TYPE_FIELD)
e2b:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e2b:SetRange(LOCATION_SZONE)
e2b:SetTargetRange(LOCATION_MZONE,0)
e2b:SetTarget(s.fdfilter)
e2b:SetValue(1)
e2b:SetCondition(s.protcon)
c:RegisterEffect(e2b)
--Negate Dragon-Type monster effects
local e3a=Effect.CreateEffect(c)
e3a:SetType(EFFECT_TYPE_FIELD)
e3a:SetCode(EFFECT_DISABLE)
e3a:SetRange(LOCATION_SZONE)
e3a:SetTargetRange(0,LOCATION_MZONE)
e3a:SetTarget(s.drgtg)
c:RegisterEffect(e3a)
local e3b=Effect.CreateEffect(c)
e3b:SetType(EFFECT_TYPE_FIELD)
e3b:SetCode(EFFECT_CANNOT_ACTIVATE)
e3b:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e3b:SetRange(LOCATION_SZONE)
e3b:SetTargetRange(0,1)
e3b:SetValue(s.aclimit)
c:RegisterEffect(e3b)
end
-- Check if a "Fire's Dawn" monster left the field
function s.cfilter(c,e,tp)
return c:IsPreviousPosition(POS_FACEUP) and c:IsPreviousControler(tp)
and c:IsSetCard(0xc50) and c:IsPreviousLocation(LOCATION_MZONE)
and c:IsCanBeSpecialSummoned(e,0,tp,true,false)
end
function s.spcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(s.cfilter,1,nil,e,tp)
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local g=eg:Filter(s.cfilter,nil,e,tp)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and g and #g>0 end
e:SetLabelObject(g:GetFirst())
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,g:GetFirst():GetLocation())
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
local tc=eg:CheckSubGroup(s.cfilter,1,1,e,tp)
if tc and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then
Duel.SpecialSummon(tc,0,tp,tp,true,false,POS_FACEUP)
end
end
-- Filter for "Fire's Dawn" monsters
function s.fdfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50)
end
-- Filter for "Seven Deadly Sins, Lust" and "Luminous, Fire's Dawn"
function s.luxfilter(c)
return c:IsFaceup() and c:IsCode(36700353) -- 七宗罪·色欲
end
function s.lmffilter(c)
return c:IsFaceup() and c:IsCode(36700304) -- 路明非 火之晨曦
end
-- Filter for Link-3 or higher "Fire's Dawn" monsters
function s.link3filter(c)
return c:IsFaceup() and c:IsSetCard(0xc50) and c:IsType(TYPE_LINK) and c:GetLink()>=3
end
-- Protection condition check
function s.protcon(e)
local tp=e:GetHandlerPlayer()
return (Duel.IsExistingMatchingCard(s.luxfilter,tp,LOCATION_ONFIELD,0,1,nil) and
Duel.IsExistingMatchingCard(s.lmffilter,tp,LOCATION_ONFIELD,0,1,nil)) or
Duel.IsExistingMatchingCard(s.link3filter,tp,LOCATION_MZONE,0,1,nil)
end
-- Effect target for damage avoidance
function s.efilter(e,c)
return true -- All player damage becomes 0
end
-- Dragon-type monster filter
function s.drgtg(e,c)
return c:IsFaceup() and c:IsRace(RACE_DRAGON)
end
-- Activation limit for Dragon-type monster effects
function s.aclimit(e,re,tp)
return re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsRace(RACE_DRAGON)
end
\ No newline at end of file
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--"NO NO Happy Birthday"
--aux.Stringid(id,0)="丢弃手卡并抽卡"
local s,id,o=GetID()
function s.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DESTROY+CATEGORY_DRAW+CATEGORY_HANDES)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,id+EFFECT_COUNT_CODE_OATH)
e1:SetCondition(s.condition)
e1:SetTarget(s.target)
e1:SetOperation(s.activate)
c:RegisterEffect(e1)
end
-- Filter for "Fire's Dawn" monsters
function s.fdfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50)
end
-- Check activation condition
function s.condition(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(s.fdfilter,tp,LOCATION_MZONE,0,nil)
return g:GetClassCount(Card.GetCode)>=2
end
-- Activation limit
function s.aclimit(e,re,tp)
return re:GetHandler():IsCode(id) and not re:GetHandler()==e:GetHandler()
end
-- Target selection
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return false end
if chk==0 then return Duel.IsExistingTarget(Card.IsType,tp,0,LOCATION_MZONE,1,nil,TYPE_MONSTER)
and Duel.IsExistingTarget(Card.IsType,tp,0,LOCATION_ONFIELD,1,nil,TYPE_SPELL+TYPE_TRAP) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g1=Duel.SelectTarget(tp,Card.IsType,tp,0,LOCATION_MZONE,1,1,nil,TYPE_MONSTER)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g2=Duel.SelectTarget(tp,Card.IsType,tp,0,LOCATION_ONFIELD,1,1,nil,TYPE_SPELL+TYPE_TRAP)
g1:Merge(g2)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g1,2,0,0)
end
-- Card effect activation
function s.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
local tg=g:Filter(Card.IsRelateToEffect,nil,e)
if #tg>0 then
Duel.Destroy(tg,REASON_EFFECT)
if Duel.IsPlayerCanDraw(tp,1) and Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil,REASON_EFFECT)
and Duel.SelectYesNo(tp,aux.Stringid(id,0)) then
local ct=math.min(2,Duel.GetFieldGroupCount(tp,LOCATION_HAND,0))
if ct>0 then
local disct=Duel.DiscardHand(tp,nil,1,ct,REASON_EFFECT+REASON_DISCARD)
Duel.Draw(tp,disct,REASON_EFFECT)
end
end
--Battle destruction protection
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetTargetRange(LOCATION_MZONE,0)
e1:SetReset(RESET_PHASE+PHASE_END)
e1:SetValue(1)
Duel.RegisterEffect(e1,tp)
end
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--路鸣泽 火之晨曦
--aux.Stringid(id,0)="解放特殊召唤"
--aux.Stringid(id,1)="应用②效果"
--aux.Stringid(id,2)="装备到怪兽"
local s,id,o=GetID()
function s.initial_effect(c)
--Link Summon
c:EnableReviveLimit()
local e0=Effect.CreateEffect(c)
e0:SetDescription(1166)
e0:SetType(EFFECT_TYPE_FIELD)
e0:SetCode(EFFECT_SPSUMMON_PROC)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetRange(LOCATION_EXTRA)
e0:SetCondition(s.LinkCondition(s.matfilter,2,2,s.lcheck))
e0:SetTarget(s.LinkTarget(s.matfilter,2,2,s.lcheck))
e0:SetOperation(s.LinkOperation(s.matfilter,2,2,s.lcheck))
e0:SetValue(SUMMON_TYPE_LINK)
c:RegisterEffect(e0)
--Tribute to Special Summon
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,id)
e1:SetCost(s.spcost)
e1:SetTarget(s.sptg)
e1:SetOperation(s.spop)
c:RegisterEffect(e1)
--Equip from GY
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,2))
e2:SetCategory(CATEGORY_EQUIP)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_GRAVE)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetCountLimit(1,id+1)
e2:SetHintTiming(0,TIMING_MAIN_END)
e2:SetCondition(s.eqcon)
e2:SetTarget(s.eqtg)
e2:SetOperation(s.eqop)
c:RegisterEffect(e2)
s.effect_2=e2
end
function s.LinkCondition(f,minct,maxct,gf)
return function(e,c,og,lmat,min,max)
if c==nil then return true end
if c:IsType(TYPE_PENDULUM) and c:IsFaceup() then return false end
local minc=minct
local maxc=maxct
if min then
if min>minc then minc=min end
if max<maxc then maxc=max end
if minc>maxc then return false end
end
local tp=c:GetControler()
local mg=nil
if og then
mg=og:Filter(Auxiliary.LConditionFilter,nil,f,c,e)
else
mg=Auxiliary.GetLinkMaterials(tp,f,c,e)
local mgs=Duel.GetMatchingGroup(s.matfilter,tp,LOCATION_ONFIELD,0,nil)
mg:Merge(mgs)
end
if lmat~=nil then
if not Auxiliary.LConditionFilter(lmat,f,c,e) then return false end
mg:AddCard(lmat)
end
local fg=Duel.GetMustMaterial(tp,EFFECT_MUST_BE_LMATERIAL)
if fg:IsExists(Auxiliary.MustMaterialCounterFilter,1,nil,mg) then return false end
Duel.SetSelectedCard(fg)
return mg:CheckSubGroup(Auxiliary.LCheckGoal,minc,maxc,tp,c,gf,lmat)
end
end
function s.LinkTarget(f,minct,maxct,gf)
return function(e,tp,eg,ep,ev,re,r,rp,chk,c,og,lmat,min,max)
local minc=minct
local maxc=maxct
if min then
if min>minc then minc=min end
if max<maxc then maxc=max end
if minc>maxc then return false end
end
local mg=nil
if og then
mg=og:Filter(Auxiliary.LConditionFilter,nil,f,c,e)
else
mg=Auxiliary.GetLinkMaterials(tp,f,c,e)
local mgs=Duel.GetMatchingGroup(s.matfilter,tp,LOCATION_ONFIELD,0,nil)
mg:Merge(mgs)
end
if lmat~=nil then
if not Auxiliary.LConditionFilter(lmat,f,c,e) then return false end
mg:AddCard(lmat)
end
local fg=Duel.GetMustMaterial(tp,EFFECT_MUST_BE_LMATERIAL)
Duel.SetSelectedCard(fg)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_LMATERIAL)
local cancel=Duel.IsSummonCancelable()
local sg=mg:SelectSubGroup(tp,Auxiliary.LCheckGoal,cancel,minc,maxc,tp,c,gf,lmat)
if sg then
sg:KeepAlive()
e:SetLabelObject(sg)
return true
else return false end
end
end
function s.LinkOperation(f,minct,maxct,gf)
return function(e,tp,eg,ep,ev,re,r,rp,c,og,lmat,min,max)
local g=e:GetLabelObject()
c:SetMaterial(g)
Auxiliary.LExtraMaterialCount(g,c,tp)
s.SzoneExtraMaterial(g,tp)
Duel.SendtoGrave(g,REASON_MATERIAL+REASON_LINK)
g:DeleteGroup()
end
end
function s.SzoneExtraMaterial(mg,tp)
for tc in Auxiliary.Next(mg) do
if tc:IsLocation(LOCATION_SZONE) and tc:IsFacedown() then
Duel.ConfirmCards(1-tp,tc)
end
end
end
--Link material filter
function s.matfilter(c)
return not c:IsType(TYPE_LINK) and ((c:IsType(TYPE_MONSTER))
or (c:IsSetCard(0xc50) and c:IsType(TYPE_SPELL+TYPE_TRAP)))
end
function s.racefilter(c)
return c:IsRace(RACE_WARRIOR) and c:IsAttribute(ATTRIBUTE_FIRE)
end
--Additional Link summon check
function s.lcheck(g)
return g:IsExists(s.racefilter,1,nil)
end
--Extra material condition
function s.extracon(c,e,tp,sg,mg,lc,og,chk)
return not sg or sg:FilterCount(s.flagcheck,nil)<2
end
--Flag check for extra material
function s.flagcheck(c)
return c:GetFlagEffect(id)>0
end
--Extra material value
function s.extraval(chk,summon_type,e,...)
if chk==0 then
local tp,sc=...
if summon_type~=SUMMON_TYPE_LINK or sc~=e:GetHandler() then
return Group.CreateGroup()
else
return Duel.GetMatchingGroup(s.extramatfilter,tp,LOCATION_ONFIELD,0,nil)
end
elseif chk==1 then
local sg,sc,tp=...
if summon_type&SUMMON_TYPE_LINK==SUMMON_TYPE_LINK and #sg>0 then
Duel.Hint(HINT_CARD,tp,id)
Duel.ConfirmCards(1-tp,sg:Filter(Card.IsFacedown,nil))
end
elseif chk==2 then
local sg,sc,tp,ct=...
if summon_type&SUMMON_TYPE_LINK==SUMMON_TYPE_LINK and ct>1 then
Duel.Hint(HINT_CARD,tp,id)
end
end
end
--Extra material filter
function s.extramatfilter(c)
if c:IsLocation(LOCATION_ONFIELD) and c:IsFacedown() then
local res=c:IsSetCard(0xc50) and c:IsType(TYPE_SPELL+TYPE_TRAP)
if res then
c:RegisterFlagEffect(id,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end
return res
else
return c:IsSetCard(0xc50) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsCanBeLinkMaterial() and c:IsOnField()
end
end
--Special Summon cost
function s.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsReleasable() end
Duel.Release(e:GetHandler(),REASON_COST)
end
--Special Summon target
function s.spfilter(c,e,tp)
return c:IsSetCard(0xc50) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>-1
and Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end
--Special Summon operation
function s.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp)
local tc=g:GetFirst()
if tc and Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)~=0 then
local eff2=tc.effect_2
if not eff2 then return end
local e2t=eff2:GetTarget()
if (not e2t or e2t(eff2,tp,eg,ep,ev,re,r,rp,0))
and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
local e2o=eff2:GetOperation()
local tsg=e2t(eff2,tp,eg,ep,ev,re,r,rp,1)
if e2o then e2o(eff2,tp,eg,ep,ev,re,505,rp,tsg) end
end
end
end
--Equip condition
function s.eqcon(e,tp,eg,ep,ev,re,r,rp)
local ph=Duel.GetCurrentPhase()
return ph==PHASE_MAIN1 or ph==PHASE_MAIN2
end
--Equip target
function s.eqfilter(c)
return c:IsFaceup() and (c:IsSetCard(0xc50) or c:IsSetCard(0xc51))
end
function s.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.eqfilter(chkc) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingTarget(s.eqfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,s.eqfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,e:GetHandler(),1,0,0)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,0,0)
end
--Equip operation
function s.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end
local tc=Duel.GetFirstTarget()
if Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 or not tc:IsRelateToEffect(e) or tc:IsFacedown() then
return
end
if Duel.Equip(tp,c,tc) then
--Equip limit
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EQUIP_LIMIT)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetValue(s.eqlimit)
e1:SetLabelObject(tc)
c:RegisterEffect(e1)
--ATK/DEF increase
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_EQUIP)
e2:SetCode(EFFECT_UPDATE_ATTACK)
e2:SetValue(1000)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e3)
end
end
--Equip limit
function s.eqlimit(e,c)
return c==e:GetLabelObject()
end
\ No newline at end of file
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--楚子航 炎魔刀舞
--aux.Stringid(id,0)="墓地装备"
--aux.Stringid(id,1)="送去墓地无效效果"
local s,id,o=GetID()
function s.initial_effect(c)
-- 添加关联卡号
aux.AddCodeList(c,36700313) -- 楚子航 火之晨曦
--link summon
c:EnableReviveLimit()
--使用魔法陷阱卡作为连接素材
local e1=Effect.CreateEffect(c)
e1:SetDescription(1166)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_SPSUMMON_PROC)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetRange(LOCATION_EXTRA)
e1:SetCondition(s.LinkCondition(s.matfilter,2,3,s.lcheck))
e1:SetTarget(s.LinkTarget(s.matfilter,2,3,s.lcheck))
e1:SetOperation(s.LinkOperation(s.matfilter,2,3,s.lcheck))
e1:SetValue(SUMMON_TYPE_LINK)
c:RegisterEffect(e1)
--视为「楚子航 火之晨曦」
aux.EnableChangeCode(c,36700313,LOCATION_EXTRA+LOCATION_ONFIELD+LOCATION_GRAVE)
--Equip from grave
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,0))
e2:SetCategory(CATEGORY_EQUIP)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_GRAVE)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e2:SetCountLimit(1,id)
e2:SetCondition(s.eqcon)
e2:SetTarget(s.eqtg)
e2:SetOperation(s.eqop)
c:RegisterEffect(e2)
--不入连锁无效怪兽效果
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e3:SetCode(EVENT_CHAIN_SOLVING)
e3:SetRange(LOCATION_SZONE)
e3:SetCountLimit(1,id+1)
e3:SetCondition(s.negcon)
e3:SetOperation(s.negop)
c:RegisterEffect(e3)
s.effect_2=e2
end
--素材过滤器(允许使用魔法陷阱卡)
function s.matfilter(c,lc,sumtype,tp)
return c:IsType(TYPE_MONSTER) or (c:IsSetCard(0xc50) and c:IsType(TYPE_SPELL+TYPE_TRAP))
end
--连接素材检查(需要包含战士族·炎属性怪兽)
function s.lcheck(g,lc,sumtype,tp)
return g:IsExists(s.filter,1,nil)
end
function s.filter(c)
return c:IsRace(RACE_WARRIOR) and c:IsAttribute(ATTRIBUTE_FIRE)
end
--装备条件
function s.eqcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsMainPhase()
end
--装备目标过滤器
function s.eqfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50)
end
--装备目标
function s.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.eqfilter(chkc) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingTarget(s.eqfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,s.eqfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,e:GetHandler(),1,0,0)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,0,0)
end
--装备操作
function s.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and tc:IsFaceup() and tc:IsRelateToEffect(e) and tc:IsControler(tp) then
if not Duel.Equip(tp,c,tc) then return end
--增加攻击力
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_EQUIP)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(1200)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
--装备限制
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_EQUIP_LIMIT)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetValue(s.eqlimit)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e2)
end
end
--装备限制条件
function s.eqlimit(e,c)
return c:IsSetCard(0xc50)
end
--无效怪兽效果条件
function s.negcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_MONSTER) and Duel.IsChainDisablable(ev)
end
--无效怪兽效果操作
function s.negop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsAbleToGrave() then return end
if Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
Duel.Hint(HINT_CARD,0,id)
if Duel.SendtoGrave(c,REASON_EFFECT)~=0 then
local rc=re:GetHandler()
if Duel.NegateEffect(ev,true) and rc:IsRelateToEffect(re) then
Duel.Destroy(rc,REASON_EFFECT)
end
end
end
end
function s.LinkCondition(f,minct,maxct,gf)
return function(e,c,og,lmat,min,max)
if c==nil then return true end
if c:IsType(TYPE_PENDULUM) and c:IsFaceup() then return false end
local minc=minct
local maxc=maxct
if min then
if min>minc then minc=min end
if max<maxc then maxc=max end
if minc>maxc then return false end
end
local tp=c:GetControler()
local mg=nil
if og then
mg=og:Filter(Auxiliary.LConditionFilter,nil,f,c,e)
else
mg=Auxiliary.GetLinkMaterials(tp,f,c,e)
local mgs=Duel.GetMatchingGroup(s.matfilter,tp,LOCATION_ONFIELD,0,nil)
mg:Merge(mgs)
end
if lmat~=nil then
if not Auxiliary.LConditionFilter(lmat,f,c,e) then return false end
mg:AddCard(lmat)
end
local fg=Duel.GetMustMaterial(tp,EFFECT_MUST_BE_LMATERIAL)
if fg:IsExists(Auxiliary.MustMaterialCounterFilter,1,nil,mg) then return false end
Duel.SetSelectedCard(fg)
return mg:CheckSubGroup(Auxiliary.LCheckGoal,minc,maxc,tp,c,gf,lmat)
end
end
function s.LinkTarget(f,minct,maxct,gf)
return function(e,tp,eg,ep,ev,re,r,rp,chk,c,og,lmat,min,max)
local minc=minct
local maxc=maxct
if min then
if min>minc then minc=min end
if max<maxc then maxc=max end
if minc>maxc then return false end
end
local mg=nil
if og then
mg=og:Filter(Auxiliary.LConditionFilter,nil,f,c,e)
else
mg=Auxiliary.GetLinkMaterials(tp,f,c,e)
local mgs=Duel.GetMatchingGroup(s.matfilter,tp,LOCATION_ONFIELD,0,nil)
mg:Merge(mgs)
end
if lmat~=nil then
if not Auxiliary.LConditionFilter(lmat,f,c,e) then return false end
mg:AddCard(lmat)
end
local fg=Duel.GetMustMaterial(tp,EFFECT_MUST_BE_LMATERIAL)
Duel.SetSelectedCard(fg)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_LMATERIAL)
local cancel=Duel.IsSummonCancelable()
local sg=mg:SelectSubGroup(tp,Auxiliary.LCheckGoal,cancel,minc,maxc,tp,c,gf,lmat)
if sg then
sg:KeepAlive()
e:SetLabelObject(sg)
return true
else return false end
end
end
function s.LinkOperation(f,minct,maxct,gf)
return function(e,tp,eg,ep,ev,re,r,rp,c,og,lmat,min,max)
local g=e:GetLabelObject()
c:SetMaterial(g)
Auxiliary.LExtraMaterialCount(g,c,tp)
s.SzoneExtraMaterial(g,tp)
Duel.SendtoGrave(g,REASON_MATERIAL+REASON_LINK)
g:DeleteGroup()
end
end
function s.SzoneExtraMaterial(mg,tp)
for tc in Auxiliary.Next(mg) do
if tc:IsLocation(LOCATION_SZONE) and tc:IsFacedown() then
Duel.ConfirmCards(1-tp,tc)
end
end
end
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--恺撒·加图索
--aux.Stringid(id,0)="墓地装备"
--aux.Stringid(id,1)="送去墓地无效效果"
local s,id,o=GetID()
function s.initial_effect(c)
-- 添加关联卡号
aux.AddCodeList(c,36700306) -- 恺撒 火之晨曦
--link summon
c:EnableReviveLimit()
--使用魔法陷阱卡作为连接素材
local e1=Effect.CreateEffect(c)
e1:SetDescription(1166)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_SPSUMMON_PROC)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetRange(LOCATION_EXTRA)
e1:SetCondition(s.LinkCondition(s.matfilter,2,3,s.lcheck))
e1:SetTarget(s.LinkTarget(s.matfilter,2,3,s.lcheck))
e1:SetOperation(s.LinkOperation(s.matfilter,2,3,s.lcheck))
e1:SetValue(SUMMON_TYPE_LINK)
c:RegisterEffect(e1)
--视为「恺撒 火之晨曦」
aux.EnableChangeCode(c,36700304,LOCATION_EXTRA+LOCATION_ONFIELD+LOCATION_GRAVE)
--Equip from grave
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,0))
e2:SetCategory(CATEGORY_EQUIP)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_GRAVE)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e2:SetCountLimit(1,id)
e2:SetCondition(s.eqcon)
e2:SetTarget(s.eqtg)
e2:SetOperation(s.eqop)
c:RegisterEffect(e2)
--不入连锁无效魔法陷阱效果
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e3:SetCode(EVENT_CHAIN_SOLVING)
e3:SetRange(LOCATION_SZONE)
e3:SetCountLimit(1,id+1)
e3:SetCondition(s.negcon)
e3:SetOperation(s.negop)
c:RegisterEffect(e3)
s.effect_2=e2
end
--素材过滤器(允许使用魔法陷阱卡)
function s.matfilter(c,lc,sumtype,tp)
return c:IsType(TYPE_MONSTER) or (c:IsSetCard(0xc50) and c:IsType(TYPE_SPELL+TYPE_TRAP))
end
--连接素材检查(需要包含战士族·炎属性怪兽)
function s.lcheck(g,lc,sumtype,tp)
return g:IsExists(s.filter,1,nil)
end
function s.filter(c)
return c:IsRace(RACE_WARRIOR) and c:IsAttribute(ATTRIBUTE_FIRE)
end
--装备条件
function s.eqcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsMainPhase()
end
--装备目标过滤器
function s.eqfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc50)
end
--装备目标
function s.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.eqfilter(chkc) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingTarget(s.eqfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,s.eqfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,e:GetHandler(),1,0,0)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,0,0)
end
--装备操作
function s.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and tc:IsFaceup() and tc:IsRelateToEffect(e) and tc:IsControler(tp) then
if not Duel.Equip(tp,c,tc) then return end
--增加守备力
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_EQUIP)
e1:SetCode(EFFECT_UPDATE_DEFENSE)
e1:SetValue(1200)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
--装备限制
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_EQUIP_LIMIT)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetValue(s.eqlimit)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e2)
end
end
--装备限制条件
function s.eqlimit(e,c)
return c:IsSetCard(0xc50)
end
--无效魔法陷阱效果条件
function s.negcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and Duel.IsChainDisablable(ev)
end
--无效魔法陷阱效果操作
function s.negop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsAbleToGrave() then return end
if Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
Duel.Hint(HINT_CARD,0,id)
if Duel.SendtoGrave(c,REASON_EFFECT)~=0 then
local rc=re:GetHandler()
if Duel.NegateEffect(ev,true) and rc:IsRelateToEffect(re) then
Duel.Destroy(rc,REASON_EFFECT)
end
end
end
end
function s.LinkCondition(f,minct,maxct,gf)
return function(e,c,og,lmat,min,max)
if c==nil then return true end
if c:IsType(TYPE_PENDULUM) and c:IsFaceup() then return false end
local minc=minct
local maxc=maxct
if min then
if min>minc then minc=min end
if max<maxc then maxc=max end
if minc>maxc then return false end
end
local tp=c:GetControler()
local mg=nil
if og then
mg=og:Filter(Auxiliary.LConditionFilter,nil,f,c,e)
else
mg=Auxiliary.GetLinkMaterials(tp,f,c,e)
local mgs=Duel.GetMatchingGroup(s.matfilter,tp,LOCATION_ONFIELD,0,nil)
mg:Merge(mgs)
end
if lmat~=nil then
if not Auxiliary.LConditionFilter(lmat,f,c,e) then return false end
mg:AddCard(lmat)
end
local fg=Duel.GetMustMaterial(tp,EFFECT_MUST_BE_LMATERIAL)
if fg:IsExists(Auxiliary.MustMaterialCounterFilter,1,nil,mg) then return false end
Duel.SetSelectedCard(fg)
return mg:CheckSubGroup(Auxiliary.LCheckGoal,minc,maxc,tp,c,gf,lmat)
end
end
function s.LinkTarget(f,minct,maxct,gf)
return function(e,tp,eg,ep,ev,re,r,rp,chk,c,og,lmat,min,max)
local minc=minct
local maxc=maxct
if min then
if min>minc then minc=min end
if max<maxc then maxc=max end
if minc>maxc then return false end
end
local mg=nil
if og then
mg=og:Filter(Auxiliary.LConditionFilter,nil,f,c,e)
else
mg=Auxiliary.GetLinkMaterials(tp,f,c,e)
local mgs=Duel.GetMatchingGroup(s.matfilter,tp,LOCATION_ONFIELD,0,nil)
mg:Merge(mgs)
end
if lmat~=nil then
if not Auxiliary.LConditionFilter(lmat,f,c,e) then return false end
mg:AddCard(lmat)
end
local fg=Duel.GetMustMaterial(tp,EFFECT_MUST_BE_LMATERIAL)
Duel.SetSelectedCard(fg)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_LMATERIAL)
local cancel=Duel.IsSummonCancelable()
local sg=mg:SelectSubGroup(tp,Auxiliary.LCheckGoal,cancel,minc,maxc,tp,c,gf,lmat)
if sg then
sg:KeepAlive()
e:SetLabelObject(sg)
return true
else return false end
end
end
function s.LinkOperation(f,minct,maxct,gf)
return function(e,tp,eg,ep,ev,re,r,rp,c,og,lmat,min,max)
local g=e:GetLabelObject()
c:SetMaterial(g)
Auxiliary.LExtraMaterialCount(g,c,tp)
s.SzoneExtraMaterial(g,tp)
Duel.SendtoGrave(g,REASON_MATERIAL+REASON_LINK)
g:DeleteGroup()
end
end
function s.SzoneExtraMaterial(mg,tp)
for tc in Auxiliary.Next(mg) do
if tc:IsLocation(LOCATION_SZONE) and tc:IsFacedown() then
Duel.ConfirmCards(1-tp,tc)
end
end
end
This diff is collapsed.
--[[
本lua的作者为藜奴儿,如果测试出bug请联系QQ:1502939196
未经允许不支持任何人的任何形式的修改,源数。如有需要请联系作者,而不是私自找人代为修改。
本人对于本lua的任何bug修改、源数和适配后来卡片均为免费,并且追诉期无限。
但是如果使用者私自修改了lua,不论是bug修复还是源数效果,本人对此lua都不会再提供任何形式的支持。
一旦发现任何其他人对本lua进行了任何形式的修改,本人首先自愿放弃此lua除必要署名权以外的所有权利,
同时再也会不承担对此lua的任何维护与后续适配,包括但不限于任何形式的bug修复、效果源数。
如果您想要修改此lua,可以先联系本人,本人会在第一时间进行回复。
并且我承诺,若本人在2天内没有回复您,上述注意事项可作废,您可以直接修改此lua,而后续debug与适配仍然由我来进行。
如果您对本lua有任何疑问,请联系本人,本人会在第一时间进行回复。
如果您对本lua有任何建议,请联系本人,本人会在第一时间进行处理。
]]
--Show me the flowers
--aux.Stringid(id,0)="选择特殊召唤的怪兽"
local s,id,o=GetID()
function s.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,id,EFFECT_COUNT_CODE_OATH)
e1:SetTarget(s.target)
e1:SetOperation(s.activate)
c:RegisterEffect(e1)
end
function s.spfilter(c,e,tp)
return c:IsSetCard(0xc50) and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
local g=Duel.GetMatchingGroup(s.spfilter,tp,LOCATION_DECK,0,nil,e,tp)
return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.GetLocationCount(1-tp,LOCATION_MZONE)>0
and g:CheckSubGroup(aux.dncheck,2,2)
end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,tp,LOCATION_DECK)
end
function s.activate(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 or Duel.GetLocationCount(1-tp,LOCATION_MZONE)<=0 then
return
end
local g=Duel.GetMatchingGroup(s.spfilter,tp,LOCATION_DECK,0,nil,e,tp)
if not g:CheckSubGroup(aux.dncheck,2,2) then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM)
local sg=g:SelectSubGroup(tp,aux.dncheck,false,2,2)
if not sg or #sg~=2 then return end
-- 让对方选择一只怪兽
Duel.ConfirmCards(1-tp,sg)
Duel.Hint(HINT_SELECTMSG,1-tp,aux.Stringid(id,0))
local tc=sg:Select(1-tp,1,1,nil):GetFirst()
local oc=(sg-tc):GetFirst()
-- 特殊召唤选择的怪兽到对方场上
if Duel.SpecialSummonStep(tc,0,tp,1-tp,false,false,POS_FACEUP) then
-- 特殊召唤另一只怪兽到自己场上
Duel.SpecialSummonStep(oc,0,tp,tp,false,false,POS_FACEUP)
end
Duel.SpecialSummonComplete()
end
This diff is collapsed.
This diff is collapsed.
...@@ -8,6 +8,7 @@ function s.initial_effect(c) ...@@ -8,6 +8,7 @@ function s.initial_effect(c)
e0:SetTarget(s.resetg) e0:SetTarget(s.resetg)
e0:SetValue(aux.TRUE) e0:SetValue(aux.TRUE)
c:RegisterEffect(e0) c:RegisterEffect(e0)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
...@@ -63,7 +64,8 @@ function s.cpcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -63,7 +64,8 @@ function s.cpcon(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject() local tc=e:GetLabelObject()
if not tc then return true end if not tc then return true end
local ag=ng:GetMinGroup(s.distance,c,tp) local ag=ng:GetMinGroup(s.distance,c,tp)
return not tc:IsLocation(LOCATION_MZONE) or not tc:IsFaceup() or not ag:IsContains(tc) local res=tc:IsLocation(LOCATION_MZONE) and tc:IsFaceup() and ag:IsContains(tc)
return not res
end end
function s.cpop(e,tp,eg,ep,ev,re,r,rp) function s.cpop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
...@@ -74,12 +76,17 @@ function s.cpop(e,tp,eg,ep,ev,re,r,rp) ...@@ -74,12 +76,17 @@ function s.cpop(e,tp,eg,ep,ev,re,r,rp)
end end
if ag:GetCount()>0 then if ag:GetCount()>0 then
Duel.HintSelection(ag) Duel.HintSelection(ag)
local cc=c:GetFirstCardTarget() local ac=e:GetLabelObject()
if cc then c:CancelCardTarget(cc) end local aid=e:GetLabel()
if ac and aid then
s.resetcopy(c,ac,aid)
end
local tc=ag:GetFirst() local tc=ag:GetFirst()
e:SetLabelObject(tc) e:SetLabelObject(tc)
c:SetCardTarget(tc) c:SetCardTarget(tc)
local code=tc:GetOriginalCodeRule() local code=tc:GetOriginalCodeRule()
local cid=c:CopyEffect(code,RESET_EVENT+RESETS_STANDARD)
e:SetLabel(cid)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
...@@ -91,12 +98,44 @@ function s.cpop(e,tp,eg,ep,ev,re,r,rp) ...@@ -91,12 +98,44 @@ function s.cpop(e,tp,eg,ep,ev,re,r,rp)
e1:SetCode(EFFECT_ADD_CODE) e1:SetCode(EFFECT_ADD_CODE)
e1:SetValue(code) e1:SetValue(code)
c:RegisterEffect(e1) c:RegisterEffect(e1)
if c:GetFlagEffect(0xffffff+code+11451907)==0 then c:RegisterFlagEffect(0xffffff+code+11451907,RESET_EVENT+RESETS_STANDARD,0,1)
c:CopyEffect(code,RESET_EVENT+RESETS_STANDARD) local re=Effect.CreateEffect(c)
c:RegisterFlagEffect(0xffffff+code+11451907,RESET_EVENT+RESETS_STANDARD,0,1) re:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
end re:SetRange(LOCATION_MZONE)
re:SetCode(EVENT_ADJUST)
re:SetLabelObject(e)
re:SetCondition(s.resetcon)
re:SetOperation(s.resetop)
re:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(re)
end
end
function s.resetcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local ce=e:GetLabelObject()
local tc=ce:GetLabelObject()
return not tc:IsLocation(LOCATION_MZONE) or not tc:IsFaceup()
end
function s.resetcopy(c,tc,cid)
local code=tc:GetOriginalCodeRule()
c:CancelCardTarget(tc)
local num=c:GetFlagEffect(0xffffff+code+11451907)
c:ResetFlagEffect(0xffffff+code+11451907)
if num>1 then c:RegisterFlagEffect(0xffffff+code+11451907,RESET_EVENT+RESETS_STANDARD,0,1) end
c:ResetEffect(cid,RESET_COPY)
local elist={c:IsHasEffect(EFFECT_ADD_CODE)}
for _,v in pairs(elist) do
if v:GetValue()==code then v:Reset() end
end end
end end
function s.resetop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local ce=e:GetLabelObject()
local cid=ce:GetLabel()
local tc=ce:GetLabelObject()
s.resetcopy(c,tc,cid)
e:Reset()
end
function s.efilter(e,te) function s.efilter(e,te)
if te and te:GetHandler() and e:GetHandler()~=te:GetHandler() and not te:IsHasProperty(EFFECT_FLAG_UNCOPYABLE) and (te:GetCode()<0x10000 or te:IsHasType(EFFECT_TYPE_ACTIONS)) and te:GetCode()~=16 and te:GetCode()~=359 then if te and te:GetHandler() and e:GetHandler()~=te:GetHandler() and not te:IsHasProperty(EFFECT_FLAG_UNCOPYABLE) and (te:GetCode()<0x10000 or te:IsHasType(EFFECT_TYPE_ACTIONS)) and te:GetCode()~=16 and te:GetCode()~=359 then
local e1=Effect.CreateEffect(te:GetHandler()) local e1=Effect.CreateEffect(te:GetHandler())
......
This diff is collapsed.
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