Commit be3c2b96 authored by mercury233's avatar mercury233

fix

parent dde3b30b
...@@ -5,7 +5,7 @@ function c101008006.initial_effect(c) ...@@ -5,7 +5,7 @@ function c101008006.initial_effect(c)
--summon with no tribute --summon with no tribute
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(101008006,0)) e1:SetDescription(aux.Stringid(101008006,0))
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e1:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SUMMON_PROC) e1:SetCode(EFFECT_SUMMON_PROC)
e1:SetCondition(c101008006.ntcon) e1:SetCondition(c101008006.ntcon)
......
...@@ -38,12 +38,13 @@ function c101008011.sptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -38,12 +38,13 @@ function c101008011.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_DECK)
end end
function c101008011.spop(e,tp,eg,ep,ev,re,r,rp) function c101008011.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end if Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c101008011.spfilter,tp,LOCATION_HAND+LOCATION_DECK,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,c101008011.spfilter,tp,LOCATION_HAND+LOCATION_DECK,0,1,1,nil,e,tp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end end
end
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
......
...@@ -2,16 +2,15 @@ ...@@ -2,16 +2,15 @@
-- --
--Scripted By-fwkongge --Scripted By-fwkongge
function c101008022.initial_effect(c) function c101008022.initial_effect(c)
--
c:EnableReviveLimit() c:EnableReviveLimit()
--special summon --special summon
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(101008022,0))
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_SPSUMMON_PROC) e1:SetCode(EFFECT_SPSUMMON_PROC)
e1:SetProperty(EFFECT_FLAG_UNCOPYABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetCondition(c101008022.spcon) e1:SetCondition(c101008022.spcon)
e1:SetTarget(c101008022.sptg)
e1:SetOperation(c101008022.spop) e1:SetOperation(c101008022.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--destroy monster --destroy monster
...@@ -55,10 +54,20 @@ function c101008022.spcon(e,c) ...@@ -55,10 +54,20 @@ function c101008022.spcon(e,c)
local g=Duel.GetMatchingGroup(c101008022.cfilter,tp,LOCATION_GRAVE,0,nil) local g=Duel.GetMatchingGroup(c101008022.cfilter,tp,LOCATION_GRAVE,0,nil)
return g:CheckSubGroup(c101008022.check,2,2) return g:CheckSubGroup(c101008022.check,2,2)
end end
function c101008022.spop(e,tp,eg,ep,ev,re,r,rp,c) function c101008022.sptg(e,tp,eg,ep,ev,re,r,rp,chk,c)
local g=Duel.GetMatchingGroup(c101008022.cfilter,tp,LOCATION_GRAVE,0,nil) local g=Duel.GetMatchingGroup(c101008022.cfilter,tp,LOCATION_GRAVE,0,nil)
local sg=g:SelectSubGroup(tp,c101008022.check,false,2,2) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
Duel.Remove(sg,POS_FACEUP,REASON_COST) local sg=g:SelectSubGroup(tp,c101008022.check,true,2,2)
if sg then
sg:KeepAlive()
e:SetLabelObject(sg)
return true
else return false end
end
function c101008022.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=e:GetLabelObject()
Duel.Remove(g,POS_FACEUP,REASON_COST)
g:DeleteGroup()
end end
function c101008022.descfilter1(c) function c101008022.descfilter1(c)
return c:IsAttribute(ATTRIBUTE_FIRE) and c:IsAbleToRemoveAsCost() return c:IsAttribute(ATTRIBUTE_FIRE) and c:IsAbleToRemoveAsCost()
...@@ -79,9 +88,9 @@ end ...@@ -79,9 +88,9 @@ end
function c101008022.desop1(e,tp,eg,ep,ev,re,r,rp) function c101008022.desop1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
local atk=tc:GetTextAttack() local atk=math.max(tc:GetTextAttack(),0)
if tc:IsRelateToEffect(e) then if tc:IsRelateToEffect(e) then
if Duel.Destroy(tc,REASON_EFFECT)~=0 and c:IsFaceup() and atk>=0 then if Duel.Destroy(tc,REASON_EFFECT)~=0 and c:IsFaceup() and atk>0 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_COPY_INHERIT) e1:SetProperty(EFFECT_FLAG_COPY_INHERIT)
...@@ -101,11 +110,14 @@ function c101008022.descost2(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -101,11 +110,14 @@ function c101008022.descost2(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.SelectMatchingCard(tp,c101008022.descfilter2,tp,LOCATION_GRAVE,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c101008022.descfilter2,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.Remove(g,POS_FACEUP,REASON_COST) Duel.Remove(g,POS_FACEUP,REASON_COST)
end end
function c101008022.desfilter(c)
return c:GetSequence()<5
end
function c101008022.destg2(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c101008022.destg2(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_SZONE) and chkc:IsControler(1-tp) end if chkc then return chkc:IsLocation(LOCATION_SZONE) and chkc:IsControler(1-tp) and c101008022.desfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(aux.TRUE,tp,0,LOCATION_SZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(c101008022.desfilter,tp,0,LOCATION_SZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,aux.TRUE,tp,0,LOCATION_SZONE,1,1,nil) local g=Duel.SelectTarget(tp,c101008022.desfilter,tp,0,LOCATION_SZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
end end
function c101008022.desop2(e,tp,eg,ep,ev,re,r,rp) function c101008022.desop2(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -29,7 +29,7 @@ function c101008023.initial_effect(c) ...@@ -29,7 +29,7 @@ function c101008023.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c101008023.spfilter(c,tp) function c101008023.spfilter(c,tp)
return c:GetSummonPlayer()==tp and c:IsType(TYPE_XYZ) return c:IsControler(tp) and c:IsType(TYPE_XYZ)
end end
function c101008023.spcon(e,tp,eg,ep,ev,re,r,rp) function c101008023.spcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c101008023.spfilter,1,nil,tp) return eg:IsExists(c101008023.spfilter,1,nil,tp)
......
...@@ -16,6 +16,7 @@ function c101008027.initial_effect(c) ...@@ -16,6 +16,7 @@ function c101008027.initial_effect(c)
e2:SetProperty(EFFECT_FLAG_UNCOPYABLE) e2:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e2:SetRange(LOCATION_HAND) e2:SetRange(LOCATION_HAND)
e2:SetCondition(c101008027.spcon) e2:SetCondition(c101008027.spcon)
e2:SetTarget(c101008027.sptg)
e2:SetOperation(c101008027.spop) e2:SetOperation(c101008027.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--activate limit --activate limit
...@@ -29,35 +30,27 @@ function c101008027.initial_effect(c) ...@@ -29,35 +30,27 @@ function c101008027.initial_effect(c)
e3:SetValue(c101008027.aclimit) e3:SetValue(c101008027.aclimit)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c101008027.mzfilter(c,tp) function c101008027.fselect(g,tp)
return c:IsControler(tp) and c:GetSequence()<5 return Duel.GetMZoneCount(tp,g)>0
end end
function c101008027.spcon(e,c) function c101008027.spcon(e,c)
if c==nil then return true end if c==nil then return true end
local tp=c:GetControler() local tp=c:GetControler()
local rg=Duel.GetReleaseGroup(tp) local rg=Duel.GetReleaseGroup(tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE) return rg:CheckSubGroup(c101008027.fselect,3,3)
local ct=-ft+1
return ft>-3 and rg:GetCount()>2 and (ft>0 or rg:IsExists(c101008027.mzfilter,ct,nil,tp))
end end
function c101008027.spop(e,tp,eg,ep,ev,re,r,rp,c) function c101008027.sptg(e,tp,eg,ep,ev,re,r,rp,chk,c)
local rg=Duel.GetReleaseGroup(tp) local rg=Duel.GetReleaseGroup(tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:Select(tp,3,3,nil)
elseif ft>-2 then
local ct=-ft+1
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c101008027.mzfilter,ct,ct,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g2=rg:Select(tp,3-ct,3-ct,g)
g:Merge(g2)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c101008027.mzfilter,3,3,nil,tp) local sg=rg:SelectSubGroup(tp,c101008027.fselect,true,3,3)
end if sg then
sg:KeepAlive()
e:SetLabelObject(sg)
return true
else return false end
end
function c101008027.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=e:GetLabelObject()
Duel.Release(g,REASON_COST) Duel.Release(g,REASON_COST)
local atk=0 local atk=0
local tc=g:GetFirst() local tc=g:GetFirst()
...@@ -74,6 +67,7 @@ function c101008027.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -74,6 +67,7 @@ function c101008027.spop(e,tp,eg,ep,ev,re,r,rp,c)
e1:SetValue(atk) e1:SetValue(atk)
e1:SetReset(RESET_EVENT+0xff0000) e1:SetReset(RESET_EVENT+0xff0000)
c:RegisterEffect(e1) c:RegisterEffect(e1)
g:DeleteGroup()
end end
function c101008027.condition(e) function c101008027.condition(e)
local ph=Duel.GetCurrentPhase() local ph=Duel.GetCurrentPhase()
......
...@@ -8,24 +8,28 @@ function c101008028.initial_effect(c) ...@@ -8,24 +8,28 @@ function c101008028.initial_effect(c)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE) e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetValue(c101008028.indval) e1:SetValue(c101008028.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--atkup --level up
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCategory(CATEGORY_LVCHANGE) e2:SetCategory(CATEGORY_LVCHANGE)
e2:SetCode(EVENT_PHASE+PHASE_STANDBY) e2:SetCode(EVENT_PHASE+PHASE_STANDBY)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1) e2:SetCountLimit(1)
e2:SetCondition(c101008028.atkcon) e2:SetCondition(c101008028.lvcon)
e2:SetOperation(c101008028.atkop) e2:SetTarget(c101008028.lvtg)
e2:SetOperation(c101008028.lvop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c101008028.indval(e,c) function c101008028.indval(e,c)
return not c:IsLevelAbove(e:GetHandler():GetLevel()+1) return not c:IsLevelAbove(e:GetHandler():GetLevel()+1)
end end
function c101008028.atkcon(e,tp,eg,ep,ev,re,r,rp) function c101008028.lvcon(e,tp,eg,ep,ev,re,r,rp)
return tp==Duel.GetTurnPlayer() return tp==Duel.GetTurnPlayer()
end end
function c101008028.atkop(e,tp,eg,ep,ev,re,r,rp) function c101008028.lvtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsLevelAbove(1) end
end
function c101008028.lvop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
......
...@@ -2,11 +2,11 @@ ...@@ -2,11 +2,11 @@
-- --
--Scripted by Justfish --Scripted by Justfish
function c101008038.initial_effect(c) function c101008038.initial_effect(c)
--xyz summon
c:SetSPSummonOnce(101008038) c:SetSPSummonOnce(101008038)
--xyz summon
aux.AddXyzProcedure(c,nil,8,2,c101008038.ovfilter,aux.Stringid(101008038,0)) aux.AddXyzProcedure(c,nil,8,2,c101008038.ovfilter,aux.Stringid(101008038,0))
c:EnableReviveLimit() c:EnableReviveLimit()
--search and changelevel --effect
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_SPSUMMON_SUCCESS) e1:SetCode(EVENT_SPSUMMON_SUCCESS)
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
-- --
--Script by mercury233 --Script by mercury233
function c101008042.initial_effect(c) function c101008042.initial_effect(c)
--link summon
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0x11a),2,2) aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0x11a),2,2)
--to hand --to hand
...@@ -37,7 +38,7 @@ function c101008042.initial_effect(c) ...@@ -37,7 +38,7 @@ function c101008042.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c101008042.thcon(e,tp,eg,ep,ev,re,r,rp) function c101008042.thcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp and re and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:GetHandler():IsCode(90173539) return rp==tp and re and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:GetHandler():IsCode(90173539)
and e:GetHandler():GetFlagEffect(1)>0 and e:GetHandler():GetFlagEffect(1)>0
end end
function c101008042.thfilter(c) function c101008042.thfilter(c)
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
-- --
--Script by mercury233 --Script by mercury233
function c101008047.initial_effect(c) function c101008047.initial_effect(c)
--link summon
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddLinkProcedure(c,c101008047.matfilter,2) aux.AddLinkProcedure(c,c101008047.matfilter,2)
--cannot target --cannot target
...@@ -69,7 +70,7 @@ function c101008047.atkop(e,tp,eg,ep,ev,re,r,rp) ...@@ -69,7 +70,7 @@ function c101008047.atkop(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetReset(RESET_PHASE+PHASE_DAMAGE_CAL) e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_DAMAGE_CAL)
e1:SetValue(bc:GetAttack()) e1:SetValue(bc:GetAttack())
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
......
...@@ -9,7 +9,7 @@ function c101008063.initial_effect(c) ...@@ -9,7 +9,7 @@ function c101008063.initial_effect(c)
e1:SetTarget(c101008063.target) e1:SetTarget(c101008063.target)
e1:SetOperation(c101008063.activate) e1:SetOperation(c101008063.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--damage --halve LP
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_CHAINING) e2:SetCode(EVENT_CHAINING)
...@@ -23,17 +23,17 @@ function c101008063.initial_effect(c) ...@@ -23,17 +23,17 @@ function c101008063.initial_effect(c)
e3:SetCode(EVENT_CHAIN_SOLVED) e3:SetCode(EVENT_CHAIN_SOLVED)
e3:SetRange(LOCATION_SZONE) e3:SetRange(LOCATION_SZONE)
e3:SetLabelObject(e2) e3:SetLabelObject(e2)
e3:SetCondition(c101008063.damcon) e3:SetCondition(c101008063.lpcon)
e3:SetOperation(c101008063.damop) e3:SetOperation(c101008063.lpop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--self destroy --to grave
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e4:SetCode(EVENT_PHASE+PHASE_END) e4:SetCode(EVENT_PHASE+PHASE_END)
e4:SetRange(LOCATION_SZONE) e4:SetRange(LOCATION_SZONE)
e4:SetCountLimit(1) e4:SetCountLimit(1)
e4:SetCondition(c101008063.descon) e4:SetCondition(c101008063.tgcon)
e4:SetOperation(c101008063.desop) e4:SetOperation(c101008063.tgop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
--indes --indes
local e5=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
...@@ -63,21 +63,21 @@ function c101008063.regop(e,tp,eg,ep,ev,re,r,rp) ...@@ -63,21 +63,21 @@ function c101008063.regop(e,tp,eg,ep,ev,re,r,rp)
e:SetLabel(ep) e:SetLabel(ep)
end end
end end
function c101008063.damcon(e,tp,eg,ep,ev,re,r,rp) function c101008063.lpcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
return c:GetFlagEffect(101008063)~=0 return c:GetFlagEffect(101008063)~=0
end end
function c101008063.damop(e,tp,eg,ep,ev,re,r,rp) function c101008063.lpop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local p=e:GetLabelObject():GetLabel() local p=e:GetLabelObject():GetLabel()
Duel.Hint(HINT_CARD,0,101008063) Duel.Hint(HINT_CARD,0,101008063)
Duel.SetLP(p,math.ceil(Duel.GetLP(p)/2)) Duel.SetLP(p,math.ceil(Duel.GetLP(p)/2))
c:RegisterFlagEffect(101008063+100,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1) c:RegisterFlagEffect(101008063+100,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end end
function c101008063.descon(e,tp,eg,ep,ev,re,r,rp) function c101008063.tgcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(101008063+100)~=0 return e:GetHandler():GetFlagEffect(101008063+100)~=0
end end
function c101008063.desop(e,tp,eg,ep,ev,re,r,rp) function c101008063.tgop(e,tp,eg,ep,ev,re,r,rp)
Duel.SendtoGrave(e:GetHandler(),REASON_EFFECT) Duel.SendtoGrave(e:GetHandler(),REASON_EFFECT)
end end
function c101008063.indcon(e) function c101008063.indcon(e)
......
...@@ -41,7 +41,7 @@ function c101008064.initial_effect(c) ...@@ -41,7 +41,7 @@ function c101008064.initial_effect(c)
e5:SetTargetRange(LOCATION_MZONE,0) e5:SetTargetRange(LOCATION_MZONE,0)
e5:SetCondition(c101008064.actconb) e5:SetCondition(c101008064.actconb)
c:RegisterEffect(e5) c:RegisterEffect(e5)
--damage --destroy
local e6=Effect.CreateEffect(c) local e6=Effect.CreateEffect(c)
e6:SetDescription(aux.Stringid(101008064,0)) e6:SetDescription(aux.Stringid(101008064,0))
e6:SetCategory(CATEGORY_DESTROY) e6:SetCategory(CATEGORY_DESTROY)
...@@ -74,7 +74,7 @@ function c101008064.destg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -74,7 +74,7 @@ function c101008064.destg(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function c101008064.desop(e,tp,eg,ep,ev,re,r,rp) function c101008064.desop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) and c:IsFaceup() then if c:IsRelateToEffect(e) then
Duel.Destroy(c,REASON_EFFECT) Duel.Destroy(c,REASON_EFFECT)
end end
end end
...@@ -41,7 +41,7 @@ function c101008065.filter(c) ...@@ -41,7 +41,7 @@ function c101008065.filter(c)
return c:IsFaceup() and c:IsSummonType(SUMMON_TYPE_NORMAL) return c:IsFaceup() and c:IsSummonType(SUMMON_TYPE_NORMAL)
end end
function c101008065.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c101008065.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c101008065.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c101008065.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c101008065.filter,tp,LOCATION_MZONE,0,1,nil) end if chk==0 then return Duel.IsExistingTarget(c101008065.filter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,c101008065.filter,tp,LOCATION_MZONE,0,1,1,nil) Duel.SelectTarget(tp,c101008065.filter,tp,LOCATION_MZONE,0,1,1,nil)
......
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