Commit 05339258 authored by wyykak's avatar wyykak

repair sp monsters

Signed-off-by: wyykak's avatarwyykak <wyy_1414@126.com>
parent b6dc4748
No preview for this file type
No preview for this file type
--猎梦者✿Huitloxopetl
function c16000006.initial_effect(c)
c:EnableReviveLimit()
--atk
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
......@@ -42,6 +41,13 @@ function c16000006.initial_effect(c)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e3:SetValue(c16000006.synlimit)
c:RegisterEffect(e3)
--spcon
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(function(e,se,sp,st) return se:IsHasType(EFFECT_TYPE_ACTIONS) end)
c:RegisterEffect(e0)
end
function c16000006.value(e,c)
return c:GetLevel()*300
......@@ -116,13 +122,13 @@ function c16000006.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.Remove(rc,POS_FACEUP,REASON_COST)
end
function c16000006.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetMZoneCount(tp)>0 and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,true,true) end
if chk==0 then return Duel.GetMZoneCount(tp)>0 and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function c16000006.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,true,true,POS_FACEUP)>0 then
c:CompleteProcedure()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)>0 then
--c:CompleteProcedure()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_LEVEL)
......
--秘封 宇佐见莲子
function c28011.initial_effect(c)
c:EnableReviveLimit()
--special summon
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(28011,0))
......@@ -33,6 +32,13 @@ function c28011.initial_effect(c)
e4:SetTarget(c28011.stg)
e4:SetOperation(c28011.sop)
c:RegisterEffect(e4)
--spcon
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(function(e,se,sp,st) return se:IsHasType(EFFECT_TYPE_ACTIONS) end)
c:RegisterEffect(e0)
end
function c28011.rfilter(c)
return c:IsSetCard(0x211) and c:IsAbleToRemoveAsCost()
......@@ -45,14 +51,14 @@ function c28011.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function c28011.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,true,true) end
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function c28011.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,true,true,POS_FACEUP)>0 then
c:CompleteProcedure()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)>0 then
--c:CompleteProcedure()
end
end
function c28011.cfilter(c)
......
--秘封 玛艾里贝莉·哈恩
function c28016.initial_effect(c)
c:EnableReviveLimit()
--special summon
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(28016,0))
......@@ -38,6 +37,13 @@ function c28016.initial_effect(c)
e4:SetTarget(c28016.stg)
e4:SetOperation(c28016.sop)
c:RegisterEffect(e4)
--spcon
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(function(e,se,sp,st) return se:IsHasType(EFFECT_TYPE_ACTIONS) end)
c:RegisterEffect(e0)
end
function c28016.costfilter(c)
return c:IsSetCard(0x211) and c:IsAbleToGraveAsCost() and c:IsFaceup()
......@@ -50,14 +56,14 @@ function c28016.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function c28016.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,true,true) end
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function c28016.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,true,true,POS_FACEUP)>0 then
c:CompleteProcedure()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)>0 then
--c:CompleteProcedure()
end
end
function c28016.condition(e,tp,eg,ep,ev,re,r,rp)
......
--✿少女秘封俱乐部✿
function c28050.initial_effect(c)
c:EnableReviveLimit()
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(28050,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_REMOVE+CATEGORY_ATKCHANGE)
......@@ -10,6 +9,13 @@ function c28050.initial_effect(c)
e1:SetTarget(c28050.tg1)
e1:SetOperation(c28050.op1)
c:RegisterEffect(e1)
--spcon
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(function(e,se,sp,st) return se:IsHasType(EFFECT_TYPE_ACTIONS) end)
c:RegisterEffect(e0)
end
function c28050.cfilter1_1(c,tp)
return c:IsSetCard(0xc211) and Duel.CheckReleaseGroup(tp,c28050.cfilter1_2,1,c)
......@@ -31,7 +37,7 @@ function c28050.tfilter1(c)
end
function c28050.tg1(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsCanBeSpecialSummoned(e,0,tp,true,false)
if chk==0 then return c:IsCanBeSpecialSummoned(e,0,tp,false,false)
and Duel.IsExistingMatchingCard(c28050.tfilter1,tp,LOCATION_HAND+LOCATION_ONFIELD,LOCATION_HAND+LOCATION_ONFIELD,1,c) end
local sg=Duel.GetMatchingGroup(c28050.tfilter1,tp,LOCATION_HAND+LOCATION_ONFIELD,LOCATION_HAND+LOCATION_ONFIELD,c)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,0,0)
......@@ -44,8 +50,8 @@ end
function c28050.op1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end
if Duel.SpecialSummon(c,0,tp,tp,true,false,POS_FACEUP)~=0 then
c:CompleteProcedure()
if Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)~=0 then
--c:CompleteProcedure()
local ug=Duel.GetMatchingGroup(aux.TRUE,tp,0x33,0x33,nil):RandomSelect(tp,4,true)
if ug:RandomSelect(tp,1,true):IsContains(ug:GetFirst()) then
Duel.Hint(21,0,aux.Stringid(28050,4))
......
......@@ -2,7 +2,6 @@
local Cardno=74560007
local cCardno=_G["c"..Cardno]
function cCardno.initial_effect(c)
c:EnableReviveLimit()
--cannot xyz
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
......@@ -53,6 +52,13 @@ function cCardno.initial_effect(c)
local e9=e10:Clone()
e9:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e9)
--spcon
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(function(e,se,sp,st) return se:IsHasType(EFFECT_TYPE_ACTIONS) end)
c:RegisterEffect(e0)
end
--atk
function cCardno.val(e,c)
......@@ -66,7 +72,7 @@ end
function cCardno.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
local m=Duel.GetMatchingGroupCount(cCardno.spfilter,tp,LOCATION_ONFIELD+LOCATION_HAND,LOCATION_ONFIELD,c,tp)
if chk==0 then return m>=3 and c:IsCanBeSpecialSummoned(e,0,tp,true,true) end
if chk==0 then return m>=3 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
local g=Duel.SelectMatchingCard(tp,cCardno.spfilter,tp,LOCATION_ONFIELD+LOCATION_HAND,LOCATION_ONFIELD,3,m,c,tp)
e:SetLabel(g:GetCount())
Duel.SetTargetCard(g)
......@@ -77,14 +83,14 @@ function cCardno.spop(e,tp,eg,ep,ev,re,r,rp)
local m=e:GetLabel()
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
Debug.Message(m)
if Duel.GetMZoneCount(tp,g)<=0 or not c:IsCanBeSpecialSummoned(e,0,tp,true,true) or not c:IsRelateToEffect(e) then return end
if Duel.GetMZoneCount(tp,g)<=0 or not c:IsCanBeSpecialSummoned(e,0,tp,false,false) or not c:IsRelateToEffect(e) then return end
local tg=g:Filter(Card.IsRelateToEffect,nil,e)
if Duel.Destroy(tg,REASON_EFFECT)>0 then
tg:Sub(tg:Filter(Card.IsLocation,nil,LOCATION_ONFIELD))
Duel.Remove(tg,POS_FACEDOWN,REASON_EFFECT)
end
if Duel.SpecialSummon(c,0,tp,tp,true,true,POS_FACEUP)>0 then
c:CompleteProcedure()
if Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)>0 then
--c:CompleteProcedure()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SET_BASE_ATTACK)
......
......@@ -50,14 +50,14 @@ function cCardno.rbcost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function cCardno.rbtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,true,true) end
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,tp,LOCATION_GRAVE)
end
function cCardno.rbop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
local c=e:GetHandler()
local tc = Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,true,true,POS_FACEUP)>0 then
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)>0 then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_LEVEL)
......@@ -86,7 +86,7 @@ end
function cCardno.cptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local c=e:GetHandler()
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and cCardno.cpfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(cCardno.cpfilter,tp,LOCATION_MZONE,0,1,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,true,true) end
if chk==0 then return Duel.IsExistingTarget(cCardno.cpfilter,tp,LOCATION_MZONE,0,1,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,cCardno.cpfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,tp,LOCATION_HAND)
......@@ -95,7 +95,7 @@ function cCardno.cpop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
local c=e:GetHandler()
local tc = Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,true,true,POS_FACEUP)>0 then
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)>0 then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_LEVEL)
......
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