Commit c1deebe6 authored by kamijyoeast's avatar kamijyoeast Committed by GitHub

Update_20210513_18:55 (#47)

* Add files via upload

* Add files via upload
parent 0d4ab585
......@@ -9,10 +9,10 @@ function c100730022.skill(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_CARD,1-tp,100730022)
local lp=Duel.GetLP(tp)
Duel.SetLP(tp,lp+3500)
local g=Duel.GetMatchingGroup(aux.TRUE,tp,LOCATION_HAND,0,nil)
g=g:RandomSelect(tp,1)
aux.SpeedDuelSendToDeckWithExile(tp,g)
local c=Duel.CreateToken(tp,20871001)
aux.SpeedDuelSendToHandWithExile(tp,c)
local g=Duel.GetMatchingGroup(Card.IsAbleToDeck,tp,LOCATION_HAND,0,nil)
local c=g:Select(tp,1,1,nil)
Duel.SendtoDeck(c,nil,1,REASON_RULE)
local d=Duel.CreateToken(tp,20871001)
aux.SpeedDuelSendToHandWithExile(tp,d)
e:Reset()
end
\ No newline at end of file
......@@ -9,9 +9,9 @@ function c100730023.skill(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_CARD,1-tp,100730023)
local lp=Duel.GetLP(tp)
Duel.SetLP(tp,lp+5000)
local g=Duel.GetMatchingGroup(aux.TRUE,tp,LOCATION_HAND,0,nil)
g=g:RandomSelect(tp,2)
aux.SpeedDuelSendToDeckWithExile(tp,g)
local g=Duel.GetMatchingGroup(Card.IsAbleToDeck,tp,LOCATION_HAND,0,nil)
local c=g:Select(tp,2,2,nil)
Duel.SendtoDeck(c,nil,1,REASON_RULE)
local c=Duel.CreateToken(tp,38199696)
aux.SpeedDuelSendToHandWithExile(tp,c)
local c=Duel.CreateToken(tp,38199696)
......
......@@ -9,9 +9,9 @@ function c100730024.skill(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_CARD,1-tp,100730024)
local lp=Duel.GetLP(tp)
Duel.SetLP(tp,lp+7500)
local g=Duel.GetMatchingGroup(aux.TRUE,tp,LOCATION_HAND,0,nil)
g=g:RandomSelect(tp,3)
aux.SpeedDuelSendToDeckWithExile(tp,g)
local g=Duel.GetMatchingGroup(Card.IsAbleToDeck,tp,LOCATION_HAND,0,nil)
local c=g:Select(tp,3,3,nil)
Duel.SendtoDeck(c,nil,1,REASON_RULE)
local c=Duel.CreateToken(tp,98535702)
aux.SpeedDuelSendToHandWithExile(tp,c)
local c=Duel.CreateToken(tp,98535702)
......
......@@ -9,9 +9,9 @@ function c100730025.skill(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_CARD,1-tp,100730025)
local lp=Duel.GetLP(tp)
Duel.SetLP(tp,lp+10000)
local g=Duel.GetMatchingGroup(aux.TRUE,tp,LOCATION_HAND,0,nil)
g=g:RandomSelect(tp,4)
aux.SpeedDuelSendToDeckWithExile(tp,g)
local g=Duel.GetMatchingGroup(Card.IsAbleToDeck,tp,LOCATION_HAND,0,nil)
local c=g:Select(tp,4,4,nil)
Duel.SendtoDeck(c,nil,1,REASON_RULE)
local c=Duel.CreateToken(tp,29389368)
aux.SpeedDuelSendToHandWithExile(tp,c)
local c=Duel.CreateToken(tp,29389368)
......
--高速决斗技能-一手起动器
Duel.LoadScript("speed_duel_common.lua")
function c100730074.initial_effect(c)
aux.SpeedDuelMoveCardToDeckCommon(72896720,c)
aux.SpeedDuelMoveCardToDeckCommon(38904695,c)
aux.SpeedDuelMoveCardToDeckCommon(81020646,c)
aux.SpeedDuelBeforeDraw(c,c100730074.skill)
aux.RegisterSpeedDuelSkillCardCommon()
end
......@@ -13,10 +10,10 @@ function c100730074.skill(e,tp,eg,ep,ev,re,r,rp)
if Duel.IsExistingMatchingCard(Card.IsAttribute,tp,LOCATION_DECK,0,1,nil,0x5f) then
Duel.Hint(HINT_MESSAGE,tp,aux.Stringid(100730074,0))
else
local g=Duel.GetFieldGroup(tp,LOCATION_HAND,0)
local c=g:RandomSelect(tp,1)
g:RemoveCard(c)
aux.SpeedDuelSendToDeckWithExile(tp,g)
local g=Duel.GetMatchingGroup(Card.IsAbleToDeck,tp,LOCATION_HAND,0,nil)
local ct=g:GetCount()
local c=g:Select(tp,ct-1,ct-1,nil)
Duel.SendtoDeck(c,nil,2,REASON_RULE)
local e1=Effect.GlobalEffect()
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_DRAW_COUNT)
......
......@@ -15,8 +15,8 @@ function c100730109.skill(e,tp,c)
local c=g:Select(tp,2,4,nil)
if c then
Duel.Hint(HINT_CARD,1-tp,100730109)
Duel.HintSelection(g)
Duel.SendtoDeck(c,nil,2,REASON_EFFECT)
Duel.HintSelection(c)
Duel.SendtoDeck(c,nil,0,REASON_EFFECT)
Duel.Recover(tp,2000,REASON_EFFECT)
e:Reset()
end
......
......@@ -21,5 +21,10 @@ function c100730126.skill(e,tp,c)
local d=Duel.CreateToken(tp,24094653)
Duel.SendtoHand(d,nil,REASON_RULE)
Duel.ConfirmCards(1-tp,d)
if g:GetCount()==3 then
local c=Duel.CreateToken(tp,53347303)
Duel.SendtoHand(c,nil,REASON_RULE)
Duel.ConfirmCards(1-tp,c)
end
e:Reset()
end
\ No newline at end of file
--高速决斗技能-空手组合技无限
Duel.LoadScript("speed_duel_common.lua")
function c100730129.initial_effect(c)
aux.SpeedDuelMoveCardToFieldCommon(66957584,c)
aux.SpeedDuelMoveCardToFieldCommon(45313724,c)
aux.SpeedDuelMoveCardToFieldCommon(40555959,c)
aux.SpeedDuelMoveCardToFieldCommon(67616300,c)
aux.SpeedDuelBeforeDraw(c,c100730129.skill)
aux.RegisterSpeedDuelSkillCardCommon()
......@@ -11,16 +8,34 @@ end
function c100730129.skill(e,tp,eg,ep,ev,re,r,rp)
tp=e:GetLabelObject():GetOwner()
Duel.Hint(HINT_CARD,1-tp,100730129)
local c=Duel.CreateToken(tp,81020646)
Duel.SendtoDeck(c,nil,0,REASON_RULE)
local d=Duel.CreateToken(tp,13582837)
Duel.SendtoDeck(d,nil,0,REASON_RULE)
local xc=Duel.CreateToken(tp,82434071)
Duel.SendtoDeck(xc,nil,0,REASON_RULE)
local d1=Duel.CreateToken(tp,45313724)
Duel.SendtoDeck(d1,nil,0,REASON_RULE)
local d2=Duel.CreateToken(tp,18712704)
Duel.SendtoDeck(d2,nil,0,REASON_RULE)
local d3=Duel.CreateToken(tp,40555959)
Duel.SendtoDeck(d3,nil,0,REASON_RULE)
local d4=Duel.CreateToken(tp,14550855)
Duel.SendtoDeck(d4,nil,0,REASON_RULE)
local g=Duel.GetFieldGroup(tp,LOCATION_HAND,0)
aux.SpeedDuelSendToDeckWithExile(tp,g)
local g2=Duel.SelectMatchingCard(tp,Card.IsCode,tp,LOCATION_EXTRA,0,1,1,nil,72896720)
if g2:GetCount()>0 then
local tc=g2:GetFirst()
Duel.SpecialSummon(tc,0,tp,tp,true,true,POS_FACEUP_ATTACK)
local c=Duel.CreateToken(tp,81020646)
Duel.SpecialSummon(c,0,tp,tp,true,true,POS_FACEUP_ATTACK)
local d=Duel.CreateToken(tp,13582837)
Duel.SpecialSummon(g2,0,tp,tp,true,false,POS_FACEUP_ATTACK,0x60)
local sc=Duel.CreateToken(tp,5560911)
Duel.SpecialSummon(sc,0,tp,tp,true,true,POS_FACEUP_ATTACK)
local g3=Duel.SelectMatchingCard(tp,Card.IsCode,tp,LOCATION_DECK,0,1,1,nil,13582837,82434071)
local tc=g3:GetFirst()
Duel.Summon(tp,tc,false,nil)
Duel.Summon(tp,d,false,nil)
local sg=Duel.GetMatchingGroup(Card.IsCode,tp,LOCATION_DECK,0,nil,45313724,66957584,40555959,14550855,18712704)
local g1=sg:SelectSubGroup(tp,aux.dncheck,false,3,3)
Duel.SSet(tp,g1)
end
e:Reset()
end
\ No newline at end of file
--高速决斗技能-空手组合技100
Duel.LoadScript("speed_duel_common.lua")
function c100730130.initial_effect(c)
aux.SpeedDuelMoveCardToFieldCommon(33904024,c)
aux.SpeedDuelMoveCardToFieldCommon(77859858,c)
aux.SpeedDuelMoveCardToFieldCommon(40555959,c)
aux.SpeedDuelMoveCardToFieldCommon(80921533,c)
aux.SpeedDuelBeforeDraw(c,c100730130.skill)
aux.RegisterSpeedDuelSkillCardCommon()
......@@ -11,16 +8,33 @@ end
function c100730130.skill(e,tp,eg,ep,ev,re,r,rp)
tp=e:GetLabelObject():GetOwner()
Duel.Hint(HINT_CARD,1-tp,100730130)
local c=Duel.CreateToken(tp,81020646)
Duel.SendtoDeck(c,nil,0,REASON_RULE)
local d=Duel.CreateToken(tp,13582837)
Duel.SendtoDeck(d,nil,0,REASON_RULE)
local xc=Duel.CreateToken(tp,46263076)
Duel.SendtoDeck(xc,nil,0,REASON_RULE)
local d1=Duel.CreateToken(tp,18739764)
Duel.SendtoDeck(d1,nil,0,REASON_RULE)
local d2=Duel.CreateToken(tp,39967326)
Duel.SendtoDeck(d2,nil,0,REASON_RULE)
local d3=Duel.CreateToken(tp,40555959)
Duel.SendtoDeck(d3,nil,0,REASON_RULE)
local d4=Duel.CreateToken(tp,77859858)
Duel.SendtoDeck(d4,nil,0,REASON_RULE)
local g=Duel.GetFieldGroup(tp,LOCATION_HAND,0)
aux.SpeedDuelSendToDeckWithExile(tp,g)
local g2=Duel.SelectMatchingCard(tp,Card.IsCode,tp,LOCATION_EXTRA,0,1,1,nil,95453143)
if g2:GetCount()>0 then
local tc=g2:GetFirst()
Duel.SpecialSummon(tc,0,tp,tp,true,true,POS_FACEUP_ATTACK)
local c=Duel.CreateToken(tp,81020646)
Duel.SpecialSummon(c,0,tp,tp,true,true,POS_FACEUP_ATTACK)
local d=Duel.CreateToken(tp,13582837)
Duel.Summon(tp,d,false,nil)
Duel.SpecialSummon(g2,0,tp,tp,true,false,POS_FACEUP_ATTACK,0x60)
local sc=Duel.CreateToken(tp,5560911)
Duel.SpecialSummon(sc,0,tp,tp,true,true,POS_FACEUP_ATTACK)
local g3=Duel.SelectMatchingCard(tp,Card.IsCode,tp,LOCATION_DECK,0,1,1,nil,13582837,82434071)
local tc=g3:GetFirst()
Duel.Summon(tp,tc,false,nil)
local sg=Duel.GetMatchingGroup(Card.IsCode,tp,LOCATION_DECK,0,nil,18739764,66957584,40555959,77859858,39967326)
local g1=sg:SelectSubGroup(tp,aux.dncheck,false,3,3)
Duel.SSet(tp,g1)
end
e:Reset()
end
\ No newline at end of file
......@@ -12,6 +12,7 @@ function c100730189.con(e,tp)
tp=e:GetLabelObject():GetOwner()
return aux.SpeedDuelAtMainPhaseCondition(e,tp)
and Duel.IsExistingMatchingCard(c100730189.Isfairy,tp,LOCATION_MZONE,0,1,nil)
and Duel.IsExistingMatchingCard(c100730189.filter,tp,LOCATION_EXTRA,0,1,nil)
and Duel.IsPlayerCanSpecialSummon(tp)
and Duel.GetLP(tp)<=6000
end
......@@ -19,7 +20,7 @@ end
function c100730189.skill(e,tp,eg,ep,ev,re,r,rp)
tp=e:GetLabelObject():GetOwner()
Duel.Hint(HINT_CARD,1-tp,100730189)
local g1=Duel.SelectMatchingCard(tp,Card.IsCode,tp,LOCATION_MZONE,0,1,1,nil,45939611)
local g1=Duel.SelectMatchingCard(tp,c100730189.Isfairy,tp,LOCATION_MZONE,0,1,1,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
local tc1=g1:GetFirst()
local g2=Duel.SelectMatchingCard(tp,c100730189.filter,tp,LOCATION_EXTRA,0,1,1,nil)
......@@ -50,6 +51,6 @@ function c100730189.skill(e,tp,eg,ep,ev,re,r,rp)
e1:SetOwnerPlayer(tp)
end
end
function c100730189.filter(c,tp)
return c:IsCode(51960178) or c:IsCode(23454876)
function c100730189.filter(c)
return c:IsCode(51960178,23454876)
end
\ No newline at end of file
......@@ -7,7 +7,8 @@ end
function c100730192.skill(e,tp)
tp=e:GetLabelObject():GetOwner()
Duel.Hint(HINT_CARD,1-tp,100730192)
Duel.Recover(1-tp,2000,REASON_EFFECT)
Duel.Recover(1-tp,2000,REASON_EFFECT)
Duel.Recover(tp,2000,REASON_EFFECT)
local count=1
if Duel.GetTurnPlayer()~=tp then
count=2
......
......@@ -20,6 +20,7 @@ function c100730195.skill(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=mg:Select(tp,1,1,nil)
Duel.SendtoHand(sg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,sg)
end
end
end
......
......@@ -7,19 +7,16 @@ end
function c100730259.skill(e,tp)
tp=e:GetLabelObject():GetOwner()
local g1=Duel.SelectMatchingCard(tp,Card.IsCode,tp,LOCATION_DECK+LOCATION_HAND,0,1,3,nil,65743242)
local g1=Duel.SelectMatchingCard(tp,Card.IsCode,tp,LOCATION_DECK+LOCATION_HAND,0,1,3,nil,67105242)
if g1:GetCount()==0 then return end
Duel.Hint(HINT_CARD,1-tp,100730259)
Duel.SSet(tp,g1)
Duel.SendtoGrave(g1,REASON_RULE)
local ct=Duel.GetFieldGroupCount(tp,0,LOCATION_DECK)-Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)
if ct>0 then
Duel.DiscardDeck(1-tp,ct,REASON_RULE)
local g=Group.CreateGroup()
while ct>0 do
local c=Duel.CreateToken(tp,67105242)
g:AddCard(c)
aux.CardAddedBySkill:AddCard(c)
Duel.SendtoGrave(g,REASON_RULE)
local c=Duel.CreateToken(tp,65743242)
Duel.SendtoDeck(c,tp,1,REASON_RULE)
ct=ct-1
end
end
......
--高速决斗技能-骰子爆发
Duel.LoadScript("speed_duel_common.lua")
function c100730307.initial_effect(c)
aux.SpeedDuelMoveCardToFieldCommon(39454112,c)
aux.SpeedDuelAtMainPhase(c,c100730307.skill,c100730307.con,aux.Stringid(100730307,0))
aux.RegisterSpeedDuelSkillCardCommon()
end
function c100730307.filter(c)
return c:IsType(TYPE_MONSTER) and c:IsFaceup()
end
function c100730307.con(e,tp)
tp=e:GetLabelObject():GetOwner()
return aux.SpeedDuelAtMainPhaseCondition(e,tp)
and Duel.IsExistingMatchingCard(c100730307.filter,tp,LOCATION_MZONE,0,1,nil)
end
function c100730307.skill(e,tp)
tp=e:GetLabelObject():GetOwner()
Duel.Hint(HINT_CARD,1-tp,100730307)
local g=Duel.GetMatchingGroup(c100730307.filter,tp,LOCATION_MZONE,0,nil)
if g:GetCount()==0 then return end
local ct=Duel.TossDice(tp,1)
local tc=g:GetFirst()
while tc do
local e1=Effect.CreateEffect(tc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
e1:SetValue(ct*50)
tc:RegisterEffect(e1)
tc=g:GetNext()
end
local g1=Duel.SelectMatchingCard(tp,Card.IsCode,tp,LOCATION_DECK+LOCATION_GRAVE,0,0,1,nil,74137509)
Duel.SendtoHand(g1,tp,REASON_RULE)
if ct=1 or ct=6 then return end
e:Reset()
end
\ No newline at end of file
--高速决斗技能-骰子回复
Duel.LoadScript("speed_duel_common.lua")
function c100730308.initial_effect(c)
aux.SpeedDuelMoveCardToFieldCommon(39454112,c)
aux.SpeedDuelAtMainPhase(c,c100730308.skill,c100730308.con,aux.Stringid(100730308,0))
aux.RegisterSpeedDuelSkillCardCommon()
end
function c100730308.con(e,tp)
tp=e:GetLabelObject():GetOwner()
return aux.SpeedDuelAtMainPhaseCondition(e,tp)
end
function c100730308.skill(e,tp)
tp=e:GetLabelObject():GetOwner()
Duel.Hint(HINT_CARD,1-tp,100730308)
local ct=Duel.TossDice(tp,1)
Duel.Recover(tp,ct*200,REASON_EFFECT)
local g1=Duel.SelectMatchingCard(tp,Card.IsCode,tp,LOCATION_DECK+LOCATION_GRAVE,0,0,1,nil,43061293)
Duel.SendtoHand(g1,tp,REASON_RULE)
if ct==1 or ct==6 then return end
e:Reset()
end
\ No newline at end of file
--高速决斗技能-抽卡预感:骰子
Duel.LoadScript("speed_duel_common.lua")
function c100730309.initial_effect(c)
aux.SpeedDuelMoveCardToFieldCommon(76895648,c)
aux.SpeedDuelReplaceDraw(c,c100730309.skill,c100730309.con,aux.Stringid(100730185,0))
aux.RegisterSpeedDuelSkillCardCommon()
end
function c100730309.con(e,tp,eg,ep,ev,re,r,rp)
tp=e:GetLabelObject():GetOwner()
return Duel.GetTurnPlayer()==tp
and Duel.GetTurnCount()>=2
and Duel.GetMatchingGroupCount(c100730309.filter,tp,LOCATION_DECK,0,nil)>5
end
function c100730309.skill(e,tp)
tp=e:GetLabelObject():GetOwner()
if Duel.SelectYesNo(tp,aux.Stringid(100730309,0)) then
Duel.Hint(HINT_CARD,1-tp,100730309)
local g=Duel.GetMatchingGroup(c100730309.filter,tp,LOCATION_DECK,0,nil)
if not g or g:GetCount()==0 then return end
g=g:RandomSelect(tp,1)
Duel.MoveSequence(g:GetFirst(),0)
end
end
function c100730309.filter(c)
return c.toss_dice
end
\ No newline at end of file
--高速决斗技能-骰子回归
Duel.LoadScript("speed_duel_common.lua")
function c100730310.initial_effect(c)
aux.SpeedDuelAtMainPhase(c,c100730310.skill,c100730310.con,aux.Stringid(100730310,0))
aux.RegisterSpeedDuelSkillCardCommon()
end
function c100730310.con(e,tp)
tp=e:GetLabelObject():GetOwner()
return aux.SpeedDuelAtMainPhaseCondition(e,tp)
and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_GRAVE,0,1,nil)
end
function c100730310.skill(e,tp,c)
tp=e:GetLabelObject():GetOwner()
local g=Duel.GetMatchingGroup(Card.IsAbleToDeck,tp,LOCATION_GRAVE,0,nil)
local ct=Duel.TossDice(tp,1)
local c=g:Select(tp,1,ct,nil)
if c then
Duel.Hint(HINT_CARD,1-tp,100730310)
Duel.HintSelection(c)
Duel.SendtoDeck(c,nil,0,REASON_EFFECT)
e:Reset()
end
end
\ No newline at end of file
--高速决斗技能-神鬼食人魔·骰子
Duel.LoadScript("speed_duel_common.lua")
function c100730311.initial_effect(c)
aux.SpeedDuelMoveCardToFieldCommon(31863912,c)
aux.SpeedDuelBeforeDraw(c,c100730311.skill1)
aux.SpeedDuelAtMainPhase(c,c100730311.skill,c100730311.con,aux.Stringid(100730171,1))
aux.RegisterSpeedDuelSkillCardCommon()
end
function c100730311.skill1(e,tp)
tp = e:GetLabelObject():GetOwner()
local c=Duel.CreateToken(tp,15744417)
Duel.SendtoDeck(c,tp,0,REASON_RULE)
e:Reset()
end
function c100730311.Isfairy(c)
return c:IsCode(81755371) and c:IsFaceup()
end
function c100730311.con(e,tp)
tp=e:GetLabelObject():GetOwner()
return aux.SpeedDuelAtMainPhaseCondition(e,tp)
and Duel.IsExistingMatchingCard(c100730311.Isfairy,tp,LOCATION_MZONE,0,1,nil)
and Duel.IsExistingMatchingCard(c100730311.filter,tp,LOCATION_EXTRA,0,1,nil)
and Duel.IsPlayerCanSpecialSummon(tp)
end
function c100730311.skill(e,tp,eg,ep,ev,re,r,rp)
tp=e:GetLabelObject():GetOwner()
Duel.Hint(HINT_CARD,1-tp,100730311)
local g1=Duel.SelectMatchingCard(tp,c100730311.Isfairy,tp,LOCATION_MZONE,0,1,1,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
local tc1=g1:GetFirst()
local g2=Duel.SelectMatchingCard(tp,c100730311.filter,tp,LOCATION_EXTRA,0,1,1,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tc2=g2:GetFirst()
if tc2 then
Duel.BreakEffect()
tc2:SetMaterial(g1)
Duel.Overlay(tc2,g1)
Duel.SpecialSummon(tc2,SUMMON_TYPE_XYZ,tp,tp,false,false,POS_FACEUP)
tc2:CompleteProcedure()
end
end
function c100730311.filter(c)
return c:IsCode(42421606)
end
\ No newline at end of file
--魔偶甜点·两面包夹芝士
function c150690129.initial_effect(c)
--spsummon from hand
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(150690129,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,150690129)
e1:SetCondition(c150690129.spcon1)
e1:SetTarget(c150690129.sptg1)
e1:SetOperation(c150690129.spop1)
c:RegisterEffect(e1)
--spsummon
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(150690129,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCountLimit(1,150690130)
e2:SetTarget(c150690129.sptg2)
e2:SetOperation(c150690129.spop2)
c:RegisterEffect(e2)
--to deck
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(150690129,0))
e3:SetCategory(CATEGORY_TODECK)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e3:SetCode(EVENT_TO_GRAVE)
e3:SetCondition(c150690129.retcon)
e3:SetTarget(c150690129.rettg)
e3:SetOperation(c150690129.retop)
c:RegisterEffect(e3)
end
function c150690129.spcon1(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c150690129.spfilter1,tp,LOCATION_MZONE,0,1,nil)
end
function c150690129.spfilter1(c)
return c:IsSetCard(0x71) and c:IsPosition(POS_DEFENSE)
end
function c150690129.sptg1(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) and Duel.IsExistingTarget(c150690129.spfilter1,tp,LOCATION_MZONE,0,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,c150690129.spfilter1,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function c150690129.spop1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and tc:IsPosition(POS_DEFENSE) and c:IsRelateToEffect(e) then
Duel.ChangePosition(tc,POS_FACEUP_ATTACK)
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end
end
function c150690129.spfilter2(c,e,tp)
return c:IsCode(49374988) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c150690129.sptg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c150690129.spfilter2,tp,LOCATION_DECK+LOCATION_HAND,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK+LOCATION_HAND)
end
function c150690129.spop2(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,c150690129.spfilter2,tp,LOCATION_DECK+LOCATION_HAND,0,1,1,nil,e,tp)
if g:GetCount()>0 and Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)>0 then
local tc=g:GetFirst()
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_ADD_TYPE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetValue(TYPE_TUNER)
tc:RegisterEffect(e1)
end
end
function c150690129.retcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsReason(REASON_DESTROY) and e:GetHandler():GetReasonPlayer()==1-tp
and e:GetHandler():GetPreviousControler()==tp
end
function c150690129.rettg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_TODECK,e:GetHandler(),1,0,0)
end
function c150690129.retop(e,tp,eg,ep,ev,re,r,rp)
if e:GetHandler():IsRelateToEffect(e) then
Duel.SendtoDeck(e:GetHandler(),nil,2,REASON_EFFECT)
end
end
\ No newline at end of file
--邪遗式的觉醒
function c151124303.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetTarget(c151124303.target)
e1:SetOperation(c151124303.activate)
c:RegisterEffect(e1)
--to hand
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(22398665,1))
e2:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_TOHAND)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,151124303)
e2:SetCondition(c151124303.thcon)
e2:SetTarget(c151124303.thtg)
e2:SetOperation(c151124303.thop)
c:RegisterEffect(e2)
end
function c151124303.spfilter(c,e,tp,mc)
return c:IsSetCard(0x3a) and bit.band(c:GetType(),0x81)==0x81 and (not c.mat_filter or c.mat_filter(mc,tp))
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_RITUAL,tp,false,true)
and mc:IsCanBeRitualMaterial(c)
end
function c151124303.rfilter(c,mc)
local mlv=mc:GetRitualLevel(c)
if mlv==mc:GetLevel() then return false end
local lv=c:GetLevel()
return lv==bit.band(mlv,0xffff) or lv==bit.rshift(mlv,16)
end
function c151124303.filter(c,e,tp)
local sg=Duel.GetMatchingGroup(c151124303.spfilter,tp,LOCATION_HAND,0,c,e,tp,c)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if c:IsLocation(LOCATION_MZONE) then ft=ft+1 end
if Duel.IsPlayerAffectedByEffect(tp,59822133) then ft=1 end
return sg:IsExists(c151124303.rfilter,1,nil,c) or sg:CheckWithSumEqual(Card.GetLevel,c:GetLevel(),1,ft)
end
function c151124303.mfilter(c)
return c:GetLevel()>0 and c:IsAbleToGrave()
end
function c151124303.mzfilter(c,tp)
return c:IsLocation(LOCATION_MZONE) and c:IsControler(tp) and c:GetSequence()<5
end
function c151124303.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if ft<0 then return false end
local mg=Duel.GetRitualMaterial(tp)
if ft>0 then
local mg2=Duel.GetMatchingGroup(c151124303.mfilter,tp,LOCATION_EXTRA,0,nil)
mg:Merge(mg2)
else
mg=mg:Filter(c151124303.mzfilter,nil,tp)
end
return mg:IsExists(c151124303.filter,1,nil,e,tp)
end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND)
end
function c151124303.activate(e,tp,eg,ep,ev,re,r,rp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if ft<0 then return end
local mg=Duel.GetRitualMaterial(tp)
if ft>0 then
local mg2=Duel.GetMatchingGroup(c151124303.mfilter,tp,LOCATION_EXTRA,0,nil)
mg:Merge(mg2)
else
mg=mg:Filter(c151124303.mzfilter,nil,tp)
end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local mat=mg:FilterSelect(tp,c151124303.filter,1,1,nil,e,tp)
local mc=mat:GetFirst()
if not mc then return end
local sg=Duel.GetMatchingGroup(c151124303.spfilter,tp,LOCATION_HAND,0,mc,e,tp,mc)
if mc:IsLocation(LOCATION_MZONE) then ft=ft+1 end
if Duel.IsPlayerAffectedByEffect(tp,59822133) then ft=1 end
local b1=sg:IsExists(c151124303.rfilter,1,nil,mc)
local b2=sg:CheckWithSumEqual(Card.GetLevel,mc:GetLevel(),1,ft)
if b1 and (not b2 or Duel.SelectYesNo(tp,aux.Stringid(151124303,0))) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tg=sg:FilterSelect(tp,c151124303.rfilter,1,1,nil,mc)
local tc=tg:GetFirst()
tc:SetMaterial(mat)
if not mc:IsLocation(LOCATION_EXTRA) then
Duel.ReleaseRitualMaterial(mat)
else
Duel.SendtoGrave(mat,REASON_EFFECT+REASON_MATERIAL+REASON_RITUAL)
end
Duel.BreakEffect()
Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,false,true,POS_FACEUP)
tc:CompleteProcedure()
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tg=sg:SelectWithSumEqual(tp,Card.GetLevel,mc:GetLevel(),1,ft)
local tc=tg:GetFirst()
while tc do
tc:SetMaterial(mat)
tc=tg:GetNext()
end
if not mc:IsLocation(LOCATION_EXTRA) then
Duel.ReleaseRitualMaterial(mat)
else
Duel.SendtoGrave(mat,REASON_EFFECT+REASON_MATERIAL+REASON_RITUAL)
end
Duel.BreakEffect()
tc=tg:GetFirst()
while tc do
Duel.SpecialSummonStep(tc,SUMMON_TYPE_RITUAL,tp,tp,false,true,POS_FACEUP)
tc:CompleteProcedure()
tc=tg:GetNext()
end
Duel.SpecialSummonComplete()
end
end
function c151124303.thcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)==0
end
function c151124303.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return e:GetHandler():IsAbleToHand() end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,e:GetHandler(),1,0,0)
end
function c151124303.thop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
Duel.SendtoHand(c,nil,REASON_EFFECT)
end
\ No newline at end of file
......@@ -12,15 +12,17 @@ function c187054946.initial_effect(c)
e1:SetOperation(c187054946.regop)
c:RegisterEffect(e1)
--special summon
local e5=Effect.CreateEffect(c)
e5:SetCategory(CATEGORY_SPECIAL_SUMMON)
e5:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e5:SetCode(EVENT_LEAVE_FIELD)
e5:SetProperty(EFFECT_FLAG_DAMAGE_STEP)
e5:SetCondition(c187054946.spcon)
e5:SetTarget(c187054946.sptg)
e5:SetOperation(c187054946.spop)
c:RegisterEffect(e5)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(187054946,0))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetHintTiming(0,TIMING_END_PHASE)
e2:SetRange(LOCATION_MZONE)
e2:SetCost(c187054946.spcost1)
e2:SetTarget(c187054946.sptg1)
e2:SetOperation(c187054946.spop1)
c:RegisterEffect(e2)
end
function c187054946.lcheck(g,lc)
return g:IsExists(Card.IsLinkType,1,nil,TYPE_FUSION)
......@@ -37,7 +39,7 @@ function c187054946.regop(e,tp,eg,ep,ev,re,r,rp)
e1:SetCode(EFFECT_CANNOT_REMOVE)
e1:SetRange(LOCATION_MZONE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(1,1)
e1:SetTargetRange(0,1)
c:RegisterEffect(e1)
c:RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(87054946,0))
end
......@@ -58,8 +60,7 @@ function c187054946.regop(e,tp,eg,ep,ev,re,r,rp)
e3:SetRange(LOCATION_MZONE)
e3:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e3:SetReset(RESET_EVENT+RESETS_STANDARD)
e3:SetTargetRange(1,1)
e3:SetTargetRange(0,1)
e3:SetTarget(c187054946.sumlimit)
c:RegisterEffect(e3)
c:RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(87054946,2))
......@@ -68,23 +69,22 @@ end
function c187054946.sumlimit(e,c,sump,sumtype,sumpos,targetp)
return c:IsAttackAbove(2300)
end
function c187054946.spcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:IsPreviousPosition(POS_FACEUP)
function c187054946.spcost1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToExtraAsCost() end
Duel.SendtoDeck(e:GetHandler(),nil,0,REASON_COST)
end
function c187054946.filter(c,e,tp)
function c187054946.spfilter(c,e,tp,ec)
return c:IsCode(83866861) and c:IsCanBeSpecialSummoned(e,0,tp,true,false)
and Duel.GetLocationCountFromEx(tp,tp,ec,c,0x60)>0
end
function c187054946.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c187054946.filter,tp,LOCATION_EXTRA,0,1,nil,e,tp) end
function c187054946.sptg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c187054946.spfilter,tp,LOCATION_EXTRA,0,1,nil,e,tp,e:GetHandler()) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end
function c187054946.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
function c187054946.spop1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c187054946.filter),tp,LOCATION_EXTRA,0,1,1,nil,e,tp)
local g=Duel.SelectMatchingCard(tp,c187054946.spfilter,tp,LOCATION_EXTRA,0,1,1,nil,e,tp,e:GetHandler())
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,true,false,POS_FACEUP)
Duel.SpecialSummon(g,0,tp,tp,true,false,POS_FACEUP,0x60)
end
end
\ No newline at end of file
......@@ -165,7 +165,7 @@ function aux.DisableBigDamage()
Duel.RegisterEffect(e1,0)
end
function aux.DisableBigDamageValue(e,re,val,r,rp,rc)
if r&REASON_EFFECT==REASON_EFFECT and val>=2000 then return 0 end
if r&REASON_EFFECT==REASON_EFFECT and val>=3000 then return 3000 end
return val
end
function aux.CheckDesDeckFilter(c,tp)
......@@ -179,7 +179,7 @@ end
function aux.CheckDesDeckOperation(e,tp,eg,ep,ev,re,r,rp)
local g=eg:Filter(aux.CheckDesDeckFilter,nil,tp)
aux.DeckDesCount[tp] = aux.DeckDesCount[tp] + g:GetCount()
if aux.DeckDesCount[tp] >= 6 then
if aux.DeckDesCount[tp] >= 8 then
Duel.SetLP(1-tp,0)
end
end
......@@ -208,10 +208,10 @@ end
function aux.CannotActivate(tp)
if not aux.SP4 then
aux.SP4={73915051,78785392}
aux.SP3={18027138,18322364,33298291,34707034,49808196,50750868,56051648,65664792,67949763,72537897,73199638,93224848,96383838,97433739,97926515}
aux.SP3={18027138,40975243,18322364,33298291,34707034,49808196,50750868,56051648,65664792,7949763,72537897,73199638,93224848,96383838,97433739}
aux.SP3Ex={7392745,29843091,42956963}
aux.SP2={1969506,6148016,7161742,9925982,9929398,10698416,10971759,10971759,13482262,13504844,14604710,15341821,15394083,17418744,17502671,20285786,21007444,21179143,22110647,23536866,29087919,31986288,33551032,39998992,40450317,40844552,41197012,41442341,43140791,44161893,46005939,46173679,48411996,51205763,51987571,55416843,56337500,56597272,57288708,58531587,58787301,60764581,60930169,61314842,61840587,61948106,62376646,64496451,66393507,71541986,71867500,73906480,74875003,75252099,76930964,77642288,77847678,79783880,80802524,81587028,82324105,86174055,92781606}
aux.SP2Ex={14470845,28062325,41141943,93749093,93775296}
aux.SP2={1969506,6148016,7161742,9925982,9929398,10698416,10971759,10971759,13482262,13504844,14604710,15341821,15394083,17418744,17502671,20285786,21007444,21179143,22110647,23536866,29087919,31986288,33551032,39998992,40450317,40844552,41197012,41442341,43140791,44161893,46005939,46173679,48411996,51205763,51987571,55416843,56337500,56597272,57288708,58531587,58787301,60764581,60930169,61314842,61840587,61948106,62376646,64496451,66393507,71541986,71867500,73906480,74875003,80701178,76930964,77642288,77847678,80802524,81587028,82324105,86174055,92781606}
aux.SP2Ex={14470845,28062325,41141943,75252099,93749093,93775296}
end
--cannot activate
local e1=Effect.GlobalEffect()
......@@ -243,6 +243,7 @@ function aux.CannotActivateValue(e,te,tp)
if mon>1 and aux.IsTableContainValue(aux.SP2,code) then return true end
if enemymon>1 and aux.IsTableContainValue(aux.SP2Ex,code) then return true end
if mon>1 and code==22227683 and te:GetCode()==EVENT_BATTLE_DESTROYING then return true end
if mon>1 and code==58054262 and te:GetCategory()==CATEGORY_SPECIAL_SUMMON then return true end
if mon>1 and code==25669282 and te:GetHandler():IsLocation(LOCATION_GRAVE) then return true end
if mon>1 and code==27198001 and te:GetCode()==EVENT_TO_GRAVE then return true end
if mon>1 and code==34767865 and te:GetRange()==LOCATION_GRAVE then return true end
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment