Commit dba54e1a authored by mercury233's avatar mercury233

update new cards

parent 54660c5e
#created by ... #created by ...
#main #main
101102016
101102017
101102060
101102075
101102009
101102054
101102064
101102079
101102063
100269001 100269001
100415024 100415024
100415025 100415025
...@@ -24,65 +15,11 @@ ...@@ -24,65 +15,11 @@
100415036 100415036
100311002 100311002
100311003 100311003
101102006
101102007
101102008
101102010
101102011
101102012
101102013
101102030
101102052
101102053
101102055
101102056
101102070
101102071
101102072
100311001 100311001
100311026 100311026
101102001
101102002
101102003
101102004
101102005
101102014
101102015
101102018
101102019
101102051
101102057
101102058
101102059
101102061
101102062
101102068
101102069
101102073
101102074
#extra #extra
101102037
101102040
101102044
101102045
101102031
101102050
101102035
101102036
101102039
101102042
101102043
101102046
101102047
101102048
!side
101102076
101102049
100311051 100311051
101102032 !side
101102033
101102034
101102041
100267001 100267001
100267002 100267002
100267003 100267003
......
#created by ...
#main
101102001
101102002
101102003
101102004
101102005
101102006
101102007
101102008
101102009
101102010
101102011
101102012
101102013
101102014
101102015
101102016
101102017
101102018
101102019
101102020
101102021
101102022
101102023
101102024
101102025
101102026
101102027
101102028
101102029
101102030
101102051
101102052
101102053
101102054
101102055
101102056
101102057
101102058
101102059
101102060
101102061
101102062
101102063
101102064
101102065
101102066
101102067
101102068
101102069
101102070
101102071
101102072
101102073
101102074
101102075
101102076
101102077
101102078
101102079
101102080
#extra
101102031
101102032
101102033
101102034
101102035
101102036
101102037
101102038
101102039
101102040
101102041
101102042
101102043
101102044
101102045
!side
101102046
101102047
101102048
101102049
101102050
...@@ -35,7 +35,7 @@ function c101102017.spcon(e,c) ...@@ -35,7 +35,7 @@ function c101102017.spcon(e,c)
return Duel.IsExistingMatchingCard(c101102017.spfilter,tp,LOCATION_HAND,0,1,c) return Duel.IsExistingMatchingCard(c101102017.spfilter,tp,LOCATION_HAND,0,1,c)
end end
function c101102017.spop(e,tp,eg,ep,ev,re,r,rp,c) function c101102017.spop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISCARD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c101102017.spfilter,tp,LOCATION_HAND,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c101102017.spfilter,tp,LOCATION_HAND,0,1,1,c)
Duel.SendtoGrave(g,REASON_COST) Duel.SendtoGrave(g,REASON_COST)
end end
......
--機巧牙-御神尊真神
--Scripted by mallu11
function c101102022.initial_effect(c)
--summon with no tribute
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(101102022,0))
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SUMMON_PROC)
e1:SetCondition(c101102022.ntcon)
c:RegisterEffect(e1)
--to hand
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(101102022,1))
e2:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_SUMMON_SUCCESS)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCountLimit(1,101102022)
e2:SetCost(c101102022.thcost)
e2:SetTarget(c101102022.thtg)
e2:SetOperation(c101102022.thop)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e3)
--to deck
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(101102022,2))
e4:SetCategory(CATEGORY_TODECK)
e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e4:SetCode(EVENT_DESTROYED)
e4:SetProperty(EFFECT_FLAG_DELAY)
e4:SetCountLimit(1,101102122)
e4:SetCondition(c101102022.tdcon)
e4:SetTarget(c101102022.tdtg)
e4:SetOperation(c101102022.tdop)
c:RegisterEffect(e4)
end
function c101102022.ntcon(e,c,minc)
if c==nil then return true end
return minc==0 and c:IsLevelAbove(5) and Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(nil,c:GetControler(),LOCATION_REMOVED,0,6,nil)
end
function c101102022.costfilter(c)
return c:IsType(TYPE_MONSTER) and c:IsDiscardable()
end
function c101102022.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c101102022.costfilter,tp,LOCATION_HAND,0,1,nil) end
Duel.DiscardHand(tp,c101102022.costfilter,1,1,REASON_COST+REASON_DISCARD,nil)
end
function c101102022.thfilter(c)
return c:GetAttack()>=0 and c:GetAttack()==c:GetDefense() and not c:IsCode(101102022) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end
function c101102022.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c101102022.thfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function c101102022.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c101102022.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if #g>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
function c101102022.tdcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsPreviousLocation(LOCATION_MZONE)
end
function c101102022.tdtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_REMOVED,0,6,nil) end
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,6,tp,LOCATION_REMOVED)
end
function c101102022.tdop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToDeck,tp,LOCATION_REMOVED,0,6,6,nil)
if #g==6 then
Duel.SendtoDeck(g,nil,2,REASON_EFFECT)
end
end
...@@ -35,7 +35,7 @@ end ...@@ -35,7 +35,7 @@ end
function c101102037.distg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c101102037.distg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and aux.disfilter1(chkc) end if chkc then return chkc:IsOnField() and aux.disfilter1(chkc) end
if chk==0 then return Duel.IsExistingTarget(aux.disfilter1,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingTarget(aux.disfilter1,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISABLE)
local g=Duel.SelectTarget(tp,aux.disfilter1,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil) local g=Duel.SelectTarget(tp,aux.disfilter1,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DISABLE,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DISABLE,g,1,0,0)
end end
......
--焔聖騎士将-オリヴィエ
--Scripted by mallu11
function c101102038.initial_effect(c)
--synchro summon
aux.AddSynchroProcedure(c,nil,aux.NonTuner(nil),1)
c:EnableReviveLimit()
--destroy
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(101102038,0))
e1:SetCategory(CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_ATTACK_ANNOUNCE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCondition(c101102038.descon)
e1:SetTarget(c101102038.destg)
e1:SetOperation(c101102038.desop)
c:RegisterEffect(e1)
--spsummon
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(101102038,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_EQUIP)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,101102038)
e2:SetCondition(aux.exccon)
e2:SetTarget(c101102038.sptg)
e2:SetOperation(c101102038.spop)
c:RegisterEffect(e2)
end
function c101102038.descon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetEquipCount()>0
end
function c101102038.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
end
function c101102038.desop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.Destroy(tc,REASON_EFFECT)
end
end
function c101102038.eqfilter(c)
return c:IsFaceup() and c:IsRace(RACE_WARRIOR)
end
function c101102038.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local c=e:GetHandler()
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c101102038.eqfilter(chkc) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingTarget(c101102038.eqfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectTarget(tp,c101102038.eqfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,g,1,0,0)
end
function c101102038.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) then
local res=Duel.SpecialSummonStep(c,0,tp,tp,false,false,POS_FACEUP)
if res then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_ADD_TYPE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetValue(TYPE_TUNER)
c:RegisterEffect(e1)
end
Duel.SpecialSummonComplete()
if res and tc:IsRelateToEffect(e) and tc:IsControler(tp) then
if not Duel.Equip(tp,tc,c,false) then return end
--equip limit
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_OWNER_RELATE)
e2:SetCode(EFFECT_EQUIP_LIMIT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
e2:SetLabelObject(c)
e2:SetValue(c101102038.eqlimit)
tc:RegisterEffect(e2)
--atk up
local e3=Effect.CreateEffect(tc)
e3:SetType(EFFECT_TYPE_EQUIP)
e3:SetCode(EFFECT_UPDATE_ATTACK)
e3:SetValue(500)
e3:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e3)
end
end
end
function c101102038.eqlimit(e,c)
return c==e:GetLabelObject()
end
...@@ -29,7 +29,7 @@ function c101102040.filter(c,e,tp,mc) ...@@ -29,7 +29,7 @@ function c101102040.filter(c,e,tp,mc)
end end
function c101102040.target(e,tp,eg,ep,ev,re,r,rp,chk) function c101102040.target(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return aux.MustMaterialCheck(c,tp,EFFECT_MUST_BE_XMATERIAL) and c:IsType(TYPE_XYZ) if chk==0 then return aux.MustMaterialCheck(c,tp,EFFECT_MUST_BE_XMATERIAL)
and Duel.IsExistingMatchingCard(c101102040.filter,tp,LOCATION_EXTRA,0,1,nil,e,tp,c) end and Duel.IsExistingMatchingCard(c101102040.filter,tp,LOCATION_EXTRA,0,1,nil,e,tp,c) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end end
......
...@@ -71,7 +71,10 @@ function c101102044.teop(e,tp,eg,ep,ev,re,r,rp) ...@@ -71,7 +71,10 @@ function c101102044.teop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then if tc:IsRelateToEffect(e) then
local ct=tc:GetOverlayCount() local ct=tc:GetOverlayCount()
if Duel.SendtoDeck(tc,nil,2,REASON_EFFECT)~=0 and tc:IsLocation(LOCATION_EXTRA) and ct>0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(aux.NecroValleyFilter(c101102044.spfilter),tp,LOCATION_GRAVE,0,1,nil,e,tp) and Duel.SelectYesNo(tp,aux.Stringid(101102044,2)) then if Duel.SendtoDeck(tc,nil,2,REASON_EFFECT)~=0 and tc:IsLocation(LOCATION_EXTRA)
and ct>0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(aux.NecroValleyFilter(c101102044.spfilter),tp,LOCATION_GRAVE,0,1,nil,e,tp)
and Duel.SelectYesNo(tp,aux.Stringid(101102044,2)) then
Duel.BreakEffect() Duel.BreakEffect()
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE) local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
ct=math.min(ct,ft) ct=math.min(ct,ft)
......
...@@ -18,7 +18,7 @@ function c101102046.initial_effect(c) ...@@ -18,7 +18,7 @@ function c101102046.initial_effect(c)
--draw --draw
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(101102046,1)) e2:SetDescription(aux.Stringid(101102046,1))
e2:SetCategory(CATEGORY_DRAW) e2:SetCategory(CATEGORY_DRAW+CATEGORY_TODECK)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_TO_GRAVE) e2:SetCode(EVENT_TO_GRAVE)
...@@ -62,6 +62,7 @@ function c101102046.drtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -62,6 +62,7 @@ function c101102046.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetTargetPlayer(tp) Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(1) Duel.SetTargetParam(1)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1) Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,0,tp,1)
end end
function c101102046.drop(e,tp,eg,ep,ev,re,r,rp) function c101102046.drop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM) local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
......
...@@ -13,6 +13,7 @@ function c101102047.initial_effect(c) ...@@ -13,6 +13,7 @@ function c101102047.initial_effect(c)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,101102047) e1:SetCountLimit(1,101102047)
e1:SetHintTiming(0,TIMING_MAIN_END)
e1:SetCondition(c101102047.spcon) e1:SetCondition(c101102047.spcon)
e1:SetTarget(c101102047.sptg) e1:SetTarget(c101102047.sptg)
e1:SetOperation(c101102047.spop) e1:SetOperation(c101102047.spop)
......
...@@ -39,7 +39,7 @@ function c101102048.rmtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -39,7 +39,7 @@ function c101102048.rmtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,1,0,0)
end end
function c101102048.rmop(e,tp,eg,ep,ev,re,r,rp) function c101102048.rmop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,CATEGORY_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToRemove,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil) local g=Duel.SelectMatchingCard(tp,Card.IsAbleToRemove,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.HintSelection(g) Duel.HintSelection(g)
......
...@@ -76,13 +76,9 @@ function c101102055.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -76,13 +76,9 @@ function c101102055.activate(e,tp,eg,ep,ev,re,r,rp)
if ect>0 and (ft1>0 or ft2>0) and Duel.SelectYesNo(tp,aux.Stringid(101102055,3)) then if ect>0 and (ft1>0 or ft2>0) and Duel.SelectYesNo(tp,aux.Stringid(101102055,3)) then
Duel.BreakEffect() Duel.BreakEffect()
local sg=Duel.GetMatchingGroup(c101102055.spfilter,tp,LOCATION_EXTRA,0,nil,e,tp) local sg=Duel.GetMatchingGroup(c101102055.spfilter,tp,LOCATION_EXTRA,0,nil,e,tp)
if sg:GetCount()>0 then Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) local rg=sg:SelectSubGroup(tp,c101102055.fselect,false,1,4,ft1,ft2,ect,ft)
local rg=sg:SelectSubGroup(tp,c101102055.fselect,false,1,4,ft1,ft2,ect,ft) Duel.SpecialSummon(rg,0,tp,tp,false,false,POS_FACEUP)
if rg:GetCount()>0 then
Duel.SpecialSummon(rg,0,tp,tp,false,false,POS_FACEUP)
end
end
end end
end end
end end
......
...@@ -31,7 +31,8 @@ function c101102060.cost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -31,7 +31,8 @@ function c101102060.cost(e,tp,eg,ep,ev,re,r,rp,chk)
return true return true
end end
function c101102060.costfilter(c,e,tp) function c101102060.costfilter(c,e,tp)
return c:IsAttribute(ATTRIBUTE_DARK) and c:IsLevelAbove(1) and Duel.GetMZoneCount(tp,c)>0 and (c:IsFaceup() or c:IsControler(tp)) and Duel.IsExistingMatchingCard(c101102060.spfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil,e,tp,c:GetCode(),c:GetLevel()) return c:IsAttribute(ATTRIBUTE_DARK) and c:IsLevelAbove(1) and Duel.GetMZoneCount(tp,c)>0 and (c:IsFaceup() or c:IsControler(tp))
and Duel.IsExistingMatchingCard(c101102060.spfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil,e,tp,c:GetCode(),c:GetLevel())
end end
function c101102060.spfilter(c,e,tp,code,lv) function c101102060.spfilter(c,e,tp,code,lv)
return c:IsSetCard(0xb) and not c:IsCode(code) and c:IsLevel(lv) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0xb) and not c:IsCode(code) and c:IsLevel(lv) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
...@@ -43,7 +44,6 @@ function c101102060.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -43,7 +44,6 @@ function c101102060.target(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetLabel(0,0,0) e:SetLabel(0,0,0)
return Duel.CheckReleaseGroup(tp,c101102060.costfilter,1,nil,e,tp) return Duel.CheckReleaseGroup(tp,c101102060.costfilter,1,nil,e,tp)
end end
e:SetLabel(0,0,0)
local tc=Duel.SelectReleaseGroup(tp,c101102060.costfilter,1,1,nil,e,tp):GetFirst() local tc=Duel.SelectReleaseGroup(tp,c101102060.costfilter,1,1,nil,e,tp):GetFirst()
e:SetLabel(0,tc:GetCode(),tc:GetLevel()) e:SetLabel(0,tc:GetCode(),tc:GetLevel())
Duel.Release(tc,REASON_COST) Duel.Release(tc,REASON_COST)
......
--新風の空牙団
--New Style Fur Hire
--scripted by TOP & mercury233
function c101102065.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetLabel(0)
e1:SetCountLimit(1,101102065+EFFECT_COUNT_CODE_OATH)
e1:SetCost(c101102065.cost)
e1:SetTarget(c101102065.target)
e1:SetOperation(c101102065.activate)
c:RegisterEffect(e1)
Duel.AddCustomActivityCounter(101102065,ACTIVITY_ATTACK,c101102065.counterfilter)
end
function c101102065.counterfilter(c)
return c:IsSetCard(0x114)
end
function c101102065.cost(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetLabel(100)
if chk==0 then return Duel.GetCustomActivityCount(101102065,tp,ACTIVITY_ATTACK)==0 end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_ATTACK_ANNOUNCE)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE+EFFECT_FLAG_OATH)
e1:SetTargetRange(LOCATION_MZONE,0)
e1:SetTarget(c101102065.atktg)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
function c101102065.atktg(e,c)
return not c:IsSetCard(0x114)
end
function c101102065.cfilter(c,e,tp)
local lv=c:GetLevel()
return lv>0 and (c:IsControler(tp) or c:IsFaceup()) and Duel.GetMZoneCount(tp,c)>0
and Duel.IsExistingMatchingCard(c101102065.spfilter,tp,LOCATION_HAND+LOCATION_DECK,0,1,nil,lv,e,tp)
end
function c101102065.spfilter(c,lv,e,tp)
return c:IsLevel(lv+1,lv-1) and c:IsSetCard(0x114) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c101102065.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
if e:GetLabel()~=100 then return false end
e:SetLabel(0)
return Duel.CheckReleaseGroup(tp,c101102065.cfilter,1,nil,e,tp)
end
local g=Duel.SelectReleaseGroup(tp,c101102065.cfilter,1,1,nil,e,tp)
e:SetLabel(g:GetFirst():GetLevel())
Duel.Release(g,REASON_COST)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_DECK)
end
function c101102065.activate(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
local lv=e:GetLabel()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c101102065.spfilter,tp,LOCATION_HAND+LOCATION_DECK,0,1,1,nil,lv,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
--ワーニングポイント
--Warning Point
--Scripted by TOP & mercury233
function c101102078.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DISABLE)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetTarget(c101102078.target)
e1:SetOperation(c101102078.activate)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EVENT_FLIP_SUMMON_SUCCESS)
c:RegisterEffect(e2)
local e3=e1:Clone()
e3:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e3)
end
function c101102078.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(Card.IsFaceup,1,nil) end
local g=eg:Filter(Card.IsFaceup,nil)
Duel.SetTargetCard(g)
Duel.SetOperationInfo(0,CATEGORY_DISABLE,g,g:GetCount(),0,0)
end
function c101102078.activate(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(Card.IsRelateToEffect,nil,e):Filter(Card.IsFaceup,nil)
local tc=g:GetFirst()
while tc do
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_ATTACK)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
if not c:IsDisabled() then
Duel.NegateRelatedChain(tc,RESET_TURN_SET)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_DISABLE)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_DISABLE_EFFECT)
e3:SetValue(RESET_TURN_SET)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e3)
end
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e4:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
e4:SetRange(LOCATION_MZONE)
e4:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
e4:SetValue(1)
tc:RegisterEffect(e4)
local e5=e4:Clone()
e5:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
e5:SetValue(c101102078.fuslimit)
tc:RegisterEffect(e5)
local e6=e4:Clone()
e6:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
tc:RegisterEffect(e6)
local e7=e4:Clone()
e7:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
tc:RegisterEffect(e7)
tc=g:GetNext()
end
end
function c101102078.fuslimit(e,c,sumtype)
return sumtype==SUMMON_TYPE_FUSION
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