Commit 92ba9202 authored by salix5's avatar salix5

fix oo族モンスター

parent 1a888aee
......@@ -37,7 +37,7 @@ function c10035717.adtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c10035717.adop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsFaceup() and tc:IsRelateToEffect(e) and tc:IsRace(RACE_MACHINE+RACE_WARRIOR) then
local atk=tc:GetAttack()
local def=tc:GetDefense()
local e1=Effect.CreateEffect(e:GetHandler())
......
......@@ -62,7 +62,7 @@ function c22056710.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c22056710.spop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) and tc:IsRace(RACE_ZOMBIE) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end
end
......@@ -33,6 +33,9 @@ end
function c22842214.filter(c)
return c:IsFaceup() and c:IsRace(RACE_FISH+RACE_AQUA+RACE_SEASERPENT) and not c:IsForbidden()
end
function c22842214.opfilter(c,e)
return c:IsRelateToEffect(e) and c22842214.filter(c)
end
function c22842214.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_REMOVED) and chkc:IsControler(tp) and c22842214.filter(chkc) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......@@ -47,7 +50,7 @@ function c22842214.eqlimit(e,c)
end
function c22842214.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(Card.IsRelateToEffect,nil,e)
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(c22842214.opfilter,nil,e)
local ft=Duel.GetLocationCount(tp,LOCATION_SZONE)
local tg=Group.CreateGroup()
if c:IsRelateToEffect(e) and c:IsFaceup() then
......
......@@ -43,7 +43,7 @@ function c23693634.sumtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c23693634.sumop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) and tc:IsRace(RACE_WARRIOR) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end
end
......@@ -42,7 +42,7 @@ end
function c24221808.rmop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)~=0 and tc:IsLocation(LOCATION_REMOVED) then
if tc:IsRelateToEffect(e) and tc:IsRace(RACE_PSYCHO) and Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)~=0 and tc:IsLocation(LOCATION_REMOVED) then
if c:IsRelateToEffect(e) then
local sg=e:GetLabelObject()
if c:GetFlagEffect(24221808)==0 then
......
......@@ -67,7 +67,7 @@ end
function c25343017.rmop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
local c=e:GetHandler()
if tc:IsRelateToEffect(e) and Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)~=0 and c:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) and tc:IsRace(RACE_PSYCHO) and Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)~=0 and c:IsRelateToEffect(e) then
tc:RegisterFlagEffect(25343017,RESET_EVENT+RESETS_STANDARD,0,0)
e:GetLabelObject():SetLabel(1)
if c:GetFlagEffect(25343017)==0 then
......
......@@ -63,7 +63,7 @@ function c25518020.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c25518020.spop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) and tc:IsRace(RACE_MACHINE) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end
end
......@@ -14,6 +14,9 @@ end
function c28741524.filter(c,e,tp)
return c:IsLevelBelow(2) and c:IsRace(RACE_PSYCHO) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c28741524.opfilter(c,e)
return c:IsRelateToEffect(e) and c:IsRace(RACE_PSYCHO)
end
function c28741524.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c28741524.filter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
......@@ -27,7 +30,7 @@ function c28741524.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,tp,lv*300)
end
function c28741524.spop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(Card.IsRelateToEffect,nil,e)
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(c28741524.opfilter,nil,e)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if ft<g:GetCount() or (g:GetCount()>1 and Duel.IsPlayerAffectedByEffect(tp,59822133)) then return end
if g:GetCount()>0 then
......
......@@ -22,7 +22,7 @@ function c5325424.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c5325424.activate(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
if tc:IsRelateToEffect(e) and tc:IsRace(RACE_DRAGON) then
Duel.SendtoHand(tc,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,tc)
end
......
......@@ -74,7 +74,7 @@ function c5973663.tg1(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function c5973663.op1(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc and tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc and tc:IsFaceup() and tc:IsRelateToEffect(e) and tc:IsRace(RACE_PLANT) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
......@@ -123,7 +123,7 @@ end
function c5973663.op3(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
local tc=Duel.GetFirstTarget()
if tc and tc:IsRelateToEffect(e) then
if tc and tc:IsRelateToEffect(e) and tc:IsRace(RACE_PLANT) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end
end
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