Commit 5765a831 authored by 聖園ミカ's avatar 聖園ミカ 🐟

vme50

parent f03a275c
......@@ -49,14 +49,6 @@ function Sr_skyland.speffect(c,code)
e2:SetRange(LOCATION_GRAVE)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCountLimit(1,code+300)
if code==12066010 then
e2:SetCondition(Sr_skyland.spcon1)
elseif code==12066011 then
e2:SetCondition(Sr_skyland.spcon2)
elseif code==12066012 then
e2:SetCondition(Sr_skyland.spcon3)
end
e2:SetCondition(c.spcon)
e2:SetTarget(Sr_skyland.sptg)
e2:SetOperation(Sr_skyland.spop)
c:RegisterEffect(e2)
......@@ -82,40 +74,22 @@ function Sr_skyland.spellop(e,tp,eg,ep,ev,re,r,rp)
Duel.SendtoHand(tc,nil,REASON_EFFECT)
end
end
function Sr_skyland.conffil1(c,tp)
return c:GetSummonPlayer()==tp and c:IsPreviousLocation(LOCATION_EXTRA) and c:IsRank(1)
end
function Sr_skyland.spcon1(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(Sr_skyland.conffil1,1,nil,tp)
end
function Sr_skyland.conffil2(c,tp)
return c:GetSummonPlayer()==tp and c:IsPreviousLocation(LOCATION_EXTRA) and c:IsLevel(1)
end
function Sr_skyland.spcon2(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(Sr_skyland.conffil2,1,nil,tp)
end
function Sr_skyland.conffil3(c,tp)
return c:GetSummonPlayer()==tp and c:IsPreviousLocation(LOCATION_EXTRA) and c:IsLink(1)
end
function Sr_skyland.spcon3(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(Sr_skyland.conffil3,1,nil,tp)
end
function Sr_skyland.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
local c=e:GetHandler()
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,0,0)
end
function Sr_skyland.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.SpecialSummonStep(c,0,tp,tp,false,false,POS_FACEUP) then
if c:IsRelateToEffect(e) then
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetValue(2000)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
e1:SetValue(2000)
c:RegisterEffect(e1,true)
end
Duel.SpecialSummonComplete()
end
function Sr_skyland.commoneffect_filter(c)
return srre.check_set_SkyLand(c) and c:IsAbleToGraveAsCost()
......@@ -136,7 +110,7 @@ function Sr_skyland.commoneffect_spop(e,tp,eg,ep,ev,re,r,rp,c)
if Duel.IsExistingMatchingCard(Sr_skyland.commoneffect_filter,tp,LOCATION_HAND,0,1,nil) and Duel.IsExistingMatchingCard(Sr_skyland.exfilter,tp,LOCATION_MZONE,0,1,nil) then
if Duel.SelectYesNo(tp,aux.Stringid(12066012,2)) then
local g=Duel.GetMatchingGroup(Sr_skyland.exfilter,tp,LOCATION_MZONE,0,nil)
if #g>0 then
if #g>1 then
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(12066012,3))
local tg=g:Select(tp,1,1,nil)
tg:GetFirst():RemoveOverlayCard(tp,1,1,REASON_COST)
......@@ -156,7 +130,7 @@ function Sr_skyland.commoneffect_spop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.SendtoGrave(g,REASON_COST+REASON_DISCARD)
elseif Duel.IsExistingMatchingCard(Sr_skyland.exfilter,tp,LOCATION_MZONE,0,1,nil) then
local g=Duel.GetMatchingGroup(Sr_skyland.exfilter,tp,LOCATION_MZONE,0,nil)
if #g>0 then
if #g>1 then
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(12066012,3))
local tg=g:Select(tp,1,1,nil)
tg:GetFirst():RemoveOverlayCard(tp,1,1,REASON_COST)
......@@ -176,7 +150,7 @@ function Sr_skyland.commoneffect_spop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.RegisterEffect(e1,tp)
end
function Sr_skyland.splimit1(e,c,tp,sumtp,sumpos)
return not c:IsLevel(1) and not c:IsLocation(LOCATION_EXTRA)
return not c:IsLocation(LOCATION_EXTRA) and not c:IsLevel(1)
end
--天境 机动腕的卡雷
if not cm then return end
......
......@@ -29,9 +29,11 @@ function cm.initial_effect(c)
c:RegisterEffect(e8)
local e3=Sr_skyland.speffect(c,m)
e3:SetCondition(cm.spcon)
c:RegisterEffect(e3)
end
function cm.conffil(c,tp)
return c:GetSummonPlayer()==tp and c:IsPreviousLocation(LOCATION_EXTRA) and c:IsRank(1)
return c:IsSummonPlayer(tp) and c:IsPreviousLocation(LOCATION_EXTRA) and c:IsRank(1)
end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.conffil,1,nil,tp)
......
......@@ -20,9 +20,11 @@ function cm.initial_effect(c)
c:RegisterEffect(e2)
local e3=Sr_skyland.speffect(c,m)
e3:SetCondition(cm.spcon)
c:RegisterEffect(e3)
end
function cm.conffil(c,tp)
return c:GetSummonPlayer()==tp and c:IsPreviousLocation(LOCATION_EXTRA) and c:IsLevel(1)
return c:IsSummonPlayer(tp) and c:IsPreviousLocation(LOCATION_EXTRA) and c:IsLevel(1)
end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.conffil,1,nil,tp)
......@@ -35,7 +37,7 @@ function cm.thfilter(c)
end
function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToDeckAsCost,tp,LOCATION_HAND,0,1,nil) end
td=Duel.SelectMatchingCard(tp,Card.IsAbleToDeckAsCost,tp,LOCATION_HAND,0,1,1,nil)
local td=Duel.SelectMatchingCard(tp,Card.IsAbleToDeckAsCost,tp,LOCATION_HAND,0,1,1,nil)
Duel.SendtoDeck(td,nil,1,REASON_COST)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
......
......@@ -10,7 +10,7 @@ function cm.initial_effect(c)
--special summon (hand)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_TOGRAVE)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DELAY)
......@@ -21,12 +21,14 @@ function cm.initial_effect(c)
c:RegisterEffect(e1)
--
local e3=Sr_skyland.speffect(c,m)
e3:SetCondition(cm.spcon)
c:RegisterEffect(e3)
end
function cm.mfilter(c,e,tp)
return srre.check_set_SkyLand(c)
end
function cm.conffil(c,tp)
return c:GetSummonPlayer()==tp and c:IsPreviousLocation(LOCATION_EXTRA) and c:IsLink(1)
return c:IsSummonPlayer(tp) and c:IsPreviousLocation(LOCATION_EXTRA) and c:IsLink(1)
end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.conffil,1,nil,tp)
......
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