Commit d982b14a authored by POLYMER's avatar POLYMER

update 240205

parent ba741048
...@@ -2047,8 +2047,8 @@ ...@@ -2047,8 +2047,8 @@
87498786 0 87498786 0
65010124 0 65010124 0
65010122 0 65010122 0
11451751 0 11451751 1
11451755 0 11451755 1
82209081 1 82209081 1
53799086 0 53799086 0
42620114 0 42620114 0
...@@ -2077,7 +2077,7 @@ ...@@ -2077,7 +2077,7 @@
60002258 0 60002258 0
60002279 0 60002279 0
11451739 2 11451739 2
11451753 0 11451753 1
33330076 1 33330076 1
33730073 1 33730073 1
60002214 1 60002214 1
...@@ -2162,7 +2162,7 @@ ...@@ -2162,7 +2162,7 @@
98920167 0 98920167 0
98920325 0 98920325 0
98920365 0 98920365 0
11621401 1 11621401 2
11621406 1 11621406 1
19198178 1 19198178 1
22348003 1 22348003 1
...@@ -2201,7 +2201,7 @@ ...@@ -2201,7 +2201,7 @@
88888002 1 88888002 1
98920576 0 98920576 0
88880225 2 88880225 2
88897017 0 88897017 1
#230507 #230507
25000035 0 25000035 0
33330093 0 33330093 0
...@@ -2225,11 +2225,9 @@ ...@@ -2225,11 +2225,9 @@
82221053 0 82221053 0
98920304 0 98920304 0
6100020 2 6100020 2
9910088 2
10173079 2 10173079 2
#230423 #230423
9990226 0 9990226 0
11560717 0
22070340 0 22070340 0
30005016 0 30005016 0
31400015 0 31400015 0
...@@ -2244,14 +2242,12 @@ ...@@ -2244,14 +2242,12 @@
25800105 1 25800105 1
29083691 1 29083691 1
79029065 1 79029065 1
82224073 1
82204209 1 82204209 1
82204224 1 82204224 1
99990002 1 99990002 1
#230416 #230416
53797001 0 53797001 0
98920195 0 98920195 0
82224073 1
82204209 1 82204209 1
98950000 1 98950000 1
#230409 #230409
...@@ -2345,11 +2341,11 @@ ...@@ -2345,11 +2341,11 @@
33701341 0 33701341 0
35399005 0 35399005 0
40010212 0 40010212 0
53715001 0 53715001 1
53715008 1 53715008 1
53715009 0 53715009 1
53715010 0 53715010 1
53715011 0 53715011 1
60001141 0 60001141 0
64800129 0 64800129 0
64800187 0 64800187 0
...@@ -2625,7 +2621,6 @@ ...@@ -2625,7 +2621,6 @@
60009999 0 60009999 0
#221023 #221023
9300012 0 9300012 0
9910433 0
9910609 0 9910609 0
14010257 0 14010257 0
17020110 0 17020110 0
...@@ -2641,7 +2636,6 @@ ...@@ -2641,7 +2636,6 @@
67210106 0 67210106 0
67210108 0 67210108 0
7429821 1 7429821 1
9910709 1
9910710 1 9910710 1
9911022 2 9911022 2
11451706 1 11451706 1
...@@ -3793,7 +3787,7 @@ ...@@ -3793,7 +3787,7 @@
87110009 0 87110009 0
10400003 1 10400003 1
10400006 1 10400006 1
10400012 1 10400012 2
40009469 1 40009469 1
64800081 0 64800081 0
15003023 0 15003023 0
...@@ -3816,7 +3810,6 @@ ...@@ -3816,7 +3810,6 @@
64800022 0 64800022 0
82221061 0 82221061 0
82221063 0 82221063 0
35300201 1
55100023 1 55100023 1
#210926 #210926
14000321 0 14000321 0
...@@ -3920,7 +3913,6 @@ ...@@ -3920,7 +3913,6 @@
130001243 0 130001243 0
14010023 1 14010023 1
14010099 1 14010099 1
89387021 2
#210627 #210627
33711601 0 33711601 0
33711501 1 33711501 1
...@@ -3957,7 +3949,6 @@ ...@@ -3957,7 +3949,6 @@
63790300 0 63790300 0
63790500 0 63790500 0
63790501 0 63790501 0
15000182 2
#210509 #210509
79029456 0 79029456 0
#210502 #210502
...@@ -4156,7 +4147,6 @@ ...@@ -4156,7 +4147,6 @@
79029345 0 79029345 0
79029369 0 79029369 0
82224032 0 82224032 0
9910199 1
10170006 1 10170006 1
22020130 1 22020130 1
#65010583 1 #65010583 1
...@@ -5305,7 +5295,7 @@ ...@@ -5305,7 +5295,7 @@
10105659 0 10105659 0
11561024 0 11561024 0
14010014 0 14010014 0
33330078 0 33330078 2
88880235 0 88880235 0
87090001 0 87090001 0
87090002 0 87090002 0
...@@ -5424,7 +5414,6 @@ ...@@ -5424,7 +5414,6 @@
11526309 0 11526309 0
11526310 0 11526310 0
10173035 0 10173035 0
11561032 0
53799183 0 53799183 0
60002371 0 60002371 0
60002373 0 60002373 0
...@@ -5608,6 +5597,9 @@ ...@@ -5608,6 +5597,9 @@
30000231 0 30000231 0
30000236 0 30000236 0
30000240 0 30000240 0
10105674 0
11451002 0
13000750 0
#limit #limit
33403513 1 33403513 1
82204250 0 82204250 0
...@@ -5857,7 +5849,6 @@ ...@@ -5857,7 +5849,6 @@
98920228 1 98920228 1
98920410 1 98920410 1
22022790 1 22022790 1
88800025 1
88884411 1 88884411 1
98920094 1 98920094 1
98920657 1 98920657 1
...@@ -5919,7 +5910,11 @@ ...@@ -5919,7 +5910,11 @@
75000708 2 75000708 2
67200237 2 67200237 2
9911370 2 9911370 2
53796131 2 82204225 2
82204226 2
82204227 2
82204228 2
98920551 2
#Forbidden TCG #Forbidden TCG
##MAIN DECK MONSTERS ##MAIN DECK MONSTERS
94689206 0 --Block Dragon 94689206 0 --Block Dragon
......
No preview for this file type
expansions/pics/11451851.jpg

17.1 KB | W: | H:

expansions/pics/11451851.jpg

210 KB | W: | H:

expansions/pics/11451851.jpg
expansions/pics/11451851.jpg
expansions/pics/11451851.jpg
expansions/pics/11451851.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/11451852.jpg

16.9 KB | W: | H:

expansions/pics/11451852.jpg

208 KB | W: | H:

expansions/pics/11451852.jpg
expansions/pics/11451852.jpg
expansions/pics/11451852.jpg
expansions/pics/11451852.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/11451853.jpg

17.8 KB | W: | H:

expansions/pics/11451853.jpg

218 KB | W: | H:

expansions/pics/11451853.jpg
expansions/pics/11451853.jpg
expansions/pics/11451853.jpg
expansions/pics/11451853.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/11451854.jpg

16.4 KB | W: | H:

expansions/pics/11451854.jpg

200 KB | W: | H:

expansions/pics/11451854.jpg
expansions/pics/11451854.jpg
expansions/pics/11451854.jpg
expansions/pics/11451854.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/11451855.jpg

14.3 KB | W: | H:

expansions/pics/11451855.jpg

185 KB | W: | H:

expansions/pics/11451855.jpg
expansions/pics/11451855.jpg
expansions/pics/11451855.jpg
expansions/pics/11451855.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/11451856.jpg

14.9 KB | W: | H:

expansions/pics/11451856.jpg

186 KB | W: | H:

expansions/pics/11451856.jpg
expansions/pics/11451856.jpg
expansions/pics/11451856.jpg
expansions/pics/11451856.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/11451857.jpg

17.2 KB | W: | H:

expansions/pics/11451857.jpg

209 KB | W: | H:

expansions/pics/11451857.jpg
expansions/pics/11451857.jpg
expansions/pics/11451857.jpg
expansions/pics/11451857.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/11451858.jpg

15.5 KB | W: | H:

expansions/pics/11451858.jpg

199 KB | W: | H:

expansions/pics/11451858.jpg
expansions/pics/11451858.jpg
expansions/pics/11451858.jpg
expansions/pics/11451858.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/11561006.jpg

179 KB | W: | H:

expansions/pics/11561006.jpg

35.8 KB | W: | H:

expansions/pics/11561006.jpg
expansions/pics/11561006.jpg
expansions/pics/11561006.jpg
expansions/pics/11561006.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/12812010.jpg

66.2 KB | W: | H:

expansions/pics/12812010.jpg

66.2 KB | W: | H:

expansions/pics/12812010.jpg
expansions/pics/12812010.jpg
expansions/pics/12812010.jpg
expansions/pics/12812010.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9910433.jpg

13.3 KB | W: | H:

expansions/pics/9910433.jpg

56.1 KB | W: | H:

expansions/pics/9910433.jpg
expansions/pics/9910433.jpg
expansions/pics/9910433.jpg
expansions/pics/9910433.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9910907.jpg

50 KB | W: | H:

expansions/pics/9910907.jpg

53 KB | W: | H:

expansions/pics/9910907.jpg
expansions/pics/9910907.jpg
expansions/pics/9910907.jpg
expansions/pics/9910907.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9911461.jpg

53.5 KB | W: | H:

expansions/pics/9911461.jpg

53.6 KB | W: | H:

expansions/pics/9911461.jpg
expansions/pics/9911461.jpg
expansions/pics/9911461.jpg
expansions/pics/9911461.jpg
  • 2-up
  • Swipe
  • Onion skin
...@@ -77,11 +77,11 @@ function c10105672.filter(c) ...@@ -77,11 +77,11 @@ function c10105672.filter(c)
return c:IsAbleToRemove() return c:IsAbleToRemove()
end end
function c10105672.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c10105672.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_ONFIELD) and c10105672.filter(chkc) end if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and c10105672.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c10105672.filter,tp,0,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingTarget(c10105672.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectTarget(tp,c10105672.filter,tp,0,LOCATION_ONFIELD,1,2,nil) local g=Duel.SelectTarget(tp,c10105672.filter,tp,0,LOCATION_MZONE,1,2,nil)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,g:GetCount(),1-tp,LOCATION_ONFIELD) Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,g:GetCount(),1-tp,LOCATION_MZONE)
end end
function c10105672.rmop(e,tp,eg,ep,ev,re,r,rp) function c10105672.rmop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
......
function c10105675.initial_effect(c)
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,10105675)
e1:SetCost(c10105675.spcost)
e1:SetTarget(c10105675.sptg)
e1:SetOperation(c10105675.spop)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_XYZ_LEVEL)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE)
e2:SetValue(c10105675.xyzlv)
e2:SetLabel(3)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetLabel(4)
c:RegisterEffect(e3)
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e4:SetCode(EVENT_BE_MATERIAL)
e4:SetCountLimit(1,101056750)
e4:SetProperty(EFFECT_FLAG_EVENT_PLAYER)
e4:SetCondition(c10105675.efcon)
e4:SetOperation(c10105675.efop)
c:RegisterEffect(e4)
end
function c10105675.costfilter(c)
return c:IsRace(RACE_WARRIOR) and c:IsAttribute(ATTRIBUTE_FIRE) and c:IsType(TYPE_MONSTER) and c:IsAbleToGraveAsCost()
end
function c10105675.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c10105675.costfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c10105675.costfilter,tp,LOCATION_DECK,0,1,1,nil)
Duel.SendtoGrave(g,REASON_COST)
end
function c10105675.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function c10105675.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end
end
function c10105675.xyzlv(e,c,rc)
if rc:IsSetCard(0x1084) then
return c:GetLevel()+0x10000*e:GetLabel()
else
return c:GetLevel()
end
end
function c10105675.efcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return r==REASON_XYZ and c:GetReasonCard():IsSetCard(0x1084)
end
function c10105675.efop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local rc=c:GetReasonCard()
local e1=Effect.CreateEffect(rc)
e1:SetDescription(aux.Stringid(10105675,1))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_TRIGGER_O+EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetTarget(c10105675.thtg)
e1:SetOperation(c10105675.thop)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1,true)
if not rc:IsType(TYPE_EFFECT) then
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_ADD_TYPE)
e2:SetValue(TYPE_EFFECT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e2,true)
end
end
function c10105675.thfilter(c)
return c:IsSetCard(0x84) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHand()
end
function c10105675.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c10105675.thfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function c10105675.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c10105675.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
\ No newline at end of file
function c10105676.initial_effect(c)
--spsummon
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(10105676,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_TO_GRAVE)
e1:SetCountLimit(1,10105676)
e1:SetTarget(c10105676.sptg1)
e1:SetOperation(c10105676.spop1)
c:RegisterEffect(e1)
--effect gain
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_BE_MATERIAL)
e2:SetProperty(EFFECT_FLAG_EVENT_PLAYER)
e2:SetCondition(c10105676.effcon)
e2:SetOperation(c10105676.effop)
c:RegisterEffect(e2)
--special summon
local e3=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_GRAVE)
e3:SetCondition(aux.exccon)
e3:SetCountLimit(1,10105676)
e3:SetCost(c10105676.cost)
e3:SetTarget(c10105676.sptg)
e3:SetOperation(c10105676.spop)
c:RegisterEffect(e3)
end
function c10105676.spfilter1(c,e,tp)
return c:IsSetCard(0x1084) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c10105676.sptg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c10105676.spfilter1,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE)
end
function c10105676.spop1(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c10105676.spfilter1,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetReset(RESET_PHASE+PHASE_END)
e1:SetTargetRange(1,0)
e1:SetTarget(c10105676.splimit)
Duel.RegisterEffect(e1,tp)
end
function c10105676.splimit(e,c)
return not (c:IsRace(RACE_WARRIOR) and c:IsAttribute(ATTRIBUTE_FIRE))
end
function c10105676.effcon(e,tp,eg,ep,ev,re,r,rp)
return r==REASON_XYZ and e:GetHandler():GetReasonCard():IsSetCard(0x1084)
end
function c10105676.effop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local rc=c:GetReasonCard()
local e1=Effect.CreateEffect(rc)
e1:SetDescription(aux.Stringid(10105676,0))
e1:SetCategory(CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1)
e1:SetCondition(c10105676.descon)
e1:SetTarget(c10105676.destg)
e1:SetOperation(c10105676.desop)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1,true)
end
function c10105676.dckfil(c,tp)
return c:IsSummonLocation(LOCATION_HAND) and c:IsPreviousControler(1-tp)
end
function c10105676.descon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c10105676.dckfil,1,nil,tp)
end
function c10105676.destg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingTarget(nil,tp,0,LOCATION_ONFIELD,1,nil) end
local g=Duel.SelectTarget(tp,nil,tp,0,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
end
function c10105676.desop(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)
if g:GetCount()>0 then
Duel.Destroy(g,REASON_EFFECT)
end
end
function c10105676.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToDeckAsCost() end
Duel.SendtoDeck(e:GetHandler(),nil,2,REASON_COST)
end
function c10105676.spfilter(c,e,tp)
return c:IsSetCard(0x1084) and c:IsLevelBelow(4) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c10105676.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c10105676.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end
function c10105676.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c10105676.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
end
\ No newline at end of file
function c10105677.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0x1084),4,2)
c:EnableReviveLimit()
--伤害计算
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetRange(LOCATION_MZONE)
e1:SetHintTiming(0,TIMING_END_PHASE)
e1:SetCountLimit(1,10105677)
e1:SetCost(c10105677.cost)
e1:SetTarget(c10105677.batg)
e1:SetOperation(c10105677.baop)
c:RegisterEffect(e1)
--spsummon
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(10105677,0))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_TO_GRAVE)
e2:SetCondition(c10105677.spcon)
e2:SetTarget(c10105677.sptg)
e2:SetOperation(c10105677.spop)
c:RegisterEffect(e2)
end
function c10105677.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end
function c10105677.batg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local c=e:GetHandler()
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return c:IsAttackable()
and Duel.IsExistingTarget(nil,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_OPPO)
local g=Duel.SelectTarget(tp,nil,tp,0,LOCATION_MZONE,1,1,nil)
end
function c10105677.baop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsAttackable() and c:IsControler(tp) and c:IsFaceup() and c:IsRelateToEffect(e) then
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
local tc=g:GetFirst()
if tc:IsControler(1-tp) and tc:IsRelateToEffect(e) then
Duel.CalculateDamage(c,tc)
end
end
end
function c10105677.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsReason(REASON_DESTROY) and e:GetHandler():GetOverlayCount()>0
end
function c10105677.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function c10105677.mfilter(c)
return c:IsSetCard(0x1084) and c:IsType(TYPE_MONSTER) and c:IsCanOverlay()
end
function c10105677.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)>0 then
local g=Duel.GetMatchingGroup(aux.NecroValleyFilter(c10105677.mfilter),tp,LOCATION_GRAVE,0,nil)
if g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(10105677,2)) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
local mg=g:Select(tp,1,1,nil)
Duel.Overlay(c,mg)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SET_ATTACK_FINAL)
e1:SetRange(LOCATION_MZONE)
e1:SetValue(c:GetBaseAttack()*2)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
end
end
end
\ No newline at end of file
function c10105678.initial_effect(c)
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,10105678)
e1:SetTarget(c10105678.target)
e1:SetOperation(c10105678.activate)
c:RegisterEffect(e1)
--tohand
local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_TOHAND)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,101056780)
e2:SetCost(c10105678.cost)
e2:SetTarget(c10105678.thtg)
e2:SetOperation(c10105678.thop)
c:RegisterEffect(e2)
end
function c10105678.filter1(c,e,tp)
return c:IsSetCard(0x1084) and c:IsRank(3,4)
and Duel.IsExistingMatchingCard(c10105678.filter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,c,c:GetRank()+1)
and aux.MustMaterialCheck(c,tp,EFFECT_MUST_BE_XMATERIAL)
end
function c10105678.filter2(c,e,tp,mc,rk)
return c:IsRank(4,5) and mc:IsCanBeXyzMaterial(c) and c:IsSetCard(0x1084)
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_XYZ,tp,false,false) and Duel.GetLocationCountFromEx(tp,tp,mc,c)>0
end
function c10105678.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_GRAVE) and c10105678.filter1(chkc,e,tp) end
if chk==0 then return Duel.IsExistingTarget(c10105678.filter1,tp,LOCATION_GRAVE,0,1,nil,e,tp)
end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,c10105678.filter1,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end
function c10105678.activate(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if not aux.MustMaterialCheck(tc,tp,EFFECT_MUST_BE_XMATERIAL) then return end
if not tc:IsRelateToEffect(e) or tc:IsControler(1-tp) or tc:IsImmuneToEffect(e) then return end
Duel.SpecialSummon(tc,0,tp,tp,true,true,POS_FACEUP)
if tc:IsFaceup() then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c10105678.filter2,tp,LOCATION_EXTRA,0,1,1,nil,e,tp,tc,tc:GetRank()+1)
local sc=g:GetFirst()
if sc then
local mg=tc:GetOverlayGroup()
if mg:GetCount()~=0 then
Duel.Overlay(sc,mg)
end
sc:SetMaterial(Group.FromCards(tc))
Duel.Overlay(sc,Group.FromCards(tc))
Duel.SpecialSummon(sc,SUMMON_TYPE_XYZ,tp,tp,false,false,POS_FACEUP)
Duel.SelectOption(tp,aux.Stringid(10105678,1))
sc:CompleteProcedure()
if c:IsRelateToEffect(e) then
c:CancelToGrave()
Duel.Overlay(sc,Group.FromCards(c))
end
end
end
end
function c10105678.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToDeckAsCost() end
Duel.SendtoDeck(e:GetHandler(),nil,2,REASON_COST)
end
function c10105678.thfilter(c)
return c:IsSetCard(0x1084) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end
function c10105678.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c10105678.thfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c10105678.thfilter,tp,LOCATION_GRAVE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectTarget(tp,c10105678.thfilter,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
end
function c10105678.thop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.SendtoHand(tc,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,tc)
end
end
\ No newline at end of file
function c10105679.initial_effect(c)
c:EnableReviveLimit()
--spsummon condition
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(aux.FALSE)
c:RegisterEffect(e1)
--copy effect
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(10105679,0))
e2:SetCategory(CATEGORY_TODECK)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetCountLimit(1)
e2:SetTarget(c10105679.cptg)
e2:SetOperation(c10105679.cpop)
c:RegisterEffect(e2)
--atk
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e3:SetCode(EFFECT_UPDATE_ATTACK)
e3:SetRange(LOCATION_MZONE)
e3:SetValue(c10105679.atkval)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e4)
--destroy replace
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e5:SetCode(EFFECT_DESTROY_REPLACE)
e5:SetRange(LOCATION_GRAVE)
e5:SetTarget(c10105679.reptg)
e5:SetValue(c10105679.repval)
e5:SetOperation(c10105679.repop)
c:RegisterEffect(e5)
end
function c10105679.cpfilter(c)
return c:IsSetCard(0xa5) and c:IsType(TYPE_SPELL+TYPE_QUICKPLAY) and c:IsAbleToDeck() and c:CheckActivateEffect(false,true,false)~=nil
end
function c10105679.cptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then
local te=e:GetLabelObject()
local tg=te:GetTarget()
return tg and tg(e,tp,eg,ep,ev,re,r,rp,0,chkc)
end
if chk==0 then return Duel.IsExistingTarget(c10105679.cpfilter,tp,LOCATION_GRAVE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,c10105679.cpfilter,tp,LOCATION_GRAVE,0,1,1,nil)
local te,ceg,cep,cev,cre,cr,crp=g:GetFirst():CheckActivateEffect(false,true,true)
Duel.ClearTargetCard()
g:GetFirst():CreateEffectRelation(e)
local tg=te:GetTarget()
if tg then tg(e,tp,ceg,cep,cev,cre,cr,crp,1) end
te:SetLabelObject(e:GetLabelObject())
e:SetLabelObject(te)
Duel.ClearOperationInfo(0)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g,1,0,0)
end
function c10105679.cpop(e,tp,eg,ep,ev,re,r,rp)
local te=e:GetLabelObject()
if not te then return end
if not te:GetHandler():IsRelateToEffect(e) then return end
e:SetLabelObject(te:GetLabelObject())
local op=te:GetOperation()
if op then op(e,tp,eg,ep,ev,re,r,rp) end
Duel.BreakEffect()
Duel.SendtoDeck(te:GetHandler(),nil,SEQ_DECKSHUFFLE,REASON_EFFECT)
end
function c10105679.atkval(e,c)
return Duel.GetFieldGroupCount(c:GetControler(),0,LOCATION_ONFIELD)*300
end
function c10105679.repfilter(c,tp)
return c:IsFaceup() and c:IsSetCard(0x8) and c:IsLocation(LOCATION_MZONE)
and c:IsControler(tp)
end
function c10105679.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToRemove() and aux.exccon(e) and eg:IsExists(c10105679.repfilter,1,nil,tp) end
return Duel.SelectEffectYesNo(tp,e:GetHandler(),96)
end
function c10105679.repval(e,c)
return c10105679.repfilter(c,e:GetHandlerPlayer())
end
function c10105679.repop(e,tp,eg,ep,ev,re,r,rp)
Duel.SendtoHand(e:GetHandler(),nil,2,REASON_EFFECT)
end
\ No newline at end of file
function c10105680.initial_effect(c)
c:EnableReviveLimit()
--spsummon condition
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(aux.FALSE)
c:RegisterEffect(e1)
--disable
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(10105680,0))
e2:SetCategory(CATEGORY_DESTROY)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1)
e2:SetTarget(c10105680.target1)
e2:SetOperation(c10105680.operation)
c:RegisterEffect(e2)
--fusion
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(10105680,1))
e3:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_FUSION_SUMMON+CATEGORY_GRAVE_ACTION)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_TO_GRAVE)
e3:SetCountLimit(1,10105680)
e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCondition(c10105680.condition)
e3:SetTarget(c10105680.target2)
e3:SetOperation(c10105680.activate)
c:RegisterEffect(e3)
end
function c10105680.target1(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return Duel.IsExistingTarget(nil,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
Duel.SelectTarget(tp,nil,tp,0,LOCATION_MZONE,1,1,nil)
end
function c10105680.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and tc:IsType(TYPE_MONSTER) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetCode(EFFECT_UNRELEASABLE_SUM)
e1:SetRange(LOCATION_MZONE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
e1:SetValue(1)
tc:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_UNRELEASABLE_NONSUM)
tc:RegisterEffect(e2)
local e3=e1:Clone()
e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
e3:SetValue(c10105680.fuslimit)
tc:RegisterEffect(e3)
local e4=e1:Clone()
e4:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
tc:RegisterEffect(e4)
local e5=e1:Clone()
e5:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
tc:RegisterEffect(e5)
local e6=e1:Clone()
e6:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
tc:RegisterEffect(e6)
local e7=e1:Clone()
e7:SetCode(EFFECT_CANNOT_ATTACK)
tc:RegisterEffect(e7)
end
end
function c10105680.fuslimit(e,c,sumtype)
return sumtype==SUMMON_TYPE_FUSION
end
function c10105680.filter0(c)
return (c:IsLocation(LOCATION_GRAVE) or c:IsFaceup()) and c:IsType(TYPE_MONSTER) and c:IsAbleToDeck()
end
function c10105680.filter1(c,e)
return (c:IsLocation(LOCATION_GRAVE) or c:IsFaceup()) and c:IsType(TYPE_MONSTER) and not c:IsImmuneToEffect(e) and c:IsAbleToDeck()
end
function c10105680.filter2(c,e,tp,m,f,chkf)
return c:IsType(TYPE_FUSION) and c:IsSetCard(0x8) and (not f or f(c))
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_FUSION,tp,false,false) and c:CheckFusionMaterial(m,nil,chkf)
end
function c10105680.condition(e,tp,eg,ep,ev,re,r,rp)
local ph=Duel.GetCurrentPhase()
return ph~=PHASE_DAMAGE and ph~=PHASE_DAMAGE_CAL and e:GetHandler():IsReason(REASON_EFFECT)
end
function c10105680.target2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
local chkf=tp
local mg=Duel.GetMatchingGroup(c10105680.filter0,tp,LOCATION_MZONE+LOCATION_GRAVE,0,nil)
local mg2=Duel.GetFusionMaterial(tp):Filter(aux.NOT(Card.IsLocation),nil,LOCATION_HAND)
mg:Merge(mg2)
local res=Duel.IsExistingMatchingCard(c10105680.filter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,mg,nil,chkf)
if not res then
local ce=Duel.GetChainMaterial(tp)
if ce~=nil then
local fgroup=ce:GetTarget()
local mg3=fgroup(ce,e,tp)
local mf=ce:GetValue()
res=Duel.IsExistingMatchingCard(c10105680.filter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,mg3,mf,chkf)
end
end
return res
end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end
function c10105680.activate(e,tp,eg,ep,ev,re,r,rp)
local chkf=tp
local mg=Duel.GetMatchingGroup(c10105680.filter1,tp,LOCATION_MZONE+LOCATION_GRAVE,0,nil,e)
local mg2=Duel.GetFusionMaterial(tp):Filter(aux.NOT(Card.IsLocation),nil,LOCATION_HAND)
mg:Merge(mg2)
local sg1=Duel.GetMatchingGroup(c10105680.filter2,tp,LOCATION_EXTRA,0,nil,e,tp,mg,nil,chkf)
local mg3=nil
local sg2=nil
local ce=Duel.GetChainMaterial(tp)
if ce~=nil then
local fgroup=ce:GetTarget()
mg3=fgroup(ce,e,tp)
local mf=ce:GetValue()
sg2=Duel.GetMatchingGroup(c10105680.filter2,tp,LOCATION_EXTRA,0,nil,e,tp,mg3,mf,chkf)
end
if sg1:GetCount()>0 or (sg2~=nil and sg2:GetCount()>0) then
local sg=sg1:Clone()
if sg2 then sg:Merge(sg2) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tg=sg:Select(tp,1,1,nil)
local tc=tg:GetFirst()
aux.FCheckAdditional=tc.cyber_fusion_check or c10105680.fcheck
if sg1:IsContains(tc) and (sg2==nil or not sg2:IsContains(tc) or not Duel.SelectYesNo(tp,ce:GetDescription())) then
local mat=Duel.SelectFusionMaterial(tp,tc,mg,nil,chkf)
tc:SetMaterial(mat)
if mat:IsExists(Card.IsFacedown,1,nil) then
local cg=mat:Filter(Card.IsFacedown,nil)
Duel.ConfirmCards(1-tp,cg)
end
Duel.SendtoDeck(mat,nil,SEQ_DECKSHUFFLE,REASON_EFFECT+REASON_MATERIAL+REASON_FUSION)
Duel.BreakEffect()
Duel.SpecialSummon(tc,SUMMON_TYPE_FUSION,tp,tp,false,false,POS_FACEUP)
else
local mat2=Duel.SelectFusionMaterial(tp,tc,mg3,nil,chkf)
local fop=ce:GetOperation()
fop(ce,e,tp,tc,mat2)
end
tc:CompleteProcedure()
end
end
\ No newline at end of file
function c10105681.initial_effect(c)
--fusion material
c:EnableReviveLimit()
aux.AddFusionProcFunRep(c,aux.FilterBoolFunction(Card.IsFusionSetCard,0xa008),2,true)
--spsummon condition
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(aux.fuslimit)
c:RegisterEffect(e1)
--attribute
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EFFECT_ADD_ATTRIBUTE)
e2:SetValue(ATTRIBUTE_WATER)
c:RegisterEffect(e2)
--extra attack
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(10105681,0))
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_BATTLE_DESTROYING)
e3:SetCondition(c10105681.atcon)
e3:SetOperation(c10105681.atop)
c:RegisterEffect(e3)
--attack down
local e4=Effect.CreateEffect(c)
e4:SetCategory(CATEGORY_ATKCHANGE)
e4:SetDescription(aux.Stringid(10105681,0))
e4:SetType(EFFECT_TYPE_IGNITION)
e4:SetCountLimit(1)
e4:SetRange(LOCATION_MZONE)
e4:SetCost(c10105681.cost)
e4:SetOperation(c10105681.operation)
c:RegisterEffect(e4)
end
function c10105681.atcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local bc=c:GetBattleTarget()
if not bc then return false end
local seq=bc:GetPreviousSequence()
e:SetLabel(seq)
return Duel.GetAttacker()==c and aux.bdocon(e,tp,eg,ep,ev,re,r,rp) and seq<5 and c:IsChainAttackable(0)
end
function c10105681.atop(e,tp,eg,ep,ev,re,r,rp)
Duel.ChainAttack()
local seq=e:GetLabel()
local val=aux.SequenceToGlobal(1-tp,LOCATION_MZONE,seq)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_DISABLE_FIELD)
e1:SetValue(val)
e1:SetReset(RESET_PHASE+PHASE_END,2)
Duel.RegisterEffect(e1,tp)
end
function c10105681.filter(c)
return c:IsFaceup() and c:IsAttackAbove(100)
end
function c10105681.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckLPCost(tp,100,true)
and Duel.IsExistingMatchingCard(c10105681.filter,tp,0,LOCATION_MZONE,1,e:GetHandler()) end
local g=Duel.GetMatchingGroup(c10105681.filter,tp,0,LOCATION_MZONE,e:GetHandler())
local lp=Duel.GetLP(tp)
local m=math.floor(math.min(lp,2000)/100)
local t={}
for i=1,m do
t[i]=i*100
end
local ac=Duel.AnnounceNumber(tp,table.unpack(t))
Duel.PayLPCost(tp,ac,true)
e:SetLabel(ac)
e:GetHandler():RegisterFlagEffect(10105681,RESET_PHASE+PHASE_DAMAGE_CAL,0,1)
end
function c10105681.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=Duel.GetMatchingGroup(c10105681.filter,tp,0,LOCATION_MZONE,aux.ExceptThisCard(e))
local tc=g:GetFirst()
local val=e:GetLabel()
while tc do
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(-val)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_UPDATE_DEFENSE)
tc:RegisterEffect(e2)
tc=g:GetNext()
end
end
\ No newline at end of file
function c10105682.initial_effect(c)
--fusion material
c:EnableReviveLimit()
aux.AddFusionProcFunRep(c,aux.FilterBoolFunction(Card.IsFusionSetCard,0xa008),2,true)
--spsummon condition
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(aux.fuslimit)
c:RegisterEffect(e1)
--attribute
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EFFECT_ADD_ATTRIBUTE)
e2:SetValue(ATTRIBUTE_DARK)
c:RegisterEffect(e2)
--atk
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_SET_ATTACK_FINAL)
e3:SetRange(LOCATION_MZONE)
e3:SetValue(c10105682.val)
c:RegisterEffect(e3)
local e4=e3:Clone(c)
e4:SetCode(EFFECT_SET_DEFENSE_FINAL)
e4:SetValue(c10105682.val1)
c:RegisterEffect(e4)
--炸卡
local e5=Effect.CreateEffect(c)
e5:SetDescription(aux.Stringid(10105682,0))
e5:SetCategory(CATEGORY_DESTROY)
e5:SetType(EFFECT_TYPE_QUICK_O)
e5:SetProperty(EFFECT_FLAG_CARD_TARGET)
e5:SetCode(EVENT_FREE_CHAIN)
e5:SetRange(LOCATION_MZONE)
e5:SetCountLimit(2,10105682)
e5:SetCost(c10105682.descost)
e5:SetTarget(c10105682.destg)
e5:SetOperation(c10105682.desop)
c:RegisterEffect(e5)
--攻击力守备力 up
local e6=Effect.CreateEffect(c)
e6:SetDescription(aux.Stringid(10105682,1))
e6:SetType(EFFECT_TYPE_TRIGGER_F+EFFECT_TYPE_FIELD)
e6:SetRange(LOCATION_MZONE)
e6:SetCode(EVENT_PHASE+PHASE_END)
e6:SetCountLimit(1)
e6:SetOperation(c10105682.atkop)
c:RegisterEffect(e6)
end
function c10105682.val(e,c)
return e:GetHandler():GetMaterial():GetSum(Card.GetBaseAttack)
end
function c10105682.val1(e,c)
return e:GetHandler():GetMaterial():GetSum(Card.GetBaseDefense)
end
function c10105682.descost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsAttackAbove(1000) end
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(-1000)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
c:RegisterEffect(e1)
local e2=e1:Clone(c)
e2:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e2)
end
function c10105682.destg(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.GetMatchingGroup(Card.IsType,tp,0,LOCATION_ONFIELD,nil,TYPE_MONSTER)
if chk==0 then return #g>0 end
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
end
function c10105682.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectMatchingCard(tp,Card.IsType,tp,0,LOCATION_ONFIELD,1,1,nil,TYPE_MONSTER)
if g:GetCount()>0 then
Duel.HintSelection(g)
Duel.Destroy(g,REASON_EFFECT)
end
end
function c10105682.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and c:IsFaceup() then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(1000)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
c:RegisterEffect(e1)
local e2=e1:Clone(c)
e2:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e2)
end
end
\ No newline at end of file
...@@ -339,7 +339,7 @@ function cm.GetCardsInZone(tp,fd) ...@@ -339,7 +339,7 @@ function cm.GetCardsInZone(tp,fd)
loc=LOCATION_SZONE loc=LOCATION_SZONE
seq=seq-8 seq=seq-8
end end
return Duel.GetFieldCard(p,loc,seq) return Duel.GetFieldCard(p,loc,math.floor(seq+0.5))
end end
--从tp来看的zone->(p,loc,seq).11450996. --从tp来看的zone->(p,loc,seq).11450996.
function cm.zone2seq(tp,zone) function cm.zone2seq(tp,zone)
......
--魔人★双子使徒 火焰书士 --魔人★双子使徒 火焰书士
local m=11451487 local cm,m=GetID()
local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
--effect1 --effect1
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -105,12 +104,6 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -105,12 +104,6 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
e2:SetOperation(cm.aclimit1) e2:SetOperation(cm.aclimit1)
e2:SetReset(RESET_PHASE+PHASE_END) e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp) Duel.RegisterEffect(e2,tp)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e3:SetCode(EVENT_CHAIN_NEGATED)
e3:SetOperation(cm.aclimit2)
e3:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e3,tp)
end end
function cm.aclimit1(e,tp,eg,ep,ev,re,r,rp) function cm.aclimit1(e,tp,eg,ep,ev,re,r,rp)
if ep==tp or not re:IsHasType(EFFECT_TYPE_ACTIVATE) then return end if ep==tp or not re:IsHasType(EFFECT_TYPE_ACTIVATE) then return end
...@@ -120,11 +113,19 @@ function cm.aclimit1(e,tp,eg,ep,ev,re,r,rp) ...@@ -120,11 +113,19 @@ function cm.aclimit1(e,tp,eg,ep,ev,re,r,rp)
else else
Duel.SetFlagEffectLabel(tp,m,ct+1) Duel.SetFlagEffectLabel(tp,m,ct+1)
end end
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_CHAIN_NEGATED)
e2:SetLabel(ev)
e2:SetLabelObject(e1)
e2:SetReset(RESET_CHAIN)
e2:SetOperation(cm.resetop)
Duel.RegisterEffect(e2,tp)
end end
function cm.aclimit2(e,tp,eg,ep,ev,re,r,rp) function cm.resetop(e,tp,eg,ep,ev,re,r,rp)
if ep==tp or not re:IsHasType(EFFECT_TYPE_ACTIVATE) then return end if ep==tp or not re:IsHasType(EFFECT_TYPE_ACTIVATE) then return end
local ct=Duel.GetFlagEffectLabel(tp,m) local ct=Duel.GetFlagEffectLabel(tp,m)
if ct then Duel.SetFlagEffectLabel(tp,m,ct-1) end if ev==e:GetLabel() then Duel.SetFlagEffectLabel(tp,m,ct-1) end
end end
function cm.econ(e) function cm.econ(e)
local ct=Duel.GetFlagEffectLabel(e:GetHandlerPlayer(),m) local ct=Duel.GetFlagEffectLabel(e:GetHandlerPlayer(),m)
......
...@@ -23,7 +23,7 @@ function cm.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -23,7 +23,7 @@ function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)>0 return Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)>0
end end
function cm.hand(e,tp,eg,ep,ev,re,r,rp) function cm.hand(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(Card.IsSSetable,e:GetHandlerPlayer(),LOCATION_HAND,0,1,e:GetHandler()) return Duel.IsExistingMatchingCard(Card.IsSSetable,e:GetHandlerPlayer(),LOCATION_HAND,0,1,e:GetHandler()) and Duel.GetLocationCount(e:GetHandlerPlayer(),LOCATION_SZONE)>1
end end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
...@@ -52,10 +52,6 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -52,10 +52,6 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
e2:SetOperation(cm.rsop) e2:SetOperation(cm.rsop)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp) Duel.RegisterEffect(e2,tp)
local e3=e2:Clone()
e3:SetCode(EVENT_CHAIN_NEGATED)
e3:SetOperation(cm.rsop2)
Duel.RegisterEffect(e3,tp)
tc:RegisterFlagEffect(m+1,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1,fid) tc:RegisterFlagEffect(m+1,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1,fid)
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD) e4:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
...@@ -86,14 +82,24 @@ function cm.rsop(e,tp,eg,ep,ev,re,r,rp) ...@@ -86,14 +82,24 @@ function cm.rsop(e,tp,eg,ep,ev,re,r,rp)
else else
c:SetFlagEffectLabel(m,c:GetFlagEffectLabel(m)+1) c:SetFlagEffectLabel(m,c:GetFlagEffectLabel(m)+1)
end end
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_CHAIN_NEGATED)
e2:SetLabel(ev)
e2:SetLabelObject(tc)
e2:SetReset(RESET_CHAIN)
e2:SetOperation(cm.resetop)
Duel.RegisterEffect(e2,tp)
end end
function cm.rsop2(e,tp,eg,ep,ev,re,r,rp) function cm.resetop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetLabelObject() local c=e:GetLabelObject()
if c:GetFlagEffect(m+1)==0 then return end if c:GetFlagEffect(m+1)==0 then return end
if flag and flag==1 then if ev==e:GetLabel() then
c:ResetFlagEffect(m) if flag and flag==1 then
elseif flag and flag>1 then c:ResetFlagEffect(m)
c:SetFlagEffectLabel(m,flag-1) elseif flag and flag>1 then
c:SetFlagEffectLabel(m,flag-1)
end
end end
end end
function cm.sscon(e,tp,eg,ep,ev,re,r,rp) function cm.sscon(e,tp,eg,ep,ev,re,r,rp)
......
--诡雷战术 隐秘出击 --诡雷战术 隐秘出击
--21.04.22 --21.04.22
local m=11451561 local cm,m=GetID()
local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -98,10 +97,6 @@ function cm.trop(e,tp,eg,ep,ev,re,r,rp) ...@@ -98,10 +97,6 @@ function cm.trop(e,tp,eg,ep,ev,re,r,rp)
e2:SetOperation(cm.rsop) e2:SetOperation(cm.rsop)
e2:SetReset(RESET_EVENT+RESETS_STANDARD) e2:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e2,true) tc:RegisterEffect(e2,true)
local e3=e2:Clone()
e3:SetCode(EVENT_CHAIN_NEGATED)
e3:SetOperation(cm.rsop2)
tc:RegisterEffect(e3,true)
tc:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(m,1)) tc:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(m,1))
end end
end end
...@@ -117,7 +112,15 @@ function cm.rscon(e,tp,eg,ep,ev,re,r,rp) ...@@ -117,7 +112,15 @@ function cm.rscon(e,tp,eg,ep,ev,re,r,rp)
end end
function cm.rsop(e,tp,eg,ep,ev,re,r,rp) function cm.rsop(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():ResetFlagEffect(m) e:GetHandler():ResetFlagEffect(m)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_CHAIN_NEGATED)
e2:SetLabel(ev)
e2:SetLabelObject(e1)
e2:SetReset(RESET_CHAIN)
e2:SetOperation(cm.resetop)
Duel.RegisterEffect(e2,tp)
end end
function cm.rsop2(e,tp,eg,ep,ev,re,r,rp) function cm.resetop(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(m,1)) if ev==e:GetLabel() then e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(m,1)) end
end end
\ No newline at end of file
...@@ -43,7 +43,7 @@ function cm.GetCardsInZone(tp,fd) ...@@ -43,7 +43,7 @@ function cm.GetCardsInZone(tp,fd)
loc=LOCATION_SZONE loc=LOCATION_SZONE
seq=seq-8 seq=seq-8
end end
return Duel.GetFieldCard(p,loc,seq) return Duel.GetFieldCard(p,loc,math.floor(seq+0.5))
end end
function cm.desfilter(c) function cm.desfilter(c)
return not c:IsLocation(LOCATION_SZONE) or c:GetSequence()<5 return not c:IsLocation(LOCATION_SZONE) or c:GetSequence()<5
......
...@@ -169,7 +169,7 @@ function cm.GetCardsInZone(tp,fd) ...@@ -169,7 +169,7 @@ function cm.GetCardsInZone(tp,fd)
loc=LOCATION_SZONE loc=LOCATION_SZONE
seq=seq-8 seq=seq-8
end end
return Duel.GetFieldCard(p,loc,seq) return Duel.GetFieldCard(p,loc,math.floor(seq+0.5))
end end
function cm.xytozone(x,y) function cm.xytozone(x,y)
if x==-1 and y==0.5 then return 1<<13 if x==-1 and y==0.5 then return 1<<13
......
...@@ -25,7 +25,7 @@ function cm.GetCardsInZone(tp,fd) ...@@ -25,7 +25,7 @@ function cm.GetCardsInZone(tp,fd)
loc=LOCATION_SZONE loc=LOCATION_SZONE
seq=seq-8 seq=seq-8
end end
return Duel.GetFieldCard(p,loc,seq) return Duel.GetFieldCard(p,loc,math.floor(seq+0.5))
end end
function cm.mzlock(tp,seq,usep) function cm.mzlock(tp,seq,usep)
local mzc=Duel.GetFieldCard(tp,LOCATION_MZONE,seq) local mzc=Duel.GetFieldCard(tp,LOCATION_MZONE,seq)
...@@ -70,6 +70,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -70,6 +70,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
g:AddCard(tc) g:AddCard(tc)
local subg=tg:Filter(Card.IsCode,nil,tc:GetCode()) local subg=tg:Filter(Card.IsCode,nil,tc:GetCode())
tg:Sub(subg) tg:Sub(subg)
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(m,0))
local fd=Duel.SelectField(tp,1,0,LOCATION_MZONE,(~(zone<<16))) local fd=Duel.SelectField(tp,1,0,LOCATION_MZONE,(~(zone<<16)))
local mzc=cm.GetCardsInZone(tp,fd) local mzc=cm.GetCardsInZone(tp,fd)
if mzc then dg:AddCard(mzc) end if mzc then dg:AddCard(mzc) end
......
...@@ -51,7 +51,7 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -51,7 +51,7 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
local sa=c:IsLocation(LOCATION_HAND) and Duel.GetFlagEffect(tp,m+1)==0 local sa=c:IsLocation(LOCATION_HAND) and Duel.GetFlagEffect(tp,m+1)==0
local sb=c:IsLocation(LOCATION_REMOVED) and Duel.GetFlagEffect(tp,m+10)==0 local sb=c:IsLocation(LOCATION_REMOVED) and Duel.GetFlagEffect(tp,m+10)==0
if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil) and (sa or sb) and Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_HAND,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil) and (sa or sb) and Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_ONFIELD,0,1,nil) end
if c:IsLocation(LOCATION_HAND) then if c:IsLocation(LOCATION_HAND) then
Duel.RegisterFlagEffect(tp,m+1,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,m+1,RESET_PHASE+PHASE_END,0,1)
elseif c:IsLocation(LOCATION_REMOVED) then elseif c:IsLocation(LOCATION_REMOVED) then
...@@ -60,8 +60,8 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -60,8 +60,8 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,tp,LOCATION_HAND) Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,tp,LOCATION_HAND)
end end
function cm.fselect(g,c) function cm.fselect(g)
return g:IsExists(cm.costfilter,1,c) return g:IsExists(Card.IsLocation,1,nil,LOCATION_HAND) and g:IsExists(Card.IsLocation,1,nil,LOCATION_ONFIELD)
end end
function cm.thop(e,tp,eg,ep,ev,re,r,rp) function cm.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
...@@ -69,11 +69,11 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -69,11 +69,11 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
local rg=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_HAND,0,nil) local rg=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_HAND+LOCATION_ONFIELD,0,nil)
if #rg>1 then if rg:IsExists(Card.IsLocation,1,nil,LOCATION_HAND) and rg:IsExists(Card.IsLocation,1,nil,LOCATION_ONFIELD) then
Duel.BreakEffect() --Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local tg=rg:Select(tp,2,2,nil) local tg=rg:SelectSubGroup(tp,cm.fselect,false,2,2)
Duel.Remove(tg,POS_FACEUP,REASON_EFFECT) Duel.Remove(tg,POS_FACEUP,REASON_EFFECT)
end end
end end
......
...@@ -52,7 +52,7 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -52,7 +52,7 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
local sa=c:IsLocation(LOCATION_HAND) and Duel.GetFlagEffect(tp,m+1)==0 local sa=c:IsLocation(LOCATION_HAND) and Duel.GetFlagEffect(tp,m+1)==0
local sb=c:IsLocation(LOCATION_REMOVED) and Duel.GetFlagEffect(tp,m+10)==0 local sb=c:IsLocation(LOCATION_REMOVED) and Duel.GetFlagEffect(tp,m+10)==0
local rg=Duel.GetMatchingGroup(cm.costfilter,tp,LOCATION_HAND,0,c) local rg=Duel.GetMatchingGroup(cm.costfilter,tp,LOCATION_HAND,0,c)
if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil) and (sa or sb) and Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_HAND,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil) and (sa or sb) and Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_ONFIELD,0,1,nil) end
if c:IsLocation(LOCATION_HAND) then if c:IsLocation(LOCATION_HAND) then
Duel.RegisterFlagEffect(tp,m+1,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,m+1,RESET_PHASE+PHASE_END,0,1)
elseif c:IsLocation(LOCATION_REMOVED) then elseif c:IsLocation(LOCATION_REMOVED) then
...@@ -61,26 +61,23 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -61,26 +61,23 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,tp,LOCATION_HAND) Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,tp,LOCATION_HAND)
end end
function cm.fselect(g,c,tp) function cm.fselect(g)
return g:IsExists(cm.costfilter,1,c) and Duel.IsExistingMatchingCard(cm.thfilter2,tp,LOCATION_DECK,0,1,nil,g) return g:IsExists(Card.IsLocation,1,nil,LOCATION_HAND) and g:IsExists(Card.IsLocation,1,nil,LOCATION_ONFIELD)
end end
function cm.thfilter2(c,g) function cm.thfilter2(c,g)
return c:IsSetCard(0x9977) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() and not Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_REMOVED,LOCATION_REMOVED,1,nil,c:GetCode()) and not g:IsExists(Card.IsCode,1,nil,c:GetCode()) return c:IsSetCard(0x9977) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() and not Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_REMOVED,LOCATION_REMOVED,1,nil,c:GetCode()) and not g:IsExists(Card.IsCode,1,nil,c:GetCode())
end end
function cm.fselect2(g,c)
return g:IsExists(cm.costfilter,1,c)
end
function cm.thop(e,tp,eg,ep,ev,re,r,rp) function cm.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
local rg=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_HAND,0,nil) local rg=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_HAND+LOCATION_ONFIELD,0,nil)
if #rg>1 then if rg:IsExists(Card.IsLocation,1,nil,LOCATION_HAND) and rg:IsExists(Card.IsLocation,1,nil,LOCATION_ONFIELD) then
Duel.BreakEffect() --Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local tg=rg:Select(tp,2,2,nil) local tg=rg:SelectSubGroup(tp,cm.fselect,false,2,2)
Duel.Remove(tg,POS_FACEUP,REASON_EFFECT) Duel.Remove(tg,POS_FACEUP,REASON_EFFECT)
end end
end end
......
...@@ -51,7 +51,7 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -51,7 +51,7 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
local sa=c:IsLocation(LOCATION_HAND) and Duel.GetFlagEffect(tp,m+1)==0 local sa=c:IsLocation(LOCATION_HAND) and Duel.GetFlagEffect(tp,m+1)==0
local sb=c:IsLocation(LOCATION_REMOVED) and Duel.GetFlagEffect(tp,m+10)==0 local sb=c:IsLocation(LOCATION_REMOVED) and Duel.GetFlagEffect(tp,m+10)==0
if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil) and (sa or sb) and Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_HAND,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil) and (sa or sb) and Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_ONFIELD,0,1,nil) end
if c:IsLocation(LOCATION_HAND) then if c:IsLocation(LOCATION_HAND) then
Duel.RegisterFlagEffect(tp,m+1,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,m+1,RESET_PHASE+PHASE_END,0,1)
elseif c:IsLocation(LOCATION_REMOVED) then elseif c:IsLocation(LOCATION_REMOVED) then
...@@ -60,8 +60,8 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -60,8 +60,8 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,tp,LOCATION_HAND) Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,tp,LOCATION_HAND)
end end
function cm.fselect(g,c) function cm.fselect(g)
return g:IsExists(cm.costfilter,1,c) return g:IsExists(Card.IsLocation,1,nil,LOCATION_HAND) and g:IsExists(Card.IsLocation,1,nil,LOCATION_ONFIELD)
end end
function cm.thop(e,tp,eg,ep,ev,re,r,rp) function cm.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
...@@ -69,11 +69,11 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -69,11 +69,11 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
local rg=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_HAND,0,nil) local rg=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_HAND+LOCATION_ONFIELD,0,nil)
if #rg>1 then if rg:IsExists(Card.IsLocation,1,nil,LOCATION_HAND) and rg:IsExists(Card.IsLocation,1,nil,LOCATION_ONFIELD) then
Duel.BreakEffect() --Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local tg=rg:Select(tp,2,2,nil) local tg=rg:SelectSubGroup(tp,cm.fselect,false,2,2)
Duel.Remove(tg,POS_FACEUP,REASON_EFFECT) Duel.Remove(tg,POS_FACEUP,REASON_EFFECT)
end end
end end
......
...@@ -68,7 +68,7 @@ function cm.adjustop(e,tp,eg,ep,ev,re,r,rp) ...@@ -68,7 +68,7 @@ function cm.adjustop(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 and Duel.GetMZoneCount(tp)>0 and Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)>0 then if g:GetCount()>0 and Duel.GetMZoneCount(tp)>0 and Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)>0 then
local rg=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_ONFIELD,0,nil) local rg=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_ONFIELD,0,nil)
if #rg>1 then if #rg>1 then
Duel.BreakEffect() --Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local tg=rg:Select(tp,2,2,nil) local tg=rg:Select(tp,2,2,nil)
Duel.Remove(tg,POS_FACEUP,REASON_EFFECT) Duel.Remove(tg,POS_FACEUP,REASON_EFFECT)
...@@ -109,6 +109,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -109,6 +109,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local res=false local res=false
if tc:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEDOWN_DEFENSE) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and (not tc:IsSSetable() or Duel.SelectYesNo(tp,Stringid(m,3))) then if tc:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEDOWN_DEFENSE) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and (not tc:IsSSetable() or Duel.SelectYesNo(tp,Stringid(m,3))) then
res=Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEDOWN_DEFENSE) res=Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEDOWN_DEFENSE)
if res then Duel.ConfirmCards(1-tp,tc) end
else else
res=Duel.SSet(tp,tc)>0 res=Duel.SSet(tp,tc)>0
end end
......
...@@ -5,12 +5,44 @@ function pnfl_prophecy_flight_initial(c) ...@@ -5,12 +5,44 @@ function pnfl_prophecy_flight_initial(c)
PNFL_PROPHECY_FLIGHT_DEBUG=false PNFL_PROPHECY_FLIGHT_DEBUG=false
PNFL_PROPHECY_FLIGHT_OPERATION_PERMIT=true PNFL_PROPHECY_FLIGHT_OPERATION_PERMIT=true
PNFL_PROPHECY_FLIGHT_TACTIC_VIEW=false PNFL_PROPHECY_FLIGHT_TACTIC_VIEW=false
PNFL_PROPHECY_FLIGHT_STONE_HAIL=false
pnflpf[0]=0 pnflpf[0]=0
pnflpf[1]=0 pnflpf[1]=0
pnflpf.coinsequence={} pnflpf.coinsequence={}
_TossCoin=Duel.TossCoin _TossCoin=Duel.TossCoin
_SetCoinResult=Duel.SetCoinResult
function Duel.SetCoinResult(...)
local ct0=#pnflpf.coinsequence
local res0={Duel.GetCoinResult()}
if pnflpf.res and #res0>0 then
for i=1,#res0 do pnflpf.coinsequence[ct0+i]=res0[i] end
end
pnflpf.res=nil
_SetCoinResult(...)
end
function Duel.TossCoin(p,ct) function Duel.TossCoin(p,ct)
local ct0=#pnflpf.coinsequence
local res0={Duel.GetCoinResult()}
--before replaced by this coin, register last coin.
if pnflpf.res and #res0>0 then
for i=1,ct do pnflpf.coinsequence[ct0+i]=res0[i] end
end
pnflpf.res=res0
ct0=#pnflpf.coinsequence
local res={_TossCoin(p,ct)}
local ct1=#pnflpf.coinsequence
--if this coin isn't replaced, register it.
if pnflpf.res and ct0==ct1 then
for i=1,ct do pnflpf.coinsequence[ct1+i]=res[i] end
end
local str="实际投掷结果:"
for i=1,#res do
if res[i]==1 then str=str.."[表]" else str=str.."[里]" end
end
--Debug.Message(str)
pnflpf.res=nil
return table.unpack(res)
end
--[[function Duel.TossCoin(p,ct)
local dic={} local dic={}
local ct0=#pnflpf.coinsequence local ct0=#pnflpf.coinsequence
for i=1,ct do table.insert(pnflpf.coinsequence,2) end for i=1,ct do table.insert(pnflpf.coinsequence,2) end
...@@ -88,7 +120,7 @@ function pnfl_prophecy_flight_initial(c) ...@@ -88,7 +120,7 @@ function pnfl_prophecy_flight_initial(c)
end end
for i=1,ct do pnflpf.coinsequence[ct0+i]=res[i] end for i=1,ct do pnflpf.coinsequence[ct0+i]=res[i] end
return table.unpack(res) return table.unpack(res)
end end--]]
--increase by Card.ReverseInDeck --increase by Card.ReverseInDeck
local ge0=Effect.CreateEffect(c) local ge0=Effect.CreateEffect(c)
ge0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) ge0:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
...@@ -100,19 +132,6 @@ function pnfl_prophecy_flight_initial(c) ...@@ -100,19 +132,6 @@ function pnfl_prophecy_flight_initial(c)
local ge1=ge0:Clone() local ge1=ge0:Clone()
ge1:SetCode(EVENT_MOVE) ge1:SetCode(EVENT_MOVE)
Duel.RegisterEffect(ge1,0) Duel.RegisterEffect(ge1,0)
--card influenced by effect
local ge2=Effect.CreateEffect(c)
ge2:SetType(EFFECT_TYPE_SINGLE)
ge2:SetCode(EFFECT_IMMUNE_EFFECT)
ge2:SetRange(LOCATION_ONFIELD)
ge2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_SET_AVAILABLE)
ge2:SetValue(pnflpf.chkval)
local ge3=Effect.CreateEffect(c)
ge3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_GRANT)
ge3:SetTargetRange(LOCATION_ONFIELD,LOCATION_ONFIELD)
ge3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_SET_AVAILABLE)
ge3:SetLabelObject(ge2)
Duel.RegisterEffect(ge3,0)
--tactic view --tactic view
local ge4=Effect.CreateEffect(c) local ge4=Effect.CreateEffect(c)
ge4:SetDescription(aux.Stringid(11451851,4)) ge4:SetDescription(aux.Stringid(11451851,4))
...@@ -133,18 +152,8 @@ function pnflpf.resetop(e,tp,eg,ep,ev,re,r,rp) ...@@ -133,18 +152,8 @@ function pnflpf.resetop(e,tp,eg,ep,ev,re,r,rp)
if PNFL_PROPHECY_FLIGHT_DEBUG then Debug.Message("reset") end if PNFL_PROPHECY_FLIGHT_DEBUG then Debug.Message("reset") end
if res0 then for tc in aux.Next(g0) do tc:ResetFlagEffect(11451851) end end if res0 then for tc in aux.Next(g0) do tc:ResetFlagEffect(11451851) end end
if res1 then for tc in aux.Next(g1) do tc:ResetFlagEffect(11451851) end end if res1 then for tc in aux.Next(g1) do tc:ResetFlagEffect(11451851) end end
Duel.Readjust() --Duel.Readjust()
end
end
function pnflpf.chkval(e,te)
if te and te:GetHandler() and not te:IsHasProperty(EFFECT_FLAG_UNCOPYABLE) then
if e:GetHandler():GetFlagEffect(11451854)==0 then
local prop=EFFECT_FLAG_SET_AVAILABLE
if PNFL_PROPHECY_FLIGHT_STONE_HAIL then prop=prop|EFFECT_FLAG_CLIENT_HINT end
e:GetHandler():RegisterFlagEffect(11451854,RESET_EVENT+0x1fc0000,prop,1,0,aux.Stringid(11451854,2))
end
end end
return false
end end
function pnflpf.tdfilter(c) function pnflpf.tdfilter(c)
return c:GetTurnID()==Duel.GetTurnCount() return c:GetTurnID()==Duel.GetTurnCount()
...@@ -256,9 +265,9 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -256,9 +265,9 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
local res=Duel.TossCoin(tp,1) local res=Duel.TossCoin(tp,1)
if PNFL_PROPHECY_FLIGHT_DEBUG then res=1 end if PNFL_PROPHECY_FLIGHT_DEBUG then res=1 end
if c:IsRelateToEffect(e) and Duel.SendtoDeck(c,nil,0,REASON_EFFECT) and c:IsLocation(LOCATION_DECK) and res==1 then if c:IsRelateToEffect(e) and Duel.SendtoDeck(c,nil,0,REASON_EFFECT) and c:IsLocation(LOCATION_DECK) then
Duel.ShuffleDeck(c:GetControler()) Duel.ShuffleDeck(c:GetControler())
c:ReverseInDeck() if res==1 then c:ReverseInDeck() end
end end
end end
end end
...@@ -280,6 +289,7 @@ function cm.adjustop(e,tp,eg,ep,ev,re,r,rp) ...@@ -280,6 +289,7 @@ function cm.adjustop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if PNFL_PROPHECY_FLIGHT_DEBUG then Debug.Message("adjust"..c:GetCode()) end if PNFL_PROPHECY_FLIGHT_DEBUG then Debug.Message("adjust"..c:GetCode()) end
c:ReverseInDeck() c:ReverseInDeck()
pnflpf.resetop(e,tp,eg,ep,ev,re,r,rp)
local tg=Duel.GetMatchingGroup(Card.IsHasEffect,tp,LOCATION_DECK,0,nil,11451851) local tg=Duel.GetMatchingGroup(Card.IsHasEffect,tp,LOCATION_DECK,0,nil,11451851)
local sg=tg:Filter(cm.topfilter,nil) local sg=tg:Filter(cm.topfilter,nil)
local ct=Duel.GetFieldGroupCount(tp,LOCATION_DECK,0) local ct=Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)
...@@ -380,10 +390,10 @@ function cm.GetCardsInZone(tp,fd) ...@@ -380,10 +390,10 @@ function cm.GetCardsInZone(tp,fd)
loc=LOCATION_SZONE loc=LOCATION_SZONE
seq=seq-8 seq=seq-8
end end
return Duel.GetFieldCard(p,loc,seq) return Duel.GetFieldCard(p,loc,math.floor(seq+0.5))
end end
function cm.desop(e,tp,eg,ep,ev,re,r,rp) function cm.desop(e,tp,eg,ep,ev,re,r,rp)
if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return false end if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) or not Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS) then return false end
local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS):Filter(cm.tgfilter,nil,re) local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS):Filter(cm.tgfilter,nil,re)
if #g>0 and Duel.SelectEffectYesNo(tp,e:GetHandler()) then if #g>0 and Duel.SelectEffectYesNo(tp,e:GetHandler()) then
local fd=0 local fd=0
...@@ -408,6 +418,7 @@ function cm.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -408,6 +418,7 @@ function cm.desop(e,tp,eg,ep,ev,re,r,rp)
if tc then Duel.Destroy(tc,REASON_EFFECT) end if tc then Duel.Destroy(tc,REASON_EFFECT) end
end end
if Duel.GetCurrentChain()==1 then op(e,tp) end if Duel.GetCurrentChain()==1 then op(e,tp) end
e:GetHandler():ResetFlagEffect(11451862)
local e6=Effect.CreateEffect(e:GetHandler()) local e6=Effect.CreateEffect(e:GetHandler())
e6:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e6:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e6:SetCode(EVENT_CHAIN_SOLVED) e6:SetCode(EVENT_CHAIN_SOLVED)
......
...@@ -76,9 +76,9 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -76,9 +76,9 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
local res=Duel.TossCoin(tp,1) local res=Duel.TossCoin(tp,1)
if PNFL_PROPHECY_FLIGHT_DEBUG then res=1 end if PNFL_PROPHECY_FLIGHT_DEBUG then res=1 end
if c:IsRelateToEffect(e) and Duel.SendtoDeck(c,nil,0,REASON_EFFECT) and c:IsLocation(LOCATION_DECK) and res==1 then if c:IsRelateToEffect(e) and Duel.SendtoDeck(c,nil,0,REASON_EFFECT) and c:IsLocation(LOCATION_DECK) then
Duel.ShuffleDeck(c:GetControler()) Duel.ShuffleDeck(c:GetControler())
c:ReverseInDeck() if res==1 then c:ReverseInDeck() end
end end
end end
end end
...@@ -100,6 +100,7 @@ function cm.adjustop(e,tp,eg,ep,ev,re,r,rp) ...@@ -100,6 +100,7 @@ function cm.adjustop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if PNFL_PROPHECY_FLIGHT_DEBUG then Debug.Message("adjust"..c:GetCode()) end if PNFL_PROPHECY_FLIGHT_DEBUG then Debug.Message("adjust"..c:GetCode()) end
c:ReverseInDeck() c:ReverseInDeck()
pnflpf.resetop(e,tp,eg,ep,ev,re,r,rp)
local tg=Duel.GetMatchingGroup(Card.IsHasEffect,tp,LOCATION_DECK,0,nil,11451851) local tg=Duel.GetMatchingGroup(Card.IsHasEffect,tp,LOCATION_DECK,0,nil,11451851)
local sg=tg:Filter(cm.topfilter,nil) local sg=tg:Filter(cm.topfilter,nil)
local ct=Duel.GetFieldGroupCount(tp,LOCATION_DECK,0) local ct=Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)
...@@ -183,7 +184,7 @@ function cm.distance2(ac,bc,tp) ...@@ -183,7 +184,7 @@ function cm.distance2(ac,bc,tp)
return (by-ay)*(by-ay)+(ax-bx)*(ax-bx) return (by-ay)*(by-ay)+(ax-bx)*(ax-bx)
end end
function cm.desop(e,tp,eg,ep,ev,re,r,rp) function cm.desop(e,tp,eg,ep,ev,re,r,rp)
if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return false end if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) or not Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS) then return false end
local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS):Filter(cm.tgfilter,nil,re) local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS):Filter(cm.tgfilter,nil,re)
local ng=Duel.GetMatchingGroup(Card.IsFaceup,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil) local ng=Duel.GetMatchingGroup(Card.IsFaceup,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
if #g>0 and #ng>0 and Duel.SelectEffectYesNo(tp,e:GetHandler()) then if #g>0 and #ng>0 and Duel.SelectEffectYesNo(tp,e:GetHandler()) then
......
...@@ -95,9 +95,9 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -95,9 +95,9 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
local res=Duel.TossCoin(tp,1) local res=Duel.TossCoin(tp,1)
if PNFL_PROPHECY_FLIGHT_DEBUG then res=1 end if PNFL_PROPHECY_FLIGHT_DEBUG then res=1 end
if c:IsRelateToEffect(e) and Duel.SendtoDeck(c,nil,0,REASON_EFFECT) and c:IsLocation(LOCATION_DECK) and res==1 then if c:IsRelateToEffect(e) and Duel.SendtoDeck(c,nil,0,REASON_EFFECT) and c:IsLocation(LOCATION_DECK) then
Duel.ShuffleDeck(c:GetControler()) Duel.ShuffleDeck(c:GetControler())
c:ReverseInDeck() if res==1 then c:ReverseInDeck() end
end end
end end
end end
...@@ -119,6 +119,7 @@ function cm.adjustop(e,tp,eg,ep,ev,re,r,rp) ...@@ -119,6 +119,7 @@ function cm.adjustop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if PNFL_PROPHECY_FLIGHT_DEBUG then Debug.Message("adjust"..c:GetCode()) end if PNFL_PROPHECY_FLIGHT_DEBUG then Debug.Message("adjust"..c:GetCode()) end
c:ReverseInDeck() c:ReverseInDeck()
pnflpf.resetop(e,tp,eg,ep,ev,re,r,rp)
local tg=Duel.GetMatchingGroup(Card.IsHasEffect,tp,LOCATION_DECK,0,nil,11451851) local tg=Duel.GetMatchingGroup(Card.IsHasEffect,tp,LOCATION_DECK,0,nil,11451851)
local sg=tg:Filter(cm.topfilter,nil) local sg=tg:Filter(cm.topfilter,nil)
local ct=Duel.GetFieldGroupCount(tp,LOCATION_DECK,0) local ct=Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)
...@@ -195,7 +196,7 @@ function cm.tfilter(c) ...@@ -195,7 +196,7 @@ function cm.tfilter(c)
return c:IsFacedown() and c:IsOnField() return c:IsFacedown() and c:IsOnField()
end end
function cm.desop(e,tp,eg,ep,ev,re,r,rp) function cm.desop(e,tp,eg,ep,ev,re,r,rp)
if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return false end if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) or not Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS) then return false end
local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS):Filter(cm.tgfilter,nil,re) local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS):Filter(cm.tgfilter,nil,re)
local fg=Duel.GetMatchingGroup(nil,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil) local fg=Duel.GetMatchingGroup(nil,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
local ng=Duel.GetMatchingGroup(cm.dsfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil) local ng=Duel.GetMatchingGroup(cm.dsfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
......
...@@ -52,8 +52,34 @@ function cm.initial_effect(c) ...@@ -52,8 +52,34 @@ function cm.initial_effect(c)
local e6=e5:Clone() local e6=e5:Clone()
e6:SetCode(EVENT_PHASE+PHASE_END) e6:SetCode(EVENT_PHASE+PHASE_END)
c:RegisterEffect(e6) c:RegisterEffect(e6)
if not PNFL_INFLUENCED_CHECK then
PNFL_INFLUENCED_CHECK=true
--card influenced by effect
local ge2=Effect.CreateEffect(c)
ge2:SetType(EFFECT_TYPE_SINGLE)
ge2:SetCode(EFFECT_IMMUNE_EFFECT)
ge2:SetRange(LOCATION_ONFIELD)
ge2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_SET_AVAILABLE)
ge2:SetValue(cm.chkval0)
local ge3=Effect.CreateEffect(c)
ge3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_GRANT)
ge3:SetTargetRange(LOCATION_ONFIELD,LOCATION_ONFIELD)
ge3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_SET_AVAILABLE)
ge3:SetLabelObject(ge2)
Duel.RegisterEffect(ge3,0)
end
end end
cm.toss_coin=true cm.toss_coin=true
function cm.chkval0(e,te)
if te and te:GetHandler() and not te:IsHasProperty(EFFECT_FLAG_UNCOPYABLE) then
if e:GetHandler():GetFlagEffect(11451854)==0 then
local prop=EFFECT_FLAG_SET_AVAILABLE
if PNFL_INFLUENCED_HINT or PNFL_DEBUG then prop=prop|EFFECT_FLAG_CLIENT_HINT end
e:GetHandler():RegisterFlagEffect(11451854,RESET_EVENT+0x1fc0000,prop,1,0,aux.Stringid(11451854,2))
end
end
return false
end
function cm.thcon(e,tp,eg,ep,ev,re,r,rp) function cm.thcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==1-tp and (Duel.GetCurrentPhase()==PHASE_MAIN1 or Duel.GetCurrentPhase()==PHASE_MAIN2) return Duel.GetTurnPlayer()==1-tp and (Duel.GetCurrentPhase()==PHASE_MAIN1 or Duel.GetCurrentPhase()==PHASE_MAIN2)
end end
...@@ -82,9 +108,9 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -82,9 +108,9 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
local res=Duel.TossCoin(tp,1) local res=Duel.TossCoin(tp,1)
if PNFL_PROPHECY_FLIGHT_DEBUG then res=1 end if PNFL_PROPHECY_FLIGHT_DEBUG then res=1 end
if c:IsRelateToEffect(e) and Duel.SendtoDeck(c,nil,0,REASON_EFFECT) and c:IsLocation(LOCATION_DECK) and res==1 then if c:IsRelateToEffect(e) and Duel.SendtoDeck(c,nil,0,REASON_EFFECT) and c:IsLocation(LOCATION_DECK) then
Duel.ShuffleDeck(c:GetControler()) Duel.ShuffleDeck(c:GetControler())
c:ReverseInDeck() if res==1 then c:ReverseInDeck() end
end end
end end
end end
...@@ -103,8 +129,8 @@ end ...@@ -103,8 +129,8 @@ end
function cm.adjustop(e,tp,eg,ep,ev,re,r,rp) function cm.adjustop(e,tp,eg,ep,ev,re,r,rp)
if pnfl_adjusting then return end if pnfl_adjusting then return end
pnfl_adjusting=true pnfl_adjusting=true
if not PNFL_PROPHECY_FLIGHT_STONE_HAIL then if not PNFL_INFLUENCED_HINT then
PNFL_PROPHECY_FLIGHT_STONE_HAIL=true PNFL_INFLUENCED_HINT=true
local shg=Duel.GetMatchingGroup(cm.shfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil) local shg=Duel.GetMatchingGroup(cm.shfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
for tc in aux.Next(shg) do for tc in aux.Next(shg) do
tc:RegisterFlagEffect(11451854,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(11451854,2)) tc:RegisterFlagEffect(11451854,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(11451854,2))
...@@ -113,6 +139,7 @@ function cm.adjustop(e,tp,eg,ep,ev,re,r,rp) ...@@ -113,6 +139,7 @@ function cm.adjustop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if PNFL_PROPHECY_FLIGHT_DEBUG then Debug.Message("adjust"..c:GetCode()) end if PNFL_PROPHECY_FLIGHT_DEBUG then Debug.Message("adjust"..c:GetCode()) end
c:ReverseInDeck() c:ReverseInDeck()
pnflpf.resetop(e,tp,eg,ep,ev,re,r,rp)
local tg=Duel.GetMatchingGroup(Card.IsHasEffect,tp,LOCATION_DECK,0,nil,11451851) local tg=Duel.GetMatchingGroup(Card.IsHasEffect,tp,LOCATION_DECK,0,nil,11451851)
local sg=tg:Filter(cm.topfilter,nil) local sg=tg:Filter(cm.topfilter,nil)
local ct=Duel.GetFieldGroupCount(tp,LOCATION_DECK,0) local ct=Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)
...@@ -176,27 +203,31 @@ function cm.tgfilter(c,e) ...@@ -176,27 +203,31 @@ function cm.tgfilter(c,e)
return c:IsRelateToEffect(e) and (c:IsLocation(LOCATION_GRAVE) or c:GetFlagEffect(11451854)>0) and c:IsAbleToRemove() return c:IsRelateToEffect(e) and (c:IsLocation(LOCATION_GRAVE) or c:GetFlagEffect(11451854)>0) and c:IsAbleToRemove()
end end
function cm.desop(e,tp,eg,ep,ev,re,r,rp) function cm.desop(e,tp,eg,ep,ev,re,r,rp)
if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return false end if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) or not Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS) then return false end
local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS):Filter(cm.tgfilter,nil,re) local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS):Filter(cm.tgfilter,nil,re)
if #g>0 and Duel.SelectEffectYesNo(tp,e:GetHandler()) then if #g>0 and Duel.SelectEffectYesNo(tp,e:GetHandler()) then
local tc=g:GetFirst() local tc=g:GetFirst()
if #g>1 then if #g>1 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
tc=g:Select(tp,1,1,nil):GetFirst() tg=g:Select(tp,1,#g,nil)
end end
Duel.Hint(HINT_CARD,0,m) Duel.Hint(HINT_CARD,0,m)
Duel.HintSelection(Group.FromCards(tc)) Duel.HintSelection(tg)
if Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)>0 and tc:IsLocation(LOCATION_REMOVED) then if Duel.Remove(tg,POS_FACEUP,REASON_EFFECT)>0 then
local e1=Effect.CreateEffect(e:GetHandler()) local rg=Duel.GetOperatedGroup():Filter(Card.IsLocation,nil,LOCATION_REMOVED)
e1:SetType(EFFECT_TYPE_FIELD) rg:KeepAlive()
e1:SetCode(EFFECT_CANNOT_ACTIVATE) for tc in aux.Next(rg) do
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetTargetRange(0,1) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetValue(cm.aclimit) e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetLabelObject(tc) e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
Duel.RegisterEffect(e1,tp) e1:SetTargetRange(0,1)
tc:CreateEffectRelation(e1) e1:SetValue(cm.aclimit)
end e1:SetLabelObject(tc)
Duel.RegisterEffect(e1,tp)
tc:CreateEffectRelation(e1)
end
end
end end
end end
function cm.aclimit(e,re,tp) function cm.aclimit(e,re,tp)
......
...@@ -5,6 +5,8 @@ function cm.initial_effect(c) ...@@ -5,6 +5,8 @@ function cm.initial_effect(c)
dofile("expansions/script/c11451851.lua") dofile("expansions/script/c11451851.lua")
pnfl_prophecy_flight_initial(c) pnfl_prophecy_flight_initial(c)
end end
c:EnableCounterPermit(0x972,LOCATION_MZONE)
c:EnableCounterPermit(0x973,LOCATION_MZONE)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
...@@ -14,6 +16,14 @@ function cm.initial_effect(c) ...@@ -14,6 +16,14 @@ function cm.initial_effect(c)
e1:SetTarget(cm.sptg) e1:SetTarget(cm.sptg)
e1:SetOperation(cm.spop) e1:SetOperation(cm.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--coin
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EVENT_TOSS_COIN_NEGATE)
e2:SetCondition(cm.coincon)
e2:SetOperation(cm.coinop)
c:RegisterEffect(e2)
--move --move
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_QUICK_O) e3:SetType(EFFECT_TYPE_QUICK_O)
...@@ -25,6 +35,70 @@ function cm.initial_effect(c) ...@@ -25,6 +35,70 @@ function cm.initial_effect(c)
e3:SetOperation(cm.disop) e3:SetOperation(cm.disop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
cm.toss_coin=true
function cm.coincon(e,tp,eg,ep,ev,re,r,rp)
return re:GetCode()~=EVENT_TOSS_COIN_NEGATE
end
function cm.coinop(e,tp,eg,ep,ev,re,r,rp)
local bool1=true
local p=tp
while bool1 do
local res={Duel.GetCoinResult()}
local s0,s1=0,0
for _,r in ipairs(res) do if r==0 then s0=s0+1 end end
for _,r in ipairs(res) do if r==1 then s1=s1+1 end end
local b1=Duel.IsCanRemoveCounter(p,1,0,0x973,1,REASON_EFFECT) and s0>0
local b2=Duel.IsCanRemoveCounter(p,1,0,0x972,1,REASON_EFFECT) and s1>0
local off=1
local ops,opval={},{}
if b1 then
ops[off]=aux.Stringid(11451856,0)
opval[off]=0
off=off+1
end
if b2 then
ops[off]=aux.Stringid(11451856,1)
opval[off]=1
off=off+1
end
if b1 and b2 then
ops[off]=aux.Stringid(11451856,5)
opval[off]=2
off=off+1
end
ops[off]=aux.Stringid(11451856,2)
opval[off]=3
if off==1 then
bool1=false
else
local op=Duel.SelectOption(p,table.unpack(ops))+1
local sel=opval[op]
if sel==0 then
Duel.Hint(HINT_CARD,0,m)
Duel.RemoveCounter(p,1,0,0x973,1,REASON_EFFECT)
local rs={Duel.TossCoin(tp,s0)}
local j=1
for i,r in ipairs(res) do if r==0 then res[i]=rs[j] j=j+1 end end
Duel.SetCoinResult(table.unpack(res))
elseif sel==1 then
Duel.Hint(HINT_CARD,0,m)
Duel.RemoveCounter(p,1,0,0x972,1,REASON_EFFECT)
local rs={Duel.TossCoin(tp,s1)}
local j=1
for i,r in ipairs(res) do if r==1 then res[i]=rs[j] j=j+1 end end
Duel.SetCoinResult(table.unpack(res))
elseif sel==2 then
Duel.Hint(HINT_CARD,0,m)
Duel.RemoveCounter(p,1,0,0x973,1,REASON_EFFECT)
Duel.RemoveCounter(p,1,0,0x972,1,REASON_EFFECT)
local rs={Duel.TossCoin(tp,#res)}
Duel.SetCoinResult(table.unpack(rs))
else
bool1=false
end
end
end
end
function cm.spcost2(e,tp,eg,ep,ev,re,r,rp,chk) function cm.spcost2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanSSet(1-tp) end if chk==0 then return Duel.IsPlayerCanSSet(1-tp) end
local tg=Duel.SelectMatchingCard(1-tp,Card.IsSSetable,tp,0,LOCATION_HAND,1,1,nil) local tg=Duel.SelectMatchingCard(1-tp,Card.IsSSetable,tp,0,LOCATION_HAND,1,1,nil)
...@@ -46,9 +120,9 @@ end ...@@ -46,9 +120,9 @@ end
function cm.discost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.discost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
local tab=pnflpf.coinsequence local tab=pnflpf.coinsequence
if chk==0 then return #tab>0 and ((tab[#tab]==0 and c:IsCanAddCounter(0x1972,1)) or (tab[#tab]==1 and c:IsCanAddCounter(0x1971,1))) end if chk==0 then return #tab>0 and ((tab[#tab]==0 and c:IsCanAddCounter(0x973,1)) or (tab[#tab]==1 and c:IsCanAddCounter(0x972,1))) end
if tab[#tab]==0 then c:AddCounter(0x1972,1) end if tab[#tab]==0 then c:AddCounter(0x973,1) end
if tab[#tab]==1 then c:AddCounter(0x1971,1) end if tab[#tab]==1 then c:AddCounter(0x972,1) end
e:SetLabel(tab[#tab]) e:SetLabel(tab[#tab])
tab[#tab]=2 tab[#tab]=2
end end
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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