Commit 29afde9c authored by Tachibana's avatar Tachibana

ybb

parent 1d9e89f1
Pipeline #10164 passed with stages
in 40 minutes and 56 seconds
......@@ -14,15 +14,6 @@ function cm.initial_effect(c)
e1:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(cm.splimit)
c:RegisterEffect(e1)
--special summon rule
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_SPSUMMON_PROC)
e2:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e2:SetRange(LOCATION_EXTRA)
e2:SetCondition(cm.sprcon)
e2:SetOperation(cm.sprop)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(m,0))
e3:SetCategory(CATEGORY_SUMMON)
......
--伟大之名 贾罗科
Duel.LoadScript("16199990.lua")
Duel.LoadScript("c16199990.lua")
local m,cm=rk.set(16140018,"GREATNAME")
function cm.initial_effect(c)
aux.EnableDualAttribute(c)
......
......@@ -19,8 +19,9 @@ function cm.initial_effect(c)
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(m,4))
e4:SetCategory(CATEGORY_DAMAGE+CATEGORY_DEFCHANGE)
e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e4:SetCode(EVENT_PHASE+PHASE_END)
e4:SetRange(LOCATION_SZONE)
e4:SetCountLimit(1)
e4:SetCondition(cm.con)
e4:SetTarget(cm.destg)
......@@ -108,13 +109,17 @@ function cm.destg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,900,tp,0)
end
function cm.filter(c,e,tp)
return (c:IsSetCard(0x389) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0) or (c:IsSetCard(0x1ce1) and c:IsAbleToHand())
end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,LOCATION_MZONE,0,nil)
if g:GetCount()==0 then
Duel.Damage(tp,900,REASON_EFFECT)
return
end
local g1=Duel.GetMatchingGroup(cm.check,tp,LOCATION_MZONE,0,nil)
local g1=Duel.GetMatchingGroup(Card.IsPosition,tp,LOCATION_MZONE,0,nil,POS_FACEUP_DEFENSE)
for tc in aux.Next(g1) do
e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
......
......@@ -8,8 +8,6 @@ function cm.initial_effect(c)
local e3=rsef.FTF(c,EVENT_TO_HAND,{m,2},1,"th","de",LOCATION_HAND,cm.con,nil,cm.tg,cm.op)
local e4=rsef.FV_LIMIT_PLAYER(c,"res,dish",nil,aux.TargetBoolFunction(Card.IsLocation,LOCATION_HAND),{1,0},rccv.pubcon2)
e4:SetRange(LOCATION_HAND)
local e7=rsef.FV_LIMIT_PLAYER(c,"res,dish",nil,aux.TargetBoolFunction(Card.IsLocation,LOCATION_HAND),{1,0},rccv.pubcon2)
e7:SetRange(LOCATION_HAND)
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_FIELD)
e5:SetCode(EFFECT_SET_ATTACK_FINAL)
......
......@@ -5,36 +5,24 @@ xpcall(function() require("expansions/script/c37564765") end,function() require(
function cm.initial_effect(c)
c:EnableReviveLimit()
aux.AddFusionProcFunRep(c,aux.FilterBoolFunction(Card.IsAttackAbove,2100),2,true)
--change position
local e1=Effect.CreateEffect(c)
e1:SetDescription(CATEGORY_POSITION)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCategory(CATEGORY_POSITION)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
local function pfilter(c)
return not c:IsPosition(POS_FACEUP_ATTACK) and c:IsLocation(LOCATION_MZONE)
end
e1:SetTarget(function(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.GetMatchingGroup(pfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil)
if chk==0 then return #g>0 end
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,#g,0,0)
end)
e1:SetOperation(function(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.GetMatchingGroup(pfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil)
Duel.ChangePosition(tc,POS_FACEUP_ATTACK)
local c=e:GetHandler()
if #g>0 and c:IsFaceup() and c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(#g*200)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e2)
end
end)
e1:SetOperation(cm.posop)
c:RegisterEffect(e1)
end
function cm.posop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(cm.posfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil)
if g:GetCount()==0 then return end
local ct=Duel.ChangePosition(g,POS_FACEUP_ATTACK)
if ct>0 then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(ct*200)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
c:RegisterEffect(e1)
end
end
......@@ -64,6 +64,7 @@ function cm.damop1(e,tp,eg,ep,ev,re,r,rp)
if seq==5 then flag=flag|(aux.SequenceToGlobal(p,LOCATION_MZONE,1)) end
if seq==6 then flag=flag|(aux.SequenceToGlobal(p,LOCATION_MZONE,3)) end
else toGrave=true
end
end
end
end
......
local m=53707020
local cm=_G["c"..m]
cm.name="幽林清响"
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c)
SNNM.AllGlobalCheck(c)
Duel.EnableGlobalFlag(GLOBALFLAG_DECK_REVERSE_CHECK)
......
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