Commit 5e5e6208 authored by jwyxym's avatar jwyxym Committed by GitHub

Add files via upload

parent 5f928550
...@@ -12,7 +12,7 @@ function VgD.RideUp(c) ...@@ -12,7 +12,7 @@ function VgD.RideUp(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_PHASE+PHASE_STANDBY) e2:SetCode(EVENT_PHASE_START+PHASE_STANDBY)
e2:SetRange(LOCATION_ALL) e2:SetRange(LOCATION_ALL)
e2:SetCountLimit(1,VgID+1) e2:SetCountLimit(1,VgID+1)
e2:SetCondition(VgD.RideUpCondition) e2:SetCondition(VgD.RideUpCondition)
...@@ -80,6 +80,10 @@ function VgD.RideUpOperation(e,tp,eg,ep,ev,re,r,rp) ...@@ -80,6 +80,10 @@ function VgD.RideUpOperation(e,tp,eg,ep,ev,re,r,rp)
sc:SetMaterial(Group.FromCards(rc)) sc:SetMaterial(Group.FromCards(rc))
Duel.Overlay(sc,Group.FromCards(rc)) Duel.Overlay(sc,Group.FromCards(rc))
VgF.Call(sc,SUMMON_TYPE_RIDE,tp,0x20) VgF.Call(sc,SUMMON_TYPE_RIDE,tp,0x20)
if Duel.IsExistingMatchingCard(Card.IsCode,tp,LOCATION_RIDE,0,1,nil,10400855) then
local tc=Duel.GetMatchingGroup(Card.IsCode,tp,LOCATION_RIDE,0,nil,10400855):GetFirst()
Duel.Sendto(tc,tp,LOCATION_EMBLEM,POS_FACEUP,REASON_EFFECT)
end
elseif sel==0 or (sel==1 and a and b) then elseif sel==0 or (sel==1 and a and b) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CALL) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CALL)
local sg=rg2:Select(tp,1,1,nil) local sg=rg2:Select(tp,1,1,nil)
...@@ -344,8 +348,8 @@ function VgD.SendToGOperation(e,tp,eg,ep,ev,re,r,rp) ...@@ -344,8 +348,8 @@ function VgD.SendToGOperation(e,tp,eg,ep,ev,re,r,rp)
local bc=Duel.GetAttackTarget() local bc=Duel.GetAttackTarget()
if not bc or not VgF.IsAbleToGZone(c) or not c:IsRelateToEffect(e) then return false end if not bc or not VgF.IsAbleToGZone(c) or not c:IsRelateToEffect(e) then return false end
Duel.Sendto(c,tp,LOCATION_GZONE,POS_FACEUP,REASON_EFFECT) Duel.Sendto(c,tp,LOCATION_GZONE,POS_FACEUP,REASON_EFFECT)
local atk=c:GetAttack() local def=c:GetDefense()
VgF.AtkUp(c,bc,atk,nil) VgF.AtkUp(c,bc,def,nil)
end end
function VgD.MonsterAttackAnnounceCondition(e,c) function VgD.MonsterAttackAnnounceCondition(e,c)
return e:GetHandler():IsPosition(POS_DEFENSE) or VgF.IsSequence(e:GetHandler(),1,2,3) return e:GetHandler():IsPosition(POS_DEFENSE) or VgF.IsSequence(e:GetHandler(),1,2,3)
...@@ -670,11 +674,11 @@ function VgD.SpellCostOp(e,tp,eg,ep,ev,re,r,rp,chk,c,mc,num1,num2,num3,num4,num5 ...@@ -670,11 +674,11 @@ function VgD.SpellCostOp(e,tp,eg,ep,ev,re,r,rp,chk,c,mc,num1,num2,num3,num4,num5
Duel.RemoveCounter(tp,1,0,COUNTER_ENERGE,num2,REASON_COST) Duel.RemoveCounter(tp,1,0,COUNTER_ENERGE,num2,REASON_COST)
end end
if num3>0 then if num3>0 then
local g=Duel.GetMatchingGroup(VgF.VMonsterFilter,tp,LOCATION_MZONE,0,mg,c):GetFirst():Filter(Card.IsAbleToGraveAsCost,mg) local g=Duel.GetMatchingGroup(VgF.VMonsterFilter,tp,LOCATION_MZONE,0,nil):GetFirst():GetOverlayGroup():FilterSelect(tp,Card.IsAbleToGraveAsCost,num3,num3,mg)
Duel.SendtoGrave(g,REASON_COST) Duel.SendtoGrave(g,REASON_COST)
end end
if num4>0 then if num4>0 then
local rc=Duel.GetMatchingGroup(VgF.VMonsterFilter,tp,LOCATION_MZONE,0,mg,c):GetFirst() local rc=Duel.GetMatchingGroup(VgF.VMonsterFilter,tp,LOCATION_MZONE,0,nil):GetFirst()
local g=Duel.GetDecktopGroup(tp,num4) local g=Duel.GetDecktopGroup(tp,num4)
Duel.DisableShuffleCheck() Duel.DisableShuffleCheck()
Duel.Overlay(rc,g) Duel.Overlay(rc,g)
...@@ -693,5 +697,5 @@ function VgD.SpellOperation(op) ...@@ -693,5 +697,5 @@ function VgD.SpellOperation(op)
local te=mc:GetActivateEffect() local te=mc:GetActivateEffect()
local op2=te:GetOperation() local op2=te:GetOperation()
if op2 then op2(e,tp,eg,ep,ev,re,r,rp,true) end if op2 then op2(e,tp,eg,ep,ev,re,r,rp,true) end
end end
end end
\ No newline at end of file
...@@ -139,7 +139,7 @@ SUMMON_TYPE_FUSION =0x43000000 --融合召唤 ...@@ -139,7 +139,7 @@ SUMMON_TYPE_FUSION =0x43000000 --融合召唤
SUMMON_TYPE_RITUAL =0x45000000 --仪式召唤 SUMMON_TYPE_RITUAL =0x45000000 --仪式召唤
SUMMON_TYPE_SYNCHRO =0x46000000 --同调召唤 SUMMON_TYPE_SYNCHRO =0x46000000 --同调召唤
SUMMON_TYPE_RIDE =0x49000000 --骑升 SUMMON_TYPE_RIDE =0x49000000 --骑升
SUMMON_TYPE_TRIGGER =0x4a000000 --判定 SUMMON_TYPE_CALL =0x4a000000 --Call到R位
SUMMON_TYPE_LINK =0x4c000000 --连接召唤 SUMMON_TYPE_LINK =0x4c000000 --连接召唤
--Summon Value --特定的召唤方式 --Summon Value --特定的召唤方式
SUMMON_VALUE_SELF =0x1 --自身效果或条件 SUMMON_VALUE_SELF =0x1 --自身效果或条件
......
--能量发生器
local cm,m,o=GetID()
function cm.initial_effect(c)
VgD.Rule(c)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_MOVE)
e1:SetCondition(cm.con1)
e1:SetOperation(cm.op)
c:RegisterEffect(e1)
--[[ local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_PHASE+PHASE_STANDBY)
e2:SetRange(LOCATION_EMBLEM)
e2:SetCountLimit(1)
e2:SetCondition(cm.con2)
e2:SetOperation(cm.op)
c:RegisterEffect(e2)]]
local e3=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_DRAW)
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_EMBLEM)
e3:SetCountLimit(1)
--e3:SetCost(cm.cost3)
e3:SetOperation(cm.op3)
c:RegisterEffect(e3)
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
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)
Duel.Sendto(token,tp,LOCATION_EMBLEM,POS_FACEUP,REASON_EFFECT)
end
end
function cm.con2(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and Duel.GetMatchingGroupCount(Card.IsCode,tp,LOCATION_EMBLEM,0,nil,20401001)<10
end
function cm.op2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if Duel.GetMatchingGroupCount(Card.IsCode,tp,LOCATION_EMBLEM,0,nil,20401001)>=10 then return end
local token=Duel.CreateToken(tp,20401001)
Duel.Sendto(token,tp,LOCATION_EMBLEM,POS_FACEUP,REASON_EFFECT)
end
function cm.cost3(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsCode,tp,LOCATION_EMBLEM,0,1,nil,20401001) end
local g=Duel.SelectMatchingCard(tp,Card.IsCode,tp,LOCATION_EMBLEM,0,1,1,nil,20401001)
Duel.SendtoGrave(g,REASON_COST)
end
function cm.op3(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT)
end
\ No newline at end of file
--能量
function c20401001.initial_effect(c)
end
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