Commit 9dfa0b14 authored by DailyShana's avatar DailyShana

multi attack

parent 86e02349
......@@ -11,7 +11,8 @@ function c19394153.initial_effect(c)
c:RegisterEffect(e1)
end
function c19394153.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetCurrentPhase()==PHASE_MAIN1
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c19394153.filter(c)
return c:IsFaceup() and c:IsCode(21844576)
......@@ -33,7 +34,7 @@ function c19394153.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c19394153.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local ct=Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)
if ct>1 then
local e1=Effect.CreateEffect(e:GetHandler())
......
......@@ -85,7 +85,7 @@ function c21954587.atktg(e,tp,eg,ep,ev,re,r,rp,chk)
end
function c21954587.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and c:IsFaceup() then
if c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
......
......@@ -49,7 +49,8 @@ function c24696097.initial_effect(c)
c:RegisterEffect(e4)
end
function c24696097.mtcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>=5
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP) and Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>=5
end
function c24696097.mtop(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmDecktop(tp,5)
......
......@@ -10,11 +10,16 @@ function c2766877.initial_effect(c)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetCountLimit(1)
e1:SetRange(LOCATION_MZONE)
e1:SetCondition(c2766877.condition)
e1:SetCost(c2766877.cost)
e1:SetTarget(c2766877.target)
e1:SetOperation(c2766877.operation)
c:RegisterEffect(e1)
end
function c2766877.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c2766877.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......@@ -30,7 +35,7 @@ function c2766877.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c2766877.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc and tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
......
......@@ -34,6 +34,7 @@ function c29307554.checkop(e,tp,eg,ep,ev,re,r,rp)
end
function c29307554.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFlagEffect(tp,29307554)~=0 and Duel.GetTurnPlayer()==tp and Duel.GetCurrentPhase()<=PHASE_BATTLE
and Duel.GetTurnCount()~=1 and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c29307554.filter(c)
return c:IsFaceup() and c:IsLevelAbove(8) and c:GetEffectCount(EFFECT_EXTRA_ATTACK)==0
......@@ -46,7 +47,7 @@ function c29307554.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c29307554.activate(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and c29307554.filter(tc) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EXTRA_ATTACK)
......
......@@ -12,7 +12,8 @@ function c29618570.initial_effect(c)
c:RegisterEffect(e1)
end
function c29618570.atkcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetCurrentPhase()==PHASE_MAIN1
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c29618570.atkcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil) end
......
......@@ -6,10 +6,16 @@ function c30299166.initial_effect(c)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1)
e1:SetCondition(c30299166.mtcon)
e1:SetCost(c30299166.mtcost)
e1:SetTarget(c30299166.mttg)
e1:SetOperation(c30299166.mtop)
c:RegisterEffect(e1)
end
function c30299166.mtcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c30299166.costfilter(c)
return c:IsSetCard(0x3e) and c:IsRace(RACE_REPTILE) and c:IsAbleToRemoveAsCost()
end
......@@ -19,9 +25,12 @@ function c30299166.mtcost(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.SelectMatchingCard(tp,c30299166.costfilter,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.Remove(g,POS_FACEUP,REASON_COST)
end
function c30299166.mttg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetEffectCount(EFFECT_EXTRA_ATTACK)==0 end
end
function c30299166.mtop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
if c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EXTRA_ATTACK)
......
......@@ -6,11 +6,16 @@ function c34187685.initial_effect(c)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetLabel(0)
e1:SetCondition(c34187685.condition)
e1:SetCost(c34187685.cost)
e1:SetTarget(c34187685.target)
e1:SetOperation(c34187685.activate)
c:RegisterEffect(e1)
end
function c34187685.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c34187685.cost(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetLabel(1)
return true
......@@ -21,7 +26,7 @@ function c34187685.filter1(c,tp)
and Duel.IsExistingTarget(c34187685.filter2,tp,LOCATION_MZONE,0,1,nil,lv)
end
function c34187685.filter2(c,lv)
return c:IsFaceup() and c:IsLevelBelow(lv-1)
return c:IsFaceup() and c:IsLevelBelow(lv-1) and not c:IsHasEffect(EFFECT_EXTRA_ATTACK)
end
function c34187685.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c34187685.filter2(chkc,e:GetLabel()) end
......@@ -40,7 +45,7 @@ function c34187685.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c34187685.activate(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EXTRA_ATTACK)
......
......@@ -12,7 +12,8 @@ function c38568567.initial_effect(c)
c:RegisterEffect(e1)
end
function c38568567.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetCurrentPhase()==PHASE_MAIN1
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c38568567.cfilter(c)
return c:GetLevel()==4 and c:IsRace(RACE_PLANT) and c:IsAbleToGraveAsCost()
......@@ -47,7 +48,7 @@ function c38568567.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c38568567.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EXTRA_ATTACK)
......
......@@ -6,10 +6,15 @@ function c39389320.initial_effect(c)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1)
e1:SetCondition(c39389320.condition)
e1:SetCost(c39389320.cost)
e1:SetOperation(c39389320.operation)
c:RegisterEffect(e1)
end
function c39389320.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c39389320.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,Card.IsRace,1,e:GetHandler(),RACE_WARRIOR) end
local g=Duel.SelectReleaseGroup(tp,Card.IsRace,1,10,e:GetHandler(),RACE_WARRIOR)
......
......@@ -52,12 +52,15 @@ function c48948935.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,nil,1,tp,LOCATION_DECK)
end
function c48948935.filter(c)
return c:IsCode(22610082) and not c:IsHasEffect(EFFECT_FORBIDDEN)
end
function c48948935.eqop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end
local tc=Duel.GetFirstTarget()
if tc and tc:IsFaceup() and tc:IsRelateToEffect(e) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectMatchingCard(tp,Card.IsCode,tp,LOCATION_DECK,0,1,1,nil,22610082)
local g=Duel.SelectMatchingCard(tp,c48948935.filter,tp,LOCATION_DECK,0,1,1,nil)
local eqc=g:GetFirst()
if not eqc or not Duel.Equip(tp,eqc,tc,true) then return end
local e1=Effect.CreateEffect(e:GetHandler())
......
......@@ -10,6 +10,7 @@ function c50449881.initial_effect(c)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetCountLimit(1)
e1:SetRange(LOCATION_MZONE)
e1:SetCondition(c50449881.condition)
e1:SetCost(c50449881.cost)
e1:SetTarget(c50449881.target)
e1:SetOperation(c50449881.operation)
......@@ -25,6 +26,10 @@ function c50449881.initial_effect(c)
e2:SetValue(1)
c:RegisterEffect(e2)
end
function c50449881.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c50449881.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......@@ -40,7 +45,7 @@ function c50449881.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c50449881.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc and tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
......
......@@ -13,7 +13,8 @@ function c58453942.initial_effect(c)
c:RegisterEffect(e1)
end
function c58453942.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetCurrentPhase()==PHASE_MAIN1
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c58453942.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckLPCost(tp,800) end
......@@ -38,7 +39,7 @@ function c58453942.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
--extra atk
local tc=Duel.GetFirstTarget()
if tc and tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
......
......@@ -72,7 +72,8 @@ function c58820923.rmop(e,tp,eg,ep,ev,re,r,rp)
end
end
function c58820923.atkcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1 and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c58820923.atkcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
......
......@@ -62,6 +62,7 @@ function c68396121.aclimit(e,re,tp)
end
function c68396121.atkcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
and e:GetHandler():GetOverlayGroup():IsExists(Card.IsCode,1,nil,88177324)
end
function c68396121.atkcost(e,tp,eg,ep,ev,re,r,rp,chk)
......
......@@ -23,6 +23,7 @@ function c78835747.initial_effect(c)
e3:SetRange(LOCATION_MZONE)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET)
e3:SetCountLimit(1)
e3:SetCondition(c78835747.condition)
e3:SetTarget(c78835747.target)
e3:SetOperation(c78835747.operation)
c:RegisterEffect(e3)
......@@ -30,6 +31,10 @@ end
function c78835747.atktg(e,c)
return c:IsAttribute(ATTRIBUTE_LIGHT)
end
function c78835747.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c78835747.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_MZONE,0,1,nil) end
......
......@@ -10,11 +10,16 @@ function c82944432.initial_effect(c)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetCountLimit(1)
e1:SetRange(LOCATION_MZONE)
e1:SetCondition(c82944432.condition)
e1:SetCost(c82944432.cost)
e1:SetTarget(c82944432.target)
e1:SetOperation(c82944432.operation)
c:RegisterEffect(e1)
end
function c82944432.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c82944432.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......@@ -30,7 +35,7 @@ function c82944432.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c82944432.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc and tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EXTRA_ATTACK)
......
......@@ -13,7 +13,8 @@ function c86868952.initial_effect(c)
c:RegisterEffect(e1)
end
function c86868952.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetCurrentPhase()==PHASE_MAIN1
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c86868952.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() end
......@@ -42,7 +43,7 @@ function c86868952.ftarget(e,c)
end
function c86868952.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc and tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EXTRA_ATTACK)
......
......@@ -5,11 +5,16 @@ function c87880531.initial_effect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCondition(c87880531.condition)
e1:SetCost(c87880531.cost)
e1:SetTarget(c87880531.target)
e1:SetOperation(c87880531.activate)
c:RegisterEffect(e1)
end
function c87880531.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c87880531.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckLPCost(tp,1000) end
Duel.PayLPCost(tp,1000)
......
......@@ -60,7 +60,8 @@ function c88190790.operation(e,tp,eg,ep,ev,re,r,rp)
end
end
function c88190790.macon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetCurrentPhase()==PHASE_MAIN1
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c88190790.macost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
......
......@@ -10,11 +10,16 @@ function c88942504.initial_effect(c)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1)
e1:SetCondition(c88942504.condition)
e1:SetCost(c88942504.cost)
e1:SetTarget(c88942504.target)
e1:SetOperation(c88942504.operation)
c:RegisterEffect(e1)
end
function c88942504.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c88942504.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......@@ -30,7 +35,7 @@ function c88942504.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c88942504.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc and tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
......
......@@ -5,12 +5,17 @@ function c89914395.initial_effect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCondition(c89914395.condition)
e1:SetTarget(c89914395.target)
e1:SetOperation(c89914395.operation)
c:RegisterEffect(e1)
end
function c89914395.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()<=PHASE_BATTLE
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c89914395.filter(c)
return c:IsFaceup() and c:IsSetCard(0x4b)
return c:IsFaceup() and c:IsSetCard(0x4b) and not c:IsHasEffect(EFFECT_EXTRA_ATTACK)
end
function c89914395.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c89914395.filter(chkc) end
......@@ -20,7 +25,7 @@ function c89914395.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c89914395.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EXTRA_ATTACK)
......
......@@ -5,11 +5,16 @@ function c90470931.initial_effect(c)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCondition(c90470931.condition)
e1:SetCost(c90470931.cost)
e1:SetTarget(c90470931.target)
e1:SetOperation(c90470931.operation)
c:RegisterEffect(e1)
end
function c90470931.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c90470931.cost(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetLabel(1)
return true
......@@ -34,7 +39,7 @@ end
function c90470931.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EXTRA_ATTACK)
......
......@@ -10,6 +10,7 @@ function c91499077.initial_effect(c)
e1:SetCountLimit(1)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetRange(LOCATION_MZONE)
e1:SetCondition(c91499077.atcon)
e1:SetCost(c91499077.atcost)
e1:SetTarget(c91499077.attg)
e1:SetOperation(c91499077.atop)
......@@ -24,6 +25,10 @@ function c91499077.initial_effect(c)
e2:SetOperation(c91499077.cbop)
c:RegisterEffect(e2)
end
function c91499077.atcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c91499077.atcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......@@ -39,7 +44,7 @@ function c91499077.attg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c91499077.atop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EXTRA_ATTACK)
......
......@@ -13,14 +13,15 @@ function c95943058.initial_effect(c)
c:RegisterEffect(e1)
end
function c95943058.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetCurrentPhase()==PHASE_MAIN1
return Duel.GetTurnCount()~=1 and Duel.GetCurrentPhase()==PHASE_MAIN1
and not Duel.IsPlayerAffectedByEffect(tp,EFFECT_CANNOT_BP)
end
function c95943058.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToRemoveAsCost() end
Duel.Remove(e:GetHandler(),POS_FACEUP,REASON_COST)
end
function c95943058.filter(c)
return c:IsFaceup() and c:IsRace(RACE_FIEND)
return c:IsFaceup() and c:IsRace(RACE_FIEND) and not c:IsHasEffect(EFFECT_EXTRA_ATTACK)
end
function c95943058.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c95943058.filter(chkc) end
......@@ -32,7 +33,7 @@ function c95943058.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
--extra atk
local tc=Duel.GetFirstTarget()
if tc and tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
......
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