Commit 5dfbe6c0 authored by POLYMER's avatar POLYMER

fix

parent 3d5b33aa
......@@ -1916,7 +1916,7 @@
31421008 0
53796085 0
60002128 0
60002257 0
60002257 1
60002258 0
60002279 0
11451739 1
......@@ -5387,6 +5387,10 @@
70007564 0
70007565 0
70007567 0
22020810 0
22022090 0
22022770 0
22022880 0
#limit
33403513 1
82204250 0
......@@ -5650,6 +5654,7 @@
25800552 1
25800556 1
14000096 1
53796027 1
#semi limit
9950623 2
9950045 2
......@@ -6542,6 +6547,12 @@
65130460 0
65130465 0
65130475 0
53796161 0
53796162 0
53796163 0
88881043 0
88881044 0
88881045 0
!THE WILDEST LIST
#forbidden
44910027 0
......
......@@ -151,6 +151,18 @@ function cm.initial_effect(c)
local tg=ng:RandomSelect(sp,1)
if tg:GetFirst() and tg:GetFirst():IsLocation(LOCATION_DECK+LOCATION_EXTRA) then Duel.ConfirmCards(sp,tg) end
return tg
elseif Duel.GetFlagEffect(0,m)>0 and min<=0 and max==1 then
local ng=g:Clone()
if aux.GetValueType(nc)=="Card" then ng:RemoveCard(nc) end
if aux.GetValueType(nc)=="Group" then ng:Sub(nc) end
if not Duel.SelectYesNo(sp,aux.Stringid(m,2)) then return Group.CreateGroup() end
Duel.Hint(HINT_CARD,0,m)
--local ct=Duel.GetFlagEffectLabel(sp,m)
--Duel.SetFlagEffectLabel(sp,m,ct+1)
cm[sp]=cm[sp]+1
local tg=ng:RandomSelect(sp,1)
if tg:GetFirst() and tg:GetFirst():IsLocation(LOCATION_DECK+LOCATION_EXTRA) then Duel.ConfirmCards(sp,tg) end
return tg
else
return _Select(g,sp,min,max,nc)
end
......@@ -289,6 +301,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
ac=nil
end
for i=1,ct1 do
Duel.Hint(HINT_CARD,0,tab1[i])
g1:AddCard(Duel.CreateToken(tp,tab1[i]))
end
if #g1>0 then
......@@ -366,6 +379,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
ac=nil
end
for i=1,ct2 do
Duel.Hint(HINT_CARD,0,tab2[i])
g2:AddCard(Duel.CreateToken(1-tp,tab2[i]))
end
if #g2>0 then
......
......@@ -19,6 +19,7 @@ function cm.costtg(e,te,tp)
end
function cm.costop(e,tp,eg,ep,ev,re,r,rp)
local ac=Duel.AnnounceCard(e:GetHandlerPlayer())
e:GetHandler():SetHint(CHINT_CARD,ac)
if e:GetLabelObject():IsOriginalCodeRule(ac) then
if Duel.CheckLPCost(tp,3000) and Duel.SelectYesNo(tp,aux.Stringid(m,0)) then
Duel.PayLPCost(tp,3000)
......@@ -28,11 +29,14 @@ function cm.costop(e,tp,eg,ep,ev,re,r,rp)
e1:SetCode(EVENT_CHAIN_SOLVING)
e1:SetOperation(cm.ngop)
e1:SetReset(RESET_CHAIN)
e1:SetLabel(ev+1)
e1:SetLabel(Duel.GetCurrentChain()+1)
Duel.RegisterEffect(e1,tp)
end
end
end
function cm.ngop(e,tp,eg,ep,ev,re,r,rp)
if e:GetLabel()==ev then Duel.NegateEffect(ev) end
if e:GetLabel()==ev then
Duel.Hint(HINT_CARD,0,m)
Duel.NegateEffect(ev)
end
end
\ No newline at end of file
......@@ -64,7 +64,7 @@ function cm.costop(e,tp,eg,ep,ev,re,r,rp)
e1:SetCode(EFFECT_CANNOT_INACTIVATE)
e1:SetValue(cm.efilter)
e1:SetReset(RESET_CHAIN)
e1:SetLabel(ev+1)
e1:SetLabel(Duel.GetCurrentChain()+1)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_DISEFFECT)
......
......@@ -148,7 +148,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
end
end
function cm.thfilter(c,tp)
return c:IsType(TYPE_SPELL) and c:IsType(TYPE_CONTINUOUS) and c:GetActivateEffect():IsActivatable(tp)
return c:IsType(TYPE_SPELL) and c:IsType(TYPE_CONTINUOUS) and c:GetActivateEffect():IsActivatable(tp,false,true)
end
function cm.drop(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler())
......
......@@ -66,7 +66,7 @@ function cm.check0(e,tp,eg,ep,ev,re,r,rp)
if st&SUMMON_TYPE_RITUAL>0 then cm[1]=true end
return _IsCanBeSpecialSummoned(c,e,st,...)
end
--tg(e,tp,eg,ep,ev,re,r,rp,0)
tg(e,tp,eg,ep,ev,re,r,rp,0)
--Card.IsCanBeSpecialSummoned=_IsCanBeSpecialSummoned
if cm[1] then cm[re]=true end
cm[1]=nil
......
......@@ -131,7 +131,7 @@ function cm.costop2(e,tp,eg,ep,ev,re,r,rp)
local sumg=Duel.GetMatchingGroup(Card.IsSummonable,tp,LOCATION_HAND+LOCATION_MZONE,0,nil,true,nil)
local b1=(cm[tp]&0x1>0 and #thg>0)
local b2=(cm[tp]&0x2>0 and #spg>0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0)
local b3=(cm[tp]&0x4>0 and #sumg>0)
local b3=(cm[tp]&0x4>0)
if not (b1 or b2 or b3) then return end
local off=1
local ops,opval={},{}
......@@ -230,7 +230,14 @@ function cm.costop2(e,tp,eg,ep,ev,re,r,rp)
end
elseif sel==2 then
cm[tp]=cm[tp]-4
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SUMMON)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_CHAIN_SOLVED)
e1:SetCondition(function(e,tp,eg,ep,ev,re,r,rp) return re:GetActiveType()==TYPE_SPELL and re:IsHasType(EFFECT_TYPE_ACTIVATE) and rp==tp end)
e1:SetOperation(cm.sumop2)
e1:SetReset(RESET_PHASE+PHASE_END,2)
Duel.RegisterEffect(e1,tp)
--[[Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SUMMON)
local tc=sumg:Select(tp,1,1,nil):GetFirst()
if tc then
local sc=e:GetHandler()
......@@ -247,7 +254,7 @@ function cm.costop2(e,tp,eg,ep,ev,re,r,rp)
end
Duel.HintSelection(Group.FromCards(tc))
Duel.Summon(tp,tc,true,nil)
end
end--]]
end
end
te:SetOperation(op2)
......@@ -256,7 +263,7 @@ function cm.costop2(e,tp,eg,ep,ev,re,r,rp)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e1:SetCode(EVENT_CHAIN_SOLVED)
e1:SetCountLimit(1)
e1:SetLabel(ev+1)
e1:SetLabel(Duel.GetCurrentChain()+1)
e1:SetCondition(function(e,tp,eg,ep,ev,re,r,rp) return ev==e:GetLabel() end)
e1:SetOperation(function(e,tp,eg,ep,ev,re,r,rp) re:SetOperation(op0) end)
e1:SetReset(RESET_CHAIN)
......@@ -274,6 +281,17 @@ function cm.effcon2(e,tp,eg,ep,ev,re,r,rp)
local tc=eg:GetFirst()
return tc:IsType(TYPE_NORMAL) and tc:IsSummonableCard()
end
function cm.sumop2(e,tp,eg,ep,ev,re,r,rp)
local sumg=Duel.GetMatchingGroup(Card.IsSummonable,tp,LOCATION_HAND+LOCATION_MZONE,0,nil,true,nil)
if #sumg>0 and Duel.SelectYesNo(tp,aux.Stringid(m,5)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SUMMON)
local tc=sumg:Select(tp,1,1,nil):GetFirst()
if tc then
--Duel.HintSelection(Group.FromCards(tc))
Duel.Summon(tp,tc,true,nil)
end
end
end
function cm.regop2(e,tp,eg,ep,ev,re,r,rp)
local sc=e:GetLabelObject()
local code=sc:GetOriginalCode()
......
......@@ -46,9 +46,8 @@ end
function c22022090.spcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
local g=Duel.GetMatchingGroup(c22022090.spcfilter,tp,LOCATION_MZONE,0,nil)
local rg=Duel.GetReleaseGroup(tp)
return (g:GetCount()>0 or rg:GetCount()>0) and g:FilterCount(Card.IsReleasable,nil)==g:GetCount()
local rg=Duel.GetMatchingGroup(c22022090.spcfilter,tp,LOCATION_MZONE,0,nil,tp)
return rg:GetCount()>0 and rg:FilterCount(Card.IsReleasable,nil)==rg:GetCount() and aux.mzctcheck(rg,tp)
end
function c22022090.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.GetMatchingGroup(c22022090.spcfilter,tp,LOCATION_MZONE,0,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