Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
P
pre-release-database-cdb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Ruby
pre-release-database-cdb
Commits
89db6a35
Commit
89db6a35
authored
Oct 28, 2023
by
fallenstardust
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add PHNI-JP30/31/33
parent
ec83a24b
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
272 additions
and
1 deletion
+272
-1
script/c101203030.lua
script/c101203030.lua
+122
-0
script/c101203031.lua
script/c101203031.lua
+89
-0
script/c101203033.lua
script/c101203033.lua
+58
-0
script/c101203057.lua
script/c101203057.lua
+3
-1
No files found.
script/c101203030.lua
0 → 100644
View file @
89db6a35
--幻蝋館の使者
--Coded by Lee
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--Special Summon (from hand : itself)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
0
))
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e1
:
SetCode
(
EVENT_ATTACK_ANNOUNCE
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCountLimit
(
1
,
id
)
e1
:
SetCondition
(
s
.
spcon
)
e1
:
SetTarget
(
s
.
sptg
)
e1
:
SetOperation
(
s
.
spop
)
c
:
RegisterEffect
(
e1
)
--indes
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetTargetRange
(
LOCATION_MZONE
,
LOCATION_MZONE
)
e2
:
SetTarget
(
s
.
indtg
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
--disable
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
id
,
1
))
e3
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e3
:
SetCode
(
EVENT_PHASE
+
PHASE_BATTLE
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
)
e3
:
SetCondition
(
s
.
discon
)
e3
:
SetTarget
(
s
.
distg
)
e3
:
SetOperation
(
s
.
disop
)
c
:
RegisterEffect
(
e3
)
end
function
s
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetAttacker
():
IsControler
(
1
-
tp
)
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
e
:
GetHandler
(),
1
,
0
,
0
)
end
function
s
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
c
:
IsRelateToEffect
(
e
)
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
s
.
indtg
(
e
,
c
)
local
tc
=
e
:
GetHandler
()
return
c
==
tc
or
c
==
tc
:
GetBattleTarget
()
end
function
s
.
discon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetTurnPlayer
()
==
1
-
tp
end
function
s
.
filter
(
c
)
return
c
:
IsPosition
(
POS_ATTACK
)
end
function
s
.
distg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
filter
,
tp
,
0
,
LOCATION_MZONE
,
1
,
nil
)
end
end
function
s
.
disop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
g
=
Duel
.
GetMatchingGroup
(
s
.
filter
,
tp
,
0
,
LOCATION_MZONE
,
nil
)
if
#
g
>
0
then
local
tc
=
g
:
GetFirst
()
while
tc
do
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_CANNOT_CHANGE_POSITION
)
e1
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_BATTLE_START
+
RESET_OPPO_TURN
)
e1
:
SetTargetRange
(
0
,
LOCATION_MZONE
)
tc
:
RegisterEffect
(
e1
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetCode
(
EFFECT_CANNOT_BE_SYNCHRO_MATERIAL
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_BATTLE_START
+
RESET_OPPO_TURN
)
e2
:
SetValue
(
1
)
tc
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
e3
:
SetCode
(
EFFECT_CANNOT_BE_FUSION_MATERIAL
)
e3
:
SetValue
(
s
.
fuslimit
)
tc
:
RegisterEffect
(
e3
)
local
e4
=
e2
:
Clone
()
e4
:
SetCode
(
EFFECT_CANNOT_BE_XYZ_MATERIAL
)
tc
:
RegisterEffect
(
e4
)
local
e5
=
e2
:
Clone
()
e5
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
tc
:
RegisterEffect
(
e5
)
tc
=
g
:
GetNext
()
end
local
sg
=
g
:
Filter
(
aux
.
NegateEffectMonsterFilter
,
nil
)
local
sc
=
sg
:
GetFirst
()
while
sc
do
Duel
.
NegateRelatedChain
(
sc
,
RESET_TURN_SET
)
local
e6
=
Effect
.
CreateEffect
(
c
)
e6
:
SetType
(
EFFECT_TYPE_SINGLE
)
e6
:
SetCode
(
EFFECT_DISABLE
)
e6
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e6
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_BATTLE_START
+
RESET_OPPO_TURN
)
sc
:
RegisterEffect
(
e6
)
local
e7
=
Effect
.
CreateEffect
(
c
)
e7
:
SetType
(
EFFECT_TYPE_SINGLE
)
e7
:
SetCode
(
EFFECT_DISABLE_EFFECT
)
e7
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e7
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_BATTLE_START
+
RESET_OPPO_TURN
)
e7
:
SetValue
(
RESET_TURN_SET
)
sc
:
RegisterEffect
(
e7
)
sc
=
sg
:
GetNext
()
end
end
end
function
s
.
fuslimit
(
e
,
c
,
sumtype
)
return
sumtype
==
SUMMON_TYPE_FUSION
end
\ No newline at end of file
script/c101203031.lua
0 → 100644
View file @
89db6a35
--童妖茶壶
--Lua by Gim J.Blocks
function
c101203031
.
initial_effect
(
c
)
--cannot change pos or activate
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_CHANGE_POSITION
)
e1
:
SetProperty
(
EFFECT_FLAG_SET_AVAILABLE
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetTargetRange
(
LOCATION_MZONE
,
LOCATION_MZONE
)
e1
:
SetTarget
(
c101203031
.
target
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EFFECT_CANNOT_TRIGGER
)
e2
:
SetTargetRange
(
LOCATION_SZONE
,
LOCATION_SZONE
)
e2
:
SetTarget
(
c101203031
.
target2
)
c
:
RegisterEffect
(
e2
)
--move
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
101203031
,
0
))
e3
:
SetType
(
EFFECT_TYPE_IGNITION
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
101203031
)
e3
:
SetCondition
(
c101203031
.
seqcon
)
e3
:
SetOperation
(
c101203031
.
seqop
)
c
:
RegisterEffect
(
e3
)
--move
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetCategory
(
CATEGORY_POSITION
)
e4
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_F
)
e4
:
SetCode
(
EVENT_MOVE
)
e4
:
SetCountLimit
(
1
,
101203131
)
e4
:
SetCondition
(
c101203031
.
poscon
)
e4
:
SetTarget
(
c101203031
.
postg
)
e4
:
SetOperation
(
c101203031
.
posop
)
c
:
RegisterEffect
(
e4
)
end
function
c101203031
.
target
(
e
,
c
)
return
c
:
IsPosition
(
POS_FACEDOWN_DEFENSE
)
and
e
:
GetHandler
():
GetColumnGroup
():
IsContains
(
c
)
end
function
c101203031
.
target2
(
e
,
c
)
return
c
:
IsPosition
(
POS_FACEDOWN
)
and
e
:
GetHandler
():
GetColumnGroup
():
IsContains
(
c
)
end
function
c101203031
.
seqcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
seq
=
e
:
GetHandler
():
GetSequence
()
if
seq
>
4
then
return
false
end
return
(
seq
>
0
and
Duel
.
CheckLocation
(
tp
,
LOCATION_MZONE
,
seq
-
1
))
or
(
seq
<
4
and
Duel
.
CheckLocation
(
tp
,
LOCATION_MZONE
,
seq
+
1
))
end
function
c101203031
.
seqop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
or
c
:
IsControler
(
1
-
tp
)
then
return
end
local
seq
=
c
:
GetSequence
()
if
seq
>
4
then
return
end
if
(
seq
>
0
and
Duel
.
CheckLocation
(
tp
,
LOCATION_MZONE
,
seq
-
1
))
or
(
seq
<
4
and
Duel
.
CheckLocation
(
tp
,
LOCATION_MZONE
,
seq
+
1
))
then
local
flag
=
0
if
seq
>
0
and
Duel
.
CheckLocation
(
tp
,
LOCATION_MZONE
,
seq
-
1
)
then
flag
=
bit
.
replace
(
flag
,
0x1
,
seq
-
1
)
end
if
seq
<
4
and
Duel
.
CheckLocation
(
tp
,
LOCATION_MZONE
,
seq
+
1
)
then
flag
=
bit
.
replace
(
flag
,
0x1
,
seq
+
1
)
end
flag
=
bit
.
bxor
(
flag
,
0xff
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOZONE
)
local
s
=
Duel
.
SelectDisableField
(
tp
,
1
,
LOCATION_MZONE
,
0
,
flag
)
local
nseq
=
0
if
s
==
1
then
nseq
=
0
elseif
s
==
2
then
nseq
=
1
elseif
s
==
4
then
nseq
=
2
elseif
s
==
8
then
nseq
=
3
else
nseq
=
4
end
Duel
.
MoveSequence
(
c
,
nseq
)
end
end
function
c101203031
.
poscon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
return
c
:
IsPreviousLocation
(
LOCATION_MZONE
)
and
c
:
IsLocation
(
LOCATION_MZONE
)
and
(
c
:
GetPreviousSequence
()
~=
c
:
GetSequence
()
or
c
:
GetPreviousControler
()
~=
tp
)
end
function
c101203031
.
posfilter
(
c
,
e
)
return
c
:
IsCanTurnSet
()
and
e
:
GetHandler
():
GetColumnGroup
():
IsContains
(
c
)
end
function
c101203031
.
postg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
true
end
local
g
=
Duel
.
GetMatchingGroup
(
c101203031
.
posfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
e
:
GetHandler
(),
e
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_POSITION
,
g
,
g
:
GetCount
(),
0
,
0
)
end
function
c101203031
.
posop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
c101203031
.
posfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
e
:
GetHandler
(),
e
)
Duel
.
ChangePosition
(
g
,
POS_FACEDOWN_DEFENSE
)
end
\ No newline at end of file
script/c101203033.lua
0 → 100644
View file @
89db6a35
--莫科莫可
--Lua by Gim J.Blocks
function
c101203033
.
initial_effect
(
c
)
--indes
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetTargetRange
(
LOCATION_MZONE
,
LOCATION_MZONE
)
e1
:
SetTarget
(
c101203033
.
indtg
)
e1
:
SetValue
(
1
)
c
:
RegisterEffect
(
e1
)
--turn set
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
101203033
,
0
))
e2
:
SetCategory
(
CATEGORY_POSITION
)
e2
:
SetType
(
EFFECT_TYPE_IGNITION
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
101203033
)
e2
:
SetTarget
(
c101203033
.
sttg
)
e2
:
SetOperation
(
c101203033
.
stop
)
c
:
RegisterEffect
(
e2
)
--draw
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
101203033
,
1
))
e3
:
SetCategory
(
CATEGORY_DRAW
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_FLIP
)
e3
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e3
:
SetCountLimit
(
1
,
101203133
)
e3
:
SetTarget
(
c101203033
.
drtg
)
e3
:
SetOperation
(
c101203033
.
drop
)
c
:
RegisterEffect
(
e3
)
end
function
c101203033
.
indtg
(
e
,
c
)
local
tc
=
e
:
GetHandler
()
return
c
==
tc
or
c
==
tc
:
GetBattleTarget
()
end
function
c101203033
.
sttg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
c
:
IsCanTurnSet
()
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_POSITION
,
c
,
1
,
0
,
0
)
end
function
c101203033
.
stop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
c
:
IsRelateToEffect
(
e
)
and
c
:
IsFaceup
()
then
Duel
.
ChangePosition
(
c
,
POS_FACEDOWN_DEFENSE
)
end
end
function
c101203033
.
drtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
Duel
.
SetTargetPlayer
(
tp
)
Duel
.
SetTargetParam
(
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DRAW
,
nil
,
0
,
tp
,
1
)
end
function
c101203033
.
drop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
p
,
d
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
,
CHAININFO_TARGET_PARAM
)
Duel
.
Draw
(
p
,
d
,
REASON_EFFECT
)
end
\ No newline at end of file
script/c101203057.lua
View file @
89db6a35
...
@@ -38,7 +38,9 @@ function s.cfilter(c,tp)
...
@@ -38,7 +38,9 @@ function s.cfilter(c,tp)
return
c
:
IsSetCard
(
0xba
)
and
c
:
IsControler
(
tp
)
and
c
:
IsSummonLocation
(
LOCATION_EXTRA
)
return
c
:
IsSetCard
(
0xba
)
and
c
:
IsControler
(
tp
)
and
c
:
IsSummonLocation
(
LOCATION_EXTRA
)
end
end
function
s
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
s
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
eg
:
IsExists
(
s
.
cfilter
,
1
,
nil
,
tp
)
and
Duel
.
IsExistingMatchingCard
(
s
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
if
chk
==
0
then
return
eg
:
IsExists
(
s
.
cfilter
,
1
,
nil
,
tp
)
and
Duel
.
IsExistingMatchingCard
(
s
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_DECK
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
end
function
s
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
s
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment