Commit ce0c5a7c authored by nekrozar's avatar nekrozar

fix

Return of the Doomed
https://www.db.yugioh-card.com/yugiohdb/faq_search.action?ope=4&cid=5109

■このターンに戦闘によって破壊され自分の墓地へ送られているモンスターがいる場合、エンドフェイズに、そのモンスターの中から1体を選び、手札に戻します。(この処理にチェーンブロックは作られません。)

Deal of Phantom
https://www.db.yugioh-card.com/yugiohdb/faq_search.action?ope=4&cid=5266
■自分の墓地にモンスターが1体も存在しない場合には「守護霊のお守り」を発動する事ができません。

Dramatic Rescue
https://www.db.yugioh-card.com/yugiohdb/faq_search.action?ope=4&cid=5299

■自分または相手のモンスターゾーンに表側表示で存在する「アマゾネス」と名のついたモンスターを対象としたモンスターの効果の発動、または、自分または相手のモンスターゾーンに表側表示で存在する「アマゾネス」と名のついたモンスターを対象とした魔法・罠カードのカードの発動に直接チェーンして発動する効果です。(魔法・罠カードの効果の発動にチェーンして発動する事はできません。)

Throwstone Unit
https://www.db.yugioh-card.com/yugiohdb/faq_search.action?ope=4&cid=5317
■「投石部隊」自身をリリースする事はできません。
■対象を取る効果ではありません。

■効果処理時に、フィールドにて適用されている「投石部隊」の攻撃力の数値以下の守備力を持つモンスター1体を、自分または相手のモンスターゾーンに表側表示で存在するモンスターの中から選び破壊します。

Checkmate
https://www.db.yugioh-card.com/yugiohdb/faq_search.action?ope=4&cid=5787
■先攻1ターン目やメインフェイズ2に「ディスカバード・アタック」を発動する事はできません。

Dekoichi the Battlechanted Locomotive
https://www.db.yugioh-card.com/yugiohdb/faq_search.action?ope=4&cid=6201
■『カードを1枚ドローする』処理と、『自分フィールド上に「魔貨物車両
ボコイチ」が表側表示で存在する場合、さらにその枚数分カードをドローする』処理は同時に行われる扱いではありません。(2回のドローが行われる扱いとなります。)

Overpowering Eye
https://www.db.yugioh-card.com/yugiohdb/faq_search.action?ope=4&cid=6291
■先攻1ターン目のメインフェイズ1に発動する事はできません。
■メインフェイズ2に発動する事はできません。

Guardian Statue
https://www.db.yugioh-card.com/yugiohdb/faq_search.action?ope=4&cid=6330

■『相手フィールド上モンスター1体を持ち主の手札に戻す』効果の処理時に対象のモンスターのコントロールが自分に移っている場合には、効果処理は適用されません。

Medusa Worm
https://www.db.yugioh-card.com/yugiohdb/faq_search.action?ope=4&cid=6331
■『相手フィールド上モンスター1体を破壊する』効果の処理時に対象のモンスターのコントロールが自分に移っている場合には、効果処理は適用されません。

Natural Disaster
https://www.db.yugioh-card.com/yugiohdb/faq_search.action?ope=4&cid=7272

■『「雲魔物」と名のついたモンスターの効果によって、相手のコントロールするカードが破壊され墓地へ送られる度に、相手ライフに500ポイントダメージを与える』効果は、「ナチュラル・ディザスター」のカードの発動と同時に効果を発動する事はできません。「ナチュラル・ディザスター」が魔法&罠ゾーンに表側表示で存在する状況で、「雲魔物」と名のついたモンスターの効果によって、相手のカードが破壊され墓地へ送られた時に効果が発動する事になります。
parent 872b0e74
...@@ -21,7 +21,7 @@ function c18158397.cfilter(c,tp) ...@@ -21,7 +21,7 @@ function c18158397.cfilter(c,tp)
end end
function c18158397.condition(e,tp,eg,ep,ev,re,r,rp) function c18158397.condition(e,tp,eg,ep,ev,re,r,rp)
return bit.band(r,0x41)==0x41 and re and re:GetHandler():IsSetCard(0x18) return bit.band(r,0x41)==0x41 and re and re:GetHandler():IsSetCard(0x18)
and eg:IsExists(c18158397.cfilter,1,nil,1-tp) and eg:IsExists(c18158397.cfilter,1,nil,1-tp) and e:GetHandler():IsStatus(STATUS_EFFECT_ENABLED)
end end
function c18158397.target(e,tp,eg,ep,ev,re,r,rp,chk) function c18158397.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsRelateToEffect(e) end if chk==0 then return e:GetHandler():IsRelateToEffect(e) end
......
...@@ -18,12 +18,10 @@ end ...@@ -18,12 +18,10 @@ end
function c19827717.activate(e,tp,eg,ep,ev,re,r,rp) function c19827717.activate(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetDescription(aux.Stringid(19827717,0)) e1:SetDescription(aux.Stringid(19827717,0))
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_PHASE+PHASE_END) e1:SetCode(EVENT_PHASE+PHASE_END)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCountLimit(1) e1:SetCountLimit(1)
e1:SetCondition(c19827717.retcon) e1:SetCondition(c19827717.retcon)
e1:SetTarget(c19827717.rettg)
e1:SetOperation(c19827717.retop) e1:SetOperation(c19827717.retop)
e1:SetReset(RESET_PHASE+PHASE_END) e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
...@@ -33,20 +31,13 @@ function c19827717.filter(c,tid) ...@@ -33,20 +31,13 @@ function c19827717.filter(c,tid)
end end
function c19827717.retcon(e,tp,eg,ep,ev,re,r,rp) function c19827717.retcon(e,tp,eg,ep,ev,re,r,rp)
local tid=Duel.GetTurnCount() local tid=Duel.GetTurnCount()
return Duel.IsExistingMatchingCard(c19827717.filter,tp,LOCATION_GRAVE,0,1,nil,tid) return Duel.IsExistingMatchingCard(aux.NecroValleyFilter(c19827717.filter),tp,LOCATION_GRAVE,0,1,nil,tid)
end
function c19827717.rettg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local tid=Duel.GetTurnCount()
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c19827717.filter(chkc,tid) end
if chk==0 then return Duel.IsExistingTarget(c19827717.filter,tp,LOCATION_GRAVE,0,1,nil,tid) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectTarget(tp,c19827717.filter,tp,LOCATION_GRAVE,0,1,1,nil,tid)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
end end
function c19827717.retop(e,tp,eg,ep,ev,re,r,rp) function c19827717.retop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
if tc:IsRelateToEffect(e) then local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c19827717.filter),tp,LOCATION_GRAVE,0,1,1,nil,tid)
Duel.SendtoHand(tc,nil,REASON_EFFECT) if g:GetCount()>0 then
Duel.ConfirmCards(1-tp,tc) Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end end
end end
...@@ -41,7 +41,7 @@ function c2694423.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -41,7 +41,7 @@ function c2694423.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end end
function c2694423.desop(e,tp,eg,ep,ev,re,r,rp) function c2694423.desop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc and tc:IsRelateToEffect(e) then if tc and tc:IsRelateToEffect(e) and tc:IsControler(1-tp) then
Duel.Destroy(tc,REASON_EFFECT) Duel.Destroy(tc,REASON_EFFECT)
end end
end end
\ No newline at end of file
...@@ -5,10 +5,14 @@ function c60577362.initial_effect(c) ...@@ -5,10 +5,14 @@ function c60577362.initial_effect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCondition(c60577362.condition)
e1:SetTarget(c60577362.target) e1:SetTarget(c60577362.target)
e1:SetOperation(c60577362.activate) e1:SetOperation(c60577362.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c60577362.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsAbleToEnterBP()
end
function c60577362.filter(c) function c60577362.filter(c)
return c:IsFaceup() and c:IsAttackBelow(2000) and c:IsRace(RACE_ZOMBIE) return c:IsFaceup() and c:IsAttackBelow(2000) and c:IsRace(RACE_ZOMBIE)
end end
......
...@@ -17,7 +17,8 @@ function c69122763.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -17,7 +17,8 @@ function c69122763.condition(e,tp,eg,ep,ev,re,r,rp)
end end
function c69122763.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c69122763.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil)
and Duel.IsExistingMatchingCard(Card.IsType,tp,LOCATION_GRAVE,0,1,nil,TYPE_MONSTER) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
end end
......
...@@ -5,11 +5,15 @@ function c69313735.initial_effect(c) ...@@ -5,11 +5,15 @@ function c69313735.initial_effect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCondition(c69313735.condition)
e1:SetCost(c69313735.cost) e1:SetCost(c69313735.cost)
e1:SetTarget(c69313735.target) e1:SetTarget(c69313735.target)
e1:SetOperation(c69313735.activate) e1:SetOperation(c69313735.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c69313735.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsAbleToEnterBP()
end
function c69313735.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c69313735.cost(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetLabel(1) e:SetLabel(1)
return true return true
......
...@@ -41,7 +41,7 @@ function c75209824.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -41,7 +41,7 @@ function c75209824.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end end
function c75209824.thop(e,tp,eg,ep,ev,re,r,rp) function c75209824.thop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc and tc:IsRelateToEffect(e) then if tc and tc:IsRelateToEffect(e) and tc:IsControler(1-tp) then
Duel.SendtoHand(tc,nil,REASON_EFFECT) Duel.SendtoHand(tc,nil,REASON_EFFECT)
end end
end end
\ No newline at end of file
...@@ -4,7 +4,6 @@ function c76075810.initial_effect(c) ...@@ -4,7 +4,6 @@ function c76075810.initial_effect(c)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(76075810,0)) e1:SetDescription(aux.Stringid(76075810,0))
e1:SetCategory(CATEGORY_DESTROY) e1:SetCategory(CATEGORY_DESTROY)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCost(c76075810.descost) e1:SetCost(c76075810.descost)
...@@ -13,30 +12,28 @@ function c76075810.initial_effect(c) ...@@ -13,30 +12,28 @@ function c76075810.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c76075810.descost(e,tp,eg,ep,ev,re,r,rp,chk) function c76075810.descost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,Card.IsRace,1,nil,RACE_WARRIOR) end local c=e:GetHandler()
local g=Duel.SelectReleaseGroup(tp,Card.IsRace,1,1,nil,RACE_WARRIOR) if chk==0 then return Duel.CheckReleaseGroup(tp,Card.IsRace,1,c,RACE_WARRIOR) end
local g=Duel.SelectReleaseGroup(tp,Card.IsRace,1,1,c,RACE_WARRIOR)
Duel.Release(g,REASON_EFFECT) Duel.Release(g,REASON_EFFECT)
end end
function c76075810.filter(c,atk) function c76075810.filter(c,atk)
return c:IsFaceup() and c:IsDefenseBelow(atk-1) return c:IsFaceup() and c:IsDefenseBelow(atk)
end end
function c76075810.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c76075810.destg(e,tp,eg,ep,ev,re,r,rp,chk)
local atk=e:GetHandler():GetAttack() local atk=e:GetHandler():GetAttack()
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c76075810.filter(chkc,atk) end if chk==0 then return Duel.IsExistingMatchingCard(c76075810.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil,atk) end
if chk==0 then return Duel.IsExistingTarget(c76075810.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil,atk) end local g=Duel.GetMatchingGroup(c76075810.filter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,atk)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,c76075810.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil,atk)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
e:SetLabel(atk)
end end
function c76075810.desop(e,tp,eg,ep,ev,re,r,rp) function c76075810.desop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local atk=e:GetLabel() if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
if c:IsRelateToEffect(e) and c:IsFaceup() then local atk=c:GetAttack()
atk=c:GetAttack() Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
end local g=Duel.SelectMatchingCard(tp,c76075810.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil,atk)
local tc=Duel.GetFirstTarget() if g:GetCount()>0 then
if tc and tc:IsFaceup() and tc:IsRelateToEffect(e) and c76075810.filter(tc,atk) then Duel.HintSelection(g)
Duel.Destroy(tc,REASON_EFFECT) Duel.Destroy(g,REASON_EFFECT)
end end
end end
...@@ -14,7 +14,7 @@ function c80193355.cfilter(c) ...@@ -14,7 +14,7 @@ function c80193355.cfilter(c)
return c:IsLocation(LOCATION_MZONE) and c:IsFaceup() and c:IsSetCard(0x4) return c:IsLocation(LOCATION_MZONE) and c:IsFaceup() and c:IsSetCard(0x4)
end end
function c80193355.condition(e,tp,eg,ep,ev,re,r,rp) function c80193355.condition(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c80193355.cfilter,1,nil) return (re:IsActiveType(TYPE_MONSTER) or re:IsHasType(EFFECT_TYPE_ACTIVATE)) and eg:IsExists(c80193355.cfilter,1,nil)
end end
function c80193355.spfilter(c,e,tp,g) function c80193355.spfilter(c,e,tp,g)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and (not g or not g:IsContains(c)) return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and (not g or not g:IsContains(c))
......
...@@ -16,10 +16,14 @@ function c87621407.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -16,10 +16,14 @@ function c87621407.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
local ct=Duel.GetMatchingGroupCount(c87621407.filter,tp,LOCATION_ONFIELD,0,nil) local ct=Duel.GetMatchingGroupCount(c87621407.filter,tp,LOCATION_ONFIELD,0,nil)
Duel.SetTargetPlayer(tp) Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(ct+1) Duel.SetTargetParam(1)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,ct+1) Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,ct+1)
end end
function c87621407.operation(e,tp,eg,ep,ev,re,r,rp) function c87621407.operation(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM) local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Draw(p,d,REASON_EFFECT) local ct=Duel.GetMatchingGroupCount(c87621407.filter,tp,LOCATION_ONFIELD,0,nil)
if Duel.Draw(p,d,REASON_EFFECT)~=0 and ct>0 then
Duel.BreakEffect()
Duel.Draw(p,ct,REASON_EFFECT)
end
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