Commit f4474215 authored by Nemo Ma's avatar Nemo Ma

Fix Anifriends PPP

parent 5184cfc1
expansions/pics/33700093.jpg

27.3 KB | W: | H:

expansions/pics/33700093.jpg

51.7 KB | W: | H:

expansions/pics/33700093.jpg
expansions/pics/33700093.jpg
expansions/pics/33700093.jpg
expansions/pics/33700093.jpg
  • 2-up
  • Swipe
  • Onion skin
...@@ -35,7 +35,7 @@ end ...@@ -35,7 +35,7 @@ end
function c33700063.condition(e,tp,eg,ep,ev,re,r,rp) function c33700063.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local rc=re and re:GetHandler() local rc=re and re:GetHandler()
return c:IsReason(REASON_EFFECT) and not c:IsReason(REASON_RULE) and c:IsPreviousLocation(LOCATION_DECK) and c:GetPreviousControler()==tp and rc and rc:IsSetCard(0x442) and Duel.GetMZoneCount(tp)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsReason(REASON_EFFECT) and not c:IsReason(REASON_RULE) and c:IsPreviousLocation(LOCATION_DECK) and c:GetPreviousControler()==tp and rc and rc:IsSetCard(0x442) and Duel.GetMZoneCount(tp)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetTurnCount()>0
end end
function c33700063.operation(e,tp,eg,ep,ev,re,r,rp) function c33700063.operation(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetMZoneCount(tp)>0 if Duel.GetMZoneCount(tp)>0
...@@ -83,4 +83,4 @@ end ...@@ -83,4 +83,4 @@ end
function c33700063.con(e) function c33700063.con(e)
local g=Duel.GetMatchingGroup(c33700063.cfilter,e:GetHandlerPlayer(),LOCATION_MZONE,0,nil) local g=Duel.GetMatchingGroup(c33700063.cfilter,e:GetHandlerPlayer(),LOCATION_MZONE,0,nil)
return g:GetClassCount(Card.GetCode)>=3 return g:GetClassCount(Card.GetCode)>=3
end end
\ No newline at end of file
...@@ -45,7 +45,7 @@ end ...@@ -45,7 +45,7 @@ end
function c33700065.condition(e,tp,eg,ep,ev,re,r,rp) function c33700065.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local rc=re and re:GetHandler() local rc=re and re:GetHandler()
return c:IsReason(REASON_EFFECT) and not c:IsReason(REASON_RULE) and c:IsPreviousLocation(LOCATION_DECK) and c:GetPreviousControler()==tp and rc and rc:IsSetCard(0x442) and Duel.GetMZoneCount(tp)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsReason(REASON_EFFECT) and not c:IsReason(REASON_RULE) and c:IsPreviousLocation(LOCATION_DECK) and c:GetPreviousControler()==tp and rc and rc:IsSetCard(0x442) and Duel.GetMZoneCount(tp)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetTurnCount()>0
end end
function c33700065.operation(e,tp,eg,ep,ev,re,r,rp) function c33700065.operation(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetMZoneCount(tp)>0 if Duel.GetMZoneCount(tp)>0
...@@ -70,19 +70,22 @@ end ...@@ -70,19 +70,22 @@ end
function c33700065.cfilter(c) function c33700065.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0x3442) return c:IsFaceup() and c:IsSetCard(0x3442)
end end
function c33700065.cfilter1(c)
return c:IsFaceup() and c:IsSetCard(0x442)
end
function c33700065.con(e) function c33700065.con(e)
local g=Duel.GetMatchingGroup(c33700065.cfilter,e:GetHandlerPlayer(),LOCATION_MZONE,0,nil) local g=Duel.GetMatchingGroup(c33700065.cfilter,e:GetHandlerPlayer(),LOCATION_MZONE,0,nil)
return g:GetClassCount(Card.GetCode)>=3 return g:GetClassCount(Card.GetCode)>=3
end end
function c33700065.tg(e,tp,eg,ep,ev,re,r,rp,chk) function c33700065.tg(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(c33700065.cfilter,tp,LOCATION_MZONE,0,nil) local ct=Duel.GetMatchingGroupCount(c33700065.cfilter1,tp,LOCATION_MZONE,0,nil)
Duel.SetTargetPlayer(tp) Duel.SetTargetPlayer(tp)
Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,ct*800) Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,ct*800)
end end
function c33700065.op(e,tp,eg,ep,ev,re,r,rp) function c33700065.op(e,tp,eg,ep,ev,re,r,rp)
local p=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER) local p=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER)
local ct=Duel.GetMatchingGroupCount(c33700065.cfilter,p,LOCATION_MZONE,0,nil) local ct=Duel.GetMatchingGroupCount(c33700065.cfilter1,p,LOCATION_MZONE,0,nil)
if ct>0 then if ct>0 then
Duel.Recover(p,ct*800,REASON_EFFECT) Duel.Recover(p,ct*800,REASON_EFFECT)
end end
...@@ -90,4 +93,4 @@ end ...@@ -90,4 +93,4 @@ end
function c33700065.damval(e,re,val,r,rp,rc) function c33700065.damval(e,re,val,r,rp,rc)
if bit.band(r,REASON_EFFECT)~=0 then return 0 end if bit.band(r,REASON_EFFECT)~=0 then return 0 end
return val return val
end end
\ No newline at end of file
...@@ -44,7 +44,7 @@ end ...@@ -44,7 +44,7 @@ end
function c33700066.condition(e,tp,eg,ep,ev,re,r,rp) function c33700066.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local rc=re and re:GetHandler() local rc=re and re:GetHandler()
return c:IsReason(REASON_EFFECT) and not c:IsReason(REASON_RULE) and c:IsPreviousLocation(LOCATION_DECK) and c:GetPreviousControler()==tp and rc and rc:IsSetCard(0x442) and Duel.GetMZoneCount(tp)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsReason(REASON_EFFECT) and not c:IsReason(REASON_RULE) and c:IsPreviousLocation(LOCATION_DECK) and c:GetPreviousControler()==tp and rc and rc:IsSetCard(0x442) and Duel.GetMZoneCount(tp)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetTurnCount()>0
end end
function c33700066.operation(e,tp,eg,ep,ev,re,r,rp) function c33700066.operation(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetMZoneCount(tp)>0 if Duel.GetMZoneCount(tp)>0
...@@ -72,7 +72,7 @@ end ...@@ -72,7 +72,7 @@ end
function c33700066.spfilter(c,e,tp) function c33700066.spfilter(c,e,tp)
return c:IsSetCard(0x442) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x442) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c33700066.condition(e,tp,eg,ep,ev,re,r,rp) function c33700066.condition1(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetCurrentPhase()~=PHASE_DAMAGE or not Duel.IsDamageCalculated() return Duel.GetCurrentPhase()~=PHASE_DAMAGE or not Duel.IsDamageCalculated()
end end
function c33700066.target1(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c33700066.target1(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -38,7 +38,7 @@ end ...@@ -38,7 +38,7 @@ end
function c33700067.condition(e,tp,eg,ep,ev,re,r,rp) function c33700067.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local rc=re and re:GetHandler() local rc=re and re:GetHandler()
return c:IsReason(REASON_EFFECT) and not c:IsReason(REASON_RULE) and c:IsPreviousLocation(LOCATION_DECK) and c:GetPreviousControler()==tp and rc and rc:IsSetCard(0x442) and Duel.GetMZoneCount(tp)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsReason(REASON_EFFECT) and not c:IsReason(REASON_RULE) and c:IsPreviousLocation(LOCATION_DECK) and c:GetPreviousControler()==tp and rc and rc:IsSetCard(0x442) and Duel.GetMZoneCount(tp)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetTurnCount()>0
end end
function c33700067.operation(e,tp,eg,ep,ev,re,r,rp) function c33700067.operation(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetMZoneCount(tp)>0 if Duel.GetMZoneCount(tp)>0
...@@ -108,4 +108,4 @@ function c33700067.con(e) ...@@ -108,4 +108,4 @@ function c33700067.con(e)
else else
return false return false
end end
end end
\ No newline at end of file
...@@ -129,7 +129,7 @@ function c33700078.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -129,7 +129,7 @@ function c33700078.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c33700078.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,c33700078.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP_DEFENSE) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end end
end end
function c33700078.effcon2(e) function c33700078.effcon2(e)
...@@ -161,4 +161,4 @@ function c33700078.spop2(e,tp,eg,ep,ev,re,r,rp) ...@@ -161,4 +161,4 @@ function c33700078.spop2(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end end
end end
\ No newline at end of file
...@@ -26,10 +26,11 @@ function c33700095.initial_effect(c) ...@@ -26,10 +26,11 @@ function c33700095.initial_effect(c)
--atk down --atk down
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetRange(LOCATION_PZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCode(EFFECT_UPDATE_ATTACK) e3:SetCode(EFFECT_UPDATE_ATTACK)
e3:SetTargetRange(0,LOCATION_MZONE) e3:SetTargetRange(0,LOCATION_MZONE)
e3:SetValue(-700) e3:SetValue(-700)
e3:SetLabel(3)
effect_list[3]=e3 effect_list[3]=e3
e3:SetCondition(c33700095.atkcon) e3:SetCondition(c33700095.atkcon)
c:RegisterEffect(e3) c:RegisterEffect(e3)
...@@ -90,7 +91,7 @@ function c33700095.jfilter(c) ...@@ -90,7 +91,7 @@ function c33700095.jfilter(c)
end end
function c33700095.atkcon(e) function c33700095.atkcon(e)
local g=Duel.GetMatchingGroup(c33700095.confilter,e:GetHandlerPlayer(),LOCATION_GRAVE,0,nil) local g=Duel.GetMatchingGroup(c33700095.confilter,e:GetHandlerPlayer(),LOCATION_GRAVE,0,nil)
return g:GetClassCount(Card.GetCode)>=3 or e:GetLabel()==33700090 return g:GetClassCount(Card.GetCode)>=e:GetLabel() or e:GetLabel()==33700090
end end
function c33700095.effcon(e) function c33700095.effcon(e)
local g=Duel.GetMatchingGroup(c33700095.confilter,e:GetHandlerPlayer(),LOCATION_GRAVE,0,nil) local g=Duel.GetMatchingGroup(c33700095.confilter,e:GetHandlerPlayer(),LOCATION_GRAVE,0,nil)
......
...@@ -24,7 +24,7 @@ function cm.initial_effect(c) ...@@ -24,7 +24,7 @@ function cm.initial_effect(c)
e2:SetCondition(function(e,tp,eg,ep,ev,re,r,rp) e2:SetCondition(function(e,tp,eg,ep,ev,re,r,rp)
return rp~=tp return rp~=tp
end) end)
e2:SetTarget(cm.sptg) e2:SetTarget(cm.sptg)
e2:SetOperation(cm.spop) e2:SetOperation(cm.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
...@@ -123,13 +123,14 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -123,13 +123,14 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
end end
function cm.pencon(e,tp,eg,ep,ev,re,r,rp) function cm.pencon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
return c:IsPreviousLocation(LOCATION_MZONE) return c:IsPreviousLocation(LOCATION_MZONE) and c:IsFaceup()
end end
function cm.pentg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.pentg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckLocation(tp,LOCATION_PZONE,0) or Duel.CheckLocation(tp,LOCATION_PZONE,1) end if chk==0 then return Duel.CheckLocation(tp,LOCATION_PZONE,0) or Duel.CheckLocation(tp,LOCATION_PZONE,1) end
Duel.SetTargetCard(Group.FromCards(e:GetHandler()))
end end
function cm.penop(e,tp,eg,ep,ev,re,r,rp) function cm.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
......
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