Skip to content

Commit 26ac3a2

Browse files
committed
"Harpie Lady Phoenix Formation" fix
Fixed a bug where the player would be unable to activate the card if they summoned a monster from a location that is not listed by the card
1 parent c5fa0a4 commit 26ac3a2

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

official/c86308219.lua

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@
22
--Harpie Lady Phoenix Formation
33
local s,id=GetID()
44
function s.initial_effect(c)
5-
--Activate
5+
--Destroy as many monsters your opponent controls as possible, and if you do, inflict damage to your opponent equal to the highest original ATK among those monsters
66
local e1=Effect.CreateEffect(c)
7+
e1:SetDescription(aux.Stringid(id,0))
78
e1:SetCategory(CATEGORY_DESTROY+CATEGORY_DAMAGE)
89
e1:SetType(EFFECT_TYPE_ACTIVATE)
910
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
@@ -17,7 +18,7 @@ function s.initial_effect(c)
1718
end
1819
s.listed_names={CARD_HARPIE_LADY,CARD_HARPIE_LADY_SISTERS}
1920
function s.counterfilter(c)
20-
return (c:GetSummonLocation()&LOCATION_DECK|LOCATION_EXTRA)==0
21+
return (c:GetSummonLocation()&(LOCATION_DECK|LOCATION_EXTRA))==0
2122
end
2223
function s.cfilter(c)
2324
return c:IsFaceup() and c:IsCode(CARD_HARPIE_LADY,CARD_HARPIE_LADY_SISTERS)
@@ -28,6 +29,7 @@ end
2829
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
2930
if chk==0 then return Duel.GetCustomActivityCount(id,tp,ACTIVITY_SPSUMMON)==0
3031
and Duel.IsPhase(PHASE_MAIN1) end
32+
--You cannot Special Summon monsters from the Main Deck or Extra Deck the turn you activate this card
3133
local e1=Effect.CreateEffect(e:GetHandler())
3234
e1:SetType(EFFECT_TYPE_FIELD)
3335
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH)
@@ -36,6 +38,7 @@ function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
3638
e1:SetTarget(s.sumlimit)
3739
e1:SetReset(RESET_PHASE|PHASE_END)
3840
Duel.RegisterEffect(e1,tp)
41+
--You cannot conduct your Battle Phase the turn you activate this card
3942
local e2=Effect.CreateEffect(e:GetHandler())
4043
e2:SetType(EFFECT_TYPE_FIELD)
4144
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH)
@@ -55,16 +58,16 @@ function s.sumlimit(e,c,sump,sumtype,sumpos,targetp)
5558
end
5659
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
5760
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) end
58-
if chk==0 then return Duel.IsExistingTarget(aux.TRUE,tp,0,LOCATION_MZONE,1,nil) end
61+
if chk==0 then return Duel.IsExistingTarget(nil,tp,0,LOCATION_MZONE,1,nil) end
5962
local ct=Duel.GetMatchingGroupCount(s.cfilter,tp,LOCATION_MZONE,0,nil)
6063
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
61-
local g=Duel.SelectTarget(tp,aux.TRUE,tp,0,LOCATION_MZONE,ct,ct,nil)
64+
local g=Duel.SelectTarget(tp,nil,tp,0,LOCATION_MZONE,ct,ct,nil)
6265
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,#g,0,0)
6366
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,0)
6467
end
6568
function s.activate(e,tp,eg,ep,ev,re,r,rp)
6669
local g=Duel.GetTargetCards(e)
67-
if Duel.Destroy(g,REASON_EFFECT)~=0 then
70+
if Duel.Destroy(g,REASON_EFFECT)>0 then
6871
local og=Duel.GetOperatedGroup()
6972
local mg,matk=og:GetMaxGroup(Card.GetBaseAttack)
7073
if matk>0 then

0 commit comments

Comments
 (0)