Commit e0c04ec0 authored by Tachibana's avatar Tachibana

得得得得得

parent 0caf2c9e
...@@ -26,10 +26,11 @@ function cm.spcheck(c,e,tp) ...@@ -26,10 +26,11 @@ function cm.spcheck(c,e,tp)
return c:IsCode(m+1) and c:IsCanBeSpecialSummoned(e,0,tp,true,true) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 return c:IsCode(m+1) and c:IsCanBeSpecialSummoned(e,0,tp,true,true) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
end 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)
if chk==0 then return Duel.IsExistingMatchingCard(cm.spcheck,tp,LOCATION_MZONE,0,1,nil,e,tp) end if chk==0 then return Duel.IsExistingMatchingCard(cm.spcheck,tp,LOCATION_DECK,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
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 c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,cm.spcheck,tp,LOCATION_DECK,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,cm.spcheck,tp,LOCATION_DECK,0,1,1,nil,e,tp)
if g:GetCount()>0 then if g:GetCount()>0 then
...@@ -37,15 +38,14 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -37,15 +38,14 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
if Duel.SpecialSummonStep(tc,0,tp,tp,true,true,POS_FACEUP) then if Duel.SpecialSummonStep(tc,0,tp,tp,true,true,POS_FACEUP) then
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EFFECT_SET_BASE_ATTACK) e1:SetCode(EFFECT_SET_BASE_ATTACK)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+0x7e0000)
e1:SetValue(2147483648) e1:SetValue(268435455)
tc:RegisterEffect(e1) tc:RegisterEffect(e1,true)
local e2=e1:Clone() local e2=e1:Clone()
e2:SetCode(EFFECT_SET_BASE_DEFENSE) e2:SetCode(EFFECT_SET_BASE_DEFENSE)
tc:RegisterEffect(e2) tc:RegisterEffect(e2,true)
end end
end end
Duel.SpecialSummonComplete()
end end
\ No newline at end of file
...@@ -329,6 +329,7 @@ function h_star.copy(e,c,id) ...@@ -329,6 +329,7 @@ function h_star.copy(e,c,id)
local tep=c:GetControler() local tep=c:GetControler()
local tp=e:GetHandlerPlayer() local tp=e:GetHandlerPlayer()
local tg=te:GetTarget() local tg=te:GetTarget()
Duel.ClearTargetCard()
if tg then tg(e,tp,teg,tep,tev,tre,tr,trp,1) end if tg then tg(e,tp,teg,tep,tev,tre,tr,trp,1) end
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
if g then if g then
......
...@@ -31,12 +31,12 @@ function cm.filter(c) ...@@ -31,12 +31,12 @@ function cm.filter(c)
return c:IsSetCard(0x5b82) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() return c:IsSetCard(0x5b82) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end 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)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_DECK+LOCATION_REMOVED,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK+LOCATION_REMOVED) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end end
function cm.activate(e,tp,eg,ep,ev,re,r,rp) function cm.activate(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.filter,tp,LOCATION_DECK+LOCATION_REMOVED,0,1,2,nil) local g=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
......
...@@ -5,7 +5,7 @@ Duel.LoadScript("c36200101.lua") ...@@ -5,7 +5,7 @@ Duel.LoadScript("c36200101.lua")
function cm.initial_effect(c) function cm.initial_effect(c)
--fusion material --fusion material
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcFun2(c,aux.FilterBoolFunction(Card.IsFusionSetCard,0x3ba0),aux.FilterBoolFunction(Card.IsRace,RACE_AQUA),true) aux.AddFusionProcFun2(c,aux.FilterBoolFunction(cm.spf,0x3ba0),aux.FilterBoolFunction(Card.IsRace,RACE_AQUA),true)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOGRAVE) e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOGRAVE)
...@@ -29,6 +29,9 @@ function cm.initial_effect(c) ...@@ -29,6 +29,9 @@ function cm.initial_effect(c)
e2:SetOperation(cm.tgop) e2:SetOperation(cm.tgop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.spf(c,e,tp)
return c:IsSetCard(0x3ba0) and c:IsFusionType(TYPE_MONSTER)
end
function cm.spfilter1(c,e,tp) function cm.spfilter1(c,e,tp)
return c:IsSetCard(0x3ba0) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x3ba0) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
......
...@@ -5,7 +5,7 @@ Duel.LoadScript("c36200101.lua") ...@@ -5,7 +5,7 @@ Duel.LoadScript("c36200101.lua")
function cm.initial_effect(c) function cm.initial_effect(c)
--fusion material --fusion material
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcFunFunRep(c,aux.FilterBoolFunction(Card.IsFusionSetCard,0x3ba0),aux.FilterBoolFunction(Card.IsRace,RACE_AQUA),2,2,true) aux.AddFusionProcFunFunRep(c,aux.FilterBoolFunction(cm.spf),aux.FilterBoolFunction(Card.IsRace,RACE_AQUA),2,2,true)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_DISABLE) e1:SetCategory(CATEGORY_DISABLE)
...@@ -26,6 +26,9 @@ function cm.initial_effect(c) ...@@ -26,6 +26,9 @@ function cm.initial_effect(c)
e2:SetOperation(cm.tgop) e2:SetOperation(cm.tgop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.spf(c,e,tp)
return c:IsSetCard(0x3ba0) and c:IsFusionType(TYPE_MONSTER)
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp) function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local g=Duel.GetMatchingGroup(aux.disfilter1,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil) local g=Duel.GetMatchingGroup(aux.disfilter1,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
......
...@@ -114,8 +114,9 @@ function cm.target1(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -114,8 +114,9 @@ function cm.target1(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_DECK)
end end
function cm.operation1(e,tp,eg,ep,ev,re,r,rp) function cm.operation1(e,tp,eg,ep,ev,re,r,rp)
local sc=Duel.GetFirstMatchingCard(cm.filter,tp,LOCATION_DECK,0,nil) local sc=Duel.GetMatchingGroup(cm.filter,tp,LOCATION_DECK,0,nil)
if sc then if #sc>0 then
Duel.SendtoGrave(sc,REASON_EFFECT) local tc=sc:Select(tp,1,1,nil)
Duel.SendtoGrave(tc,REASON_EFFECT)
end end
end end
\ No newline at end of file
...@@ -24,7 +24,7 @@ function cm.initial_effect(c) ...@@ -24,7 +24,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.thfilter(c) function cm.thfilter(c)
return c:IsType(TYPE_NORMAL+TYPE_PENDULUM) and c:IsAbleToHand() return c:IsType(TYPE_NORMAL) and c:IsType(TYPE_PENDULUM) and c:IsAbleToHand()
end end
function cm.rit(e,tp,eg,ep,ev,re,r,rp) function cm.rit(e,tp,eg,ep,ev,re,r,rp)
local op,ct=0,0 local op,ct=0,0
......
...@@ -24,7 +24,7 @@ function cm.initial_effect(c) ...@@ -24,7 +24,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.filter(c,e,tp,mc) function cm.filter(c,e,tp,mc)
return c:IsType(TYPE_PENDULUM+TYPE_NORMAL) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and (c:IsLocation(LOCATION_HAND) and Duel.GetMZoneCount(tp,mc)>0 or c:IsLocation(LOCATION_EXTRA) and Duel.GetLocationCountFromEx(tp,tp,mc,c)>0) return c:IsType(TYPE_PENDULUM) and c:IsType(TYPE_NORMAL) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and (c:IsLocation(LOCATION_HAND) and Duel.GetMZoneCount(tp,mc)>0 or c:IsLocation(LOCATION_EXTRA) and Duel.GetLocationCountFromEx(tp,tp,mc,c)>0)
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_HAND+LOCATION_EXTRA,0,1,nil,e,tp,e:GetHandler()) end if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_HAND+LOCATION_EXTRA,0,1,nil,e,tp,e:GetHandler()) end
......
...@@ -18,7 +18,7 @@ function cm.initial_effect(c) ...@@ -18,7 +18,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsFaceup() and c:IsType(TYPE_NORMAL+TYPE_PENDULUM) return c:IsFaceup() and c:IsType(TYPE_NORMAL) and c:IsType(TYPE_PENDULUM)
end end
function cm.tdtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.tdtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and cm.cfilter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and cm.cfilter(chkc) end
...@@ -94,7 +94,7 @@ end ...@@ -94,7 +94,7 @@ end
function cm.PendOperationCheck(ft1,ft2,ft) function cm.PendOperationCheck(ft1,ft2,ft)
return function(g) return function(g)
local exg=g:Filter(Card.IsLocation,nil,LOCATION_EXTRA) local exg=g:Filter(Card.IsLocation,nil,LOCATION_EXTRA)
local gxg=g:Filter(Card.IsLocation,nil,LOCATION_GRAVE):Filter(Card.IsType,nil,TYPE_NORMAL+TYPE_PENDULUM) local gxg=g:Filter(Card.IsLocation,nil,LOCATION_GRAVE):Filter(Card.IsType,nil,TYPE_PENDULUM):Filter(Card.IsType,nil,TYPE_NORMAL)
local shg=g:Filter(Card.IsLocation,nil,LOCATION_HAND) local shg=g:Filter(Card.IsLocation,nil,LOCATION_HAND)
local hdg=Duel.GetMatchingGroup(function(c)return c:IsDiscardable(REASON_EFFECT) and c:IsType(TYPE_PENDULUM)end,tp,LOCATION_HAND,0,nil) local hdg=Duel.GetMatchingGroup(function(c)return c:IsDiscardable(REASON_EFFECT) and c:IsType(TYPE_PENDULUM)end,tp,LOCATION_HAND,0,nil)
local mg=g-exg local mg=g-exg
......
...@@ -20,10 +20,10 @@ function cm.initial_effect(c) ...@@ -20,10 +20,10 @@ function cm.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.spfilter(c,e,tp) function cm.spfilter(c,e,tp)
return c:IsType(TYPE_NORMAL+TYPE_PENDULUM) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil,c:GetCode()) return c:IsType(TYPE_NORMAL) and c:IsType(TYPE_PENDULUM) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil,c:GetCode())
end end
function cm.thfilter(c,code) function cm.thfilter(c,code)
return c:IsSetCard(0x9533) and c:IsAbleToHand() and not c:IsCode(code) return c:IsSetCard(0x9533) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() and not c:IsCode(code)
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_HAND,0,1,nil,e,tp) end if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_HAND,0,1,nil,e,tp) end
......
...@@ -12,7 +12,7 @@ function cm.initial_effect(c) ...@@ -12,7 +12,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function cm.thfilter(c) function cm.thfilter(c)
return c:IsSetCard(0x9533) and c:IsAbleToHand() return c:IsSetCard(0x9533) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end end
function cm.spfilter(c,e,tp) function cm.spfilter(c,e,tp)
return c:IsSetCard(0x9533) and c:IsType(TYPE_RITUAL) and c:IsLevelBelow(9) and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_RITUAL,tp,false,true) return c:IsSetCard(0x9533) and c:IsType(TYPE_RITUAL) and c:IsLevelBelow(9) and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_RITUAL,tp,false,true)
......
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