Commit e6a21eba authored by xiaoye's avatar xiaoye

fix

parent 623fe349
......@@ -13,7 +13,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
end
end
function cm.filter(c)
return c:IsCode(0xc040) and c:IsAbleToHand()
return c:IsCode(0xc040)
end
function cm.cost1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return vgf.GetMatchingGroupCount(nil,tp,LOCATION_HAND,0,nil)>0 end
......
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 被等级3的含有「凯旋龙」的单位RIDE时
vgd.action.AbilityAutoRided(c,m,cm.ridefilter,cm.operation)
-- 盾护+10000
vgd.action.AbilityCont(c,m,LOCATION_G_CIRCLE,EFFECT_TYPE_SINGLE,EFFECT_UPDATE_DEFENSE,10000,cm.powercon)
end
function cm.ridefilter(c)
return c:IsLevel(3) and c:IsSetCard(0x12a)
end
-- 你可以将这张卡CALL到R上
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)
and Duel.SelectYesNo(tp,vgf.Stringid(m,0)) and vgf.Sendto(LOCATION_CIRCLE,c,0,tp) == 0 then
-- 没有CALL出场的话,能量填充3
vgf.op.EnergyCharge(3)
end
end
-- 你有等级3以上的含有「凯旋龙」的先导者的话
function cm.powercon(e)
local tp=e:GetHandlerPlayer()
local v=vgf.GetVMonster(tp)
return v and v:IsLevelAbove(3) and v:IsSetCard(0x12a)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 被「轰雷兽 扬升黄喉貂」RIDE时
vgd.action.AbilityAutoRided(c,m,20101002,vgf.op.Draw(),vgf.cost.EnergyBlast(2))
-- 力量+5000
vgd.action.AbilityCont(c,m,LOCATION_G_CIRCLE,EFFECT_TYPE_SINGLE,EFFECT_UPDATE_ATTACK,5000,cm.powercon)
end
-- 你的回合中,你有等级3以上的含有「凯旋龙」的先导者的话
function cm.powercon(e)
local tp=e:GetHandlerPlayer()
local v=vgf.GetVMonster(tp)
return Duel.GetTurnPlayer()==tp and v and v:IsLevelAbove(3) and v:IsSetCard(0x12a)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAutoRided(c,m,nil,vgf.op.Draw(),nil,cm.condition)
end
-- 后攻
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return tp==1 and Duel.GetTurnPlayer()==tp
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,0,EFFECT_TYPE_SINGLE,EVENT_DISCARD,vgf.op.Draw(),vgf.cost.SoulBlast(2),cm.condition)
end
-- 你的RIDE阶段中
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and Duel.GetCurrentPhase()==PHASE_RIDE
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,LOCATION_R_CIRCLE,EFFECT_TYPE_FIELD,EVENT_TO_GRAVE,cm.op,nil,cm.condition,nil,1)
end
function cm.filter(c,tp)
local tc=c:GetReasonCard()
return c:IsPreviousLocation(LOCATION_CIRCLE) and c:IsPreviousControler(1-tp)
and c:GetPreviousSequence()~=5 and tc
and tc:IsControler(tp) and tc:IsLevelAbove(3) and tc:IsVanguard()
end
-- 对手的后防者由于你的等级3以上的先导者的能力退场时
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.filter,1,nil,tp)
end
-- 这个回合中,这个单位的力量+10000
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.AtkUp(c,c,10000)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,0,EFFECT_TYPE_SINGLE,EVENT_DISCARD,cm.operation,nil,cm.condition)
end
-- 你的RIDE阶段中
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and Duel.GetCurrentPhase()==PHASE_RIDE
end
-- 将这张卡横置CALL到R上
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,0,POS_FACEUP_DEFENSE,0x20) then
vgf.Sendto(LOCATION_CIRCLE,c,0,tp,0x20,POS_FACEUP_DEFENSE)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,LOCATION_R_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_CUSTOM+EVENT_SUPPORT,cm.operation,cm.cost,cm.condition)
end
-- 对手的后防者在2张以下的话
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return not vgf.IsExistingMatchingCard(nil,tp,0,LOCATION_R_CIRCLE,3,nil)
end
-- 计数爆发1,能量爆发2
cm.cost=vgf.cost.And(vgf.cost.CounterBlast(1),vgf.cost.EnergyBlast(2))
-- 抽1张卡,这次战斗中,这个单位的力量+5000
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.AtkUp(c,c,5000,EVENT_BATTLED)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAct(c,m,LOCATION_V_CIRCLE,cm.thop,cm.thcost,nil,nil,1)
vgd.action.AbilityAuto(c,m,LOCATION_V_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,cm.cost,cm.condition)
end
function cm.thfilter(c)
return c:IsCode(m)
end
-- 计数爆发1
cm.thcost=vgf.cost.CounterBlast(1)
-- 从你的牌堆里探寻至多1张与这个单位同名的卡,公开后加入手牌
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.SelectMatchingCard(HINTMSG_ATOHAND,e,tp,cm.thfilter,tp,LOCATION_DECK,0,0,1,nil)
if g:GetCount()>0 then
vgf.Sendto(LOCATION_HAND,g,nil,REASON_EFFECT)
end
-- 这个回合中,这个单位的力量+10000
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.AtkUp(c,c,10000)
end
end
function cm.filter(c,e,tp)
return c:IsLevelBelow(3) and vgf.IsCanBeCalled(c,e,tp)
end
-- 攻击先导者时
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetAttackTarget()
return tc and tc:IsVanguard()
end
-- 能量爆发4
cm.cost=vgf.cost.EnergyBlast(4)
-- 选择你的灵魂里的1张等级3以下的卡,CALL到R上
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local mg=vgf.GetSoulGroup(tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CALL)
local sg=mg:FilterSelect(tp,cm.filter,1,1,nil,e,tp)
if sg:GetCount()>0 then
local tc=sg:GetFirst()
if vgf.Sendto(LOCATION_CIRCLE,tc,0,tp)>0 then
-- 这个回合中,那个单位的力量+10000
vgf.AtkUp(e:GetHandler(),tc,10000)
end
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 被等级3的含有「奥赛拉杰斯特」的单位RIDE时
vgd.action.AbilityAutoRided(c,m,cm.ridefilter,vgf.op.Draw(),nil,cm.condition)
-- 盾护+10000
vgd.action.AbilityCont(c,m,LOCATION_G_CIRCLE,EFFECT_TYPE_SINGLE,EFFECT_UPDATE_DEFENSE,10000,cm.powercon)
end
function cm.ridefilter(c)
return c:IsLevel(3) and c:IsSetCard(0x12b)
end
-- 你的灵魂在4张以上的话
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return vgf.GetSoulGroup(tp):GetCount()>=4
end
-- 你有等级3以上的含有「奥赛拉杰斯特」的先导者的话
function cm.powercon(e)
local tp=e:GetHandlerPlayer()
local v=vgf.GetVMonster(tp)
return v and v:IsLevelAbove(3) and v:IsSetCard(0x12b)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 被「蒸汽修剪者 尼布甲尼撒」RIDE时
vgd.action.AbilityAutoRided(c,m,20102002,cm.operation)
-- 力量+5000
vgd.action.AbilityCont(c,m,LOCATION_G_CIRCLE,EFFECT_TYPE_SINGLE,EFFECT_UPDATE_ATTACK,5000,cm.powercon)
end
-- 灵魂填充2
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
vgf.operation.SoulCharge(2)(e,tp,eg,ep,ev,re,r,rp)
-- 选择你的1张先导者,这个回合中,力量+5000
local g=vgf.SelectMatchingCard(HINTMSG_ATKUP,e,tp,nil,tp,LOCATION_V_CIRCLE,0,1,1,nil)
if g:GetCount()>0 then
vgf.AtkUp(e:GetHandler(),g,5000)
end
end
-- 你的回合中,你有等级3以上的含有「奥赛拉杰斯特」的先导者的话
function cm.powercon(e)
local tp=e:GetHandlerPlayer()
local v=vgf.GetVMonster(tp)
return Duel.GetTurnPlayer()==tp and v and v:IsLevelAbove(3) and v:IsSetCard(0x12b)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAutoRided(c,m,nil,vgf.op.Draw(),nil,cm.condition)
end
-- 后攻
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return tp==1 and Duel.GetTurnPlayer()==tp
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
end
\ No newline at end of file
vgd.action.AbilityAuto(c,m,0,EFFECT_TYPE_SINGLE,EVENT_DISCARD,vgf.op.Draw(),cm.cost,cm.condition)
end
-- 你的RIDE阶段中
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and Duel.GetCurrentPhase()==PHASE_RIDE
end
--灵魂爆发2
cm.cost=vgf.cost.SoulBlast(2)
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,LOCATION_R_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,cm.cost,cm.condition)
end
-- 你有等级3以上的含有「奥赛拉杰斯特」的先导者的话
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local tc=vgf.GetVMonster(tp)
return tc and tc:IsLevelAbove(3) and tc:IsSetCard(0x12b)
end
-- 计数爆发1
cm.cost=vgf.cost.And(vgf.cost.CounterBlast(1),function(e,tp,eg,ep,ev,re,r,rp,chk)
-- 将你前列的其他的1张后防者放置到灵魂里
local c=e:GetHandler()
local mg=vgf.GetMatchingGroup(Card.IsFrontrow,tp,LOCATION_R_CIRCLE,0,c)
if chk==0 then return mg:GetCount()>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
local sg=mg:Select(tp,1,1,nil)
vgf.Sendto(LOCATION_SOUL,sg)
end)
-- 抽1张卡
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,0,EFFECT_TYPE_SINGLE,EVENT_DISCARD,cm.operation,nil,cm.condition)
end
-- 你的RIDE阶段中
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and Duel.GetCurrentPhase()==PHASE_RIDE
end
-- 将这张卡横置CALL到R上
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,0,POS_FACEUP_DEFENSE,0x20) then
vgf.Sendto(LOCATION_CIRCLE,c,0,tp,0x20,POS_FACEUP_DEFENSE)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,LOCATION_R_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_CUSTOM+EVENT_SUPPORT,cm.operation,cm.cost,cm.condition)
end
-- 你的灵魂在5张以上的话
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return vgf.GetSoulGroup(tp):GetCount()>=5
end
-- 计数爆发1,能量爆发2
cm.cost=vgf.cost.And(vgf.cost.CounterBlast(1),vgf.cost.EnergyBlast(2))
-- 抽1张卡,这次战斗中,这个单位的力量+5000
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.effect.Reset(vgf.AtkUp(c,c,5000), EVENT_BATTLED)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAct(c,m,LOCATION_CIRCLE,cm.op,vgf.cost.CounterBlast(1),vgf.con.IsV)
vgd.action.AbilityAuto(c,m,LOCATION_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.op1,vgf.cost.EnergyBlast(4),cm.con)
vgd.action.AbilityAct(c,m,LOCATION_V_CIRCLE,cm.thop,cm.thcost,nil,nil,1)
vgd.action.AbilityAuto(c,m,LOCATION_V_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_ATTACK_ANNOUNCE,cm.operation,cm.cost,cm.condition)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
function cm.thfilter(c)
return c:IsCode(m)
end
-- 计数爆发1
cm.thcost=vgf.cost.CounterBlast(1)
-- 从你的牌堆里探寻至多1张与这个单位同名的卡,公开后加入手牌
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.SelectMatchingCard(HINTMSG_ATOHAND,e,tp,cm.thfilter,tp,LOCATION_DECK,0,0,1,nil)
if g:GetCount()>0 then
vgf.Sendto(LOCATION_HAND,g,nil,REASON_EFFECT)
end
-- 这个回合中,这个单位的力量+10000
local c=e:GetHandler()
vgf.op.CardsFromTo(REASON_EFFECT,LOCATION_HAND,LOCATION_DECK,cm.filter,1,0)(e,tp,eg,ep,ev,re,r,rp)
if c:IsRelateToEffect(e) and c:IsFaceup() then
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.AtkUp(c,c,10000)
end
end
function cm.filter(c)
return c:IsCode(m)
return c:IsDefensePos()
end
function cm.con(e,tp,eg,ep,ev,re,r,rp)
return vgf.con.IsV(e) and Duel.GetAttackTarget():IsVanguard()end
function cm.op1(e,tp,eg,ep,ev,re,r,rp)
-- 攻击先导者时
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetAttackTarget()
return tc and tc:IsVanguard()
end
-- 能量爆发4
cm.cost=vgf.cost.EnergyBlast(4)
-- 选择你的1张后防者,重置
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=vgf.SelectMatchingCard(HINTMSG_RMONSTER,e,tp,cm.filter,tp,LOCATION_R_CIRCLE,0,1,1,nil)
if g:GetCount()>0 then
Duel.ChangePosition(g,POS_FACEUP_ATTACK)
Duel.RaiseEvent(c,EVENT_CUSTOM+20103001,e,REASON_EFFECT,tp,tp,1)
Duel.RaiseSingleEvent(c,EVENT_CUSTOM+20103001,e,REASON_EFFECT,tp,tp,1)
end
local c=e:GetHandler()
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)
if c:IsFaceup() and c:IsRelateToEffect(e) then
g:AddCard(c)
vgf.AtkUp(c,g,10000,nil)
end
end
-- 这个回合中,那个单位和这个单位的力量+5000
vgf.AtkUp(c,g,5000)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 被等级3的含有「阿施笃姆」的单位RIDE时
vgd.action.AbilityAutoRided(c,m,cm.ridefilter,cm.operation)
-- 盾护+10000
vgd.action.AbilityCont(c,m,LOCATION_G_CIRCLE,EFFECT_TYPE_SINGLE,EFFECT_UPDATE_DEFENSE,10000,cm.powercon)
end
function cm.ridefilter(c)
return c:IsLevel(3) and c:IsSetCard(0x12c)
end
function cm.thfilter(c)
return c:IsCode(20401108)
end
-- 从你的牌堆里探寻至多1张「装甲补给车 普列乔沙」,公开后加入手牌
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.SelectMatchingCard(HINTMSG_ATOHAND,e,tp,cm.thfilter,tp,LOCATION_DECK,0,0,1,nil)
if g:GetCount()>0 then
vgf.Sendto(LOCATION_HAND,g,nil,REASON_EFFECT)
end
end
-- 你有等级3以上的含有「阿施笃姆」的先导者的话
function cm.powercon(e)
local tp=e:GetHandlerPlayer()
local v=vgf.GetVMonster(tp)
return v and v:IsLevelAbove(3) and v:IsSetCard(0x12c)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 被「闪击兆级喷气机 雷维利欧」RIDE时
vgd.action.AbilityAutoRided(c,m,20103002,cm.operation)
-- 力量+5000
vgd.action.AbilityCont(c,m,LOCATION_G_CIRCLE,EFFECT_TYPE_SINGLE,EFFECT_UPDATE_ATTACK,5000,cm.powercon)
end
function cm.thfilter(c)
return c:IsCode(20401108)
end
-- 从你的牌堆里探寻至多1张「装甲补给车 普列乔沙」,公开后加入手牌
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.SelectMatchingCard(HINTMSG_ATOHAND,e,tp,cm.thfilter,tp,LOCATION_DECK,0,0,1,nil)
if g:GetCount()>0 then
vgf.Sendto(LOCATION_HAND,g,nil,REASON_EFFECT)
end
end
-- 你的回合中,你有等级3以上的含有「阿施笃姆」的先导者的话
function cm.powercon(e)
local tp=e:GetHandlerPlayer()
local v=vgf.GetVMonster(tp)
return Duel.GetTurnPlayer()==tp and v and v:IsLevelAbove(3) and v:IsSetCard(0x12c)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAutoRided(c,m,nil,cm.operation,nil,cm.condition)
end
-- 后攻
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return tp==1 and Duel.GetTurnPlayer()==tp
end
-- 抽1张卡
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,0,EFFECT_TYPE_SINGLE,EVENT_DISCARD,cm.operation,cm.cost,cm.condition)
end
-- 你的RIDE阶段中
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and Duel.GetCurrentPhase()==PHASE_RIDE
end
--灵魂爆发2
cm.cost=vgf.cost.SoulBlast(2)
-- 抽1张卡
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 通过【费用】[计数爆发1]施放
vgd.action.SetOrder(c,vgf.cost.CounterBlast(1))
-- 由于你的等级3以上的含有「阿施笃姆」的单位的能力重置时
vgd.action.AbilityAuto(c,m,LOCATION_R_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_CUSTOM+20103001,cm.operation)
end
-- 这个回合中,这个单位的力量+10000
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.AtkUp(c,c,10000)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,0,EFFECT_TYPE_SINGLE,EVENT_DISCARD,cm.operation,nil,cm.condition)
end
-- 你的RIDE阶段中
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and Duel.GetCurrentPhase()==PHASE_RIDE
end
-- 将这张卡横置CALL到R上
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,0,POS_FACEUP_DEFENSE) then
vgf.Sendto(LOCATION_CIRCLE,c,0,tp,nil,POS_FACEUP_DEFENSE)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,LOCATION_R_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_CUSTOM+EVENT_SUPPORT,cm.operation,cm.cost,cm.condition)
end
-- 这是这个回合第3次以后的战斗中的话
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetBattledCount(tp)>=2
end
-- 计数爆发1,能量爆发2
cm.cost=vgf.cost.And(vgf.cost.CounterBlast(1),vgf.cost.EnergyBlast(2))
-- 抽1张卡,这次战斗中,这个单位的力量+5000
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.effect.Reset(c,vgf.AtkUp(c,c,5000),EVENT_BATTLED)
end
end
\ No newline at end of file
......@@ -9,7 +9,8 @@ function cm.ridefilter(c)
return c:IsLevel(3) and c:IsSetCard(0x12d)
end
function cm.filter(c,e,tp)
return c:IsLevelBelow(3) and c:IsCanBeCalled(e,tp)end
return c:IsLevelBelow(3) and vgf.IsCanBeCalled(c,e,tp)
end
-- 选择你的手牌中的至多1张等级3以下的卡,CALL到R上
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
......@@ -11,9 +11,10 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetDecktopGroup(tp,1)
local tc=vgf.ReturnCard(g)
Duel.DisableShuffleCheck()
if tc:IsLevelBelow(2) and tc:IsType(TYPE_NORMAL) and tc:IsType(TYPE_UNIT) and tc:IsCanBeCalled(e,tp) and Duel.SelectYesNo(tp,vgf.Stringid(m,0)) then
if tc:IsLevelBelow(2) and tc:IsType(TYPE_NORMAL) and vgf.IsCanBeCalled(tc,e,tp)
and Duel.SelectYesNo(tp,vgf.Stringid(m,0)) then
-- 将那张卡CALL到R上
vgf.Sendto(LOCATION_CIRCLE,tc,0,tp)
vgf.Sendto(LOCATION_CIRCLE,c,0,tp)
else
-- 将那张卡加入手牌,选择你的手牌中的1张卡,舍弃
local tg=vgf.SelectMatchingCard(HINTMSG_DISCARD,e,tp,nil,tp,LOCATION_HAND,0,1,1,nil)
......@@ -24,5 +25,5 @@ end
function cm.powercon(e)
local tp=e:GetHandlerPlayer()
local v=vgf.GetVMonster(tp)
return Duel.GetTurnPlayer()==tp and v and v:IsLevelAbove(3) and v:IsSetCard(0x12d)
return Duel.GetTurnPlayer()==tp and v:IsLevelAbove(3) and v:IsSetCard(0x12d)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,0,EFFECT_TYPE_SINGLE,EVENT_DISCARD,vgf.op.Draw(),vgf.cost.SoulBlast(2),cm.condition)
vgd.action.AbilityAuto(c,m,0,EFFECT_TYPE_SINGLE,EVENT_DISCARD,cm.operation,cm.cost,cm.condition)
end
-- 你的RIDE阶段中
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and Duel.GetCurrentPhase()==PHASE_RIDE
end
--灵魂爆发2
cm.cost=vgf.cost.SoulBlast(2)
-- 抽1张卡
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,nil,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,vgf.Operation.ThisCard(function (e)
local tc=e:GetHandler()
vgf.AtkUp(tc,tc,10000)
end),nil,cm.condition)
vgd.action.AbilityAuto(c,m,nil,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,nil,cm.condition)
end
-- 从弃牌区登场到R时,有等级3以上的先导者的话
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:IsPreviousLocation(LOCATION_DROP) and vgf.GetVMonster(tp):IsLevelAbove(3) and c:IsRideOnRCircle()
end
-- 这个回合中,这个单位的力量+10000
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.AtkUp(c,c,10000)
end
end
\ No newline at end of file
......@@ -9,7 +9,7 @@ end
-- 将这张卡横置CALL到R上
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and c:IsCanBeCalled(e,tp,0,POS_FACEUP_DEFENSE) then
vgf.Sendto(LOCATION_CIRCLE,c,0,tp,0x20,POS_FACEUP_DEFENSE)
if c:IsRelateToEffect(e) and vgf.IsCanBeCalled(c,e,tp,0,POS_FACEUP_DEFENSE) then
vgf.Sendto(LOCATION_CIRCLE,c,0,tp,nil,POS_FACEUP_DEFENSE)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,LOCATION_R_CIRCLE,EFFECT_TYPE_FIELD,EVENT_CUSTOM+EVENT_SUPPORT,cm.operation,cm.cost,cm.condition)
vgd.action.AbilityAuto(c,m,LOCATION_R_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_CUSTOM+EVENT_SUPPORT,cm.operation,cm.cost,cm.condition)
end
-- 你的单位有4个以上的话
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return vgf.IsExistingMatchingCard(nil,tp,LOCATION_CIRCLE+LOCATION_G_CIRCLE,0,4,nil) and eg:GetFirst() == e:GetHandler()
return vgf.IsExistingMatchingCard(nil,tp,LOCATION_CIRCLE,0,4,nil)
end
-- 计数爆发1,能量爆发2
cm.cost=vgf.cost.And(vgf.cost.CounterBlast(1),vgf.cost.EnergyBlast(2))
......
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 起1
vgd.action.AbilityAct(c,m,LOCATION_V_CIRCLE,cm.thop,cm.thcost,nil,nil,1)
-- 起2
vgd.action.AbilityAct(c,m,LOCATION_V_CIRCLE,cm.operation,cm.cost,nil,nil,1)
end
function cm.thfilter(c)
return c:IsCode(m)
end
-- 计数爆发1
cm.thcost=vgf.cost.CounterBlast(1)
-- 从你的牌堆里探寻至多1张与这个单位同名的卡,公开后加入手牌
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.SelectMatchingCard(HINTMSG_ATOHAND,e,tp,cm.thfilter,tp,LOCATION_DECK,0,0,1,nil)
if g:GetCount()>0 then
vgf.Sendto(LOCATION_HAND,g,nil,REASON_EFFECT)
end
-- 这个回合中,这个单位的力量+10000
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.AtkUp(c,c,10000)
end
end
function cm.filter(c,e,tp)
return c:IsLevelBelow(3) and vgf.IsCanBeCalled(c,e,tp)
end
-- 能量爆发4
cm.cost=vgf.cost.EnergyBlast(4)
-- 将你的牌堆顶的2张卡舍弃
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetDecktopGroup(tp,2)
vgf.Sendto(LOCATION_DROP,g,REASON_EFFECT)
-- 选择你的弃牌区中的至多2张等级3以下的单位卡,CALL到R上
local sg=vgf.SelectMatchingCard(HINTMSG_CALL,e,tp,cm.filter,tp,LOCATION_DROP,0,0,2,nil,e,tp)
if g:GetCount()>0 then
vgf.Sendto(LOCATION_CIRCLE,g,0,tp)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 被等级3的含有「克里斯提阿诺斯」的单位RIDE时
vgd.action.AbilityAutoRided(c,m,cm.ridefilter,cm.operation)
-- 盾护+10000
vgd.action.AbilityCont(c,m,LOCATION_G_CIRCLE,EFFECT_TYPE_SINGLE,EFFECT_UPDATE_DEFENSE,10000,cm.powercon)
end
function cm.ridefilter(c)
return c:IsLevel(3) and c:IsSetCard(0x12f)
end
function cm.filter(c,e,tp)
return c:IsLevelBelow(1) and vgf.IsCanBeCalled(c,e,tp)
end
-- 你可以选择你的弃牌区中的1张等级1以下的卡,CALL到R上
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.SelectMatchingCard(HINTMSG_CALL,e,tp,cm.filter,tp,LOCATION_DROP,0,0,1,nil,e,tp)
if g:GetCount()>0 then
vgf.Sendto(LOCATION_CIRCLE,g,0,tp)
end
end
-- 你有等级3以上的含有「克里斯提阿诺斯」的先导者的话
function cm.powercon(e)
local tp=e:GetHandlerPlayer()
local v=vgf.GetVMonster(tp)
return v and v:IsLevelAbove(3) and v:IsSetCard(0x12f)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 被「琳琅盛宴龙」RIDE时
vgd.action.AbilityAutoRided(c,m,20105002,cm.operation)
-- 力量+5000
vgd.action.AbilityCont(c,m,LOCATION_G_CIRCLE,EFFECT_TYPE_SINGLE,EFFECT_UPDATE_ATTACK,5000,cm.powercon)
end
-- 抽2张卡
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,2,REASON_EFFECT)
-- 选择你的手牌中的2张卡,舍弃
local g=vgf.SelectMatchingCard(HINTMSG_DISCARD,e,tp,nil,tp,LOCATION_HAND,0,2,2,nil)
vgf.Sendto(LOCATION_DROP,g,REASON_EFFECT)
end
-- 你的回合中,你有等级3以上的含有「凯旋龙」的先导者的话
function cm.powercon(e)
local tp=e:GetHandlerPlayer()
local v=vgf.GetVMonster(tp)
return Duel.GetTurnPlayer()==tp and v and v:IsLevelAbove(3) and v:IsSetCard(0x12f)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAutoRided(c,m,nil,cm.operation,nil,cm.condition)
end
-- 后攻
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return tp==1 and Duel.GetTurnPlayer()==tp
end
-- 抽1张卡
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,0,EFFECT_TYPE_SINGLE,EVENT_DISCARD,cm.operation,cm.cost,cm.condition)
end
-- 你的RIDE阶段中
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and Duel.GetCurrentPhase()==PHASE_RIDE
end
--灵魂爆发2
cm.cost=vgf.cost.SoulBlast(2)
-- 抽1张卡
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,nil,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,nil,cm.condition)
end
-- 从弃牌区登场到R时,有等级3以上的含有「克里斯提阿诺斯」的先导者的话
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local v=vgf.GetVMonster(tp)
return c:IsPreviousLocation(LOCATION_DROP) and c:IsRideOnRCircle() and v and v:IsLevelAbove(3) and v:IsSetCard(0x12f)
end
-- 这个回合中,这个单位的力量+10000
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.AtkUp(c,c,10000)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,0,EFFECT_TYPE_SINGLE,EVENT_DISCARD,cm.operation,nil,cm.condition)
end
-- 你的RIDE阶段中
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and Duel.GetCurrentPhase()==PHASE_RIDE
end
-- 将这张卡横置CALL到R上
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,0,POS_FACEUP_DEFENSE) then
vgf.Sendto(LOCATION_CIRCLE,c,0,tp,nil,POS_FACEUP_DEFENSE)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,LOCATION_R_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_CUSTOM+EVENT_SUPPORT,cm.operation,cm.cost,cm.condition)
end
-- 你的弃牌区中的卡在10张以上的话
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return vgf.IsExistingMatchingCard(nil,tp,LOCATION_DROP,0,10,nil)
end
-- 计数爆发1,能量爆发2
cm.cost=vgf.cost.And(vgf.cost.CounterBlast(1),vgf.cost.EnergyBlast(2))
-- 抽1张卡,这次战斗中,这个单位的力量+5000
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.effect.Reset(c,vgf.AtkUp(c,c,5000),EVENT_BATTLED)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 被等级3的含有「玛莉蕾恩」的单位RIDE时
vgd.action.AbilityAutoRided(c,m,cm.ridefilter,cm.operation)
-- 盾护+10000
vgd.action.AbilityCont(c,m,LOCATION_G_CIRCLE,EFFECT_TYPE_SINGLE,EFFECT_UPDATE_DEFENSE,10000,cm.powercon)
end
function cm.ridefilter(c)
return c:IsLevel(3) and c:IsSetCard(0x130)
end
-- 你可以选择1张后防者,返回手牌
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.SelectMatchingCard(HINTMSG_ATOHAND,e,tp,nil,tp,LOCATION_R_CIRCLE,0,1,1,nil)
if g:GetCount()>0 and vgf.Sendto(LOCATION_HAND,g,nil,REASON_EFFECT)>0 then
-- 返回了的话,你可以将这张卡CALL到R上
local c=e:GetHandler()
if c:IsRelateToEffect(e) and vgf.IsCanBeCalled(c,e,tp) and Duel.SelectYesNo(tp,vgf.Stringid(m,0)) then
vgf.Sendto(LOCATION_CIRCLE,c,0,tp)
end
end
end
-- 你有等级3以上的含有「玛莉蕾恩」的先导者的话
function cm.powercon(e)
local tp=e:GetHandlerPlayer()
local v=vgf.GetVMonster(tp)
return v and v:IsLevelAbove(3) and v:IsSetCard(0x130)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 被「拼命歌唱的觉悟 露依兹」RIDE时
vgd.action.AbilityAutoRided(c,m,20101002,cm.operation)
-- 力量+5000
vgd.action.AbilityCont(c,m,LOCATION_G_CIRCLE,EFFECT_TYPE_SINGLE,EFFECT_UPDATE_ATTACK,5000,cm.powercon)
end
function cm.filter(c)
return c:IsLevelBelow(2) and c:IsType(TYPE_NORMAL) and vgf.IsCanBeCalled(c,e,tp)
end
function cm.thfilter(c,tc)
return c:IsCode(tc:GetCode())
end
-- 选择你的手牌中的至多1张等级2以下的普通单位卡,CALL到R上
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,0,1,nil,e,tp)
if g:GetCount()>0 and vgf.Sendto(LOCATION_CIRCLE,g,0,tp)>0 then
-- CALL出场了的话,从你的牌堆里探寻至多1张与由于这个能力CALL出场的单位同名的卡,公开后加入手牌
local tc=g:GetFirst()
local sg=vgf.SelectMatchingCard(HINTMSG_ATOHAND,e,tp,cm.thfilter,tp,LOCATION_DECK,0,0,1,nil,tc)
if sg:GetCount()>0 then
vgf.Sendto(LOCATION_HAND,sg,nil,REASON_EFFECT)
end
end
end
-- 你的回合中,你有等级3以上的含有「玛莉蕾恩」的先导者的话
function cm.powercon(e)
local tp=e:GetHandlerPlayer()
local v=vgf.GetVMonster(tp)
return Duel.GetTurnPlayer()==tp and v:IsLevelAbove(3) and v:IsSetCard(0x12a)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAutoRided(c,m,nil,cm.operation,nil,cm.condition)
end
-- 后攻
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return tp==1 and Duel.GetTurnPlayer()==tp
end
-- 抽1张卡
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,0,EFFECT_TYPE_SINGLE,EVENT_DISCARD,cm.operation,cm.cost,cm.condition)
end
-- 你的RIDE阶段中
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and Duel.GetCurrentPhase()==PHASE_RIDE
end
--灵魂爆发2
cm.cost=vgf.cost.SoulBlast(2)
-- 抽1张卡
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,nil,EFFECT_TYPE_SINGLE,EVENT_SPSUMMON_SUCCESS,cm.operation,nil,cm.condition)
end
-- 你的战斗阶段中这个单位登场到R时,有等级3以上的含有「玛莉蕾恩」的先导者的话
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local ph=Duel.GetCurrentPhase()
local v=vgf.GetVMonster(tp)
return Duel.GetTurnPlayer()==tp and ph>=PHASE_BATTLE_START and ph<=PHASE_BATTLE
and v and v:IsLevelAbove(3) and v:IsSetCard(0x130)
and c:IsRideOnRCircle()
end
-- 这个回合中,这个单位的力量+10000
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.AtkUp(c,c,10000)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,0,EFFECT_TYPE_SINGLE,EVENT_DISCARD,cm.operation,nil,cm.condition)
end
-- 你的RIDE阶段中
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and Duel.GetCurrentPhase()==PHASE_RIDE
end
-- 将这张卡横置CALL到R上
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,0,POS_FACEUP_DEFENSE) then
vgf.Sendto(LOCATION_CIRCLE,c,0,tp,nil,POS_FACEUP_DEFENSE)
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
vgd.action.AbilityAuto(c,m,LOCATION_R_CIRCLE,EFFECT_TYPE_SINGLE,EVENT_CUSTOM+EVENT_SUPPORT,cm.operation)
end
function cm.filter(c)
return c:IsFaceup()
end
-- 计数爆发1,能量爆发2
cm.cost=vgf.cost.And(vgf.cost.CounterBlast(1),vgf.cost.EnergyBlast(2))
-- 选择你的3个单位
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local g=vgf.SelectMatchingCard(HINTMSG_RMONSTER,e,tp,cm.filter,tp,LOCATION_R_CIRCLE,0,3,3,nil)
if g:GetClassCount(Card.GetCode)==3 and cm.cost(e,tp,eg,ep,ev,re,r,rp,0)
and Duel.SelectYesNo(tp,vgf.Stringid(m,0)) then
cm.cost(e,tp,eg,ep,ev,re,r,rp,1)
-- 抽1张卡,这次战斗中,这个单位的力量+5000
Duel.Draw(tp,1,REASON_EFFECT)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
vgf.effect.Reset(c,vgf.AtkUp(c,c,5000),EVENT_BATTLED)
end
end
end
\ No newline at end of file
local cm,m,o=GetID()
function cm.initial_effect(c)
-- 通过【费用】[计数爆发1]施放
vgd.action.SetOrder(c,vgf.cost.CounterBlast(1))
-- 你的后防者由于你的等级3以上的含有「阿施笃姆」的单位的能力重置时
vgd.action.AbilityAuto(c,m,LOCATION_ORDER,EFFECT_TYPE_FIELD,EVENT_CUSTOM+20103001,cm.operation,nil,nil,cm.target)
end
function cm.filter(c,e)
return c:IsFaceup() and c:IsRelateToEffect(e)
end
-- 建立联系
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:GetCount()>0 end
Duel.SetTargetCard(eg)
end
-- 这个回合中,所有的那些重置的单位和你的先导者的力量+5000
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local g=eg:Filter(cm.filter,nil,e)
g:AddCard(vgf.GetVMonster(tp))
vgf.AtkUp(e:GetHandler(),g,5000)
end
\ No newline at end of file
......@@ -1484,6 +1484,7 @@ function VgD.Action.AbilityAuto(c, m, loc, typ, code, op, cost, con, tg, count,
typ = (typ or EFFECT_TYPE_SINGLE) + (cost and EFFECT_TYPE_TRIGGER_O or EFFECT_TYPE_TRIGGER_F)
loc, con = VgF.GetLocCondition(loc, con)
typ, code, con = VgF.GetTypCodeCondition(typ, code, con)
-- set effect
local e = Effect.CreateEffect(c)
e:SetDescription(VgF.Stringid(VgID + 1, id or 1))
......@@ -1503,7 +1504,7 @@ end
---【自】这个单位被 Ride 时触发(待更改)
---@param c Card 被Ride的卡
---@param m number|nil 指示脚本的整数。cxxx的脚本应填入xxx。cm的脚本应填入m。
---@param filter number|nil Ride c 的卡
---@param filter number|function|nil Ride c 的卡
---@param op function|nil 这个效果的处理函数
---@param cost function|nil 这个效果的费用函数
---@param con function|nil 这个效果的条件函数
......
......@@ -153,6 +153,17 @@ function VgF.GetLocCondition(loc, con)
return loc or LOCATION_MZONE, condition
end
---检查并转换typ 以及 code 用于【自】能力函数
function VgF.GetTypCodeCondition(typ, code, con)
if bit.band(code, EVENT_CUSTOM) > 0 and bit.band(typ, EFFECT_TYPE_SINGLE) > 0 then
local condition = function(e, tp, eg, ep, ev, re, r, rp)
return (not con or con(e, tp, eg, ep, ev, re, r, rp)) and (not eg or eg:GetFirst() == e:GetHandler())
end
return EFFECT_TYPE_FIELD, code, condition
end
return typ, code, con
end
---返回玩家 p 场上的先导者。
---@param p number 要获取先导者的玩家。不合法则返回nil。
---@return Card|nil p场上的先导者
......@@ -1120,7 +1131,7 @@ end
---@param zone number|nil 指示要Call到的格子。<br>前列的R:17; 后列的R:14; 全部的R:31; V:32
---@param callpos number|nil 表示形式
---@return number Call 成功的数量
function VgF.Call(g, calltyp, p, zone, callpos)
function VgF.Sendto(LOCATION_CIRCLE,g, calltyp, p, zone, callpos)
g = VgF.ReturnGroup(g)
if #g == 0 then return 0 end
local c = g:GetFirst()
......@@ -1133,7 +1144,7 @@ function VgF.Call(g, calltyp, p, zone, callpos)
VgF.Sendto(0, c, p, POS_FACEUP, REASON_EFFECT)
local _, code = c:GetOriginalCode()
c = Duel.CreateToken(p, code)
return VgF.Call(c, calltyp, p, 0x20, callpos)
return VgF.Sendto(LOCATION_CIRCLE,c, calltyp, p, 0x20, callpos)
elseif VgF.GetValueType(zone) == "number" and zone > 0 then
zone = VgF.GetAvailableLocation(p, zone)
if bit.ReturnCount(zone) > 1 then
......
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