Commit 02657bf1 authored by wind2009's avatar wind2009

Fix

parent a91fa42b
Pipeline #42188 passed with stages
in 3 minutes and 29 seconds
...@@ -91,7 +91,7 @@ add_script_diff: ...@@ -91,7 +91,7 @@ add_script_diff:
FIELDS: 'name,desc,overallString,picUrl' FIELDS: 'name,desc,overallString,picUrl'
GIT_DEPTH: '1000' GIT_DEPTH: '1000'
OUTPUT_FILENAME: test-release.json OUTPUT_FILENAME: test-release.json
REF_COMMIT: '20.8' # 更新的时候改这里,修改成上一个tag的版本号 REF_COMMIT: '20.9' # 更新的时候改这里,修改成上一个tag的版本号
script: script:
- apt update;apt -y install wget - apt update;apt -y install wget
- currentPath=$PWD - currentPath=$PWD
......
...@@ -50,9 +50,10 @@ function s.deop(e,tp,eg,ep,ev,re,r,rp) ...@@ -50,9 +50,10 @@ function s.deop(e,tp,eg,ep,ev,re,r,rp)
local sg=Duel.GetMatchingGroup(Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,nil) local sg=Duel.GetMatchingGroup(Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,nil)
if sg:GetCount()>0 then if sg:GetCount()>0 then
local cg=sg:Filter(s.lvcalfilter,nil) local cg=sg:Filter(s.lvcalfilter,nil)
Duel.Destroy(sg,REASON_EFFECT) if Duel.Destroy(sg,REASON_EFFECT)>0 then
local ct=(Duel.GetOperatedGroup()&cg):GetSum(Card.GetOriginalLevel) local ct=(Duel.GetOperatedGroup()&cg):GetSum(Card.GetOriginalLevel)
Duel.Damage(1-tp,ct*200,REASON_EFFECT) Duel.Damage(1-tp,ct*200,REASON_EFFECT)
end
end end
end end
function s.spfilter(c,e,tp) function s.spfilter(c,e,tp)
......
...@@ -38,7 +38,8 @@ function s.atkcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -38,7 +38,8 @@ function s.atkcost(e,tp,eg,ep,ev,re,r,rp,chk)
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST) e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
local ct=Duel.GetOperatedGroup():GetFirst() local ct=Duel.GetOperatedGroup():GetFirst()
if ct:IsType(TYPE_MONSTER) then if ct:IsType(TYPE_MONSTER) then
e:SetLabel(ct:GetOriginalRace()) e:SetLabel(ct:GetFieldID())
e:SetLabelObject(ct)
else else
e:SetLabel(0) e:SetLabel(0)
end end
...@@ -67,14 +68,19 @@ function s.atkop(e,tp,eg,ep,ev,re,r,rp) ...@@ -67,14 +68,19 @@ function s.atkop(e,tp,eg,ep,ev,re,r,rp)
e1:SetValue(1) e1:SetValue(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1) c:RegisterEffect(e1)
local race=e:GetLabel() local fid=e:GetLabel()
if e:GetLabel()~=0 and Duel.IsExistingMatchingCard(s.tgfilter,tp,LOCATION_DECK,0,1,nil,race) if fid>0 then
and Duel.SelectYesNo(tp,aux.Stringid(id,2)) then local cc=e:GetLabelObject()
Duel.BreakEffect() local race=cc:GetRace()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) if cc:GetFieldID()~=fid then race=cc:GetOriginalRace() end
local g=Duel.SelectMatchingCard(tp,s.tgfilter,tp,LOCATION_DECK,0,1,1,nil,race) if fid~=0 and Duel.IsExistingMatchingCard(s.tgfilter,tp,LOCATION_DECK,0,1,nil,race)
if g:GetCount()>0 then and Duel.SelectYesNo(tp,aux.Stringid(id,2)) then
Duel.SendtoGrave(g,REASON_EFFECT) Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,s.tgfilter,tp,LOCATION_DECK,0,1,1,nil,race)
if g:GetCount()>0 then
Duel.SendtoGrave(g,REASON_EFFECT)
end
end end
end end
end end
......
...@@ -42,15 +42,12 @@ function s.initial_effect(c) ...@@ -42,15 +42,12 @@ function s.initial_effect(c)
e4:SetOperation(s.thop) e4:SetOperation(s.thop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function s.pencon(e,tp,eg,ep,ev,re,r,rp) function s.pencon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldCard(tp,LOCATION_PZONE,0) and Duel.GetFieldCard(tp,LOCATION_PZONE,1) return Duel.GetFieldCard(tp,LOCATION_PZONE,0) and Duel.GetFieldCard(tp,LOCATION_PZONE,1)
end end
function s.penspfilter(c,e,tp) function s.penspfilter(c,e,tp)
return c:IsLevelBelow(5) and c:IsType(TYPE_PENDULUM) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsLevelBelow(5) and c:IsType(TYPE_PENDULUM) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function s.pentg(e,tp,eg,ep,ev,re,r,rp,chk) function s.pentg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
local b1=c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 local b1=c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
...@@ -70,7 +67,6 @@ function s.pentg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -70,7 +67,6 @@ function s.pentg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_PZONE) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_PZONE)
end end
end end
function s.penop(e,tp,eg,ep,ev,re,r,rp) function s.penop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local op=e:GetLabel() local op=e:GetLabel()
...@@ -92,15 +88,12 @@ function s.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -92,15 +88,12 @@ function s.penop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
end end
function s.protcon(e) function s.protcon(e)
return e:GetHandler():IsSummonType(SUMMON_TYPE_PENDULUM) return e:GetHandler():IsSummonType(SUMMON_TYPE_PENDULUM)
end end
function s.thfilter(c,tp) function s.thfilter(c,tp)
return (c:GetOriginalType()&(TYPE_PENDULUM|TYPE_MONSTER)==TYPE_PENDULUM|TYPE_MONSTER) and c:IsFaceup() and c:IsControler(tp) return (c:GetOriginalType()&(TYPE_PENDULUM|TYPE_MONSTER)==TYPE_PENDULUM|TYPE_MONSTER) and c:IsFaceup() and c:IsControler(tp)
end end
function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return false end if chkc then return false end
local g=Duel.GetMatchingGroup(aux.AND(Card.IsCanBeEffectTarget,Card.IsAbleToHand),tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil,e) local g=Duel.GetMatchingGroup(aux.AND(Card.IsCanBeEffectTarget,Card.IsAbleToHand),tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil,e)
...@@ -110,12 +103,10 @@ function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -110,12 +103,10 @@ function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SetTargetCard(sg) Duel.SetTargetCard(sg)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,sg,2,0,0) Duel.SetOperationInfo(0,CATEGORY_TOHAND,sg,2,0,0)
end end
function s.thcheck(g,tp) function s.thcheck(g,tp)
return g:IsExists(s.thfilter,1,nil,tp) return g:IsExists(s.thfilter,1,nil,tp)
and g:IsExists(aux.AND(Card.IsControler,Card.IsAbleToHand),1,nil,1-tp) and g:IsExists(aux.AND(Card.IsControler,Card.IsAbleToHand),1,nil,1-tp)
end end
function s.thop(e,tp,eg,ep,ev,re,r,rp) function s.thop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetTargetsRelateToChain() local g=Duel.GetTargetsRelateToChain()
if #g>0 then if #g>0 then
......
...@@ -77,14 +77,14 @@ end ...@@ -77,14 +77,14 @@ end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133)
and Duel.GetMZoneCount(tp,e:GetHandler())>=3 and Duel.GetMZoneCount(tp,e:GetHandler())>=3
and Duel.IsPlayerCanSpecialSummonMonster(tp,id+o,0,TYPES_TOKEN_MONSTER,0xea,0,1,RACE_MACHINE,ATTRIBUTE_WATER) end and Duel.IsPlayerCanSpecialSummonMonster(tp,id+o,0xea,TYPES_TOKEN_MONSTER,0,0,1,RACE_MACHINE,ATTRIBUTE_WATER) end
Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,3,0,0) Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,3,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,3,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,3,0,0)
end end
function s.spop(e,tp,eg,ep,ev,re,r,rp) function s.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.IsPlayerAffectedByEffect(tp,59822133) then return end if Duel.IsPlayerAffectedByEffect(tp,59822133) then return end
if Duel.GetLocationCount(tp,LOCATION_MZONE)>=3 if Duel.GetLocationCount(tp,LOCATION_MZONE)>=3
and Duel.IsPlayerCanSpecialSummonMonster(tp,id+o,0,TYPES_TOKEN_MONSTER,0xea,0,1,RACE_MACHINE,ATTRIBUTE_WATER) then and Duel.IsPlayerCanSpecialSummonMonster(tp,id+o,0xea,TYPES_TOKEN_MONSTER,0,0,1,RACE_MACHINE,ATTRIBUTE_WATER) then
for i=1,3 do for i=1,3 do
local token=Duel.CreateToken(tp,id+o) local token=Duel.CreateToken(tp,id+o)
Duel.SpecialSummonStep(token,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummonStep(token,0,tp,tp,false,false,POS_FACEUP)
......
...@@ -48,20 +48,19 @@ function s.effop(e,tp,eg,ep,ev,re,r,rp) ...@@ -48,20 +48,19 @@ function s.effop(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,4)) e1:SetDescription(aux.Stringid(id,4))
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_NO_TURN_RESET)
e1:SetRange(LOCATION_ONFIELD) e1:SetRange(LOCATION_ONFIELD)
e1:SetCode(EFFECT_INDESTRUCTABLE_COUNT) e1:SetCode(EFFECT_INDESTRUCTABLE_COUNT)
e1:SetProperty(EFFECT_FLAG_CLIENT_HINT) e1:SetProperty(EFFECT_FLAG_CLIENT_HINT+EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCountLimit(1) e1:SetCountLimit(1)
e1:SetValue(s.indct) e1:SetValue(s.indct)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
elseif d==2 or d==5 then elseif d==2 or d==5 then
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_UPDATE_ATTACK) e2:SetCode(EFFECT_UPDATE_ATTACK)
e2:SetValue(-500) e2:SetValue(-500)
e2:SetReset(RESET_EVENT+RESETS_STANDARD) e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e2) tc:RegisterEffect(e2)
if not tc:IsHasEffect(EFFECT_REVERSE_UPDATE) then if not tc:IsHasEffect(EFFECT_REVERSE_UPDATE) then
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
...@@ -72,7 +71,7 @@ function s.effop(e,tp,eg,ep,ev,re,r,rp) ...@@ -72,7 +71,7 @@ function s.effop(e,tp,eg,ep,ev,re,r,rp)
e3:SetCode(EFFECT_IMMUNE_EFFECT) e3:SetCode(EFFECT_IMMUNE_EFFECT)
e3:SetProperty(EFFECT_FLAG_CLIENT_HINT) e3:SetProperty(EFFECT_FLAG_CLIENT_HINT)
e3:SetValue(s.efilter) e3:SetValue(s.efilter)
e3:SetReset(RESET_EVENT+RESETS_STANDARD) e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e3) tc:RegisterEffect(e3)
end end
elseif d==3 or d==6 then elseif d==3 or d==6 then
...@@ -80,7 +79,7 @@ function s.effop(e,tp,eg,ep,ev,re,r,rp) ...@@ -80,7 +79,7 @@ function s.effop(e,tp,eg,ep,ev,re,r,rp)
e4:SetType(EFFECT_TYPE_SINGLE) e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_UPDATE_ATTACK) e4:SetCode(EFFECT_UPDATE_ATTACK)
e4:SetValue(1000) e4:SetValue(1000)
e4:SetReset(RESET_EVENT+RESETS_STANDARD) e4:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e4) tc:RegisterEffect(e4)
if not tc:IsHasEffect(EFFECT_REVERSE_UPDATE) then if not tc:IsHasEffect(EFFECT_REVERSE_UPDATE) then
local e5=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
...@@ -89,7 +88,7 @@ function s.effop(e,tp,eg,ep,ev,re,r,rp) ...@@ -89,7 +88,7 @@ function s.effop(e,tp,eg,ep,ev,re,r,rp)
e5:SetCode(EFFECT_EXTRA_ATTACK_MONSTER) e5:SetCode(EFFECT_EXTRA_ATTACK_MONSTER)
e5:SetProperty(EFFECT_FLAG_CLIENT_HINT) e5:SetProperty(EFFECT_FLAG_CLIENT_HINT)
e5:SetValue(1) e5:SetValue(1)
e5:SetReset(RESET_EVENT+RESETS_STANDARD) e5:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e5) tc:RegisterEffect(e5)
end end
end 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