Commit 9d6c66f1 authored by REIKAI's avatar REIKAI 💬

update 12.20

parent 9ce5ada6
......@@ -4,8 +4,8 @@ stages:
variables:
GIT_DEPTH: "1"
LAST_UPDATE_DATE: "2022.11.15"
CURRENT_UPDATE_DATE: "2022.11.28"
LAST_UPDATE_DATE: "2022.11.28"
CURRENT_UPDATE_DATE: "2022.12.20"
redtext:
stage: prepare
......
No preview for this file type
......@@ -71,6 +71,8 @@
04241004 0 --某手冲魔女
04241010 0 --手冲魔女-白兔爱丽丝
04241011 2 --手冲魔女-黑兔爱丽丝
04260601 1 --枫幽狐赤月一文字
04260602 0 --葵幽狐冷雾宵月夜
04295003 0 --宫水静香·奏乐先啦
#61
06109001 0 --流转虚梦
......@@ -894,9 +896,11 @@
30900000 0 --时空龙·刻神指令龙
30900023 0 --计时器幼龙
30900024 0 --时空龙·命运驾驭龙
30900520 1 --元素精灵的清净之盾
30900604 0 --悖论龙
30900607 0 --奇迹的天使
30900610 0 --被封闭的道路
30900613 1 --影分身
30900712 0 --混沌病毒·炸弹
30901016 0 --花园的陆莲花少女 麦丽丝
#312
......@@ -1357,12 +1361,12 @@
#502
50218545 0 --伏龙王-尔斯奎克
50218550 0 --伏龙王-赫瑞肯
50220115 0 --觉醒的伏龙-火山
50220120 0 --觉醒的伏龙-地震
50220115 2 --觉醒的伏龙-火山
50220120 1 --觉醒的伏龙-地震
50220125 0 --觉醒的伏龙-飓风
50220130 0 --觉醒的伏龙-月蚀
50220135 0 --觉醒的伏龙-日珥
50221425 0 --符龙王-魔咒
50220135 2 --觉醒的伏龙-日珥
50221425 1 --符龙王-魔咒
#514
51414050 1 --地底幽魂的断罪之魂
51414052 1 --审判所有的黑白阎罗
......
......@@ -38,7 +38,7 @@ function cm.filter(c,e,tp)
local lv=c:GetLevel()
local ct=2
if c:GetLocation(LOCATION_MZONE) then ct=1 end
return c:IsFaceup() and c:IsType(TYPE_MONSTER) and c:IsReleasable() and Duel.IsExistingMatchingCard(cm.spfilter1,tp,LOCATION_DECK,0,1,nil,e,tp,lv) Duel.GetMZoneCount(tp)>=ct
return c:IsFaceup() and c:IsType(TYPE_MONSTER) and c:IsReleasable() and Duel.IsExistingMatchingCard(cm.spfilter1,tp,LOCATION_DECK,0,1,nil,e,tp,lv) and Duel.GetMZoneCount(tp)>=ct
end
function cm.hfilter(c)
return c:IsDiscardable(REASON_EFFECT)
......
--星辉末裔 布拉德
function c33200959.initial_effect(c)
--fusion material
c:SetSPSummonOnce(33200959)
c:EnableReviveLimit()
aux.EnablePendulumAttribute(c)
aux.AddFusionProcFunRep(c,aux.FilterBoolFunction(Card.IsFusionSetCard,0x632a),2,true)
--cannot be target
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD)
e0:SetCode(EFFECT_CANNOT_BE_EFFECT_TARGET)
e0:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e0:SetRange(LOCATION_PZONE)
e0:SetTargetRange(LOCATION_MZONE,0)
e0:SetTarget(c33200959.imtg)
e0:SetValue(aux.tgoval)
c:RegisterEffect(e0)
--special summon rule
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_SPSUMMON_PROC)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e2:SetRange(LOCATION_EXTRA)
e2:SetCondition(c33200959.spcon)
e2:SetOperation(c33200959.spop)
c:RegisterEffect(e2)
--spsummon2
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(33200959,0))
e3:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,33200959)
e3:SetTarget(c33200959.sptg2)
e3:SetOperation(c33200959.spop2)
c:RegisterEffect(e3)
--atk
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e4:SetCode(EVENT_BATTLE_DAMAGE)
e4:SetRange(LOCATION_MZONE)
e4:SetCondition(c33200959.atkcon)
e4:SetOperation(c33200959.atkop)
c:RegisterEffect(e4)
end
--fusion
function c33200959.spfilter2(c,fc,tp,ct)
return c:IsSetCard(0x632a) and c:IsAbleToDeckAsCost() and c:IsCanBeFusionMaterial(fc,SUMMON_TYPE_SPECIAL) and (Duel.GetLocationCountFromEx(tp,tp,c,fc)>0 or Duel.GetLocationCountFromEx(tp,tp,ct,fc)>0)
end
function c33200959.spfilter3(c,fc,tp)
return c:IsSetCard(0x632a) and c:IsReleasable() and c:IsCanBeFusionMaterial(fc,SUMMON_TYPE_SPECIAL) and Duel.IsExistingMatchingCard(c33200959.spfilter2,tp,LOCATION_MZONE+LOCATION_PZONE,0,1,c,fc,tp,c)
end
function c33200959.spcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
return not c:IsFaceup() and Duel.IsExistingMatchingCard(c33200959.spfilter3,tp,LOCATION_MZONE+LOCATION_PZONE,0,1,nil,c,tp)
end
function c33200959.spop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g1=Duel.SelectMatchingCard(tp,c33200959.spfilter3,tp,LOCATION_MZONE+LOCATION_PZONE,0,1,1,nil,c,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g2=Duel.SelectMatchingCard(tp,c33200959.spfilter2,tp,LOCATION_MZONE+LOCATION_PZONE,0,1,1,g1,c,tp,g1:GetFirst())
g1:Merge(g2)
c:SetMaterial(g1)
g1:RemoveCard(g2:GetFirst())
Duel.Release(g1,REASON_COST)
Duel.SendtoDeck(g2,nil,0,REASON_COST)
end
--e0
function c33200959.imtg(e,c)
return (c:IsSummonType(SUMMON_TYPE_RITUAL) and c:IsType(TYPE_PENDULUM)) or (c:IsSummonType(SUMMON_TYPE_PENDULUM) and c:IsType(TYPE_RITUAL))
end
--e3
function c33200959.sptg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>4 end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function c33200959.dspfilter(c,e,tp,atk)
return c:IsType(TYPE_RITUAL) and c:GetBaseAttack()<=atk and c:IsSetCard(0x632a) and c:IsAbleToHand()
end
function c33200959.spop2(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)<=4 then return end
local c=e:GetHandler()
Duel.ConfirmDecktop(tp,5)
local g=Duel.GetDecktopGroup(tp,5)
local ct=g:GetCount()
local atk=c:GetAttack()
if ct>0 and g:FilterCount(c33200959.dspfilter,nil,e,tp,atk)>0
and Duel.SelectYesNo(tp,aux.Stringid(33200959,2)) then
Duel.DisableShuffleCheck()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=g:FilterSelect(tp,c33200959.dspfilter,1,1,nil,e,tp,atk)
local sc=sg:GetFirst()
Duel.SendtoHand(sc,tp,REASON_EFFECT)
Duel.ConfirmCards(1-tp,sc)
Duel.ShuffleHand(tp)
local satk=0-sc:GetBaseAttack()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(satk)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
end
Duel.ShuffleDeck(tp)
end
--e4
function c33200959.atkcon(e,tp,eg,ep,ev,re,r,rp)
local tc=eg:GetFirst()
return ep==1-tp and tc:IsControler(tp) and tc:IsLocation(LOCATION_ONFIELD) and tc:IsSetCard(0x632a) and tc~=e:GetHandler()
end
function c33200959.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(ev)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
end
\ No newline at end of file
--星辉末裔 丹特
function c33200961.initial_effect(c)
--link summon
c:EnableReviveLimit()
aux.AddLinkProcedure(c,nil,2,99,c33200961.lcheck)
--atk up
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(33200961,0))
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1)
e3:SetTarget(c33200961.sptg)
e3:SetOperation(c33200961.spop)
c:RegisterEffect(e3)
--gogogo!
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(33200961,0))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,33200961)
e1:SetCondition(c33200961.phcon)
e1:SetTarget(c33200961.phtg)
e1:SetOperation(c33200961.phop)
c:RegisterEffect(e1)
if not c33200961.global_check then
c33200961.global_check=true
local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_SUMMON_SUCCESS)
ge1:SetOperation(c33200961.checkop)
Duel.RegisterEffect(ge1,0)
local ge2=ge1:Clone()
ge2:SetCode(EVENT_SPSUMMON_SUCCESS)
Duel.RegisterEffect(ge2,0)
end
end
function c33200961.lcheck(g,lc)
return g:IsExists(Card.IsLinkSetCard,1,nil,0x632a)
end
--e1
function c33200961.checkop(e,tp,eg,ep,ev,re,r,rp)
local tc=eg:GetFirst()
while tc do
Duel.RegisterFlagEffect(tc:GetSummonPlayer(),33200961,RESET_PHASE+PHASE_END,0,1)
tc=eg:GetNext()
end
end
function c33200961.phcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFlagEffect(1-tp,33200961)>=5 and Duel.GetCurrentPhase()==PHASE_MAIN1 and Duel.IsAbleToEnterBP()
end
function c33200961.phtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end
local sg=Duel.GetMatchingGroup(Card.IsFaceup,tp,0,LOCATION_MZONE,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,sg,sg:GetCount(),0,0)
end
function c33200961.phop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local sg=Duel.GetMatchingGroup(Card.IsFaceup,tp,0,LOCATION_MZONE,nil)
if sg:GetCount()>0 then
Duel.ChangePosition(sg,POS_FACEUP_ATTACK,0,POS_FACEUP_ATTACK,0)
local kp=Duel.GetTurnPlayer()
if Duel.GetCurrentPhase()<PHASE_BATTLE_START then
Duel.SkipPhase(kp,PHASE_STANDBY,RESET_PHASE+PHASE_END,1)
Duel.SkipPhase(kp,PHASE_MAIN1,RESET_PHASE+PHASE_END,1)
end
end
end
--e3
function c33200961.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return (Duel.CheckLocation(tp,LOCATION_PZONE,0) or Duel.CheckLocation(tp,LOCATION_PZONE,1)) end
end
function c33200961.dspfilter(c)
return c:IsSetCard(0x632a) and c:IsType(TYPE_PENDULUM) and not c:IsForbidden() and c:CheckUniqueOnField(tp,LOCATION_SZONE)
end
function c33200961.spop(e,tp,eg,ep,ev,re,r,rp)
if not (Duel.CheckLocation(tp,LOCATION_PZONE,0) or Duel.CheckLocation(tp,LOCATION_PZONE,1)) then return end
local c=e:GetHandler()
Duel.ConfirmDecktop(tp,5)
local g=Duel.GetDecktopGroup(tp,5)
local ct=g:GetCount()
if ct>0 and g:FilterCount(c33200961.dspfilter,nil)>0 and Duel.SelectYesNo(tp,aux.Stringid(33200961,2)) then
Duel.DisableShuffleCheck()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local sg=g:FilterSelect(tp,c33200961.dspfilter,1,1,nil)
local sc=sg:GetFirst()
Duel.MoveToField(sc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
local satk=math.floor(sc:GetBaseAttack()/2)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(satk)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
end
Duel.ShuffleDeck(tp)
end
......@@ -68,13 +68,6 @@ function c66915026.rmop(e,tp,eg,ep,ev,re,r,rp)
e1:SetOperation(c66915026.retop)
e1:SetCountLimit(1)
e1:SetLabel(counter)
if Duel.GetCurrentPhase()==PHASE_END then
e1:SetReset(RESET_PHASE+PHASE_END,77)
c:RegisterFlagEffect(66915026,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,77)
else
e1:SetReset(RESET_PHASE+PHASE_END,76)
c:RegisterFlagEffect(66915026,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,76)
end
Duel.RegisterEffect(e1,tp)
c:SetTurnCounter(0)
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