Commit 50b9fe9f authored by Tachibana's avatar Tachibana

1145141919810

parent 0b48380e
Pipeline #14659 passed with stages
in 31 minutes and 5 seconds
expansions/pics/33200009.jpg

68.1 KB | W: | H:

expansions/pics/33200009.jpg

69.4 KB | W: | H:

expansions/pics/33200009.jpg
expansions/pics/33200009.jpg
expansions/pics/33200009.jpg
expansions/pics/33200009.jpg
  • 2-up
  • Swipe
  • Onion skin
...@@ -39,7 +39,7 @@ function cm.initial_effect(c) ...@@ -39,7 +39,7 @@ function cm.initial_effect(c)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetCountLimit(1) e4:SetCountLimit(1)
e4:SetCondition(cm.descon) e4:SetCondition(cm.descon)
e1:SetCost(cm.cost) e4:SetCost(cm.descost)
e4:SetTarget(cm.destg) e4:SetTarget(cm.destg)
e4:SetOperation(cm.desop) e4:SetOperation(cm.desop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
...@@ -107,7 +107,7 @@ end ...@@ -107,7 +107,7 @@ end
function cm.descon(e) function cm.descon(e)
return e:GetHandler():GetFlagEffect(m)>0 return e:GetHandler():GetFlagEffect(m)>0
end end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.descost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,2,REASON_COST) end if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,2,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,2,2,REASON_COST) e:GetHandler():RemoveOverlayCard(tp,2,2,REASON_COST)
end end
......
...@@ -65,6 +65,7 @@ end ...@@ -65,6 +65,7 @@ end
function cm.desop(e,tp,eg,ep,ev,re,r,rp) function cm.desop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
local c=e:GetHandler() local c=e:GetHandler()
local ec=e:GetHandler():GetEquipTarget()
if e:GetHandler():IsRelateToEffect(e) and tc:IsRelateToEffect(e) and tc:IsFaceup() then if e:GetHandler():IsRelateToEffect(e) and tc:IsRelateToEffect(e) and tc:IsFaceup() then
local ct=tama.cosmicBattleship_getCoreLevel(ec) local ct=tama.cosmicBattleship_getCoreLevel(ec)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
......
...@@ -68,7 +68,7 @@ end ...@@ -68,7 +68,7 @@ end
--e2 --e2
function c33200958.thfilter(c) function c33200958.thfilter(c)
return c:IsSetCard(0x632a) and c:IsAbleToHand() return c:IsSetCard(0x632a) and c:IsAbleToHand() and not c:IsCode(33200958)
end end
function c33200958.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function c33200958.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c33200958.thfilter,tp,LOCATION_DECK,0,1,nil) and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_DECK,0,1,e:GetHandler()) end if chk==0 then return Duel.IsExistingMatchingCard(c33200958.thfilter,tp,LOCATION_DECK,0,1,nil) and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_DECK,0,1,e:GetHandler()) end
......
...@@ -6,16 +6,22 @@ function cm.initial_effect(c) ...@@ -6,16 +6,22 @@ function cm.initial_effect(c)
e1:SetCategory(CATEGORY_REMOVE+CATEGORY_DAMAGE) e1:SetCategory(CATEGORY_REMOVE+CATEGORY_DAMAGE)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCondition(cm.condition)
e1:SetTarget(cm.target) e1:SetTarget(cm.target)
e1:SetOperation(cm.activate) e1:SetOperation(cm.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
Debug.Message(Duel.GetTurnCount())
return Duel.GetTurnCount()>=3
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
local check1=Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_SZONE,LOCATION_SZONE,1,nil) local check1=Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_SZONE,LOCATION_SZONE,1,nil)
local check2=Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) or e:GetHandler():IsLocation(LOCATION_HAND) local check2=Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) or e:GetHandler():IsLocation(LOCATION_HAND)
local check3=Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil) local check3=Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil)
local check4=Duel.GetDecktopGroup(tp,15):FilterCount(Card.IsAbleToRemove,nil)==15 and Duel.GetDecktopGroup(1-tp,15):FilterCount(Card.IsAbleToRemove,nil)==15 local check4=Duel.GetDecktopGroup(tp,15):FilterCount(Card.IsAbleToRemove,nil)==15 and Duel.GetDecktopGroup(1-tp,15):FilterCount(Card.IsAbleToRemove,nil)==15
if chk==0 then return (check1 or check2 or check3 or check4) and Duel.GetLP(tp)>=4000 end if chk==0 then return (check1 or check2 or check3 or check4) and Duel.GetLP(tp)>=4000 end
Duel.SetChainLimit(aux.FALSE)
end end
function cm.activate(e,tp,eg,ep,ev,re,r,rp) function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local g1=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_SZONE,LOCATION_SZONE,nil) local g1=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_SZONE,LOCATION_SZONE,nil)
......
...@@ -35,13 +35,13 @@ function cm.initial_effect(c) ...@@ -35,13 +35,13 @@ function cm.initial_effect(c)
e4:SetProperty(EFFECT_FLAG_DELAY) e4:SetProperty(EFFECT_FLAG_DELAY)
e4:SetCountLimit(1,m+1) e4:SetCountLimit(1,m+1)
e4:SetCode(EVENT_DESTROYED) e4:SetCode(EVENT_DESTROYED)
e4:SetCondition(cm.thcon) e4:SetCondition(cm.thcon2)
e4:SetTarget(cm.thtg) e4:SetTarget(cm.thtg2)
e4:SetOperation(cm.thop) e4:SetOperation(cm.thop2)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() end if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() and e:GetHandler():GetFlagEffect(m)==0 end
Duel.SendtoGrave(e:GetHandler(),REASON_COST) Duel.SendtoGrave(e:GetHandler(),REASON_COST)
end end
function cm.tgtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.tgtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
...@@ -83,7 +83,7 @@ function cm.activate2(e,tp,eg,ep,ev,re,r,rp) ...@@ -83,7 +83,7 @@ function cm.activate2(e,tp,eg,ep,ev,re,r,rp)
end end
function cm.discon(e,tp,eg,ep,ev,re,r,rp) function cm.discon(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject() local tc=e:GetLabelObject()
return re:GetHandler():IsOriginalCodeRule(tc:GetOriginalCodeRule()) return re:GetHandler():IsOriginalCodeRule(tc:GetOriginalCodeRule()) and re:GetHandlerPlayer()~=e:GetHandlerPlayer()
end end
function cm.disop(e,tp,eg,ep,ev,re,r,rp) function cm.disop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetOwner() local c=e:GetOwner()
...@@ -94,7 +94,7 @@ function cm.disop(e,tp,eg,ep,ev,re,r,rp) ...@@ -94,7 +94,7 @@ function cm.disop(e,tp,eg,ep,ev,re,r,rp)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_LEAVE_FIELD_REDIRECT) e1:SetCode(EFFECT_LEAVE_FIELD_REDIRECT)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_REDIRECT) e1:SetReset(RESET_EVENT+RESETS_REDIRECT+RESET_PHASE+PHASE_END+RESET_SELF_TURN)
e1:SetValue(LOCATION_REMOVED) e1:SetValue(LOCATION_REMOVED)
c:RegisterEffect(e1,true) c:RegisterEffect(e1,true)
c:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END+RESET_SELF_TURN,0,1) c:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END+RESET_SELF_TURN,0,1)
...@@ -103,20 +103,20 @@ function cm.disop(e,tp,eg,ep,ev,re,r,rp) ...@@ -103,20 +103,20 @@ function cm.disop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.thcon(e,tp,eg,ep,ev,re,r,rp) function cm.thcon2(e,tp,eg,ep,ev,re,r,rp)
return bit.band(r,REASON_EFFECT+REASON_BATTLE)~=0 and e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD) return bit.band(r,REASON_EFFECT+REASON_BATTLE)~=0 and e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD)
end end
function cm.thfilter(c,ec) function cm.thfilter2(c,ec)
return c:IsCode(35700103) and c:IsAbleToHand() return c:IsCode(35700103) and c:IsAbleToHand()
end end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.thtg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_GRAVE,0,1,nil,e:GetHandler()) end if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter2,tp,LOCATION_GRAVE,0,1,nil,e:GetHandler()) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_GRAVE) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_GRAVE)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,nil,1,tp,LOCATION_GRAVE) Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,nil,1,tp,LOCATION_GRAVE)
end end
function cm.thop(e,tp,eg,ep,ev,re,r,rp) function cm.thop2(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,cm.thfilter,tp,LOCATION_GRAVE,0,1,1,nil,e:GetHandler()) local g=Duel.SelectMatchingCard(tp,cm.thfilter2,tp,LOCATION_GRAVE,0,1,1,nil,e:GetHandler())
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.SendtoHand(g,nil,REASON_EFFECT)
end 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