Commit be14064b authored by wind2009's avatar wind2009

Fix

parent aa2000db
Pipeline #40090 passed with stages
in 2 minutes and 32 seconds
No preview for this file type
...@@ -63,7 +63,7 @@ function s.spfilter(c) ...@@ -63,7 +63,7 @@ function s.spfilter(c)
return c:IsSynchroSummonable(nil) and c:IsType(TYPE_TUNER) return c:IsSynchroSummonable(nil) and c:IsType(TYPE_TUNER)
end end
function s.rthfilter(c,tp,g) function s.rthfilter(c,tp,g)
return c:IsAbleToHand() and g:FilterCount(Card.IsCanBeSpecialSummoned,nil,0,tp,false,false)==1 return c:IsAbleToHand() and g:FilterCount(Card.IsCanBeSpecialSummoned,c,0,tp,false,false)==1
end end
function s.spop(e,tp,eg,ep,ev,re,r,rp) function s.spop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(aux.NecroValleyFilter(s.thfilter),tp,LOCATION_GRAVE,0,nil,e,tp) local g=Duel.GetMatchingGroup(aux.NecroValleyFilter(s.thfilter),tp,LOCATION_GRAVE,0,nil,e,tp)
......
...@@ -3,10 +3,12 @@ local s,id,o=GetID() ...@@ -3,10 +3,12 @@ local s,id,o=GetID()
function s.initial_effect(c) function s.initial_effect(c)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH+CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(2,id+EFFECT_COUNT_CODE_OATH) e1:SetCountLimit(2,id+EFFECT_COUNT_CODE_OATH)
e1:SetHintTiming(TIMING_DRAW_PHASE,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE)
e1:SetTarget(s.target) e1:SetTarget(s.target)
e1:SetOperation(s.activate) e1:SetOperation(s.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
...@@ -29,12 +31,12 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -29,12 +31,12 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
Duel.AdjustAll() Duel.AdjustAll()
if Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_EXTRA,0,1,nil) if Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_EXTRA,0,1,nil)
and Duel.SelectYesNo(tp,aux.Stringid(id,2)) then and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
Duel.BreakEffect() Duel.BreakEffect()
local g=Duel.GetMatchingGroup(s.spfilter,tp,LOCATION_EXTRA,0,nil) local exg=Duel.GetMatchingGroup(s.spfilter,tp,LOCATION_EXTRA,0,nil)
if g:GetCount()>0 then if exg:GetCount()>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=g:Select(tp,1,1,nil) local sg=exg:Select(tp,1,1,nil)
Duel.SynchroSummon(tp,sg:GetFirst(),nil) Duel.SynchroSummon(tp,sg:GetFirst(),nil)
end end
end end
......
--ジュークジョイント''Killer Tune'' --ジュークジョイント“Killer Tune”
local s,id,o=GetID() local s,id,o=GetID()
function s.initial_effect(c) function s.initial_effect(c)
aux.AddCodeList(c,100245038) aux.AddCodeList(c,100245038)
...@@ -8,37 +8,36 @@ function s.initial_effect(c) ...@@ -8,37 +8,36 @@ function s.initial_effect(c)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--extra summon --extra summon
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetRange(LOCATION_FZONE)
e1:SetTargetRange(LOCATION_HAND+LOCATION_MZONE,0)
e1:SetCode(EFFECT_EXTRA_SUMMON_COUNT)
e1:SetTarget(aux.TargetBoolFunction(Card.IsSetCard,0x2f))
c:RegisterEffect(e1)
--atkup
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,0))
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_UPDATE_ATTACK)
e2:SetRange(LOCATION_FZONE) e2:SetRange(LOCATION_FZONE)
e2:SetTargetRange(LOCATION_MZONE,0) e2:SetTargetRange(LOCATION_HAND+LOCATION_MZONE,0)
e2:SetTarget(aux.TargetBoolFunction(Card.IsCode,100245038)) e2:SetCode(EFFECT_EXTRA_SUMMON_COUNT)
e2:SetCondition(s.atkcon) e2:SetTarget(aux.TargetBoolFunction(Card.IsType,TYPE_TUNER))
e2:SetValue(3300)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--spsummon --atkup
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(id,1)) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_SEARCH+CATEGORY_TOHAND) e3:SetCode(EFFECT_UPDATE_ATTACK)
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_FZONE) e3:SetRange(LOCATION_FZONE)
e3:SetCode(EVENT_FREE_CHAIN) e3:SetTargetRange(LOCATION_MZONE,0)
e3:SetHintTiming(0,TIMING_END_PHASE) e3:SetTarget(aux.TargetBoolFunction(Card.IsCode,100245038))
e3:SetCountLimit(1,id) e3:SetCondition(s.atkcon)
e3:SetCost(s.spcost) e3:SetValue(3300)
e3:SetTarget(s.sptg)
e3:SetOperation(s.spop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--spsummon
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(id,1))
e4:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_SEARCH+CATEGORY_TOHAND)
e4:SetType(EFFECT_TYPE_IGNITION)
e4:SetRange(LOCATION_FZONE)
e4:SetCode(EVENT_FREE_CHAIN)
e4:SetCountLimit(1,id)
e4:SetCost(s.spcost)
e4:SetTarget(s.sptg)
e4:SetOperation(s.spop)
c:RegisterEffect(e4)
end end
function s.cfilter(c) function s.cfilter(c)
return c:IsFaceupEx() and c:IsType(TYPE_TUNER) return c:IsFaceupEx() and c:IsType(TYPE_TUNER)
......
...@@ -3,6 +3,7 @@ local s,id,o=GetID() ...@@ -3,6 +3,7 @@ local s,id,o=GetID()
function s.initial_effect(c) function s.initial_effect(c)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(2,id+EFFECT_COUNT_CODE_OATH) e1:SetCountLimit(2,id+EFFECT_COUNT_CODE_OATH)
...@@ -11,7 +12,7 @@ function s.initial_effect(c) ...@@ -11,7 +12,7 @@ function s.initial_effect(c)
e1:SetOperation(s.operation) e1:SetOperation(s.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function s.filter(c) function s.filter(c,e,tp,eg,ep,ev,re,r,rp)
if not (c:IsFaceupEx() and c:IsSetCard(0x2d6) and c:IsAbleToHand()) then return false end if not (c:IsFaceupEx() and c:IsSetCard(0x2d6) and c:IsAbleToHand()) then return false end
local te=c.killer_tune_be_material_effect local te=c.killer_tune_be_material_effect
if not te then return false end if not te then return false end
...@@ -24,9 +25,9 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -24,9 +25,9 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local tg=te:GetTarget() local tg=te:GetTarget()
return tg and tg(e,tp,eg,ep,ev,re,r,rp,0,chkc) return tg and tg(e,tp,eg,ep,ev,re,r,rp,0,chkc)
end end
if chk==0 then return Duel.IsExistingTarget(s.filter,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,nil) end if chk==0 then return Duel.IsExistingTarget(s.filter,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,nil,e,tp,eg,ep,ev,re,r,rp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,s.filter,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,1,nil) local g=Duel.SelectTarget(tp,s.filter,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,1,nil,e,tp,eg,ep,ev,re,r,rp)
local tc=g:GetFirst() local tc=g:GetFirst()
Duel.ClearTargetCard() Duel.ClearTargetCard()
local te=tc.killer_tune_be_material_effect local te=tc.killer_tune_be_material_effect
...@@ -35,7 +36,6 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -35,7 +36,6 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if tg then tg(e,tp,eg,ep,ev,re,r,rp,1) end if tg then tg(e,tp,eg,ep,ev,re,r,rp,1) end
Duel.ClearOperationInfo(0) Duel.ClearOperationInfo(0)
g:GetFirst():CreateEffectRelation(e) g:GetFirst():CreateEffectRelation(e)
local tg=te:GetTarget()
te:SetLabelObject(e:GetLabelObject()) te:SetLabelObject(e:GetLabelObject())
e:SetLabelObject(te) e:SetLabelObject(te)
end end
...@@ -43,9 +43,11 @@ function s.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -43,9 +43,11 @@ function s.operation(e,tp,eg,ep,ev,re,r,rp)
local te=e:GetLabelObject() local te=e:GetLabelObject()
if not te then return end if not te then return end
local tc=te:GetHandler() local tc=te:GetHandler()
if not (tc:IsRelateToChain()) then return end if not tc:IsRelateToChain() then return end
e:SetLabelObject(te:GetLabelObject()) e:SetLabelObject(te:GetLabelObject())
local op=te:GetOperation() local op=te:GetOperation()
if op then op(e,tp,eg,ep,ev,re,r,rp) end if op then op(e,tp,eg,ep,ev,re,r,rp) end
Duel.SendtoHand(tc,nil,REASON_EFFECT) if aux.NecroValleyFilter()(tc) then
Duel.SendtoHand(tc,nil,REASON_EFFECT)
end
end end
\ No newline at end of file
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