Commit 4a05bbb5 authored by POLYMER's avatar POLYMER

fix

parent 0dc62105
......@@ -403,7 +403,7 @@ end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) or not Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS) then return false end
local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS):Filter(cm.tgfilter,nil,re)
if #g>0 and Duel.SelectEffectYesNo(tp,e:GetHandler()) then
if #g>0 and Duel.SelectEffectYesNo(tp,re:GetHandler(),aux.Stringid(11451858,4)) then
local fd=0
for tc in aux.Next(g) do
fd=fd|cm.getzone(tc,tp)
......@@ -426,12 +426,15 @@ function cm.desop(e,tp,eg,ep,ev,re,r,rp)
local tc=cm.GetCardsInZone(tp,fd)
if tc then Duel.Destroy(tc,REASON_EFFECT) end
end
if Duel.GetCurrentChain()==1 then op(e,tp) end
e:GetHandler():ResetFlagEffect(11451862)
if SetCardData then
Duel.Hint(24,0,aux.Stringid(11451862,2))
if Duel.GetCurrentChain()==1 then
op(e,tp)
else
Debug.Message("「急袭」任务完成!")
e:GetHandler():ResetFlagEffect(11451862)
if SetCardData then
Duel.Hint(24,0,aux.Stringid(11451862,2))
else
Debug.Message("「急袭」任务完成!")
end
end
local e6=Effect.CreateEffect(e:GetHandler())
e6:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
......
......@@ -194,7 +194,7 @@ function cm.desop(e,tp,eg,ep,ev,re,r,rp)
if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) or not Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS) then return false end
local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS):Filter(cm.tgfilter,nil,re)
local ng=Duel.GetMatchingGroup(Card.IsFaceup,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
if #g>0 and #ng>0 and Duel.SelectEffectYesNo(tp,e:GetHandler()) then
if #g>0 and #ng>0 and Duel.SelectEffectYesNo(tp,re:GetHandler(),aux.Stringid(11451858,4)) then
local tc=g:GetFirst()
if #g>1 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISABLE)
......
......@@ -208,7 +208,7 @@ function cm.desop(e,tp,eg,ep,ev,re,r,rp)
local fg=Duel.GetMatchingGroup(nil,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
local ng=Duel.GetMatchingGroup(cm.dsfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
g=g:Filter(cm.nfilter,nil,ng)
if #g>0 and Duel.SelectEffectYesNo(tp,e:GetHandler()) then
if #g>0 and Duel.SelectEffectYesNo(tp,re:GetHandler(),aux.Stringid(11451858,4)) then
local tc=g:GetFirst()
if #g>1 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET)
......
......@@ -106,7 +106,8 @@ end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local rg=Duel.GetMatchingGroup(aux.NecroValleyFilter(cm.rfilter),tp,LOCATION_GRAVE,LOCATION_GRAVE,nil)
if #rg>0 and Duel.SelectYesNo(tp,aux.Stringid(m,1)) then
local rg2=Duel.GetMatchingGroup(aux.NecroValleyFilter(cm.rfilter),tp,LOCATION_GRAVE,0,nil)
if #rg>0 and ((#rg2==0 and Duel.SelectYesNo(tp,aux.Stringid(m,3))) or Duel.SelectYesNo(tp,aux.Stringid(m,1))) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(cm.rfilter),tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil)
if #g>0 then
......@@ -214,7 +215,7 @@ end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) or not Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS) then return false end
local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS):Filter(cm.tgfilter,nil,re)
if #g>0 and Duel.SelectEffectYesNo(tp,e:GetHandler()) then
if #g>0 and Duel.SelectEffectYesNo(tp,re:GetHandler(),aux.Stringid(11451858,4)) then
local tg=g
if #g>1 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
......@@ -235,6 +236,7 @@ function cm.desop(e,tp,eg,ep,ev,re,r,rp)
e1:SetLabelObject(tc)
Duel.RegisterEffect(e1,tp)
tc:CreateEffectRelation(e1)
tc:RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,0,1,0,aux.Stringid(m,4))
end
end
end
......
......@@ -153,11 +153,16 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local fd=Duel.SelectField(tp,2,LOCATION_SZONE,0,~0x1f00)
for i=0,4 do
if fd&(1<<(8+i))>0 then
local fd1=1<<(8+i)
Duel.Hint(HINT_ZONE,tp,fd1)
local fd2=fd
if fd>=1<<16 then fd2=fd1>>16 else fd2=fd1<<16 end
Duel.Hint(HINT_ZONE,1-tp,fd2)
local table={1<<0|1<<8|1<<20|1<<28,1<<1|1<<9|1<<19|1<<27|1<<5|1<<22,1<<2|1<<10|1<<18|1<<26,1<<3|1<<11|1<<17|1<<25|1<<6|1<<21,1<<4|1<<12|1<<16|1<<24}
for j=0,32 do
if (1<<j)&(table[i+1])~=0 then
local fd1=1<<j
Duel.Hint(HINT_ZONE,tp,fd1)
local fd2=fd1
if fd1>=1<<16 then fd2=fd1>>16 else fd2=fd1<<16 end
Duel.Hint(HINT_ZONE,1-tp,fd2)
end
end
local cid=i+1
if tp==1 then cid=5-i end
cm.column=cm.column|(1<<cid)
......
......@@ -76,6 +76,14 @@ function c79029520.negop(e,tp,eg,ep,ev,re,r,rp)
tc:RegisterEffect(e2)
tc=g:GetNext()
end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetTargetRange(0,1)
e1:SetValue(aux.TRUE)
e1:SetReset(RESET_PHASE+PHASE_BATTLE)
Duel.RegisterEffect(e1,tp)
end
function c79029520.condition(e,tp,eg,ep,ev,re,r,rp)
local rc=re: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