Commit 29afde9c authored by Tachibana's avatar Tachibana

ybb

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