Commit 3c592808 authored by Nemo Ma's avatar Nemo Ma

fix

parent 157af30d
......@@ -57,6 +57,12 @@ function cm.initial_effect(c)
c:RegisterEffect(e6)
if not cm.global_check then
cm.global_check=true
local ge0=Effect.CreateEffect(c)
ge0:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
ge0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge0:SetCode(EVENT_PHASE_START+PHASE_DRAW)
ge0:SetOperation(cm.geop)
Duel.RegisterEffect(ge0,0)
local _IsActiveType=Effect.IsActiveType
local _GetActiveType=Effect.GetActiveType
function Effect.GetActiveType(e)
......@@ -79,15 +85,8 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
local res=true
if KOISHI_CHECK and cm[tp] then
--[[Duel.DisableActionCheck(true)
if not cm[tp] then
cm[tp]=Duel.CreateToken(tp,m)
end
local dc=cm[tp]
Duel.DisableActionCheck(false)--]]
res=cm[tp]:GetActivateEffect():IsActivatable(tp,true)
else
Debug.Message("11")
res=(c:CheckActivateEffect(false,false,false)~=nil)
end
return res and ((Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsLocation(LOCATION_HAND)) or (Duel.GetLocationCountFromEx(tp,tp,nil,c)>0 and c:IsLocation(LOCATION_EXTRA)))
......@@ -221,6 +220,19 @@ function cm.costop(e,tp,eg,ep,ev,re,r,rp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
--control
local e3=Effect.CreateEffect(c)
e3:SetCode(EFFECT_CANNOT_CHANGE_CONTROL)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetRange(LOCATION_MZONE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_CHAIN)
c:RegisterEffect(e3,true)
local e4=e2:Clone()
e4:SetCode(EVENT_CHAINING)
e4:SetLabelObject(e2)
e4:SetOperation(function(e) e:GetLabelObject():Reset() end)
Duel.RegisterEffect(e4,tp)
end
function cm.rsop(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler()
......@@ -282,9 +294,11 @@ end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(e:GetHandler(),REASON_EFFECT)
end
Duel.DisableActionCheck(true)
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
Duel.DisableActionCheck(false)
\ No newline at end of file
function cm.geop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
e:Reset()
end
\ No newline at end of file
......@@ -67,6 +67,12 @@ function cm.initial_effect(c)
c:RegisterEffect(e6)
if not cm.global_check then
cm.global_check=true
local ge0=Effect.CreateEffect(c)
ge0:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
ge0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge0:SetCode(EVENT_PHASE_START+PHASE_DRAW)
ge0:SetOperation(cm.geop)
Duel.RegisterEffect(ge0,0)
local _IsActiveType=Effect.IsActiveType
local _GetActiveType=Effect.GetActiveType
function Effect.GetActiveType(e)
......@@ -213,6 +219,19 @@ function cm.costop(e,tp,eg,ep,ev,re,r,rp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
--control
local e3=Effect.CreateEffect(c)
e3:SetCode(EFFECT_CANNOT_CHANGE_CONTROL)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetRange(LOCATION_MZONE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_CHAIN)
c:RegisterEffect(e3,true)
local e4=e2:Clone()
e4:SetCode(EVENT_CHAINING)
e4:SetLabelObject(e2)
e4:SetOperation(function(e) e:GetLabelObject():Reset() end)
Duel.RegisterEffect(e4,tp)
end
function cm.rsop(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler()
......@@ -279,9 +298,11 @@ end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(e:GetHandler(),REASON_EFFECT)
end
Duel.DisableActionCheck(true)
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
Duel.DisableActionCheck(false)
\ No newline at end of file
function cm.geop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
e:Reset()
end
\ No newline at end of file
......@@ -56,6 +56,12 @@ function cm.initial_effect(c)
c:RegisterEffect(e6)
if not cm.global_check then
cm.global_check=true
local ge0=Effect.CreateEffect(c)
ge0:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
ge0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge0:SetCode(EVENT_PHASE_START+PHASE_DRAW)
ge0:SetOperation(cm.geop)
Duel.RegisterEffect(ge0,0)
local _IsActiveType=Effect.IsActiveType
local _GetActiveType=Effect.GetActiveType
function Effect.GetActiveType(e)
......@@ -160,6 +166,19 @@ function cm.costop(e,tp,eg,ep,ev,re,r,rp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
--control
local e3=Effect.CreateEffect(c)
e3:SetCode(EFFECT_CANNOT_CHANGE_CONTROL)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetRange(LOCATION_MZONE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_CHAIN)
c:RegisterEffect(e3,true)
local e4=e2:Clone()
e4:SetCode(EVENT_CHAINING)
e4:SetLabelObject(e2)
e4:SetOperation(function(e) e:GetLabelObject():Reset() end)
Duel.RegisterEffect(e4,tp)
end
function cm.rsop(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler()
......@@ -217,9 +236,11 @@ end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(e:GetHandler(),REASON_EFFECT)
end
Duel.DisableActionCheck(true)
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
Duel.DisableActionCheck(false)
\ No newline at end of file
function cm.geop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
e:Reset()
end
\ No newline at end of file
......@@ -58,6 +58,12 @@ function cm.initial_effect(c)
c:RegisterEffect(e6)
if not cm.global_check then
cm.global_check=true
local ge0=Effect.CreateEffect(c)
ge0:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
ge0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge0:SetCode(EVENT_PHASE_START+PHASE_DRAW)
ge0:SetOperation(cm.geop)
Duel.RegisterEffect(ge0,0)
local _IsActiveType=Effect.IsActiveType
local _GetActiveType=Effect.GetActiveType
function Effect.GetActiveType(e)
......@@ -166,6 +172,19 @@ function cm.costop(e,tp,eg,ep,ev,re,r,rp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
--control
local e3=Effect.CreateEffect(c)
e3:SetCode(EFFECT_CANNOT_CHANGE_CONTROL)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetRange(LOCATION_MZONE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_CHAIN)
c:RegisterEffect(e3,true)
local e4=e2:Clone()
e4:SetCode(EVENT_CHAINING)
e4:SetLabelObject(e2)
e4:SetOperation(function(e) e:GetLabelObject():Reset() end)
Duel.RegisterEffect(e4,tp)
end
function cm.rsop(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler()
......@@ -235,9 +254,11 @@ end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(e:GetHandler(),REASON_EFFECT)
end
Duel.DisableActionCheck(true)
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
Duel.DisableActionCheck(false)
\ No newline at end of file
function cm.geop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
e:Reset()
end
\ No newline at end of file
......@@ -47,6 +47,12 @@ function cm.initial_effect(c)
c:RegisterEffect(e2)
if not cm.global_check then
cm.global_check=true
local ge0=Effect.CreateEffect(c)
ge0:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
ge0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge0:SetCode(EVENT_PHASE_START+PHASE_DRAW)
ge0:SetOperation(cm.geop)
Duel.RegisterEffect(ge0,0)
local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_DESTROYED)
......@@ -175,6 +181,19 @@ function cm.costop(e,tp,eg,ep,ev,re,r,rp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
--control
local e3=Effect.CreateEffect(c)
e3:SetCode(EFFECT_CANNOT_CHANGE_CONTROL)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetRange(LOCATION_MZONE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_CHAIN)
c:RegisterEffect(e3,true)
local e4=e2:Clone()
e4:SetCode(EVENT_CHAINING)
e4:SetLabelObject(e2)
e4:SetOperation(function(e) e:GetLabelObject():Reset() end)
Duel.RegisterEffect(e4,tp)
end
function cm.rsop(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler()
......@@ -205,9 +224,11 @@ function cm.drop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Draw(p,d,REASON_EFFECT)
end
Duel.DisableActionCheck(true)
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
Duel.DisableActionCheck(false)
\ No newline at end of file
function cm.geop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
e:Reset()
end
\ No newline at end of file
......@@ -41,6 +41,12 @@ function cm.initial_effect(c)
c:RegisterEffect(e2)
if not cm.global_check then
cm.global_check=true
local ge0=Effect.CreateEffect(c)
ge0:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
ge0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge0:SetCode(EVENT_PHASE_START+PHASE_DRAW)
ge0:SetOperation(cm.geop)
Duel.RegisterEffect(ge0,0)
local _IsActiveType=Effect.IsActiveType
local _GetActiveType=Effect.GetActiveType
function Effect.GetActiveType(e)
......@@ -133,6 +139,19 @@ function cm.costop(e,tp,eg,ep,ev,re,r,rp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
--control
local e3=Effect.CreateEffect(c)
e3:SetCode(EFFECT_CANNOT_CHANGE_CONTROL)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetRange(LOCATION_MZONE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_CHAIN)
c:RegisterEffect(e3,true)
local e4=e2:Clone()
e4:SetCode(EVENT_CHAINING)
e4:SetLabelObject(e2)
e4:SetOperation(function(e) e:GetLabelObject():Reset() end)
Duel.RegisterEffect(e4,tp)
end
function cm.rsop(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler()
......@@ -186,9 +205,11 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
end
end
end
Duel.DisableActionCheck(true)
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
Duel.DisableActionCheck(false)
\ No newline at end of file
function cm.geop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
e:Reset()
end
\ No newline at end of file
......@@ -43,6 +43,15 @@ function cm.initial_effect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetCode(EFFECT_QP_ACT_IN_NTPHAND)
c:RegisterEffect(e5)
if not cm.global_check then
cm.global_check=true
local ge0=Effect.CreateEffect(c)
ge0:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
ge0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge0:SetCode(EVENT_PHASE_START+PHASE_DRAW)
ge0:SetOperation(cm.geop)
Duel.RegisterEffect(ge0,0)
end
end
function cm.actarget(e,te,tp)
return te:GetHandler()==e:GetHandler() and te==e:GetLabelObject()
......@@ -143,9 +152,11 @@ function cm.drop(e,tp,eg,ep,ev,re,r,rp)
if g:IsExists(Card.IsLocation,1,nil,LOCATION_DECK) then Duel.ShuffleDeck(tp) end
if g:IsExists(Card.IsLocation,1,nil,LOCATION_DECK+LOCATION_EXTRA) then Duel.Draw(tp,1,REASON_EFFECT) end
end
Duel.DisableActionCheck(true)
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_QUICKPLAY+TYPE_SPELL)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_QUICKPLAY+TYPE_SPELL)
Duel.DisableActionCheck(false)
\ No newline at end of file
function cm.geop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
cm[0]=Duel.CreateToken(0,m)
cm[1]=Duel.CreateToken(1,m)
cm[0]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
cm[1]:SetCardData(CARDDATA_TYPE,TYPE_TRAP)
e:Reset()
end
\ No newline at end of file
......@@ -14,7 +14,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_GRAVE)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetCountLimit(1,34512018)
......
......@@ -13,7 +13,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_TOGRAVE)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_GRAVE)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL)
......
......@@ -13,7 +13,7 @@ function cm.initial_effect(c)
e1:SetOperation(cm.recop)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_GRAVE)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetCountLimit(1,34512024)
......
......@@ -61,7 +61,7 @@ function c67200921.desop1(e,tp,eg,ep,ev,re,r,rp)
if #g==0 then return end
Duel.HintSelection(g)
local tc=g:GetFirst()
if tc and and Duel.SelectYesNo(tp,aux.Stringid(67200921,3)) then
if tc and Duel.SelectYesNo(tp,aux.Stringid(67200921,3)) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SET_ATTACK_FINAL)
......
......@@ -16,6 +16,7 @@ function c67210000.initial_effect(c)
e1:SetOperation(c67210000.operation)
c:RegisterEffect(e1)
end
c67210000.SetCard_Relics=true
function c67210000.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsReleasable() end
Duel.Release(e:GetHandler(),REASON_COST)
......
......@@ -16,6 +16,7 @@ function c67210001.initial_effect(c)
e1:SetOperation(c67210001.operation)
c:RegisterEffect(e1)
end
c67210001.SetCard_Relics=true
function c67210001.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsReleasable() end
Duel.Release(e:GetHandler(),REASON_COST)
......
......@@ -14,6 +14,7 @@ function c67210002.initial_effect(c)
e1:SetOperation(c67210002.operation)
c:RegisterEffect(e1)
end
c67210002.SetCard_Relics=true
function c67210002.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsReleasable() end
Duel.Release(e:GetHandler(),REASON_COST)
......
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