Commit d70d6068 authored by wind2009's avatar wind2009

Fix 終刻起動『D.O.O.M.D.U.R.G.』

parent 3fe214c3
No preview for this file type
...@@ -15,6 +15,7 @@ function s.initial_effect(c) ...@@ -15,6 +15,7 @@ function s.initial_effect(c)
e1:SetOperation(s.damop) e1:SetOperation(s.damop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--get effect --get effect
--indestructable
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_EQUIP) e2:SetType(EFFECT_TYPE_EQUIP)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE) e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
...@@ -31,6 +32,7 @@ function s.initial_effect(c) ...@@ -31,6 +32,7 @@ function s.initial_effect(c)
e3:SetCondition(s.tgcon) e3:SetCondition(s.tgcon)
e3:SetValue(aux.tgoval) e3:SetValue(aux.tgoval)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--destroy
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(id,1)) e4:SetDescription(aux.Stringid(id,1))
e4:SetCategory(CATEGORY_DISABLE) e4:SetCategory(CATEGORY_DISABLE)
...@@ -38,6 +40,7 @@ function s.initial_effect(c) ...@@ -38,6 +40,7 @@ function s.initial_effect(c)
e4:SetCode(EVENT_FREE_CHAIN) e4:SetCode(EVENT_FREE_CHAIN)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL) e4:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL)
e4:SetHintTiming(TIMING_DAMAGE_STEP,TIMING_DAMAGE_STEP+TIMINGS_CHECK_MONSTER+TIMING_END_PHASE)
e4:SetCountLimit(1) e4:SetCountLimit(1)
e4:SetTarget(s.atktg) e4:SetTarget(s.atktg)
e4:SetOperation(s.atkop) e4:SetOperation(s.atkop)
...@@ -80,7 +83,7 @@ function s.tgcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -80,7 +83,7 @@ function s.tgcon(e,tp,eg,ep,ev,re,r,rp)
end end
function s.atktg(e,tp,eg,ep,ev,re,r,rp,chk) function s.atktg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
local g=Duel.GetMatchingGroup(aux.TRUE,tp,LOCATION_ONFIELD,0,e:GetHandler()) local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,LOCATION_ONFIELD,0,e:GetHandler())
if chk==0 then return g:GetCount()>0 and s.lv_or_rk(c)>0 end if chk==0 then return g:GetCount()>0 and s.lv_or_rk(c)>0 end
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
Duel.Hint(HINT_OPSELECTED,1-tp,aux.Stringid(id,1)) Duel.Hint(HINT_OPSELECTED,1-tp,aux.Stringid(id,1))
...@@ -97,7 +100,7 @@ end ...@@ -97,7 +100,7 @@ end
function s.atkop(e,tp,eg,ep,ev,re,r,rp) function s.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectMatchingCard(tp,aux.TRUE,tp,LOCATION_ONFIELD,0,1,1,aux.ExceptThisCard(e)) local g=Duel.SelectMatchingCard(tp,Card.IsFaceup,tp,LOCATION_ONFIELD,0,1,1,aux.ExceptThisCard(e))
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.HintSelection(g) Duel.HintSelection(g)
Duel.Destroy(g,REASON_EFFECT) Duel.Destroy(g,REASON_EFFECT)
...@@ -120,7 +123,7 @@ function s.atkop(e,tp,eg,ep,ev,re,r,rp) ...@@ -120,7 +123,7 @@ function s.atkop(e,tp,eg,ep,ev,re,r,rp)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e3:SetCode(EVENT_DAMAGE_STEP_END) e3:SetCode(EVENT_DAMAGE_STEP_END)
e3:SetOperation(s.desop) e3:SetOperation(s.desop)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_DAMAGE) e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_DAMAGE+PHASE_END)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
end 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