Commit d5a1fa5b authored by jwyxym's avatar jwyxym Committed by GitHub

Add files via upload

parent 6b81d098
...@@ -149,7 +149,7 @@ function VgD.CallCondition(e,c) ...@@ -149,7 +149,7 @@ function VgD.CallCondition(e,c)
if c==nil then return true end if c==nil then return true end
local tp=e:GetHandlerPlayer() local tp=e:GetHandlerPlayer()
if VgF.GetAvailableLocation(tp)<=0 then return end if VgF.GetAvailableLocation(tp)<=0 then return end
return VgF.LvCondition(e) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_ATTACK) return VgF.LvCondition(e) and c:IsCanBeSpecialSummoned(e,SUMMON_VALUE_CALL,tp,false,false,POS_FACEUP_ATTACK)
end end
function VgD.CallFilter(c,tp,zone) function VgD.CallFilter(c,tp,zone)
return VgF.RMonsterFilter(c) and zone==VgF.SequenceToGlobal(tp,c:GetLocation(),c:GetSequence()) return VgF.RMonsterFilter(c) and zone==VgF.SequenceToGlobal(tp,c:GetLocation(),c:GetSequence())
...@@ -168,7 +168,7 @@ function VgD.CallOperation(e,tp,eg,ep,ev,re,r,rp) ...@@ -168,7 +168,7 @@ function VgD.CallOperation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetMatchingGroup(VgD.CallFilter,tp,LOCATION_MZONE,0,nil,tp,zone):GetFirst() local tc=Duel.GetMatchingGroup(VgD.CallFilter,tp,LOCATION_MZONE,0,nil,tp,zone):GetFirst()
Duel.SendtoGrave(tc,REASON_COST) Duel.SendtoGrave(tc,REASON_COST)
end end
e:SetValue(function () return 0,zone end) e:SetValue(function () return SUMMON_VALUE_CALL,zone end)
end end
--超限舞装 --超限舞装
...@@ -194,7 +194,7 @@ function VgD.OverDressCondition(f) ...@@ -194,7 +194,7 @@ function VgD.OverDressCondition(f)
return function (e,c) return function (e,c)
if c==nil then return true end if c==nil then return true end
local tp=e:GetHandlerPlayer() local tp=e:GetHandlerPlayer()
return VgF.LvCondition(e) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_ATTACK) and Duel.IsExistingMatchingCard(VgD.OverDressFilter,tp,LOCATION_MZONE,0,1,nil,f) return VgF.LvCondition(e) and c:IsCanBeSpecialSummoned(e,SUMMON_VALUE_CALL,tp,false,false,POS_FACEUP_ATTACK) and Duel.IsExistingMatchingCard(VgD.OverDressFilter,tp,LOCATION_MZONE,0,1,nil,f)
end end
end end
function VgD.OverDressFilter(c,f,zone) function VgD.OverDressFilter(c,f,zone)
...@@ -236,7 +236,7 @@ function VgD.OverDressOperation(f) ...@@ -236,7 +236,7 @@ function VgD.OverDressOperation(f)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CallZONE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CallZONE)
szone=Duel.SelectField(tp,1,LOCATION_MZONE,0,zone) szone=Duel.SelectField(tp,1,LOCATION_MZONE,0,zone)
end end
e:SetValue(function () return 0,szone end) e:SetValue(function () return SUMMON_VALUE_CALL,szone end)
local tc=Duel.GetMatchingGroup(VgD.OverDressFilter,tp,LOCATION_MZONE,0,nil,f,szone):GetFirst() local tc=Duel.GetMatchingGroup(VgD.OverDressFilter,tp,LOCATION_MZONE,0,nil,f,szone):GetFirst()
if not tc then return end if not tc then return end
local mg=tc:GetOverlayGroup() local mg=tc:GetOverlayGroup()
......
...@@ -144,7 +144,7 @@ SUMMON_TYPE_RIDE =0x49000000 --骑升 ...@@ -144,7 +144,7 @@ SUMMON_TYPE_RIDE =0x49000000 --骑升
--SUMMON_TYPE_CALL =0x4a000000 --Call到R位 --SUMMON_TYPE_CALL =0x4a000000 --Call到R位
SUMMON_TYPE_LINK =0x4c000000 --连接召唤 SUMMON_TYPE_LINK =0x4c000000 --连接召唤
--Summon Value --特定的召唤方式 --Summon Value --特定的召唤方式
SUMMON_VALUE_SELF =0x1 --自身效果或条件 SUMMON_VALUE_CALL =0x1 --通常CALL出场
SUMMON_VALUE_SYNCHRO_MATERIAL =0x11 --特殊召唤并作为同调素材(黑羽-东云之东风检查) SUMMON_VALUE_SYNCHRO_MATERIAL =0x11 --特殊召唤并作为同调素材(黑羽-东云之东风检查)
SUMMON_VALUE_DARK_SANCTUARY =0x12 --暗黑圣域 SUMMON_VALUE_DARK_SANCTUARY =0x12 --暗黑圣域
SUMMON_VALUE_MONSTER_REBORN =0x13 --死者苏生(千年的启示) SUMMON_VALUE_MONSTER_REBORN =0x13 --死者苏生(千年的启示)
......
local cm,m,o=GetID() local cm,m,o=GetID()
function cm.initial_effect(c) function cm.initial_effect(c)
vgf.VgCard(c) vgf.VgCard(c)
vgd.ContinuousSpell(c)
vgd.EffectTypeTrigger(c,m,loc,EFFECT_TYPE_SINGLE,EVENT_MOVE,vgf.OverlayFill(3),cost,cm.con)
vgd.EffectTypeTrigger(c,m,LOCATION_ORDER,EFFECT_TYPE_FIELD,EVENT_SPSUMMON_SUCCESS,cm.op1,cm.cost1,cm.con1,tg,count,EFFECT_FLAG_BOTH_SIDE)
end end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_ORDER)
end
function cm.cost1(e,tp,eg,ep,ev,re,r,rp,chk)
local a=Duel.GetMatchingGroup(VgF.VMonsterFilter,tp,LOCATION_MZONE,0,nil,nil):GetFirst():GetOverlayGroup():FilterCount(Card.IsAbleToGraveAsCost,nil)>=1
local b=Duel.IsExistingMatchingCard(Card.IsFaceup,tp,LOCATION_DAMAGE,0,1,nil)
if chk==0 then return a or b end
local off=1
local ops={}
if a then
ops[off]=VgF.Stringid(VgID,11)
off=off+1
end
if b then
ops[off]=VgF.Stringid(VgID,12)
off=off+1
end
local sel=Duel.SelectOption(tp,table.unpack(ops))
if sel==0 and a then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVEXYZ)
local g=Duel.GetMatchingGroup(VgF.VMonsterFilter,tp,LOCATION_MZONE,0,nil):GetFirst():GetOverlayGroup():FilterSelect(tp,Card.IsAbleToGraveAsCost,num,num,nil)
Duel.SendtoGrave(g,REASON_COST)
e:SetLabel(1)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DAMAGE)
local g=Duel.SelectMatchingCard(tp,Card.IsFaceup,tp,LOCATION_DAMAGE,0,num,num,nil)
Duel.ChangePosition(g,POS_FACEDOWN_ATTACK)
e:SetLabel(2)
end
end
function cm.con1(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.filter,1,nil) and eg:Count()==1
end
function cm.filter(c)
return c:IsSummonType(SUMMON_VALUE_CALL)
end
function cm.op1(e,tp,eg,ep,ev,re,r,rp)
local zone=vgf.GetAvailableLocation(tp)
local ct=bit.ReturnCount(zone)
if ct>e:GetLabel() then ct=e:GetLabel() end
Duel.Hint(HINT_MESSAGE,tp,HINTMSG_CALL)
local g=Duel.SelectMatchingCard(tp,cm.filter1,tp,0,LOCATION_ORDER,ct,ct,nil,e,tp)
if #g>0 then
Duel.HintSelection(g)
vgf.Call(g,0,tp)
end
end
function cm.filter1(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_ATTACK,tp) or c:IsType(TYPE_SPELL)
end
\ No newline at end of file
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