Commit d5e1cd0f authored by POLYMER's avatar POLYMER

fix

parent a66458ec
...@@ -51,7 +51,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp) ...@@ -51,7 +51,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_MOVE) e2:SetCode(EVENT_MOVE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_DELAY)
e2:SetCondition(cm.mvcon) e2:SetCondition(cm.mvcon)
e2:SetOperation(cm.mvop1) e2:SetOperation(cm.mvop1)
e2:SetReset(RESET_EVENT+RESETS_STANDARD) e2:SetReset(RESET_EVENT+RESETS_STANDARD)
......
...@@ -52,7 +52,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp) ...@@ -52,7 +52,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_MOVE) e2:SetCode(EVENT_MOVE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_DELAY)
e2:SetCondition(cm.mvcon) e2:SetCondition(cm.mvcon)
e2:SetOperation(cm.mvop1) e2:SetOperation(cm.mvop1)
e2:SetReset(RESET_EVENT+RESETS_STANDARD) e2:SetReset(RESET_EVENT+RESETS_STANDARD)
......
...@@ -50,7 +50,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp) ...@@ -50,7 +50,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_MOVE) e2:SetCode(EVENT_MOVE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_DELAY)
e2:SetCondition(cm.mvcon) e2:SetCondition(cm.mvcon)
e2:SetOperation(cm.mvop1) e2:SetOperation(cm.mvop1)
e2:SetReset(RESET_EVENT+RESETS_STANDARD) e2:SetReset(RESET_EVENT+RESETS_STANDARD)
......
...@@ -52,7 +52,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp) ...@@ -52,7 +52,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_MOVE) e2:SetCode(EVENT_MOVE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_DELAY)
e2:SetCondition(cm.mvcon) e2:SetCondition(cm.mvcon)
e2:SetOperation(cm.mvop1) e2:SetOperation(cm.mvop1)
e2:SetReset(RESET_EVENT+RESETS_STANDARD) e2:SetReset(RESET_EVENT+RESETS_STANDARD)
......
...@@ -52,7 +52,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp) ...@@ -52,7 +52,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_MOVE) e2:SetCode(EVENT_MOVE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_DELAY)
e2:SetCondition(cm.mvcon) e2:SetCondition(cm.mvcon)
e2:SetOperation(cm.mvop1) e2:SetOperation(cm.mvop1)
e2:SetReset(RESET_EVENT+RESETS_STANDARD) e2:SetReset(RESET_EVENT+RESETS_STANDARD)
......
...@@ -64,7 +64,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp) ...@@ -64,7 +64,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_MOVE) e2:SetCode(EVENT_MOVE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_DELAY)
e2:SetCondition(cm.mvcon) e2:SetCondition(cm.mvcon)
e2:SetOperation(cm.mvop1) e2:SetOperation(cm.mvop1)
e2:SetReset(RESET_EVENT+RESETS_STANDARD) e2:SetReset(RESET_EVENT+RESETS_STANDARD)
......
...@@ -9,6 +9,7 @@ function cm.initial_effect(c) ...@@ -9,6 +9,7 @@ function cm.initial_effect(c)
e3:SetLabelObject(c) e3:SetLabelObject(c)
e3:SetCondition(cm.discon) e3:SetCondition(cm.discon)
e3:SetOperation(cm.disop) e3:SetOperation(cm.disop)
--pnfl.continuouseffect(e3)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_GRANT) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_GRANT)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
...@@ -23,6 +24,11 @@ function cm.initial_effect(c) ...@@ -23,6 +24,11 @@ function cm.initial_effect(c)
--e6:SetCondition(cm.discon) --e6:SetCondition(cm.discon)
e6:SetOperation(cm.disop) e6:SetOperation(cm.disop)
c:RegisterEffect(e6) c:RegisterEffect(e6)
local e7=Effect.CreateEffect(c)
e7:SetType(EFFECT_TYPE_SINGLE)
e7:SetCode(m)
e7:SetRange(LOCATION_MZONE)
c:RegisterEffect(e7)
--cm[c]=e6 --cm[c]=e6
--tohand --tohand
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -30,7 +36,7 @@ function cm.initial_effect(c) ...@@ -30,7 +36,7 @@ function cm.initial_effect(c)
--e1:SetCode(EVENT_LEAVE_FIELD_P) --e1:SetCode(EVENT_LEAVE_FIELD_P)
e1:SetCode(EFFECT_SEND_REPLACE) e1:SetCode(EFFECT_SEND_REPLACE)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) --e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetTarget(cm.leaveop) e1:SetTarget(cm.leaveop)
e1:SetValue(aux.FALSE) e1:SetValue(aux.FALSE)
local e4=e2:Clone() local e4=e2:Clone()
...@@ -71,13 +77,19 @@ end ...@@ -71,13 +77,19 @@ end
function cm.discon(e,tp,eg,ep,ev,re,r,rp) function cm.discon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local loc=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION) local loc=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION)
if loc&LOCATION_ONFIELD~=0 and not c:IsDisabled() then cm.chainout[c:GetControler()][#cm.chainout[c:GetControler()]+1]=c end if loc&LOCATION_ONFIELD~=0 and not c:IsDisabled() then
local tab=cm.chainout[c:GetControler()]
--[[for _,tc in ipairs(tab) do
if c==tc then c=nil end
end--]]
if c then tab[#tab+1]=c end
end
return loc&LOCATION_ONFIELD~=0 return loc&LOCATION_ONFIELD~=0
end end
function cm.disop(e,tp,eg,ep,ev,re,r,rp) function cm.disop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local lastc=(#cm.chainout[1-Duel.GetTurnPlayer()]==0 and cm.chainout[c:GetControler()][(#cm.chainout[c:GetControler()])]==c) or (c:GetControler()==1-Duel.GetTurnPlayer() and cm.chainout[c:GetControler()][(#cm.chainout[c:GetControler()])]==c) local lastc=(#cm.chainout[1-Duel.GetTurnPlayer()]==0 and cm.chainout[c:GetControler()][(#cm.chainout[c:GetControler()])]==c) or (c:GetControler()==1-Duel.GetTurnPlayer() and cm.chainout[c:GetControler()][(#cm.chainout[c:GetControler()])]==c)
if c==e:GetLabelObject() and not lastc then return end if c:IsHasEffect(m) and not lastc and e:GetCode()==EVENT_CHAIN_SOLVING then return end
if Duel.Remove(c,0,REASON_EFFECT+REASON_TEMPORARY)~=0 and c:IsLocation(LOCATION_REMOVED) and not c:IsReason(REASON_REDIRECT) then --and c:GetOriginalCode()==m then if Duel.Remove(c,0,REASON_EFFECT+REASON_TEMPORARY)~=0 and c:IsLocation(LOCATION_REMOVED) and not c:IsReason(REASON_REDIRECT) then --and c:GetOriginalCode()==m then
if Duel.GetCurrentPhase()==PHASE_STANDBY then if Duel.GetCurrentPhase()==PHASE_STANDBY then
local tid=Duel.GetTurnCount() local tid=Duel.GetTurnCount()
......
...@@ -34,6 +34,7 @@ function c71404007.initial_effect(c) ...@@ -34,6 +34,7 @@ function c71404007.initial_effect(c)
e3:SetCategory(CATEGORY_SPECIAL_SUMMON) e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_REMOVE) e3:SetCode(EVENT_REMOVE)
e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCountLimit(1,id+100000) e3:SetCountLimit(1,id+100000)
e3:SetCost(yume.stellar_memories.LimitCost) e3:SetCost(yume.stellar_memories.LimitCost)
e3:SetTarget(yume.stellar_memories.LinkSummonTg) e3:SetTarget(yume.stellar_memories.LinkSummonTg)
......
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