Commit 928f0be3 authored by Nemo Ma's avatar Nemo Ma

fix

parent b0811594
......@@ -34,7 +34,7 @@ function cm.limit(e,tp,eg,ep,ev,re,r,rp)
local p=Duel.GetTurnPlayer()
local ct=Duel.GetTurnCount()
local eset={Duel.IsPlayerAffectedByEffect(p,EFFECT_HAND_LIMIT)}
local flag=Duel.GetFlagEffectLabel(tp,11451731) or 0
local flag=Duel.GetFlagEffectLabel(p,11451731) or 0
if #eset==0 and flag>0 then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
......@@ -43,7 +43,7 @@ function cm.limit(e,tp,eg,ep,ev,re,r,rp)
e1:SetTargetRange(1,0)
e1:SetValue(6-flag)
e1:SetReset(RESET_PHASE+PHASE_DRAW)
Duel.RegisterEffect(e1,tp)
Duel.RegisterEffect(e1,p)
elseif #eset>0 and flag>0 then
for _,te in pairs(eset) do
local val=te:GetValue()
......@@ -70,7 +70,6 @@ function cm.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
e1:SetLabel(flag)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(0x10000000+11451731)
e1:SetRange(LOCATION_PZONE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT)
e1:SetTargetRange(1,0)
e1:SetReset(RESET_PHASE+PHASE_END)
......
......@@ -34,7 +34,7 @@ function cm.limit(e,tp,eg,ep,ev,re,r,rp)
local p=Duel.GetTurnPlayer()
local ct=Duel.GetTurnCount()
local eset={Duel.IsPlayerAffectedByEffect(p,EFFECT_HAND_LIMIT)}
local flag=Duel.GetFlagEffectLabel(tp,11451731) or 0
local flag=Duel.GetFlagEffectLabel(p,11451731) or 0
if #eset==0 and flag>0 then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
......@@ -43,7 +43,7 @@ function cm.limit(e,tp,eg,ep,ev,re,r,rp)
e1:SetTargetRange(1,0)
e1:SetValue(6-flag)
e1:SetReset(RESET_PHASE+PHASE_DRAW)
Duel.RegisterEffect(e1,tp)
Duel.RegisterEffect(e1,p)
elseif #eset>0 and flag>0 then
for _,te in pairs(eset) do
local val=te:GetValue()
......@@ -70,7 +70,6 @@ function cm.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
e1:SetLabel(flag)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(0x10000000+11451731)
e1:SetRange(LOCATION_PZONE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT)
e1:SetTargetRange(1,0)
e1:SetReset(RESET_PHASE+PHASE_END)
......
......@@ -34,7 +34,7 @@ function cm.limit(e,tp,eg,ep,ev,re,r,rp)
local p=Duel.GetTurnPlayer()
local ct=Duel.GetTurnCount()
local eset={Duel.IsPlayerAffectedByEffect(p,EFFECT_HAND_LIMIT)}
local flag=Duel.GetFlagEffectLabel(tp,11451731) or 0
local flag=Duel.GetFlagEffectLabel(p,11451731) or 0
if #eset==0 and flag>0 then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
......@@ -43,7 +43,7 @@ function cm.limit(e,tp,eg,ep,ev,re,r,rp)
e1:SetTargetRange(1,0)
e1:SetValue(6-flag)
e1:SetReset(RESET_PHASE+PHASE_DRAW)
Duel.RegisterEffect(e1,tp)
Duel.RegisterEffect(e1,p)
elseif #eset>0 and flag>0 then
for _,te in pairs(eset) do
local val=te:GetValue()
......@@ -70,7 +70,6 @@ function cm.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
e1:SetLabel(flag)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(0x10000000+11451731)
e1:SetRange(LOCATION_PZONE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT)
e1:SetTargetRange(1,0)
e1:SetReset(RESET_PHASE+PHASE_END)
......
......@@ -34,7 +34,7 @@ function cm.limit(e,tp,eg,ep,ev,re,r,rp)
local p=Duel.GetTurnPlayer()
local ct=Duel.GetTurnCount()
local eset={Duel.IsPlayerAffectedByEffect(p,EFFECT_HAND_LIMIT)}
local flag=Duel.GetFlagEffectLabel(tp,11451731) or 0
local flag=Duel.GetFlagEffectLabel(p,11451731) or 0
if #eset==0 and flag>0 then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
......@@ -43,7 +43,7 @@ function cm.limit(e,tp,eg,ep,ev,re,r,rp)
e1:SetTargetRange(1,0)
e1:SetValue(6-flag)
e1:SetReset(RESET_PHASE+PHASE_DRAW)
Duel.RegisterEffect(e1,tp)
Duel.RegisterEffect(e1,p)
elseif #eset>0 and flag>0 then
for _,te in pairs(eset) do
local val=te:GetValue()
......@@ -70,7 +70,6 @@ function cm.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
e1:SetLabel(flag)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(0x10000000+11451731)
e1:SetRange(LOCATION_PZONE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT)
e1:SetTargetRange(1,0)
e1:SetReset(RESET_PHASE+PHASE_END)
......
......@@ -49,7 +49,7 @@ end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
local f=tama.cosmicFighters_equipGetFormation(c)
if chk==0 then return f and f:GetCount()<c:GetFlagEffect(m) end
if chk==0 then return f and f:GetCount()>c:GetFlagEffect(m) end
c:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end
function cm.desfilter(c)
......
......@@ -46,7 +46,8 @@ function cm.desfilter(c)
end
function cm.bombtg(e,tp,eg,ep,ev,re,r,rp,chk)
local ec=e:GetHandler():GetEquipTarget()
if chk==0 then return ec and Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,ec:GetBaseAttack()) end
if chk==0 then return ec end
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,ec:GetBaseAttack())
end
function cm.bombop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
......@@ -68,7 +68,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,cm.spfilter,tp,LOCATION_MZONE,0,1,1,nil,ft,tp)
Duel.SendtoGrave(g,REASON_COST)
Duel.Hint(11,0,aux.Stringid(m,7))
Duel.Hint(HINT_MUSIC,0,aux.Stringid(m,7))
end
function cm.eqfilter(c,ec)
return c:IsSetCard(0x352) and c:IsType(TYPE_MONSTER) and c:CheckEquipTarget(ec)
......@@ -147,7 +147,7 @@ function cm.pctg(e,tp,eg,ep,ev,re,r,rp,chk)
end
function cm.pcop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if e:GetLabel()==0 then
if e:GetLabel()==1 then
local eq=c:GetEquipGroup()
local g=eq:Filter(Card.IsAbleToDeck,nil)
local op=0
......@@ -167,7 +167,7 @@ function cm.pcop(e,tp,eg,ep,ev,re,r,rp)
if tc then
Duel.Equip(tp,tc,c)
end
elseif e:GetLabel()==1 then
elseif e:GetLabel()==2 then
local atk=c:GetAttack()
local def=c:GetDefense()
local lv=c:GetLevel()
......
......@@ -31,7 +31,7 @@ function cm.initial_effect(c)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetCode(EVENT_SPSUMMON_SUCCESS)
e3:SetCondition(cm.matcon)
e3:SetTarget(cm.mattg)
e3:SetOperation(cm.matop)
c:RegisterEffect(e3)
e0:SetLabelObject(e3)
......@@ -56,12 +56,12 @@ function cm.initial_effect(c)
c:RegisterEffect(e5)
end
function cm.lvfilter(c,rc)
return c:GetSynchroLevel(rc)>0
return c:GetLevel()>0
end
function cm.valcheck(e,c)
local mg=c:GetMaterial()
local fg=mg:Filter(cm.lvfilter,nil,c)
if #fg>0 and fg:GetSum(Card.GetSynchroLevel,c)<=2 then
if #fg>0 and fg:GetSum(Card.GetLevel,c)<=2 then
e:GetLabelObject():SetLabel(1)
else
e:GetLabelObject():SetLabel(0)
......@@ -108,8 +108,12 @@ function cm.hspop(e,tp,eg,ep,ev,re,r,rp,c)
c:SetMaterial(g)
Duel.Release(g,REASON_COST)
end
function cm.matcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_SPECIAL) and e:GetLabel()==1
function cm.mattg(e,tp,eg,ep,ev,re,r,chk)
if chk==0 then
if e:GetLabel()~=1 then return false end
e:SetLabel(0)
return e:GetHandler():IsSummonType(SUMMON_TYPE_SPECIAL)
end
end
function cm.matop(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():RegisterFlagEffect(15000231,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(15000231,2))
......
......@@ -99,7 +99,7 @@ function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)==0
end
function cm.atkfilter(c)
return (c:IsRace(RACE_SPELLCASTER) or (cm.Crimsonmoon(c) and c:IsType(TYPE_MONSTER)))
return (c:IsRace(RACE_SPELLCASTER) or (cm.DragWizard(c) and c:IsType(TYPE_MONSTER)))
and c:IsDiscardable()
end
function cm.spfilter(c,e,tp)
......
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