Commit e8c5e12f authored by xiaoye's avatar xiaoye

fix loc

parent 54ba43bb
......@@ -157,7 +157,7 @@ function cm.initial_effect(c)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_CIRCLE,0,1,1,nil)
vgf.AtkUp(c,g,5000,nil)
vgf.CardsFromTo(REASON_EFFECT,LOCATION_HAND,LOCATION_DROP,cm.filter)(e,tp,eg,ep,ev,re,r,rp)
end
......@@ -184,7 +184,7 @@ vgd.BeRidedByCard(c, m[, code, op, cost, con, tg])
local cm,m,o=GetID()
function cm.initial_effect(c)
vgf.VgCard(c)
vgd.BeRidedByCard(c,m,10101002,vgf.CardsFromTo(REASON_EFFECT,LOCATION_MZONE,LOCATION_DECK,cm.filter))
vgd.BeRidedByCard(c,m,10101002,vgf.CardsFromTo(REASON_EFFECT,LOCATION_CIRCLE,LOCATION_DECK,cm.filter))
end
function cm.filter(c)
return c:IsCode(10101009)
......@@ -199,7 +199,7 @@ vgd.AbilityAuto(c, m, loc, typ, code[, op, cost, con, tg, count, property])
参数注释
> **loc : 发动的区域(vg的描述中会在效果类型后描述这个效果在哪些区域适用) `填 nil 则默认为 LOCATION_MZONE`**
> **loc : 发动的区域(vg的描述中会在效果类型后描述这个效果在哪些区域适用) `填 nil 则默认为 LOCATION_CIRCLE`**
>
> **typ : 自身状态变化触发/场上的卡状态变化触发 `填 nil 则填默认为 EFFECT_TYPE_SINGLE`**
>
......@@ -217,7 +217,7 @@ vgd.AbilityAuto(c, m, loc, typ, code[, op, cost, con, tg, count, property])
local cm,m,o=GetID()
function cm.initial_effect(c)
vgf.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,nil,cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,nil,cm.condition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -225,10 +225,10 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local e1=vgf.AtkUp(c,c,5000,nil)
vgf.EffectReset(c,e1,EVENT_BATTLED)
end
if vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_MZONE,0,nil,nil):GetFirst():GetOverlayCount()>=2 and Duel.SelectEffectYesNo(tp,vgf.stringid(VgID,10)) then
local cg=vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_MZONE,0,nil):GetFirst():GetOverlayGroup():Select(tp,2,2,nil)
if vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_CIRCLE,0,nil,nil):GetFirst():GetOverlayCount()>=2 and Duel.SelectEffectYesNo(tp,vgf.stringid(VgID,10)) then
local cg=vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_CIRCLE,0,nil):GetFirst():GetOverlayGroup():Select(tp,2,2,nil)
if vgf.Sendto(LOCATION_DROP,cg,REASON_COST)==2 then
local g=vgf.SelectMatchingCard(HINTMSG_LEAVEFIELD,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_MZONE,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_LEAVEFIELD,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_CIRCLE,1,1,nil)
vgf.Sendto(LOCATION_DROP,g,REASON_EFFECT)
end
end
......@@ -247,7 +247,7 @@ VgD.AbilityAct(c, m[, loc, op, cost, con, tg, count, property])
参数注释
> **loc : 发动的区域(vg的描述中会在效果类型后描述这个效果在哪些区域适用) `填 nil 则默认为 LOCATION_MZONE`**
> **loc : 发动的区域(vg的描述中会在效果类型后描述这个效果在哪些区域适用) `填 nil 则默认为 LOCATION_CIRCLE`**
>
> **count : 效果的次数限制**
>
......@@ -261,7 +261,7 @@ VgD.AbilityAct(c, m[, loc, op, cost, con, tg, count, property])
local cm,m,o=GetID()
function cm.initial_effect(c)
vgf.VgCard(c)
vgd.AbilityAct(c,m,LOCATION_MZONE,vgf.CardsFromTo(REASON_EFFECT,LOCATION_HAND,LOCATION_MZONE,LOCATION_DROP,cm.filter),vgf.DisCardCost(1),nil,nil,1)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,vgf.CardsFromTo(REASON_EFFECT,LOCATION_HAND,LOCATION_CIRCLE,LOCATION_DROP,cm.filter),vgf.DisCardCost(1),nil,nil,1)
end
function cm.filter(c)
return c:IsLevel(0)
......@@ -276,7 +276,7 @@ vgd.AbilityContChangeAttack(c,m, loc, typ, val[, con, tg, loc_self, loc_op, rese
参数注释
> **loc : 发动的区域(vg的描述中会在效果类型后描述这个效果在哪些区域适用) `填 nil 则默认为 LOCATION_MZONE`**
> **loc : 发动的区域(vg的描述中会在效果类型后描述这个效果在哪些区域适用) `填 nil 则默认为 LOCATION_CIRCLE`**
>
> **typ : 自身力量上升/场上的卡力量上升 `填 nil 则填默认为 EFFECT_TYPE_SINGLE`**
>
......@@ -294,7 +294,7 @@ vgd.AbilityContChangeAttack(c,m, loc, typ, val[, con, tg, loc_self, loc_op, rese
local cm,m,o=GetID()
function cm.initial_effect(c)
vgf.VgCard(c)
vgd.AbilityContChangeAttack(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,5000,function(e) return vgf.RMonsterCondition(e) and cm.con(e) end)
vgd.AbilityContChangeAttack(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,5000,function(e) return vgf.RMonsterCondition(e) and cm.con(e) end)
vgd.AbilityContChangeDefense(c,m,EFFECT_TYPE_SINGLE,5000,cm.con)
end
function cm.con(e)
......@@ -352,13 +352,13 @@ function cm.initial_effect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetCode(EFFECT_ADD_SKILL)
e2:SetRange(LOCATION_MZONE)
e2:SetRange(LOCATION_CIRCLE)
e2:SetValue(SKILL_SUPPORT)
e2:SetCondition(cm.condition)
c:RegisterEffect(e2)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return vgf.VMonsterCondition(e) and vgf.IsExistingMatchingCard(Card.IsLevel,tp,LOCATION_MZONE,0,3,nil,3)
return vgf.VMonsterCondition(e) and vgf.IsExistingMatchingCard(Card.IsLevel,tp,LOCATION_CIRCLE,0,3,nil,3)
end
```
......@@ -502,14 +502,14 @@ vgf..Sendto(loc,sg,...)
>
> **LOCATION_HAND : p | nil,reason `p为送去的玩家,送去原本持有者则填nil`**
>
> **LOCATION_REMOVED : pos,reason**
> **LOCATION_BIND : pos,reason**
>
> **LOCATION_EXILE : reason**
> **LOCATION_REMOVED : reason**
>
> **LOCATION_OVERLAY : c `c为叠放的卡,填nil | 不填则为先导者`**
> **LOCATION_SOUL : c `c为叠放的卡,填nil | 不填则为先导者`**
>
> **LOCATION_TRIGGER : tp**
>
> **LOCATION_MZONE : sumtype,tp,zone,pos**
> **LOCATION_CIRCLE : sumtype,tp,zone,pos**
>
> **其他区域 : tp,pos,reason**
\ No newline at end of file
......@@ -6,14 +6,14 @@ end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_MONSTER)
local g=vgf.SelectMatchingCard(HINTMSG_MONSTER,e,tp,Card.IsFaceup,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_MONSTER,e,tp,Card.IsFaceup,tp,LOCATION_CIRCLE,0,1,1,nil)
if g:GetCount()>0 then
local tc=g:GetFirst()
if vgf.RMonsterFilter(tc) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetRange(LOCATION_CIRCLE)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetValue(1)
......
......@@ -2,8 +2,8 @@
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAct(c,m,LOCATION_MZONE,vgf.CardsFromTo(REASON_EFFECT,LOCATION_MZONE,LOCATION_DROP,cm.filter),vgf.DisCardCost(1),vgf.VMonsterCondition,nil,1)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,vgf.DamageCost(1),vgf.VMonsterCondition)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,vgf.CardsFromTo(REASON_EFFECT,LOCATION_CIRCLE,LOCATION_DROP,cm.filter),vgf.DisCardCost(1),vgf.VMonsterCondition,nil,1)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,vgf.DamageCost(1),vgf.VMonsterCondition)
end
function cm.filter(c)
return c:IsLevel(0)
......@@ -12,7 +12,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=Group.CreateGroup()
if c:IsRelateToEffect(e) and c:IsFaceup() then g:AddCard(c) end
local sg=vgf.GetMatchingGroup(Card.IsSetCard,tp,LOCATION_MZONE,0,nil,0x201)
local sg=vgf.GetMatchingGroup(Card.IsSetCard,tp,LOCATION_CIRCLE,0,nil,0x201)
if sg:GetCount()>0 then g:Merge(sg) end
vgf.AtkUp(c,g,10000)
end
\ No newline at end of file
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.BeRidedByCard(c,m,10101001,vgf.CardsFromTo(REASON_EFFECT,LOCATION_HAND,LOCATION_DECK,cm.filter),vgf.OverlayCost(1))
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 2000, cm.con)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 2000, cm.con)
end
function cm.filter(c)
return c:IsCode(10101006)
......
......@@ -2,8 +2,8 @@
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.BeRidedByCard(c,m,10101002,vgf.CardsFromTo(REASON_EFFECT,LOCATION_MZONE,LOCATION_DECK,cm.filter))
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 2000, cm.con)
vgd.BeRidedByCard(c,m,10101002,vgf.CardsFromTo(REASON_EFFECT,LOCATION_CIRCLE,LOCATION_DECK,cm.filter))
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 2000, cm.con)
end
function cm.filter(c)
return c:IsCode(10101009)
......
......@@ -2,7 +2,7 @@
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 2000, cm.con)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 2000, cm.con)
end
function cm.con(e)
return Duel.GetAttacker()==e:GetHandler()
......
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.OverDress(c,10101009)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,nil,cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,nil,cm.condition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -13,7 +13,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
end
if vgf.OverlayCost(2)(e,tp,eg,ep,ev,re,r,rp,0) and Duel.SelectEffectYesNo(tp,vgf.stringid(VgID,10)) then
vgf.OverlayCost(2)(e,tp,eg,ep,ev,re,r,rp,1)
local g=vgf.SelectMatchingCard(HINTMSG_LEAVEFIELD,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_MZONE,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_LEAVEFIELD,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_CIRCLE,1,1,nil)
vgf.Sendto(LOCATION_DROP,g,REASON_EFFECT)
end
end
......
......@@ -6,6 +6,6 @@ function cm.initial_effect(c)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_CIRCLE,0,1,1,nil)
vgf.AtkUp(c,g,100000000,nil)
end
\ No newline at end of file
......@@ -6,7 +6,7 @@ function cm.initial_effect(c)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_CIRCLE,0,1,1,nil)
vgf.AtkUp(c,g,5000,nil)
vgf.CardsFromTo(REASON_EFFECT,LOCATION_HAND,LOCATION_DROP,cm.filter)(e,tp,eg,ep,ev,re,r,rp)
end
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_RIDE_START,cm.op,nil,cm.con)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op2,vgf.OverlayCost(5),cm.con2)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_RIDE_START,cm.op,nil,cm.con)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op2,vgf.OverlayCost(5),cm.con2)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -12,7 +12,7 @@ function cm.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and vgf.VMonsterCondition(e)
end
function cm.op2(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.GetMatchingGroup(vgf.IsSequence,tp,LOCATION_MZONE,0,nil,0,4)
local g=vgf.GetMatchingGroup(vgf.IsSequence,tp,LOCATION_CIRCLE,0,nil,0,4)
Duel.ChangePosition(g,POS_FACEUP_ATTACK)
end
function cm.con2(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -2,16 +2,16 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,nil,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.op,cm.cost,vgf.VSummonCondition)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return vgf.IsExistingMatchingCard(vgf.RMonsterFilter,tp,LOCATION_MZONE,0,1,nil) end
local g=vgf.SelectMatchingCard(HINTMSG_XMATERIAL,e,tp,vgf.RMonsterFilter,tp,LOCATION_MZONE,0,1,1,nil)
vgf.Sendto(LOCATION_OVERLAY,g,c)
if chk==0 then return vgf.IsExistingMatchingCard(vgf.RMonsterFilter,tp,LOCATION_CIRCLE,0,1,nil) end
local g=vgf.SelectMatchingCard(HINTMSG_XMATERIAL,e,tp,vgf.RMonsterFilter,tp,LOCATION_CIRCLE,0,1,1,nil)
vgf.Sendto(LOCATION_SOUL,g,c)
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFlagEffectLabel(tp,FLAG_CONDITION)==10102001
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.op,nil,vgf.VSummonCondition)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.op,nil,vgf.VSummonCondition)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
local ct=Duel.GetFlagEffectLabel(tp,FLAG_CONDITION)
......@@ -11,7 +11,7 @@ end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CALL)
local g=vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_MZONE,0,nil):GetFirst():GetOverlayGroup():FilterSelect(tp,vgf.IsCanBeCalled,1,1,nil,e,tp,nil,nil,0x4)
vgf.Sendto(LOCATION_MZONE,g,0,tp,0x4)
local g=vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_CIRCLE,0,nil):GetFirst():GetOverlayGroup():FilterSelect(tp,vgf.IsCanBeCalled,1,1,nil,e,tp,nil,nil,0x4)
vgf.Sendto(LOCATION_CIRCLE,g,0,tp,0x4)
vgf.OverlayFill(1)(e,tp,eg,ep,ev,re,r,rp)
end
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op,cost,cm.con1)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_SUPPORT,cm.op,cost,cm.con2)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op,cost,cm.con1)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_SUPPORT,cm.op,cost,cm.con2)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local num=1
......
......@@ -3,10 +3,10 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】【V】【1回合1次】:你的攻击判定将等级3的卡判出的战斗结束时,通过【费用】[将手牌中的1张卡舍弃],选择你的1张后防者,重置,这个回合中,那个单位的力量+10000。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_BATTLED,cm.operation,vgf.DisCardCost(1),cm.condition,nil,1)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_BATTLED,cm.operation,vgf.DisCardCost(1),cm.condition,nil,1)
vgd.GlobalCheckEffect(c,m,EVENT_MOVE,cm.checkcon,cm.checkop)
--【永】【V】:你的回合中,你所有的等级3的单位的力量+2000。
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_FIELD, EFFECT_UPDATE_ATTACK, 2000, cm.con, cm.target, LOCATION_MZONE+LOCATION_G_CIRCLE, 0)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_FIELD, EFFECT_UPDATE_ATTACK, 2000, cm.con, cm.target, LOCATION_CIRCLE+LOCATION_G_CIRCLE, 0)
end
function cm.checkfilter(c,tp)
return c:IsLocation(LOCATION_TRIGGER) and c:IsLevel(3) and c:IsControler(tp)
......@@ -19,7 +19,7 @@ function cm.filter(c)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_RMONSTER,e,tp,cm.filter,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_RMONSTER,e,tp,cm.filter,tp,LOCATION_CIRCLE,0,1,1,nil)
if g:GetCount()>0 then
Duel.ChangePosition(g,POS_FACEUP_ATTACK)
vgf.AtkUp(c,g,10000,nil)
......
......@@ -4,12 +4,12 @@ function cm.initial_effect(c)
vgd.VgCard(c)
cm.is_has_continuous=true
vgd.BeRidedByCard(c,m,10103001,cm.operation,cm.cost)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.condition)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.condition)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetCode(EFFECT_ADD_SKILL)
e2:SetRange(LOCATION_MZONE)
e2:SetRange(LOCATION_CIRCLE)
e2:SetValue(SKILL_SUPPORT)
e2:SetCondition(cm.condition)
c:RegisterEffect(e2)
......@@ -25,5 +25,5 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function cm.condition(e,c)
local tp=e:GetHandlerPlayer()
return vgf.RMonsterCondition(e) and vgf.IsExistingMatchingCard(Card.IsLevel,tp,LOCATION_MZONE+LOCATION_G_CIRCLE,0,3,nil,3) and Duel.GetTurnPlayer()==tp
return vgf.RMonsterCondition(e) and vgf.IsExistingMatchingCard(Card.IsLevel,tp,LOCATION_CIRCLE+LOCATION_G_CIRCLE,0,3,nil,3) and Duel.GetTurnPlayer()==tp
end
\ No newline at end of file
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.BeRidedByCard(c,m,10103002,cm.operation,cm.cost)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.operation2,vgf.DamageCost(1),vgf.RMonsterCondition,nil,1)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.operation2,vgf.DamageCost(1),vgf.RMonsterCondition,nil,1)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return vgf.IsExistingMatchingCard(Card.IsLevel,tp,LOCATION_HAND,0,2,nil,3) end
......@@ -17,14 +17,14 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=vgf.ReturnCard(g)
Duel.DisableShuffleCheck()
if vgf.IsCanBeCalled(tc,e,tp) then
vgf.Sendto(LOCATION_MZONE,g,0,tp)
vgf.Sendto(LOCATION_CIRCLE,g,0,tp)
else
vgf.Sendto(LOCATION_DROP,g,REASON_EFFECT)
end
end
function cm.operation2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,cm.filter,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,cm.filter,tp,LOCATION_CIRCLE,0,1,1,nil)
if g:GetCount()>0 then
vgf.AtkUp(c,g,5000)
end
......
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】【R】:这个单位攻击时,通过【费用】[计数爆发1],这次战斗中,这个单位的力量+5000。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,vgf.DamageCost(1),vgf.RMonsterCondition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,vgf.DamageCost(1),vgf.RMonsterCondition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
......@@ -2,11 +2,11 @@
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.operation,cm.cost,vgf.RMonsterCondition)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.operation,cm.cost,vgf.RMonsterCondition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,cm.filter,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,cm.filter,tp,LOCATION_CIRCLE,0,1,1,nil)
vgf.AtkUp(c,g,10000,nil)
end
function cm.filter(c)
......@@ -15,6 +15,6 @@ end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsRelateToEffect(e) end
local rc=vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_MZONE,0,nil):GetFirst()
vgf.Sendto(LOCATION_OVERLAY,c,rc)
local rc=vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_CIRCLE,0,nil):GetFirst()
vgf.Sendto(LOCATION_SOUL,c,rc)
end
\ No newline at end of file
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【起】【R】:通过【费用】[灵魂爆发2],这个回合中,这个单位的力量+5000。
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.operation,vgf.OverlayCost(2),vgf.RMonsterCondition)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.operation,vgf.OverlayCost(2),vgf.RMonsterCondition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -7,6 +7,6 @@ end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,2,REASON_EFFECT)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_CIRCLE,0,1,1,nil)
vgf.AtkUp(c,g,5000)
end
\ No newline at end of file
......@@ -3,13 +3,13 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】【V】:这个单位攻击的战斗结束时,通过【费用】[计数爆发1],选择你的1张后防者,这个回合中,那个单位可以从后列攻击,力量+5000。这个回合中你进行了人格RIDE的话,不选择1张,而是选择3张。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_BATTLED,cm.operation,vgf.DamageCost(1),cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_BATTLED,cm.operation,vgf.DamageCost(1),cm.condition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local ct=1
if c:IsSummonType(SUMMON_TYPE_SELFRIDE) then ct=3 end
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,vgf.RMonsterFilter,tp,LOCATION_MZONE,0,1,ct,nil)
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,vgf.RMonsterFilter,tp,LOCATION_CIRCLE,0,1,ct,nil)
if g then
Duel.Hintselectgion(g)
for tc in vgf.Next(g) do
......
......@@ -5,7 +5,7 @@ function cm.initial_effect(c)
--【自】:这个单位被「树角兽王 马格诺利亚」RIDE时,通过【费用】[灵魂爆发1],将你的牌堆顶的1张卡公开,那张卡是单位卡的话,CALL到R上,不是的话,加入手牌。
vgd.BeRidedByCard(c,m,10104001,cm.operation,vgf.OverlayCost(1))
--【自】【后列的R】:这个单位攻击先导者时,通过【费用】[灵魂爆发1],这次战斗中,这个单位的力量+10000。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation2,vgf.OverlayCost(1),cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation2,vgf.OverlayCost(1),cm.condition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -14,7 +14,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=vgf.ReturnCard(g)
Duel.DisableShuffleCheck()
if vgf.IsCanBeCalled(tc,e,tp) then
vgf.Sendto(LOCATION_MZONE,g,0,tp)
vgf.Sendto(LOCATION_CIRCLE,g,0,tp)
else
vgf.Sendto(LOCATION_HAND,g,nil,REASON_EFFECT)
end
......
......@@ -5,7 +5,7 @@ function cm.initial_effect(c)
--【自】:这个单位被「树角兽 拉提斯」RIDE时,将你的牌堆顶的1张卡公开,那张卡是等级2以下的单位卡的话,CALL到R上,不是的话,放置到你的灵魂里。
vgd.BeRidedByCard(c,m,10104002,cm.operation)
--【永】【后列的R】:这个单位攻击的战斗中,这个单位的力量+5000。
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
......@@ -15,9 +15,9 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=vgf.ReturnCard(g)
Duel.DisableShuffleCheck()
if vgf.IsCanBeCalled(tc,e,tp) and tc:IsLevelBelow(2) then
vgf.Sendto(LOCATION_MZONE,g,0,tp)
vgf.Sendto(LOCATION_CIRCLE,g,0,tp)
else
vgf.Sendto(LOCATION_OVERLAY,g,c)
vgf.Sendto(LOCATION_SOUL,g,c)
end
end
function cm.con(e)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
end
function cm.con(e)
local c=e:GetHandler()
local tp=e:GetHandlerPlayer()
return vgf.RMonsterCondition(e) and vgf.IsExistingMatchingCard(vgf.RMonsterFilter,tp,LOCATION_MZONE,0,4,c)
return vgf.RMonsterCondition(e) and vgf.IsExistingMatchingCard(vgf.RMonsterFilter,tp,LOCATION_CIRCLE,0,4,c)
end
\ No newline at end of file
......@@ -2,7 +2,7 @@
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.operation,cm.cost,vgf.RMonsterCondition,nil,1)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.operation,cm.cost,vgf.RMonsterCondition,nil,1)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -12,7 +12,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetCode(EFFECT_ADD_SKILL)
e2:SetRange(LOCATION_MZONE)
e2:SetRange(LOCATION_CIRCLE)
e2:SetValue(SKILL_SUPPORT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e2)
......
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【起】【R】【1回合1次】:通过【费用】[灵魂爆发2],公开你的牌堆顶的1张卡,那张卡是单位卡的话,CALL到R上,不是的话,加入手牌
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.operation,vgf.OverlayCost(2),vgf.RMonsterCondition,nil,1)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.operation,vgf.OverlayCost(2),vgf.RMonsterCondition,nil,1)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -12,7 +12,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=vgf.ReturnCard(g)
Duel.DisableShuffleCheck()
if vgf.IsCanBeCalled(tc,e,tp) then
vgf.Sendto(LOCATION_MZONE,g,0,tp)
vgf.Sendto(LOCATION_CIRCLE,g,0,tp)
else
vgf.Sendto(LOCATION_HAND,g,nil,REASON_EFFECT)
end
......
......@@ -7,9 +7,9 @@ function cm.initial_effect(c)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_CIRCLE,0,1,1,nil)
local atk=5000
if vgf.IsExistingMatchingCard(vgf.IsSequence,tp,LOCATION_MZONE,0,3,nil,1,2,3) then atk=15000 end
if vgf.IsExistingMatchingCard(vgf.IsSequence,tp,LOCATION_CIRCLE,0,3,nil,1,2,3) then atk=15000 end
if g then
vgf.AtkUp(c,g,atk)
end
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.op1,vgf.DamageCost(1),nil,nil,1)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 10000, cm.con)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.op1,vgf.DamageCost(1),nil,nil,1)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 10000, cm.con)
vgd.TriggerCountUp(c,m,1,cm.con2)
end
function cm.con(e,c)
......@@ -14,7 +14,7 @@ function cm.filter(c)
end
function cm.op1(e,tp,eg,ep,ev,re,r,rp)
if not vgf.CheckPrison(tp) then return end
local g1=vgf.SelectMatchingCard(HINTMSG_IMPRISON,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_MZONE,2,2,nil)
local g1=vgf.SelectMatchingCard(HINTMSG_IMPRISON,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_CIRCLE,2,2,nil)
vgf.SendtoPrison(g1,tp)
end
function cm.con2(e,c)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,nil,vgf.VSummonCondition)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 2000, cm.con)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,nil,vgf.VSummonCondition)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 2000, cm.con)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,vgf.CardsFromTo(REASON_EFFECT,LOCATION_HAND,LOCATION_DECK,cm.filter),nil,vgf.VSummonCondition)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation1,cm.cost,cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,vgf.CardsFromTo(REASON_EFFECT,LOCATION_HAND,LOCATION_DECK,cm.filter),nil,vgf.VSummonCondition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation1,cm.cost,cm.condition)
end
function cm.filter(c)
return c:IsSetCard(0x3040)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_HITTING,cm.operation,nil,cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_HITTING,cm.operation,nil,cm.condition)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -10,6 +10,6 @@ end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not vgf.CheckPrison(tp) then return end
local g=vgf.SelectMatchingCard(HINTMSG_IMPRISON,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_MZONE,0,2,nil)
local g=vgf.SelectMatchingCard(HINTMSG_IMPRISON,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_CIRCLE,0,2,nil)
vgf.SendtoPrison(g,tp)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,vgf.OverlayCost(1),cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,vgf.OverlayCost(1),cm.condition)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -10,6 +10,6 @@ end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not vgf.CheckPrison(tp) then return end
local g=vgf.SelectMatchingCard(HINTMSG_IMPRISON,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_MZONE,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_IMPRISON,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_CIRCLE,1,1,nil)
vgf.SendtoPrison(g,tp)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 2000, con)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 2000, con)
vgd.AbilityCont(c, m, LOCATION_G_CIRCLE, EFFECT_TYPE_SINGLE, 5000, EFFECT_UPDATE_DEFENSE, con)
end
function cm.con(e,c)
......
......@@ -6,8 +6,8 @@ function cm.initial_effect(c)
vgd.CallInPrison(c,m)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return vgf.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,1,nil) end
local g=vgf.SelectMatchingCard(HINTMSG_POSCHANGE,e,tp,cm.cfilter,tp,LOCATION_MZONE,0,1,nil)
if chk==0 then return vgf.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_CIRCLE,0,1,nil) end
local g=vgf.SelectMatchingCard(HINTMSG_POSCHANGE,e,tp,cm.cfilter,tp,LOCATION_CIRCLE,0,1,nil)
Duel.ChangePosition(g,POS_FACEUP_DEFENCE)
end
function cm.cfilter(c)
......
......@@ -3,8 +3,8 @@ function cm.initial_effect(c)
vgd.VgCard(c)
vgf.AddRideMaterialCode(c,m,10406013)
vgf.AddRideMaterialSetCard(c,m,0xc014,0x74)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op,cm.cost,vgf.VMonsterCondition)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op,cm.cost,vgf.VMonsterCondition)
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(FLAG_SUPPORTED)>0 and Duel.GetAttacker()==e:GetHandler() and vgf.RMonsterCondition(e)
......@@ -16,7 +16,7 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.GetMatchingGroup(cm.filter,tp,LOCATION_MZONE,0,nil)
local g=vgf.GetMatchingGroup(cm.filter,tp,LOCATION_CIRCLE,0,nil)
Duel.ChangePosition(g,POS_FACEUP_DEFENSE)
for tc in vgf.Next(g) do
tc:RegisterFlagEffect(FLAG_SUPPORT,RESET_EVENT+RESETS_STANDARD,0,1)
......
......@@ -6,9 +6,9 @@ function cm.initial_effect(c)
vgf.AddRideMaterialCode(c,m,10407005)
vgf.AddRideMaterialSetCard(c,m,0xc00d,0x75,0xe8)
--【自】【V】:这个单位攻击先导者时,通过【费用】[使用等级均不同的卡进行灵魂爆发4],选择对手的1张先导者,这个回合中,力量增减至1,对手有等级3以上的先导者的话,这个单位的☆+1。(仅将那个时点的力量增减至1,这之后那个单位的力量仍然能通过其他方式增减。)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,cm.cost,cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,cm.cost,cm.condition)
--【永】【R】:这个回合中由于你的卡片的能力的费用同时使用4张以上的卡进行了灵魂爆发的话,这个单位的力量+5000。
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
if not cm.global_check then
cm.global_check=true
local ge1=Effect.CreateEffect(c)
......@@ -20,7 +20,7 @@ function cm.initial_effect(c)
end
end
function cm.checkfilter(c,re)
return c:IsReason(REASON_COST) and re:IsActivated() and c:IsPreviousLocation(LOCATION_OVERLAY)
return c:IsReason(REASON_COST) and re:IsActivated() and c:IsPreviousLocation(LOCATION_SOUL)
end
function cm.checkcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.checkfilter,1,nil,re) and eg:GetClassCount(Card.GetLevel)>=4
......@@ -51,12 +51,12 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=vgf.SelectMatchingCard(HINTMSG_VMONSTER,e,tp,vgf.VMonsterFilter,tp,0,LOCATION_MZONE,1,1,nil):GetFirst()
local tc=vgf.SelectMatchingCard(HINTMSG_VMONSTER,e,tp,vgf.VMonsterFilter,tp,0,LOCATION_CIRCLE,1,1,nil):GetFirst()
if tc:GetAttack()>1 then
local atk=tc:GetAttack()-1
vgf.AtkUp(c,tc,-atk)
end
if vgf.IsExistingMatchingCard(tp,cm.filter,tp,0,LOCATION_MZONE,1,1,nil) then
if vgf.IsExistingMatchingCard(tp,cm.filter,tp,0,LOCATION_CIRCLE,1,1,nil) then
vgf.StarUp(c,c,1)
end
end
......
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】【V/R】:这个单位的攻击击中先导者时,灵魂填充1。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_HITTING,vgf.OverlayFill(1),nil,cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_HITTING,vgf.OverlayFill(1),nil,cm.condition)
--【自】:这个单位被含有「道拉珠艾尔德」的单位RIDE时,灵魂填充1,你的灵魂里有3张以上的相互不同等级的卡的话,抽1张卡。
vgd.BeRidedByCard(c,m,cm.filter,cm.operation)
end
......
......@@ -5,14 +5,14 @@ function cm.initial_effect(c)
--【自】:这个单位被「魔石龙 珠艾尼尔」骑升时,将这张卡召唤到R上。
vgd.BeRidedByCard(c,m,10202002,cm.operation)
--【自】【R】:这个单位攻击或支援时,这次战斗中,这个单位的力量+5000。这次战斗结束时,将这个单位放置到灵魂里。(这个效果为强制执行。)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation2,nil,cm.condition2)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_SUPPORT,cm.operation2,nil,cm.condition3)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation2,nil,cm.condition2)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_SUPPORT,cm.operation2,nil,cm.condition3)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetLabelObject()
if c:IsRelateToEffect(e) and vgf.IsCanBeCalled(c,e,tp) then
vgf.Sendto(LOCATION_MZONE,c,0,tp)
vgf.Sendto(LOCATION_CIRCLE,c,0,tp)
end
end
function cm.operation2(e,tp,eg,ep,ev,re,r,rp)
......@@ -23,7 +23,7 @@ function cm.operation2(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_BATTLED)
e1:SetRange(LOCATION_MZONE)
e1:SetRange(LOCATION_CIRCLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_IGNORE_IMMUNE)
e1:SetOperation(cm.operation3)
......@@ -37,6 +37,6 @@ function cm.condition3(e,tp,eg,ep,ev,re,r,rp)
return eg:GetFirst()==e:GetHandler()
end
function cm.operation3(e,tp,eg,ep,ev,re,r,rp)
vgf.Sendto(LOCATION_OVERLAY,e:GetHandler(),vgf.GetVMonster(tp))
vgf.Sendto(LOCATION_SOUL,e:GetHandler(),vgf.GetVMonster(tp))
e:Reset()
end
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】【R】:这个单位攻击时,你有含有「道拉珠艾尔德」的先导者的话,通过【费用】[计数爆发1],这次战斗中,这个单位的力量+10000。这次战斗结束时,将这个单位放置到灵魂里。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,vgf.DamageCost(1),cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,vgf.DamageCost(1),cm.condition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -13,7 +13,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_BATTLED)
e1:SetRange(LOCATION_MZONE)
e1:SetRange(LOCATION_CIRCLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_IGNORE_IMMUNE)
e1:SetOperation(cm.operation2)
......@@ -24,6 +24,6 @@ function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return vgf.RMonsterFilter(e:GetHandler()) and vgf.GetVMonster(tp):IsSetCard(0xe8)
end
function cm.operation2(e,tp,eg,ep,ev,re,r,rp)
vgf.Sendto(LOCATION_OVERLAY,e:GetHandler(),vgf.GetVMonster(tp))
vgf.Sendto(LOCATION_SOUL,e:GetHandler(),vgf.GetVMonster(tp))
e:Reset()
end
......@@ -10,6 +10,6 @@ function cm.condition(e,tp,eg,ep,ev,re,r,rp)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local rc=vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_MZONE,0,nil):GetFirst()
if c:IsRelateToEffect(e) then vgf.Sendto(LOCATION_OVERLAY,c,rc) end
local rc=vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_CIRCLE,0,nil):GetFirst()
if c:IsRelateToEffect(e) then vgf.Sendto(LOCATION_SOUL,c,rc) end
end
......@@ -4,7 +4,7 @@ function cm.initial_effect(c)
vgd.VgCard(c)
--【自】【R】:这个单位支援等级2以上的单位时,你可以灵魂填充1。
--时点需要改成支援时
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_SUPPORT,vgf.OverlayFill(1),vgf.True,cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_SUPPORT,vgf.OverlayFill(1),vgf.True,cm.condition)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetAttacker():IsLevelAbove(2) and eg:GetFirst()==e:GetHandler()
......
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【起】【R】【1回合1次】:你有等级3以上的先导者的话,通过【费用】[计数爆发2],抽1张卡。
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.operation,vgf.DamageCost(2),cm.condition,nil,1)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.operation,vgf.DamageCost(2),cm.condition,nil,1)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return vgf.RMonsterFilter(e:GetHandler()) and vgf.GetVMonster(tp):IsLevelAbove(3)
......
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】:这个单位登场到R时,你有含有「道拉珠艾尔德」的先导者的话,通过【费用】[灵魂爆发1],选择你的弃牌区中的1张卡,放置到灵魂里,这个回合中,这个单位的力量+2000。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,vgf.OverlayCost(1),cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,vgf.OverlayCost(1),cm.condition)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return vgf.GetVMonster(tp):IsSetCard(0xe8) and vgf.RMonsterFilter(e:GetHandler())
......@@ -12,7 +12,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_XMATERIAL,e,tp,nil,tp,LOCATION_DROP,0,1,1,nil)
if g:GetCount()>0 then
vgf.Sendto(LOCATION_OVERLAY,g,vgf.GetVMonster(tp))
vgf.Sendto(LOCATION_SOUL,g,vgf.GetVMonster(tp))
end
if c:IsRelateToEffect(e) and c:IsFaceup() then
vgf.AtkUp(c,c,2000,nil)
......
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】:这个单位从手牌登场到R时,通过【费用】[计数爆发1],查看你的牌堆顶的3张卡,选择1张卡,放置到灵魂里,然后牌堆洗切,你的灵魂里有4张以上的相互不同等级的卡的话,抽1张卡。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,vgf.DamageCost(1),vgf.RSummonCondition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,vgf.DamageCost(1),vgf.RSummonCondition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetDecktopGroup(tp,3)
......@@ -12,7 +12,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
local sc=g:FilterSelect(tp,Card.IsCanOverlay,1,1,nil):GetFirst()
if sc then
vgf.Sendto(LOCATION_OVERLAY,sc,vgf.GetVMonster(tp))
vgf.Sendto(LOCATION_SOUL,sc,vgf.GetVMonster(tp))
end
Duel.ShuffleDeck(tp)
if vgf.GetVMonster(tp):GetOverlayGroup():GetClassCount(Card.GetLevel)>=4 then
......
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】:这个单位登场到R时,查看你的牌堆顶的2张卡,选择1张卡,放置到灵魂里,其余的卡放置到牌堆底。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,nil,cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,nil,cm.condition)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return vgf.RMonsterFilter(e:GetHandler())
......@@ -15,7 +15,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
local sc=g:FilterSelect(tp,Card.IsCanOverlay,1,1,nil):GetFirst()
if sc then
vgf.Sendto(LOCATION_OVERLAY,sc,vgf.GetVMonster(tp))
vgf.Sendto(LOCATION_SOUL,sc,vgf.GetVMonster(tp))
g:RemoveCard(sc)
end
if #g>1 then
......
......@@ -5,9 +5,9 @@ function cm.initial_effect(c)
vgf.AddRideMaterialCode(c,m,10406010)
vgf.AddRideMaterialSetCard(c,m,0x300d,0x77,0x8a,0x202)
--【反抗舞装】
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_BATTLED,cm.operation,nil,cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_BATTLED,cm.operation,nil,cm.condition)
--【永】【R】:这个回合中曾有你的等级3以上的先导者登场过的话,这个单位的力量+5000。
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.GlobalCheckEffect(c,m,EVENT_SPSUMMON_SUCCESS,cm.checkcon)
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
......@@ -16,7 +16,7 @@ end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_CALL,e,tp,cm.filter,tp,LOCATION_HAND,0,1,1,nil,e,tp)
if vgf.Sendto(LOCATION_MZONE,g,SUMMON_VALUE_REVOLT,tp,0x20)>0 then
if vgf.Sendto(LOCATION_CIRCLE,g,SUMMON_VALUE_REVOLT,tp,0x20)>0 then
local mg=Duel.GetOperatedGroup()
vgd.TriggerCountUp(c,m,-2,nil,RESET_PHASE+PHASE_END,mg)
end
......
......@@ -2,7 +2,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.BeRidedByCard(c,m,cm.filter,vgf.CardsFromTo(REASON_EFFECT,LOCATION_HAND,LOCATION_DROP,cm.filter1),vgf.DamageCost(1))
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_SUPPORT,cm.operation1,vgf.OverlayCost(1),cm.condition1)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_SUPPORT,cm.operation1,vgf.OverlayCost(1),cm.condition1)
end
function cm.filter(c)
return c:IsSetCard(0x202)
......
......@@ -2,7 +2,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.BeRidedByCard(c,m,10203002,cm.operation,vgf.OverlayCost(1))
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 2000, cm.con)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 2000, cm.con)
end
function cm.con(e)
return Duel.GetAttacker()==e:GetHandler()
......@@ -34,7 +34,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
elseif (sel==1 and a and b) or (sel==0 and not a and b) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CALL)
local sg=g:FilterSelect(tp,cm.filter1,1,1,nil,e,tp)
vgf.Sendto(LOCATION_MZONE,sg,0,tp)
vgf.Sendto(LOCATION_CIRCLE,sg,0,tp)
g:RemoveCard(vgf.ReturnCard(sg))
end
if #g>1 then
......
......@@ -2,7 +2,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,loc,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.op,nil,cm.con)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_PHASE+PHASE_END,cm.op1,nil,cm.con1)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_PHASE+PHASE_END,cm.op1,nil,cm.con1)
if not cm.global_check then
cm.global_check=true
local ge1=Effect.CreateEffect(c)
......@@ -36,7 +36,7 @@ end
function cm.op1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_Call)
local g=vgf.GetVMonster(tp):GetOverlayGroup():FilterSelect(tp,cm.filter,1,1,nil,e,tp)
vgf.Sendto(LOCATION_MZONE,g,SUMMON_TYPE_RIDE,tp,"FromOverlayToV",POS_FACEDOWN_DEFENCE)
vgf.Sendto(LOCATION_CIRCLE,g,SUMMON_TYPE_RIDE,tp,"FromOverlayToV",POS_FACEDOWN_DEFENCE)
end
function cm.filter(c,e,tp)
return c:IsSetCard(0x202) and vgf.IsCanBeCalled(c,e,tp,SUMMON_TYPE_RIDE,POS_FACEDOWN_DEFENCE,"FromOverlayToV")
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.operation,vgf.DamageCost(2),cm.condition,nil,1)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.operation,vgf.DamageCost(2),cm.condition,nil,1)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -11,7 +11,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return vgf.RMonsterFilter(c) and vgf.IsExistingMatchingCard(cm.filter,tp,LOCATION_MZONE,0,1,nil)
return vgf.RMonsterFilter(c) and vgf.IsExistingMatchingCard(cm.filter,tp,LOCATION_CIRCLE,0,1,nil)
end
function cm.filter(c)
return vgf.VMonsterFilter and c:IsSetCard(0x77)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_SPSUMMON_SUCCESS,cm.operation,vgf.DamageCost(1),cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_SPSUMMON_SUCCESS,cm.operation,vgf.DamageCost(1),cm.condition)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
......@@ -5,7 +5,7 @@ function cm.initial_effect(c)
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:IsLocation(LOCATION_G_CIRCLE) and c:IsPreviousLocation(LOCATION_MZONE) and re:IsHasCategory(CATEGORY_DEFENDER) and vgf.GetVMonster(tp):GetOverlayGroup():FilterCount(Card.IsSetCard,nil,0x76)>=1
return c:IsLocation(LOCATION_G_CIRCLE) and c:IsPreviousLocation(LOCATION_CIRCLE) and re:IsHasCategory(CATEGORY_DEFENDER) and vgf.GetVMonster(tp):GetOverlayGroup():FilterCount(Card.IsSetCard,nil,0x76)>=1
end
function cm.filter(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
......@@ -9,6 +9,6 @@ end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and vgf.IsCanBeCalled(c,e,tp) then
vgf.Sendto(LOCATION_MZONE,c,0,tp)
vgf.Sendto(LOCATION_CIRCLE,c,0,tp)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_BATTLED,cm.operation,vgf.CostAnd(vgf.OverlayCost(1),vgf.LeaveFieldCost()),cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_BATTLED,cm.operation,vgf.CostAnd(vgf.OverlayCost(1),vgf.LeaveFieldCost()),cm.condition)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return vgf.RMonsterFilter(c) and vgf.VMonsterFilter(Duel.GetAttackTarget()) and vgf.IsExistingMatchingCard(nil,tp,LOCATION_MZONE+LOCATION_DROP,0,4,nil)
return vgf.RMonsterFilter(c) and vgf.VMonsterFilter(Duel.GetAttackTarget()) and vgf.IsExistingMatchingCard(nil,tp,LOCATION_CIRCLE+LOCATION_DROP,0,4,nil)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetDecktopGroup(tp,3)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,vgf.OverlayCost(1),vgf.VMonsterCondition)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_BATTLED,cm.operation1,nil,cm.condition1)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,vgf.OverlayCost(1),vgf.VMonsterCondition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_BATTLED,cm.operation1,nil,cm.condition1)
vgd.GlobalCheckEffect(c,m,EVENT_SPSUMMON_SUCCESS,cm.checkcon)
end
function cm.checkcon(e,tp,eg,ep,ev,re,r,rp)
......@@ -10,7 +10,7 @@ function cm.checkcon(e,tp,eg,ep,ev,re,r,rp)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_RTOHAND,e,tp,cm.filter,tp,LOCATION_MZONE,0,1,2,nil)
local g=vgf.SelectMatchingCard(HINTMSG_RTOHAND,e,tp,cm.filter,tp,LOCATION_CIRCLE,0,1,2,nil)
vgf.Sendto(LOCATION_HAND,g,nil,REASON_EFFECT)
end
function cm.filter(c)
......@@ -27,13 +27,13 @@ function cm.operation1(e,tp,eg,ep,ev,re,r,rp)
if ct>2 then ct=2 end
local g=vgf.SelectMatchingCard(HINTMSG_CALL,e,tp,vgf.IsCanBeCalled,tp,LOCATION_HAND,0,0,ct,nil,e,tp)
if g:GetCount()==1 then
vgf.Sendto(LOCATION_MZONE,g,0,tp)
vgf.Sendto(LOCATION_CIRCLE,g,0,tp)
elseif g:GetCount()==2 then
local tc1=g:GetFirst()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CallZONE)
local szone=Duel.SelectField(tp,1,LOCATION_MZONE,0,zone)
if vgf.IsExistingMatchingCard(vgd.CallFilter,tp,LOCATION_MZONE,0,1,nil,tp,szone) then
local tc=vgf.GetMatchingGroup(vgd.CallFilter,tp,LOCATION_MZONE,0,nil,tp,szone):GetFirst()
local szone=Duel.SelectField(tp,1,LOCATION_CIRCLE,0,zone)
if vgf.IsExistingMatchingCard(vgd.CallFilter,tp,LOCATION_CIRCLE,0,1,nil,tp,szone) then
local tc=vgf.GetMatchingGroup(vgd.CallFilter,tp,LOCATION_CIRCLE,0,nil,tp,szone):GetFirst()
vgf.Sendto(LOCATION_DROP,tc,REASON_COST)
end
Duel.SpecialSummonStep(tc1,0,tp,tp,false,false,POS_FACEUP_ATTACK,szone)
......@@ -44,9 +44,9 @@ function cm.operation1(e,tp,eg,ep,ev,re,r,rp)
end
local tc2=g:GetNext()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CallZONE)
szone=Duel.SelectField(tp,1,LOCATION_MZONE,0,zone)
if vgf.IsExistingMatchingCard(vgd.CallFilter,tp,LOCATION_MZONE,0,1,nil,tp,szone) then
local tc=vgf.GetMatchingGroup(vgd.CallFilter,tp,LOCATION_MZONE,0,nil,tp,szone):GetFirst()
szone=Duel.SelectField(tp,1,LOCATION_CIRCLE,0,zone)
if vgf.IsExistingMatchingCard(vgd.CallFilter,tp,LOCATION_CIRCLE,0,1,nil,tp,szone) then
local tc=vgf.GetMatchingGroup(vgd.CallFilter,tp,LOCATION_CIRCLE,0,nil,tp,szone):GetFirst()
vgf.Sendto(LOCATION_DROP,tc,REASON_COST)
end
Duel.SpecialSummonStep(tc2,0,tp,tp,false,false,POS_FACEUP_ATTACK,szone)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,vgf.True,vgf.VMonsterCondition)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,vgf.True,vgf.VMonsterCondition)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_RTOHAND,e,tp,cm.filter,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_RTOHAND,e,tp,cm.filter,tp,LOCATION_CIRCLE,0,1,1,nil)
vgf.Sendto(LOCATION_HAND,g,nil,REASON_EFFECT)
end
function cm.filter(c)
return vgf.RMonsterFilter(c)
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
return vgf.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,1,nil,e:GetHandler()) and Duel.GetAttacker()==e:GetHandler() and vgf.RMonsterCondition(e)
return vgf.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_CIRCLE,0,1,nil,e:GetHandler()) and Duel.GetAttacker()==e:GetHandler() and vgf.RMonsterCondition(e)
end
function cm.cfilter(c,mc)
return vgf.GetColumnGroup(c):IsContains(mc) and c:IsControler(mc:GetControler()) and c:GetFlagEffect(FLAG_SUPPORT)>0
......
......@@ -12,7 +12,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if vgf.GetAvailableLocation(tp)<=0 then return end
local g=vgf.SelectMatchingCard(HINTMSG_Call,e,tp,cm.filter,tp,LOCATION_DROP,0,1,1,nil,e,tp)
vgf.Sendto(LOCATION_MZONE,g,0,tp,nil,POS_FACEUP_DEFENSE)
vgf.Sendto(LOCATION_CIRCLE,g,0,tp,nil,POS_FACEUP_DEFENSE)
end
function cm.filter(c,e,tp)
return c:IsLevel(c,0,1) and vgf.IsCanBeCalled(c,e,tp)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,vgf.OverlayCost(1),vgf.RMonsterCondition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,vgf.OverlayCost(1),vgf.RMonsterCondition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
......@@ -6,8 +6,8 @@ function cm.initial_effect(c)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_VMONSTER,e,tp,vgf.VMonsterFilter,tp,LOCATION_MZONE,0,1,1,nil)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_FIELD, EFFECT_UPDATE_ATTACK, 5000, nil, cm.tg, LOCATION_MZONE, 0, RESET_PHASE+PHASE_END, g:GetFirst()
local g=vgf.SelectMatchingCard(HINTMSG_VMONSTER,e,tp,vgf.VMonsterFilter,tp,LOCATION_CIRCLE,0,1,1,nil)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_FIELD, EFFECT_UPDATE_ATTACK, 5000, nil, cm.tg, LOCATION_CIRCLE, 0, RESET_PHASE+PHASE_END, g:GetFirst()
end
function cm.tg(e,c)
return vgf.RMonsterFilter(c)
......
......@@ -12,7 +12,7 @@ function cm.initial_effect(c)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_PHASE+PHASE_STANDBY)
e2:SetRange(LOCATION_EMBLEM)
e2:SetRange(LOCATION_CREST)
e2:SetCountLimit(1)
e2:SetCondition(cm.con2)
e2:SetOperation(cm.op)
......@@ -21,7 +21,7 @@ function cm.initial_effect(c)
local e3=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_DRAW)
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_EMBLEM)
e3:SetRange(LOCATION_CREST)
e3:SetCountLimit(1)
e3:SetCost(vgf.EnergyCost(7))
e3:SetOperation(cm.op3)
......@@ -29,23 +29,23 @@ function cm.initial_effect(c)
end
function cm.con1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:IsLocation(LOCATION_EMBLEM) and e:GetHandlerPlayer()==1
return c:IsLocation(LOCATION_CREST) and e:GetHandlerPlayer()==1
end
function cm.op1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
for i = 1, 3, 1 do
local token=Duel.CreateToken(tp,20401001)
vgf.Sendto(LOCATION_EMBLEM,token,tp,POS_FACEUP,REASON_EFFECT)
vgf.Sendto(LOCATION_CREST,token,tp,POS_FACEUP,REASON_EFFECT)
end
end
function cm.con2(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and vgf.GetMatchingGroupCount(Card.IsCode,tp,LOCATION_EMBLEM,0,nil,20401001)<10
return Duel.GetTurnPlayer()==tp and vgf.GetMatchingGroupCount(Card.IsCode,tp,LOCATION_CREST,0,nil,20401001)<10
end
function cm.op2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if vgf.GetMatchingGroupCount(Card.IsCode,tp,LOCATION_EMBLEM,0,nil,20401001)>=10 then return end
if vgf.GetMatchingGroupCount(Card.IsCode,tp,LOCATION_CREST,0,nil,20401001)>=10 then return end
local token=Duel.CreateToken(tp,20401001)
vgf.Sendto(LOCATION_EMBLEM,token,tp,POS_FACEUP,REASON_EFFECT)
vgf.Sendto(LOCATION_CREST,token,tp,POS_FACEUP,REASON_EFFECT)
end
function cm.op3(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
......
......@@ -2,8 +2,8 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.OverDress(c,cm.filter)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, cm.val, cm.con)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_HITTING,cm.op,cm.cost,cm.con)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, cm.val, cm.con)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_HITTING,cm.op,cm.cost,cm.con)
end
function cm.filter(c)
return c:IsCode(10101009) or (c:IsLevelBelow(3) and c:GetFlagEffectLabel(FLAG_CONDITION)==201)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.op,cm.cost,vgf.VMonsterCondition)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.op1,vgf.OverlayCost(5),cm.con,nil,nil,nil,2)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.op,cm.cost,vgf.VMonsterCondition)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.op1,vgf.OverlayCost(5),cm.con,nil,nil,nil,2)
vgd.GlobalCheckEffect(c,m,EVENT_TO_GRAVE,cm.checkcon)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return vgf.IsExistingMatchingCard(cm.filter,tp,LOCATION_MZONE,0,2,nil) end
local g=vgf.SelectMatchingCard(HINTMSG_POSCHANGE,e,tp,cm.filter,tp,LOCATION_MZONE,0,2,2,nil)
if chk==0 then return vgf.IsExistingMatchingCard(cm.filter,tp,LOCATION_CIRCLE,0,2,nil) end
local g=vgf.SelectMatchingCard(HINTMSG_POSCHANGE,e,tp,cm.filter,tp,LOCATION_CIRCLE,0,2,2,nil)
Duel.ChangePosition(g,POS_FACEUP_DEFENCE)
end
function cm.filter(c)
......@@ -15,7 +15,7 @@ function cm.filter(c)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_LEAVEFIELD,e,tp,vgf.VMonsterFilter,tp,0,LOCATION_MZONE,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_LEAVEFIELD,e,tp,vgf.VMonsterFilter,tp,0,LOCATION_CIRCLE,1,1,nil)
if g:GetCount()>0 then vgf.Sendto(LOCATION_DROP,g,REASON_EFFECT) end
if c:IsRelateToEffect(e) and c:IsFaceup() then
vgf.AtkUp(c,c,10000)
......@@ -25,7 +25,7 @@ function cm.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFlagEffect(tp,m)>0
end
function cm.op1(e,tp,eg,ep,ev,re,r,rp)
local ct=6-Duel.GetFieldGroupCount(tp,0,LOCATION_MZONE)
local ct=6-Duel.GetFieldGroupCount(tp,0,LOCATION_CIRCLE)
if ct<=0 then return end
local g=Duel.GetDecktopGroup(tp,ct)
Duel.ConfirmCards(g)
......@@ -33,17 +33,17 @@ function cm.op1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CALL)
local sg=g:FilterSelect(tp,vgf.IsCanBeCalled,0,ct1,nil,e,tp)
if sg:GetCount()>0 then
vgf.Sendto(LOCATION_MZONE,sg,0,tp)
vgf.Sendto(LOCATION_CIRCLE,sg,0,tp)
g:Sub(sg)
end
if g:GetCount()>0 then
local tc=vgf.GetVMonster(tp)
vgf.Sendto(LOCATION_OVERLAY,g,tc)
vgf.Sendto(LOCATION_SOUL,g,tc)
end
end
function cm.checkcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.cfilter,1,nil,tp)
end
function cm.cfilter(c,tp)
return c:IsPreviousLocation(LOCATION_MZONE) and c:IsPreviousControler(1-tp)
return c:IsPreviousLocation(LOCATION_CIRCLE) and c:IsPreviousControler(1-tp)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op,vgf.DamageCost(1),vgf.VMonsterCondition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op,vgf.DamageCost(1),vgf.VMonsterCondition)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -14,15 +14,15 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
end
end
if ct>=15 then
local g1=vgf.GetMatchingGroup(vgf.RMonsterFilter,tp,LOCATION_MZONE,0,nil)
local g2=vgf.GetMatchingGroup(vgf.RMonsterFilter,tp,0,LOCATION_MZONE,nil)
local g1=vgf.GetMatchingGroup(vgf.RMonsterFilter,tp,LOCATION_CIRCLE,0,nil)
local g2=vgf.GetMatchingGroup(vgf.RMonsterFilter,tp,0,LOCATION_CIRCLE,nil)
local tc1=vgf.GetVMonster(tp)
local tc2=vgf.GetVMonster(1-tp)
vgf.Sendto(LOCATION_OVERLAY,g1,tc1)
vgf.Sendto(LOCATION_OVERLAY,g2,tc2)
vgf.Sendto(LOCATION_SOUL,g1,tc1)
vgf.Sendto(LOCATION_SOUL,g2,tc2)
if vgf.GetAvailableLocation(tp)>0 then
local g=tc1:GetOverlayGroup():FilterSelect(tp,vgf.IsCanBeCalled,tp,0,2,nil,e,tp)
vgf.Sendto(LOCATION_MZONE,g,0,tp)
vgf.Sendto(LOCATION_CIRCLE,g,0,tp)
end
end
end
\ No newline at end of file
......@@ -2,9 +2,9 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.GlobalCheckEffect(c,m,EVENT_CHANGE_POS,cm.checkcon)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, 1, EFFECT_UPDATE_CRITICAL, cm.con1)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_HITTING,cm.op,vgf.DamageCost(1))
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, 1, EFFECT_UPDATE_CRITICAL, cm.con1)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_HITTING,cm.op,vgf.DamageCost(1))
end
function cm.checkcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsContains(e:GetHandler())
......@@ -17,6 +17,6 @@ function cm.con1(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFlagEffect(tp,m)>0 and cm.con(e,tp,eg,ep,ev,re,r,rp)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.SelectMatchingCard(HINTMSG_LEAVEFIELD,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_MZONE,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_LEAVEFIELD,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_CIRCLE,1,1,nil)
vgf.Sendto(LOCATION_DROP,g,REASON_EFFECT)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.op,vgf.DamageCost(2),cm.con1)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.op,vgf.DamageCost(2),cm.con1)
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsPlayerAffectedByEffect(tp,AFFECT_CODE_NIGHT) or Duel.IsPlayerAffectedByEffect(tp,AFFECT_CODE_DEEP_NIGHT)
......@@ -18,5 +18,5 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.CreateToken(tp,VgID)
g:AddCard(tc)
end
vgf.Sendto(LOCATION_MZONE,g,0,tp)
vgf.Sendto(LOCATION_CIRCLE,g,0,tp)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, function(e)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, function(e)
vgd.AbilityCont(c, m, LOCATION_G_CIRCLE, EFFECT_TYPE_SINGLE, 5000, EFFECT_UPDATE_DEFENSE, cm.con)
vgd.AbilityAuto(c,m,nil,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.op,vgf.OverlayCost(1),vgf.RSummonCondition)
end
......@@ -14,7 +14,7 @@ function cm.filter(c)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
if vgf.CheckPrison(tp) then
local g=vgf.SelectMatchingCard(HINTMSG_OPPO,e,tp,cm.filter1,tp,0,LOCATION_MZONE,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_OPPO,e,tp,cm.filter1,tp,0,LOCATION_CIRCLE,1,1,nil)
vgf.SendtoPrison(g,tp)
end
end
......
......@@ -2,7 +2,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,nil,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.op,cm.cost,vgf.RSummonCondition)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op1,nil,cm.con)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op1,nil,cm.con)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
......@@ -13,12 +13,12 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.SelectMatchingCard(HINTMSG_CALL,e,tp,vgf.IsCanBeCalled,tp,LOCATION_HAND,0,1,1,nil,e,tp)
if vgf.Sendto(LOCATION_MZONE,g,0,tp)>0 and g:GetFirst():IsLevel(3) then
if vgf.Sendto(LOCATION_CIRCLE,g,0,tp)>0 and g:GetFirst():IsLevel(3) then
Duel.Draw(tp,2,REASON_EFFECT)
end
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
return vgf.RMonsterCondition(e) and vgf.IsExistingMatchingCard(Card.IsLevel,tp,LOCATION_MZONE+LOCATION_G_CIRCLE,0,3,nil,3)
return vgf.RMonsterCondition(e) and vgf.IsExistingMatchingCard(Card.IsLevel,tp,LOCATION_CIRCLE+LOCATION_G_CIRCLE,0,3,nil,3)
end
function cm.op1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_MOVE,cm.op,nil,cm.con)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.op1,cm.cost1,cm.con1,nil,1)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_MOVE,cm.op,nil,cm.con)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.op1,cm.cost1,cm.con1,nil,1)
vgd.GlobalCheckEffect(c,m,EVENT_SPSUMMON_SUCCESS,cm.checkcon)
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
......@@ -13,7 +13,7 @@ function cm.filter(c,tp)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_RMONSTER,e,tp,vgf.RMonsterFilter,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_RMONSTER,e,tp,vgf.RMonsterFilter,tp,LOCATION_CIRCLE,0,1,1,nil)
vgf.AtkUp(c,g,10000)
end
function cm.checkcon(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -13,5 +13,5 @@ function cm.initial_effect(c)
local e2=e1:Clone()
e2:SetCode(AFFECT_CODE_ALCHEMAGIC_DIFFERENT_NAME)
c:RegisterEffect(e2)
vgd.AbilityAct(c,m,LOCATION_MZONE,vgf.CardsFromTo(REASON_EFFECT,LOCATION_MZONE,LOCATION_DROP),vgf.DamageCost(1),vgf.VMonsterCondition,nil,1)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,vgf.CardsFromTo(REASON_EFFECT,LOCATION_CIRCLE,LOCATION_DROP),vgf.DamageCost(1),vgf.VMonsterCondition,nil,1)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op,vgf.DamageCost(1),cm.con)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op,vgf.DamageCost(1),cm.con)
end
function cm.con(e)
local c=e:GetHandler()
......@@ -9,6 +9,6 @@ function cm.con(e)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,vgf.RMonsterFilter,tp,LOCATION_MZONE,0,1,1,c)
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,vgf.RMonsterFilter,tp,LOCATION_CIRCLE,0,1,1,c)
vgf.AtkUp(c,g,c:GetAttack())
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_HITTING,cm.op,vgf.CostAnd(vgf.DamageCost(1),vgf.LeaveFieldCost()),cm.con)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_HITTING,cm.op,vgf.CostAnd(vgf.DamageCost(1),vgf.LeaveFieldCost()),cm.con)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local code=vgf.GetVMonster(tp):GetCode()
......
......@@ -4,6 +4,6 @@ function cm.initial_effect(c)
vgf.AddEffectWhenTrigger(c,m,cm.op)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.SelectMatchingCard(HINTMSG_VMONSTER,e,tp,vgf.VMonsterFilter,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_VMONSTER,e,tp,vgf.VMonsterFilter,tp,LOCATION_CIRCLE,0,1,1,nil)
Duel.ChangePosition(g,POS_FACEUP_ATTACK)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op,cm.cost,cm.con,nil,1)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op,cm.cost,cm.con,nil,1)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -13,9 +13,9 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return vgf.IsExistingMatchingCard(vgf.RMonsterFilter,tp,LOCATION_MZONE,0,1,c) end
local g=vgf.SelectMatchingCard(HINTMSG_XMATERIAL,e,tp,vgf.RMonsterFilter,tp,LOCATION_MZONE,0,1,1,c)
vgf.Sendto(LOCATION_OVERLAY,g)
if chk==0 then return vgf.IsExistingMatchingCard(vgf.RMonsterFilter,tp,LOCATION_CIRCLE,0,1,c) end
local g=vgf.SelectMatchingCard(HINTMSG_XMATERIAL,e,tp,vgf.RMonsterFilter,tp,LOCATION_CIRCLE,0,1,1,c)
vgf.Sendto(LOCATION_SOUL,g)
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
local ct=Duel.GetFlagEffectLabel(tp,FLAG_CONDITION)
......
......@@ -2,7 +2,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,nil,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,vgf.OverlayFill(1),nil,vgf.RSummonCondition)
vgd.AbilityAuto(c,m,LOCATION_MZONE,cm.op,vgf.OverlayCost(3),vgf.RMonsterCondition,nil,1)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,cm.op,vgf.OverlayCost(3),vgf.RMonsterCondition,nil,1)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
......
......@@ -7,7 +7,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetTargetRange(LOCATION_MZONE,0)
e1:SetTargetRange(LOCATION_CIRCLE,0)
e1:SetValue(10000)
e1:SetCondition(vgf.PlayerEffect)
e1:SetTarget(cm.tg)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.op,cm.cost,vgf.RMonsterCondition,nil,1)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.op,cm.cost,vgf.RMonsterCondition,nil,1)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
......@@ -12,7 +12,7 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
if not vgf.CheckPrison(tp) then return end
local g=vgf.SelectMatchingCard(HINTMSG_IMPRISON,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_MZONE,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_IMPRISON,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_CIRCLE,1,1,nil)
vgf.SendtoPrison(g,tp)
if vgf.IsExistingMatchingCard(cm.filter,tp,LOCATION_ORDER,0,3,nil) then
Duel.Draw(tp,1,REASON_EFFECT)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_BATTLED,vgf.DamageFill(1),cm.cost,cm.con)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_BATTLED,vgf.DamageFill(1),cm.cost,cm.con)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsRelateToEffect(e) end
vgf.Sendto(LOCATION_OVERLAY,c)
vgf.Sendto(LOCATION_SOUL,c)
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
......@@ -5,7 +5,7 @@ function cm.initial_effect(c)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.GetMatchingGroup(vgf.FrontFilter,tp,LOCATION_MZONE,0,nil)
local g=vgf.GetMatchingGroup(vgf.FrontFilter,tp,LOCATION_CIRCLE,0,nil)
vgf.AtkUp(c,g,"DOUBLE")
vgf.StarUp(c,g,"DOUBLE")
end
\ No newline at end of file
......@@ -2,7 +2,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.CannotBeTarget(c,m,LOCATION_R_CIRCLE)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_HITTING,cm.op,nil,vgf.RMonsterCondition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_HITTING,cm.op,nil,vgf.RMonsterCondition)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
vgf.DamageFill(1)(e,tp,eg,ep,ev,re,r,rp)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_BATTLED,cm.op,vgf.CostAnd(vgf.OverlayCost(1),vgf.LeaveFieldCost()),cm.con)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_BATTLED,cm.op,vgf.CostAnd(vgf.OverlayCost(1),vgf.LeaveFieldCost()),cm.con)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
......
......@@ -14,7 +14,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e1,tp)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.GetMatchingGroup(e,cm.filter,tp,LOCATION_MZONE,0,nil)
local g=vgf.GetMatchingGroup(e,cm.filter,tp,LOCATION_CIRCLE,0,nil)
for tc in vgf.Next(g) do
tc:RegisterFlagEffect(FLAG_ALSO_CAN_TRIGGER,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end
......
......@@ -2,7 +2,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,nil,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.op,nil,vgf.RSummonCondition)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.op1,vgf.LeaveFieldCost(),vgf.RMonsterCondition)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.op1,vgf.LeaveFieldCost(),vgf.RMonsterCondition)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetDecktopGroup(tp,3)
......
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】:这个单位从手牌登场到R时,通过【费用】[计数爆发1,灵魂爆发1],选择你的弃牌区中的1张等级2以下的卡,CALL到R上,这个回合中,那个单位的力量+5000。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,cm.cost,cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,cm.cost,cm.condition)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -12,7 +12,7 @@ end
--效果二处理
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
vgf.CardsFromTo(REASON_EFFECT,LOCATION_MZONE,LOCATION_DROP,cm.filter2)(e,tp,eg,ep,ev,re,r,rp)
vgf.CardsFromTo(REASON_EFFECT,LOCATION_CIRCLE,LOCATION_DROP,cm.filter2)(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetOperatedGroup()
vgf.AtkUp(c,g,5000)
end
......
......@@ -8,10 +8,10 @@ end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
Duel.Draw(tp,1,REASON_TRIGGER)
local g1=vgf.SelectMatchingCard(HINTMSG_CRITICAL_STRIKE,e,tp,nil,tp,LOCATION_MZONE,0,1,1,nil)
local g1=vgf.SelectMatchingCard(HINTMSG_CRITICAL_STRIKE,e,tp,nil,tp,LOCATION_CIRCLE,0,1,1,nil)
vgf.StarUp(c,g1,1,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATKUP)
local g2=vgf.GetMatchingGroup(vgf.IsSequence,tp,LOCATION_MZONE,0,nil,0,4,5)
local g2=vgf.GetMatchingGroup(vgf.IsSequence,tp,LOCATION_CIRCLE,0,nil,0,4,5)
vgf.AtkUp(c,g2,10000,nil)
if vgf.GetMatchingGroupCount(nil,tp,LOCATION_DAMAGE,0,nil)>=vgf.GetMatchingGroupCount(nil,tp,0,LOCATION_DAMAGE,nil) then
local tc=vgf.SelectMatchingCard(HINTMSG_TODROP,e,tp,nil,tp,LOCATION_DAMAGE,0,1,1,nil):GetFirst()
......
......@@ -4,21 +4,21 @@ function cm.initial_effect(c)
vgd.VgCard(c)
--【自】【R】:你的先导者攻击时,对手的后防者在2张以下的话,通过【费用】[将这个单位放置到灵魂里],选择你的1张先导者,这次战斗中,☆+1。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_ATTACK_ANNOUNCE,cm.operation2,cm.cost,cm.condition2)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_ATTACK_ANNOUNCE,cm.operation2,cm.cost,cm.condition2)
end
function cm.condition2(e,tp,eg,ep,ev,re,r,rp)
local c=Duel.GetAttacker()
return vgf.RMonsterCondition(e) and vgf.GetMatchingGroupCount(vgf.RMonsterFilter,tp,0,LOCATION_MZONE,nil)<=2 and vgf.VMonsterFilter(c)
return vgf.RMonsterCondition(e) and vgf.GetMatchingGroupCount(vgf.RMonsterFilter,tp,0,LOCATION_CIRCLE,nil)<=2 and vgf.VMonsterFilter(c)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsRelateToEffect(e) end
local rc=vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_MZONE,0,nil):GetFirst()
vgf.Sendto(LOCATION_OVERLAY,c,rc)
local rc=vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_CIRCLE,0,nil):GetFirst()
vgf.Sendto(LOCATION_SOUL,c,rc)
end
function cm.operation2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_CRITICAL_STRIKE,e,tp,vgf.VMonsterFilter,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_CRITICAL_STRIKE,e,tp,vgf.VMonsterFilter,tp,LOCATION_CIRCLE,0,1,1,nil)
if g:GetCount()>0 then
local e1=vgf.StarUp(c,g,1,nil)
vgf.EffectReset(c,e1,EVENT_BATTLED)
......
......@@ -5,14 +5,14 @@ function cm.initial_effect(c)
--【自】:这个单位被「沙尘之重炮 尤金」RIDE时,抽1张卡,选择你的弃牌区中的至多1张卡,放置到灵魂里。
vgd.BeRidedByCard(c,m,10401002,cm.operation)
--【自】【V/R】:这个单位攻击时,对手的后防者在2张以下的话,通过【费用】[计数爆发1],灵魂填充1,这次战斗中,这个单位的力量+5000。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation1,vgf.DamageCost(1),cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation1,vgf.DamageCost(1),cm.condition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
local g=vgf.SelectMatchingCard(HINTMSG_XMATERIAL,e,tp,nil,tp,LOCATION_DROP,0,0,1,nil)
if g:GetCount()>0 then
vgf.Sendto(LOCATION_OVERLAY,g,vgf.GetVMonster(tp))
vgf.Sendto(LOCATION_SOUL,g,vgf.GetVMonster(tp))
end
end
function cm.operation1(e,tp,eg,ep,ev,re,r,rp)
......@@ -24,5 +24,5 @@ function cm.operation1(e,tp,eg,ep,ev,re,r,rp)
end
end
function cm.condition (e,tp,eg,ep,ev,re,r,rp)
return vgf.GetMatchingGroupCount(vgf.RMonsterFilter,tp,0,LOCATION_MZONE,nil)<=2
return vgf.GetMatchingGroupCount(vgf.RMonsterFilter,tp,0,LOCATION_CIRCLE,nil)<=2
end
......@@ -3,12 +3,12 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】:这个单位登场到R时,通过【费用】[计数爆发2],灵魂填充1,选择对手的1张后防者,退场。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,vgf.DamageCost(2),vgf.RSummonCondition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,vgf.DamageCost(2),vgf.RSummonCondition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
vgf.OverlayFill(1)(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.SelectMatchingCard(HINTMSG_LEAVEFIELD,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_MZONE,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_LEAVEFIELD,e,tp,vgf.RMonsterFilter,tp,0,LOCATION_CIRCLE,1,1,nil)
if g:GetCount()>0 then
vgf.Sendto(LOCATION_DROP,g,REASON_EFFECT)
end
......
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】【R】:这个单位的攻击击中时,通过【费用】[将手牌中的1张卡舍弃],抽1张卡。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_HITTING,cm.operation, vgf.DisCardCost(1))
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_HITTING,cm.operation, vgf.DisCardCost(1))
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
......
......@@ -3,7 +3,7 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】:这个单位登场到R时,通过【费用】[计数爆发1,灵魂爆发1],选择对手的1张等级2以上的后防者,退场。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,cm.cost,vgf.RSummonCondition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,cm.cost,vgf.RSummonCondition)
end
--计数爆发1,灵魂爆发1
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
......@@ -14,7 +14,7 @@ end
--选择对手的1张等级2以上的后防者
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_LEAVEFIELD,e,tp,cm.filter,tp,0,LOCATION_MZONE,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_LEAVEFIELD,e,tp,cm.filter,tp,0,LOCATION_CIRCLE,1,1,nil)
if g:GetCount()>0 then
vgf.Sendto(LOCATION_DROP,g,REASON_EFFECT)
end
......
......@@ -6,14 +6,14 @@ end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_MONSTER)
local g=vgf.SelectMatchingCard(HINTMSG_MONSTER,e,tp,nil,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_MONSTER,e,tp,nil,tp,LOCATION_CIRCLE,0,1,1,nil)
if g:GetCount()>0 then
local tc=g:GetFirst()
if vgf.RMonsterFilter(tc) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetRange(LOCATION_CIRCLE)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetValue(1)
......
......@@ -3,9 +3,9 @@ local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
--【自】:这个单位登场到R时,你有「重力的支配者 磁力重压」的先导者的话,灵魂填充2。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,vgf.OverlayFill(2),nil,cm.condition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,vgf.OverlayFill(2),nil,cm.condition)
--【起】【R】:你的灵魂在10张以上的话,通过【费用】[计数爆发2],这个回合中,将当前存在于前列的你所有的单位的力量+5000。
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.operation,vgf.DamageCost(2),cm.condition1)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.operation,vgf.DamageCost(2),cm.condition1)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......@@ -17,6 +17,6 @@ function cm.condition1(e,tp,eg,ep,ev,re,r,rp)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.GetMatchingGroup(vgf.FrontFilter,tp,LOCATION_MZONE,0,nil)
local g=vgf.GetMatchingGroup(vgf.FrontFilter,tp,LOCATION_CIRCLE,0,nil)
vgf.AtkUp(c,g,5000,nil)
end
\ No newline at end of file
......@@ -5,7 +5,7 @@ function cm.initial_effect(c)
--【自】:这个单位被「重力的支配者 磁力重压」RIDE时,通过【费用】[将手牌中的1张卡放置到灵魂里],抽1张卡,灵魂填充1。
vgd.BeRidedByCard(c,m,10401003,cm.operation,cm.cost)
--【自】:这个单位登场到R时,通过【费用】[计数爆发1],灵魂填充2。
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation1,vgf.DamageCost(1),vgf.RSummonCondition)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation1,vgf.DamageCost(1),vgf.RSummonCondition)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
......@@ -15,9 +15,9 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return vgf.GetMatchingGroupCount(nil,tp,0,LOCATION_HAND,nil)>=1 end
local rc=vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_MZONE,0,nil):GetFirst()
local rc=vgf.GetMatchingGroup(vgf.VMonsterFilter,tp,LOCATION_CIRCLE,0,nil):GetFirst()
local g=vgf.SelectMatchingCard(HINTMSG_OVERLAY,e,tp,nil,tp,LOCATION_HAND,0,1,1,nil,e,tp)
vgf.Sendto(LOCATION_OVERLAY,g,rc)
vgf.Sendto(LOCATION_SOUL,g,rc)
end
function cm.operation1(e,tp,eg,ep,ev,re,r,rp)
vgf.OverlayFill(2)(e,tp,eg,ep,ev,re,r,rp,chk)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op,cm.cost,cm.con)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_SUPPORT,cm.op,cm.cost,cm.con1)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op,cm.cost,cm.con)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_SUPPORT,cm.op,cm.cost,cm.con1)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.GetVMonster(tp):GetOverlayGroup()
......@@ -13,10 +13,10 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return vgf.IsExistingMatchingCard(nil,vgf.RMonsterFilter,tp,LOCATION_MZONE,0,1,c) and vgf.DamageCost(1)(e,tp,eg,ep,ev,re,r,rp,chk) end
if chk==0 then return vgf.IsExistingMatchingCard(nil,vgf.RMonsterFilter,tp,LOCATION_CIRCLE,0,1,c) and vgf.DamageCost(1)(e,tp,eg,ep,ev,re,r,rp,chk) end
vgf.DamageCost(1)(e,tp,eg,ep,ev,re,r,rp,chk)
local g=vgf.SelectMatchingCard(HINTMSG_OVERLAY,nil,tp,vgf.RMonsterFilter,tp,LOCATION_MZONE,0,1,c)
vgf.Sendto(LOCATION_OVERLAY,g)
local g=vgf.SelectMatchingCard(HINTMSG_OVERLAY,nil,tp,vgf.RMonsterFilter,tp,LOCATION_CIRCLE,0,1,c)
vgf.Sendto(LOCATION_SOUL,g)
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFlagEffectLabel(tp,FLAG_CONDITION)==10102001
......
......@@ -5,14 +5,14 @@ function cm.initial_effect(c)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_MONSTER,e,tp,Card.IsFaceup,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_MONSTER,e,tp,Card.IsFaceup,tp,LOCATION_CIRCLE,0,1,1,nil)
if g:GetCount()>0 then
local tc=g:GetFirst()
if vgf.RMonsterFilter(tc) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetRange(LOCATION_CIRCLE)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetValue(1)
......
......@@ -10,11 +10,11 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
vgf.OverlayFill(1)(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATKUP)
local e1=vgf.GetMatchingGroupCount(nil,tp,LOCATION_OVERLAY,0,nil)/5
local e1=vgf.GetMatchingGroupCount(nil,tp,LOCATION_SOUL,0,nil)/5
local e2=e1*10000
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_CIRCLE,0,1,1,nil)
vgf.AtkUp(c,g,e2,nil)
if vgf.GetMatchingGroupCount(nil,tp,LOCATION_OVERLAY,0,nil)>=10 then
if vgf.GetMatchingGroupCount(nil,tp,LOCATION_SOUL,0,nil)>=10 then
Duel.Draw(tp,1,REASON_EFFECT)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.op,vgf.OverlayCost(1),vgf.RMonsterCondition,nil,1)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.op,vgf.OverlayCost(1),vgf.RMonsterCondition,nil,1)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
vgf.AtkUp(c,c,2000)
local g=vgf.SelectMatchingCard(HINTMSG_OPPO,e,tp,cm.filter,tp,0,LOCATION_MZONE,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_OPPO,e,tp,cm.filter,tp,0,LOCATION_CIRCLE,1,1,nil)
vgf.SendtoPrison(g,tp)
end
function cm.filter(c)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAuto(c,m,LOCATION_MZONE,EFFECT_TYPE_FIELD,EVENT_MOVE,cm.op,nil,cm.con)
vgd.AbilityCont(c, m, LOCATION_MZONE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con2)
vgd.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_FIELD,EVENT_MOVE,cm.op,nil,cm.con)
vgd.AbilityCont(c, m, LOCATION_CIRCLE, EFFECT_TYPE_SINGLE, EFFECT_UPDATE_ATTACK, 5000, cm.con2)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_CIRCLE,0,1,1,nil)
vgf.AtkUp(c,g,5000)
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -6,7 +6,7 @@ end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and vgf.IsCanBeCalled(c,e,tp) then
vgf.Sendto(LOCATION_MZONE,c,0,tp)
vgf.Sendto(LOCATION_CIRCLE,c,0,tp)
end
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -6,14 +6,14 @@ end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_MONSTER)
local g=vgf.SelectMatchingCard(HINTMSG_MONSTER,e,tp,nil,tp,LOCATION_MZONE,0,1,1,nil)
local g=vgf.SelectMatchingCard(HINTMSG_MONSTER,e,tp,nil,tp,LOCATION_CIRCLE,0,1,1,nil)
if g:GetCount()>0 then
local tc=g:GetFirst()
if vgf.RMonsterFilter(tc) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetRange(LOCATION_CIRCLE)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetValue(1)
......
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.VgCard(c)
vgd.AbilityAct(c,m,LOCATION_MZONE,cm.op,vgf.OverlayCost(2),cm.con)
vgd.AbilityAct(c,m,LOCATION_CIRCLE,cm.op,vgf.OverlayCost(2),cm.con)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.GetMatchingGroup(Card.IsLevel,tp,LOCATION_MZONE,0,nil,3)
local g=vgf.GetMatchingGroup(Card.IsLevel,tp,LOCATION_CIRCLE,0,nil,3)
for tc in vgf.Next(g) do
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetCode(EFFECT_ADD_SKILL)
e1:SetRange(LOCATION_MZONE)
e1:SetRange(LOCATION_CIRCLE)
e1:SetValue(SKILL_SUPPORT)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
end
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
return vgf.IsExistingMatchingCard(Card.IsLevel,tp,LOCATION_MZONE+LOCATION_G_CIRCLE,0,3,nil,3) and vgf.RMonsterCondition(e)
return vgf.IsExistingMatchingCard(Card.IsLevel,tp,LOCATION_CIRCLE+LOCATION_G_CIRCLE,0,3,nil,3) and vgf.RMonsterCondition(e)
end
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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