Commit 176dfba0 authored by DailyShana's avatar DailyShana

new

parent d1f5e56a
--GUYダンス
function c50696588.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCost(c50696588.cost)
e1:SetTarget(c50696588.target)
e1:SetOperation(c50696588.activate)
c:RegisterEffect(e1)
end
function c50696588.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFlagEffect(tp,50696588)==0 end
end
function c50696588.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(1-tp,LOCATION_MZONE,PLAYER_NONE,0)>0 end
local flag=Duel.SelectDisableField(tp,1,0,LOCATION_MZONE,0)
e:SetLabel(flag)
end
function c50696588.activate(e,tp,eg,ep,ev,re,r,rp)
local flag=e:GetLabel()
local seq=math.log(bit.rshift(flag,16),2)
if not Duel.CheckLocation(1-tp,LOCATION_MZONE,seq) then return end
Duel.RegisterFlagEffect(tp,50696588,0,0,0)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_MUST_USE_MZONE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(0,1)
e1:SetValue(flag)
Duel.RegisterEffect(e1,tp)
end
...@@ -33,19 +33,17 @@ function c55063751.initial_effect(c) ...@@ -33,19 +33,17 @@ function c55063751.initial_effect(c)
e3:SetOperation(c55063751.negop) e3:SetOperation(c55063751.negop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c55063751.spfilter(c,ft) function c55063751.spfilter(c,tp)
return c:IsReleasable() and (ft>0 or c:GetSequence()<5) return c:IsReleasable() and Duel.GetMZoneCount(1-tp,c,tp)>0
end end
function c55063751.spcon(e,c) function c55063751.spcon(e,c)
if c==nil then return true end if c==nil then return true end
local tp=c:GetControler() local tp=c:GetControler()
local ft=Duel.GetLocationCount(1-tp,LOCATION_MZONE) return Duel.IsExistingMatchingCard(c55063751.spfilter,tp,0,LOCATION_MZONE,1,nil,tp)
return ft>-1 and Duel.IsExistingMatchingCard(c55063751.spfilter,tp,0,LOCATION_MZONE,1,nil,ft)
end end
function c55063751.spop(e,tp,eg,ep,ev,re,r,rp,c) function c55063751.spop(e,tp,eg,ep,ev,re,r,rp,c)
local ft=Duel.GetLocationCount(1-tp,LOCATION_MZONE)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g=Duel.SelectMatchingCard(tp,c55063751.spfilter,tp,0,LOCATION_MZONE,1,1,nil,ft) local g=Duel.SelectMatchingCard(tp,c55063751.spfilter,tp,0,LOCATION_MZONE,1,1,nil,tp)
Duel.Release(g,REASON_COST) Duel.Release(g,REASON_COST)
end end
function c55063751.cfilter(c) function c55063751.cfilter(c)
......
...@@ -477,6 +477,7 @@ EFFECT_USE_EXTRA_MZONE =261 --怪兽区域封锁 ...@@ -477,6 +477,7 @@ EFFECT_USE_EXTRA_MZONE =261 --怪兽区域封锁
EFFECT_USE_EXTRA_SZONE =262 --魔法区域封锁 EFFECT_USE_EXTRA_SZONE =262 --魔法区域封锁
EFFECT_MAX_MZONE =263 --怪獸区格數上限 EFFECT_MAX_MZONE =263 --怪獸区格數上限
EFFECT_MAX_SZONE =264 --魔陷区格數上限 EFFECT_MAX_SZONE =264 --魔陷区格數上限
EFFECT_MUST_USE_MZONE =265 --必须使用怪兽区的格子
EFFECT_HAND_LIMIT =270 --手牌数量限制 EFFECT_HAND_LIMIT =270 --手牌数量限制
EFFECT_DRAW_COUNT =271 --抽卡阶段的抽卡数 EFFECT_DRAW_COUNT =271 --抽卡阶段的抽卡数
EFFECT_SPIRIT_DONOT_RETURN =280 --灵魂怪兽不返回手牌 EFFECT_SPIRIT_DONOT_RETURN =280 --灵魂怪兽不返回手牌
......
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