Commit 226d9bf3 authored by POLYMER's avatar POLYMER

fix

parent 14997fe7
...@@ -3,7 +3,6 @@ local cm,m,o=GetID() ...@@ -3,7 +3,6 @@ local cm,m,o=GetID()
function cm.initial_effect(c) function cm.initial_effect(c)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,m+EFFECT_COUNT_CODE_OATH) e1:SetCountLimit(1,m+EFFECT_COUNT_CODE_OATH)
......
...@@ -47,6 +47,8 @@ function c98941057.initial_effect(c) ...@@ -47,6 +47,8 @@ function c98941057.initial_effect(c)
end end
end end
end end
local KOISHI_CHECK=false
if Card.SetCardData then KOISHI_CHECK=true end
function c98941057.checkop(e,tp,eg,ep,ev,re,r,rp) function c98941057.checkop(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler() local rc=re:GetHandler()
if re:GetValue()~=98941058 then return end if re:GetValue()~=98941058 then return end
...@@ -191,31 +193,51 @@ function c98941057.actarget2(e,te,tp) ...@@ -191,31 +193,51 @@ function c98941057.actarget2(e,te,tp)
return tc:IsSetCard(0xd0) and te:IsHasType(EFFECT_TYPE_QUICK_O) and tc:IsLocation(LOCATION_HAND) and tc:IsType(TYPE_SPELL+TYPE_TRAP) return tc:IsSetCard(0xd0) and te:IsHasType(EFFECT_TYPE_QUICK_O) and tc:IsLocation(LOCATION_HAND) and tc:IsType(TYPE_SPELL+TYPE_TRAP)
end end
function c98941057.costop(e,tp,eg,ep,ev,re,r,rp) function c98941057.costop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local te=e:GetLabelObject() local te=e:GetLabelObject()
local tc=te:GetHandler() local tc=te:GetHandler()
local tp=te:GetHandlerPlayer()
local te2=te:Clone()
tc:RegisterEffect(te2)
te2:UseCountLimit(tp)
te:SetType(EFFECT_TYPE_ACTIVATE)
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,false) Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,false)
local ge3=Effect.CreateEffect(tc) c:CreateEffectRelation(te)
ge3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD) local te2=te:Clone()
ge3:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE) e:SetLabelObject(te2)
ge3:SetCode(EVENT_CHAIN_SOLVED) te:SetType(26)
ge3:SetLabelObject(te) tc:RegisterEffect(te2,true)
ge3:SetReset(RESET_PHASE+PHASE_END) local ev0=Duel.GetCurrentChain()+1
ge3:SetOperation(c98941057.resetop) local e1=Effect.CreateEffect(tc)
Duel.RegisterEffect(ge3,tp) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
local ge4=ge3:Clone() e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
ge4:SetCode(EVENT_CHAIN_NEGATED) e1:SetCode(EVENT_CHAIN_SOLVED)
Duel.RegisterEffect(ge4,tp) e1:SetCountLimit(1)
e1:SetCondition(function(e,tp,eg,ep,ev,re,r,rp) return ev==ev0 end)
e1:SetOperation(c98941057.rsop)
e1:SetReset(RESET_CHAIN)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
end end
function c98941057.resetop(e,tp,eg,ep,ev,re,r,rp) function c98941057.resetop(e,tp,eg,ep,ev,re,r,rp)
if re==e:GetLabelObject() and re:IsHasType(EFFECT_TYPE_ACTIVATE) then local rc=re:GetHandler()
if e:GetCode()==EVENT_CHAIN_SOLVED and rc:IsRelateToEffect(re) then
rc:SetStatus(STATUS_EFFECT_ENABLED,true)
end
if e:GetCode()==EVENT_CHAIN_NEGATED and rc:IsRelateToEffect(re) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
rc:CancelToGrave(false)
--if KOISHI_CHECK then
--rc:SetCardData(CARDDATA_TYPE,TYPE_MONSTER+TYPE_EFFECT)
local e2=Effect.CreateEffect(rc)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_MOVE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetOperation(function(e)
--rc:SetCardData(CARDDATA_TYPE,TYPE_MONSTER+TYPE_EFFECT+TYPE_PENDULUM)
e:Reset() e:Reset()
re:Reset() end)
rc:RegisterEffect(e2)
--end
end end
re:Reset()
end end
function c98941057.desop(e,tp,eg,ep,ev,re,r,rp) function c98941057.desop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
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