Commit 9eb5b45f authored by nanahira's avatar nanahira

fixes

parent f3364263
Pipeline #35677 failed with stage
in 13 seconds
...@@ -15,6 +15,7 @@ function s.initial_effect(c) ...@@ -15,6 +15,7 @@ function s.initial_effect(c)
e1:SetCost(s.cost) e1:SetCost(s.cost)
e1:SetTarget(s.target) e1:SetTarget(s.target)
e1:SetOperation(s.operation) e1:SetOperation(s.operation)
c:RegisterEffect(e1)
end end
function s.mfilter(c,xyzc) function s.mfilter(c,xyzc)
return c:IsXyzType(TYPE_XYZ) and not c:IsSetCard(0x48) return c:IsXyzType(TYPE_XYZ) and not c:IsSetCard(0x48)
...@@ -54,7 +55,7 @@ function s.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -54,7 +55,7 @@ function s.operation(e,tp,eg,ep,ev,re,r,rp)
function(factory) function(factory)
local e2=factory() local e2=factory()
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_SET_AVAILABLE+EFFECT_FLAG_IGNORE_RANGE+EFFECT_FLAG_IGNORE_IMMUNE) e2:SetProperty(e2:GetProperty() | EFFECT_FLAG_SET_AVAILABLE+EFFECT_FLAG_IGNORE_RANGE+EFFECT_FLAG_IGNORE_IMMUNE)
e2:SetCode(EFFECT_TO_GRAVE_REDIRECT) e2:SetCode(EFFECT_TO_GRAVE_REDIRECT)
e2:SetTargetRange(LOCATION_DECK,LOCATION_DECK) e2:SetTargetRange(LOCATION_DECK,LOCATION_DECK)
e2:SetValue(LOCATION_REMOVED) e2:SetValue(LOCATION_REMOVED)
...@@ -68,11 +69,13 @@ function s.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -68,11 +69,13 @@ function s.operation(e,tp,eg,ep,ev,re,r,rp)
e1:SetCode(EFFECT_MAX_MZONE) e1:SetCode(EFFECT_MAX_MZONE)
e1:SetTargetRange(1,1) e1:SetTargetRange(1,1)
e1:SetValue(1) e1:SetValue(1)
local e2=Effect.CreateEffect(c) local e2=factory()
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_FLAG_CONTNUOUS) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetProperty(e1:GetProperty() | EFFECT_FLAG_IGNORE_IMMUNE) e2:SetProperty(e2:GetProperty() | EFFECT_FLAG_IGNORE_IMMUNE)
e2:SetCode(EVENT_ADJUST) e2:SetCode(EVENT_ADJUST)
e2:SetOperation(function(e,tp,eg,ep,ev,re,r,rp) e2:SetOperation(function(e,tp,eg,ep,ev,re,r,rp)
local phase=Duel.GetCurrentPhase()
if (phase==PHASE_DAMAGE and not Duel.IsDamageCalculated()) or phase==PHASE_DAMAGE_CAL then return end
local function select_send_grave(p) local function select_send_grave(p)
local c2=Duel.GetFieldGroupCount(p,LOCATION_MZONE,0) local c2=Duel.GetFieldGroupCount(p,LOCATION_MZONE,0)
if c2>1 then if c2>1 then
...@@ -116,13 +119,14 @@ function s.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -116,13 +119,14 @@ function s.operation(e,tp,eg,ep,ev,re,r,rp)
e4:SetType(EFFECT_TYPE_FIELD) e4:SetType(EFFECT_TYPE_FIELD)
e4:SetCode(EFFECT_CANNOT_REMOVE) e4:SetCode(EFFECT_CANNOT_REMOVE)
e4:SetTargetRange(LOCATION_GRAVE,LOCATION_GRAVE) e4:SetTargetRange(LOCATION_GRAVE,LOCATION_GRAVE)
return e1,e2,e3,e4
end, end,
-- ●5:希望的碎片 -- ●5:希望的碎片
function(factory) function(factory)
local e1=factory() local e1=factory()
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetProperty(e:GetProperty() | EFFECT_FLAG_PLAYER_TARGET) e1:SetProperty(e1:GetProperty() | EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(1,1) e1:SetTargetRange(1,1)
e1:SetTarget(function(e,c,sump,sumtype,sumpos,targetp) e1:SetTarget(function(e,c,sump,sumtype,sumpos,targetp)
return c:IsLocation(LOCATION_EXTRA) return c:IsLocation(LOCATION_EXTRA)
......
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