Commit 76ba6fa1 authored by Tachibana's avatar Tachibana

eme

parent 5b0dde48
No preview for this file type
......@@ -1407,6 +1407,7 @@
64832018 0 --星光歌剧Revue-『命运』
64832019 0 --星光歌剧Revue-『迷宫』
64832026 1 --『星光歌剧』台本-约定Revue
64832027 0 --『星光歌剧』台本-星醉Revue
64832031 0--『星光歌剧』台本-孤独Revue
64832036 0 --星光歌剧 凤满Revue
64832502 0 --初生之白月骑士
......
......@@ -33,7 +33,6 @@ function rkst.advcon(e,c,minc)
cm.check_s = true
local res = c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg)
cm.check_s = false
e1:Reset()
return res or res1
end
function rkst.advop(e,tp,eg,ep,ev,re,r,rp,c)
......@@ -61,7 +60,6 @@ function rkst.advop(e,tp,eg,ep,ev,re,r,rp,c)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
cm.check_s = false
e1:Reset()
end
if not cm then return end
function cm.initial_effect(c)
......
......@@ -70,7 +70,7 @@ function cm.sumop(e,tp,eg,ep,ev,re,r,rp)
e2:SetCode(EVENT_PHASE+PHASE_END)
e2:SetCountLimit(1)
e2:SetLabel(Duel.GetTurnCount())
e2:SetCondition(cm.damcon)
e2:SetCondition(cm.damcon2)
e2:SetOperation(cm.damop)
e2:SetReset(RESET_PHASE+PHASE_END,2)
e2:SetLabelObject(e1)
......@@ -96,7 +96,7 @@ function cm.regop(e,tp,eg,ep,ev,re,r,rp)
e:SetLabel(1)
end
end
function cm.damcon(e,tp,eg,ep,ev,re,r,rp)
function cm.damcon2(e,tp,eg,ep,ev,re,r,rp)
return e:GetLabelObject():GetLabel()~=1 and Duel.GetTurnCount()>e:GetLabel()
end
function cm.damop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -45,6 +45,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
e9:SetType(EFFECT_TYPE_SINGLE)
e9:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e9:SetCode(EFFECT_ADD_EXTRA_TRIBUTE)
e9:SetCondition(cm.excon)
e9:SetTargetRange(LOCATION_SZONE,LOCATION_SZONE)
e9:SetValue(POS_FACEUP_ATTACK+POS_FACEDOWN_DEFENSE)
local e10=Effect.CreateEffect(c)
......@@ -57,8 +58,11 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.SpecialSummonComplete()
end
end
function cm.excon(e)
return not check_for_SINTEI_check_s
end
function cm.advtg(e,c)
return c:IsSetCard(0xcc5)
return c:IsSetCard(0xcc5)
end
function cm.cfilter1(c)
return c:IsSetCard(0xcc5) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToRemoveAsCost()
......
......@@ -42,7 +42,7 @@ function cm.desfilter(c)
return c:IsFaceup() and rk.check(c,"FAIRY")
end
function cm.ctfilter(c)
return c:IsControlerCanBeChanged()
return c:IsControlerCanBeChanged() and c:IsFaceup()
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckLPCost(tp,1000) end
......
......@@ -39,7 +39,7 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_PUBLIC)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e:GetHandler():RegisterEffect(e1)
tc:RegisterEffect(e1)
end
Duel.BreakEffect()
Duel.SkipPhase(tp,PHASE_DRAW,RESET_PHASE+PHASE_END,1)
......
--星光歌剧Revue-『孤独』
function c64832021.initial_effect(c)
--link summon
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0x6410),2)
--link summon
aux.AddLinkProcedure(c,c64832021.mfilter,3)
c:EnableReviveLimit()
--disable!
--disable
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DISABLE)
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetRange(LOCATION_MZONE)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,64832021)
e1:SetTarget(c64832021.tg)
e1:SetOperation(c64832021.op)
e1:SetCost(c64832021.discost)
e1:SetTarget(c64832021.distg)
e1:SetOperation(c64832021.disop)
c:RegisterEffect(e1)
--Activate
local e2=Effect.CreateEffect(c)
......@@ -20,59 +22,60 @@ function c64832021.initial_effect(c)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_REMOVE)
e2:SetCountLimit(1,64832022)
e2:SetTarget(c64832021.target)
e2:SetOperation(c64832021.activate)
e2:SetTarget(c64832021.thtg)
e2:SetOperation(c64832021.thop)
c:RegisterEffect(e2)
end
function c64832021.tg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_DISABLE,nil,1,0,0)
function c64832021.mfilter(c)
return not c:IsLinkType(TYPE_TOKEN) and c:IsLinkSetCard(0x6410)
end
function c64832021.costfilter(c)
return c:IsSetCard(0x6410) and c:IsDiscardable()
end
function c64832021.discost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c64832021.costfilter,tp,LOCATION_HAND,0,1,e:GetHandler()) end
Duel.DiscardHand(tp,c64832021.costfilter,1,1,REASON_COST+REASON_DISCARD)
end
function c64832021.op(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,0,LOCATION_MZONE,nil)
function c64832021.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(aux.disfilter1,tp,0,LOCATION_MZONE,1,e:GetHandler()) end
local g=Duel.GetMatchingGroup(aux.disfilter1,tp,0,LOCATION_MZONE,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_DISABLE,g,g:GetCount(),0,0)
end
function c64832021.disop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(aux.disfilter1,tp,0,LOCATION_MZONE,nil)
local tc=g:GetFirst()
local c=e:GetHandler()
while tc do
local e1=Effect.CreateEffect(c)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_DISABLE_EFFECT)
e2:SetValue(RESET_TURN_SET)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e2)
tc=g:GetNext()
end
end
function c64832021.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
if Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)<4 then return false end
local g=Duel.GetDecktopGroup(tp,4)
local result=g:FilterCount(Card.IsAbleToHand,nil)>0
return result
end
Duel.SetTargetPlayer(tp)
function c64832021.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>=3 end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK)
end
function c64832021.activate(e,tp,eg,ep,ev,re,r,rp)
local p=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER)
Duel.ConfirmDecktop(p,4)
local g=Duel.GetDecktopGroup(p,4)
function c64832021.thfilter(c)
return c:IsSetCard(0x6410) and c:IsAbleToHand()
end
function c64832021.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmDecktop(tp,3)
local g=Duel.GetDecktopGroup(tp,3)
if g:GetCount()>0 then
if g:IsExists(Card.IsSetCard,1,nil,0x6410) then
Duel.Hint(HINT_SELECTMSG,p,HINTMSG_ATOHAND)
local sg=g:FilterSelect(p,Card.IsSetCard,1,1,nil,0x6410)
if sg:GetFirst():IsAbleToHand() then
if g:IsExists(c64832021.thfilter,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(64832021,2)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=g:FilterSelect(tp,c64832021.thfilter,1,1,nil)
Duel.SendtoHand(sg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-p,sg)
Duel.ShuffleHand(p)
else
Duel.SendtoGrave(sg,REASON_RULE)
end
Duel.ConfirmCards(1-tp,sg)
Duel.ShuffleHand(tp)
end
Duel.ShuffleDeck(p)
Duel.ShuffleDeck(tp)
end
end
\ No newline at end of file
......@@ -5,6 +5,7 @@ function c64832026.initial_effect(c)
e1:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,64832026)
e1:SetCost(c64832026.cost)
e1:SetTarget(c64832026.tg)
e1:SetOperation(c64832026.op)
......@@ -14,32 +15,71 @@ function c64832026.initial_effect(c)
e2:SetCategory(CATEGORY_TODECK+CATEGORY_DRAW)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,64832026)
e2:SetCountLimit(1,64832027)
e2:SetCondition(aux.exccon)
e2:SetTarget(c64832026.drtg)
e2:SetOperation(c64832026.drop)
c:RegisterEffect(e2)
end
function c64832026.costfil(c)
function c64832026.costfil(c,tp)
return c:IsSetCard(0x6410) and c:IsType(TYPE_MONSTER) and not c:IsPublic()
and Duel.IsExistingMatchingCard(c64832026.costfilter,tp,LOCATION_DECK,0,1,nil,c:GetCode())
end
function c64832026.costfilter(c,code)
return c:IsSetCard(0x6410) and not c:IsCode(code) and c:IsAbleToHand()
end
function c64832026.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c64832026.costfil,tp,LOCATION_HAND,0,1,nil) end
local g=Duel.SelectMatchingCard(tp,c64832026.costfil,tp,LOCATION_HAND,0,1,1,nil)
if chk==0 then return Duel.IsExistingMatchingCard(c64832026.costfil,tp,LOCATION_HAND,0,1,nil,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM)
local g=Duel.SelectMatchingCard(tp,c64832026.costfil,tp,LOCATION_HAND,0,1,1,nil,tp)
Duel.ConfirmCards(1-tp,g)
Duel.ShuffleHand(tp)
e:SetLabel(g:GetFirst():GetCode())
end
function c64832026.thfil(c)
return c:IsSetCard(0x6410) and not c:IsCode(64832026) and c:IsAbleToHand()
end
function c64832026.tg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c64832026.thfil,tp,LOCATION_DECK,0,1,nil) end
if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function c64832026.op(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c64832026.thfil,tp,LOCATION_DECK,0,1,1,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c64832026.costfilter,tp,LOCATION_DECK,0,1,1,nil,e:GetLabel())
if g:GetCount()>0 then
Duel.SendtoHand(g,tp,REASON_EFFECT)
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
if e:IsHasType(EFFECT_TYPE_ACTIVATE) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetTargetRange(1,0)
e1:SetLabel(e:GetLabel())
e1:SetCondition(c64832026.actcon)
e1:SetValue(c64832026.actlimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e2:SetCode(EVENT_CHAINING)
e2:SetLabel(e:GetLabel())
e2:SetOperation(c64832026.aclimit1)
e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp)
end
end
function c64832026.actcon(e)
return Duel.GetFlagEffect(e:GetHandlerPlayer(),64832026)~=0
end
function c64832026.actlimit(e,re,tp)
return re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsCode(e:GetLabel())
end
function c64832026.aclimit1(e,tp,eg,ep,ev,re,r,rp)
local tp=e:GetHandlerPlayer()
if ep~=tp or not re:IsActiveType(TYPE_MONSTER) or not re:GetHandler():IsCode(e:GetLabel()) then return end
Duel.RegisterFlagEffect(tp,64832026,RESET_PHASE+PHASE_END,0,1)
end
function c64832026.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToDeck() and Duel.IsPlayerCanDraw(tp,1) end
......
--『星光歌剧』台本-命运Revue
function c64832032.initial_effect(c)
--Activate
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY)
e1:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY+CATEGORY_DRAW)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_CHAINING)
e1:SetCountLimit(1,64832032+EFFECT_COUNT_CODE_OATH)
......@@ -13,40 +13,28 @@ function c64832032.initial_effect(c)
c:RegisterEffect(e1)
end
function c64832032.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsChainNegatable(ev) and ep~=tp
return (re:IsActiveType(TYPE_MONSTER) or re:IsHasType(EFFECT_TYPE_ACTIVATE)) and Duel.IsChainNegatable(ev)
end
function c64832032.cfilter(c)
return c:IsSetCard(0x6410) and not c:IsStatus(STATUS_BATTLE_DESTROYED)
return c:IsSetCard(0x6410) and (c:IsControler(tp) or c:IsFaceup()) and not c:IsStatus(STATUS_BATTLE_DESTROYED)
end
function c64832032.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,c64832032.cfilter,1,nil) end
local g=Duel.SelectReleaseGroup(tp,c64832032.cfilter,1,1,nil)
Duel.Release(g,REASON_COST)
if chk==0 then return Duel.CheckReleaseGroup(tp,c64832032.cfilter,1,nil,tp) end
local sg=Duel.SelectReleaseGroup(tp,c64832032.cfilter,1,1,nil,tp)
Duel.Release(sg,REASON_COST)
end
function c64832032.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
if chk==0 then return Duel.IsPlayerCanDraw(tp,1) end
Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0)
if re:GetHandler():IsDestructable() and re:GetHandler():IsRelateToEffect(re) then
Duel.SetOperationInfo(0,CATEGORY_DESTROY,eg,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
end
end
function c64832032.activate(e,tp,eg,ep,ev,re,r,rp)
local ty=re:GetActiveType()
if Duel.NegateActivation(ev) then
if re:GetHandler():IsRelateToEffect(re) then
Duel.Destroy(eg,REASON_EFFECT)
end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetLabel(ty)
e1:SetTargetRange(0,1)
e1:SetValue(c64832032.aclimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
if not Duel.NegateActivation(ev) then return end
if re:GetHandler():IsRelateToEffect(re) and Duel.Destroy(eg,REASON_EFFECT)~=0 then
Duel.BreakEffect()
Duel.Draw(tp,1,REASON_EFFECT)
end
end
function c64832032.aclimit(e,re,tp)
return re:GetActiveType()==e:GetLabel()
end
......@@ -75,6 +75,7 @@ function c9310053.spcon2(e,tp,eg,ep,ev,re,r,rp)
and Duel.GetFieldGroupCount(tp,LOCATION_ONFIELD,0)==0
end
function c9310053.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:GetFlagEffect(9310053)==0
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
......
......@@ -932,6 +932,7 @@
!setname 0x623 TUB
!setname 0x625 迷石宫
!setname 0x628 哈伊瓦纳斯
!setname 0x62b Roaring Flare
#LaiBill 529508379 601 0xb20-0xb2f
!setname 0xab20 幻想曲
......@@ -1158,7 +1159,8 @@
!setname 0xea4 赫里奥波里斯
!setname 0xea5 战争机器
#专业铁板沙包 769 1115493881
#专业铁板沙包 769 1115493881 0x760-0x76f
!setname 0x769 决死士
#ccodem.add_juesishi 带有「决死士」描述判断
#yun优 398623059 770 0xee0-0xeef
......
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