Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro
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
nanahira
ygopro
Commits
e963a748
Commit
e963a748
authored
Jun 27, 2013
by
Fluorohydride
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #569 from VanillaSalt/patch70
fix
parents
442c5bc6
ac4db571
Changes
39
Hide whitespace changes
Inline
Side-by-side
Showing
39 changed files
with
131 additions
and
92 deletions
+131
-92
ocgcore/field.cpp
ocgcore/field.cpp
+1
-1
ocgcore/libduel.cpp
ocgcore/libduel.cpp
+2
-1
ocgcore/processor.cpp
ocgcore/processor.cpp
+7
-16
script/c12275533.lua
script/c12275533.lua
+2
-2
script/c14235211.lua
script/c14235211.lua
+1
-0
script/c18865703.lua
script/c18865703.lua
+1
-1
script/c22628574.lua
script/c22628574.lua
+1
-1
script/c24096228.lua
script/c24096228.lua
+2
-2
script/c25366484.lua
script/c25366484.lua
+10
-5
script/c25435080.lua
script/c25435080.lua
+6
-3
script/c27383110.lua
script/c27383110.lua
+5
-5
script/c28002611.lua
script/c28002611.lua
+1
-1
script/c28577986.lua
script/c28577986.lua
+3
-3
script/c29353756.lua
script/c29353756.lua
+1
-1
script/c3146695.lua
script/c3146695.lua
+27
-10
script/c33302407.lua
script/c33302407.lua
+1
-1
script/c33725002.lua
script/c33725002.lua
+1
-1
script/c34109611.lua
script/c34109611.lua
+1
-0
script/c35809262.lua
script/c35809262.lua
+9
-4
script/c37195861.lua
script/c37195861.lua
+2
-2
script/c42671151.lua
script/c42671151.lua
+6
-6
script/c43841694.lua
script/c43841694.lua
+1
-1
script/c45082499.lua
script/c45082499.lua
+1
-0
script/c46710683.lua
script/c46710683.lua
+5
-6
script/c48928529.lua
script/c48928529.lua
+2
-0
script/c53670497.lua
script/c53670497.lua
+1
-1
script/c53839837.lua
script/c53839837.lua
+9
-3
script/c56511382.lua
script/c56511382.lua
+1
-1
script/c60992364.lua
script/c60992364.lua
+1
-1
script/c6330307.lua
script/c6330307.lua
+1
-0
script/c70271583.lua
script/c70271583.lua
+3
-2
script/c76202610.lua
script/c76202610.lua
+3
-1
script/c79766336.lua
script/c79766336.lua
+1
-1
script/c81471108.lua
script/c81471108.lua
+1
-0
script/c83500096.lua
script/c83500096.lua
+1
-1
script/c88241506.lua
script/c88241506.lua
+2
-1
script/c88301833.lua
script/c88301833.lua
+5
-5
script/c89547299.lua
script/c89547299.lua
+1
-0
script/c96148285.lua
script/c96148285.lua
+2
-2
No files found.
ocgcore/field.cpp
View file @
e963a748
...
...
@@ -731,7 +731,7 @@ void field::remove_oath_effect(effect* reason_effect) {
}
void
field
::
reset_effect
(
uint32
id
,
uint32
reset_type
)
{
int32
result
;
for
(
auto
it
=
effects
.
indexer
.
begin
();
it
!=
effects
.
indexer
.
end
();
++
it
)
{
for
(
auto
it
=
effects
.
indexer
.
begin
();
it
!=
effects
.
indexer
.
end
();)
{
auto
rm
=
it
++
;
auto
peffect
=
rm
->
first
;
auto
pit
=
rm
->
second
;
...
...
ocgcore/libduel.cpp
View file @
e963a748
...
...
@@ -125,7 +125,8 @@ int32 scriptlib::duel_reset_flag_effect(lua_State *L) {
effect
*
peffect
;
pr
=
pduel
->
game_field
->
effects
.
aura_effect
.
equal_range
(
code
);
for
(;
pr
.
first
!=
pr
.
second
;
)
{
peffect
=
pr
.
first
->
second
;
auto
rm
=
pr
.
first
++
;
peffect
=
rm
->
second
;
if
(
peffect
->
code
==
code
)
pduel
->
game_field
->
remove_effect
(
peffect
);
}
...
...
ocgcore/processor.cpp
View file @
e963a748
...
...
@@ -1773,7 +1773,8 @@ int32 field::process_point_event(int16 step, int32 special, int32 skip_new) {
&&
((
peffect
->
code
==
EVENT_FLIP
)
||
(
clit
->
triggering_location
&
0x3
)
||
!
(
peffect
->
handler
->
current
.
location
&
0x3
)
||
peffect
->
handler
->
is_status
(
STATUS_IS_PUBLIC
)))
{
if
(
!
(
peffect
->
flag
&
EFFECT_FLAG_FIELD_ONLY
)
&&
clit
->
triggering_location
==
LOCATION_HAND
&&
(((
peffect
->
type
&
EFFECT_TYPE_SINGLE
)
&&
!
(
peffect
->
flag
&
EFFECT_FLAG_SINGLE_RANGE
))
||
(
peffect
->
range
&
LOCATION_HAND
)))
{
&&
(((
peffect
->
type
&
EFFECT_TYPE_SINGLE
)
&&
!
(
peffect
->
flag
&
EFFECT_FLAG_SINGLE_RANGE
)
&&
peffect
->
handler
->
is_has_relation
(
peffect
))
||
(
peffect
->
range
&
LOCATION_HAND
)))
{
core
.
new_ochain_h
.
push_back
(
*
clit
);
act
=
false
;
}
else
if
((
peffect
->
flag
&
EFFECT_FLAG_FIELD_ONLY
)
||
!
(
peffect
->
type
&
EFFECT_TYPE_FIELD
)
||
(
clit
->
triggering_location
&
peffect
->
range
))
{
...
...
@@ -2664,6 +2665,7 @@ int32 field::process_battle_command(uint16 step) {
core
.
units
.
begin
()
->
step
=
2
;
core
.
attacker
=
core
.
attackable_cards
[
sel
];
core
.
attacker
->
set_status
(
STATUS_ATTACK_CANCELED
,
FALSE
);
core
.
pre_field
[
0
]
=
core
.
attacker
->
fieldid_r
;
core
.
phase_action
=
TRUE
;
effect_set
eset
;
filter_player_effect
(
infos
.
turn_player
,
EFFECT_ATTACK_COST
,
&
eset
,
FALSE
);
...
...
@@ -2701,6 +2703,10 @@ int32 field::process_battle_command(uint16 step) {
}
case
3
:
{
//Filter Targers
if
(
core
.
attacker
->
current
.
location
!=
LOCATION_MZONE
||
core
.
attacker
->
fieldid_r
!=
core
.
pre_field
[
0
])
{
core
.
units
.
begin
()
->
step
=
-
1
;
return
FALSE
;
}
core
.
select_cards
.
clear
();
core
.
units
.
begin
()
->
arg1
=
FALSE
;
if
(
core
.
chain_attack
&&
core
.
chain_attack_target
)
{
...
...
@@ -3880,21 +3886,6 @@ int32 field::process_turn(uint16 step, uint8 turn_player) {
core
.
new_ochain
.
clear
();
core
.
quick_f_chain
.
clear
();
core
.
delayed_quick_tmp
.
clear
();
effect
*
peffect
;
if
(
peffect
=
is_player_affected_by_effect
(
infos
.
turn_player
,
EFFECT_SKIP_BP
))
{
if
(
is_player_affected_by_effect
(
infos
.
turn_player
,
EFFECT_BP_TWICE
))
{
core
.
units
.
begin
()
->
arg2
=
1
;
core
.
units
.
begin
()
->
step
=
8
;
}
else
core
.
units
.
begin
()
->
step
=
14
;
if
(
!
peffect
->
value
)
add_process
(
PROCESSOR_PHASE_EVENT
,
0
,
0
,
0
,
PHASE_BATTLE
,
0
);
else
{
reset_phase
(
PHASE_BATTLE
);
adjust_all
();
}
return
FALSE
;
}
add_process
(
PROCESSOR_BATTLE_COMMAND
,
0
,
0
,
0
,
0
,
0
);
return
FALSE
;
}
...
...
script/c12275533.lua
View file @
e963a748
...
...
@@ -26,7 +26,7 @@ function c12275533.initial_effect(c)
local
ge3
=
ge1
:
Clone
()
ge3
:
SetCode
(
EVENT_FLIP_SUMMON_SUCCESS
)
Duel
.
RegisterEffect
(
ge3
,
0
)
end
end
end
function
c12275533
.
checkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
eg
:
GetFirst
()
...
...
@@ -39,7 +39,7 @@ function c12275533.condition(e,tp,eg,ep,ev,re,r,rp)
return
Duel
.
GetFlagEffect
(
1
-
tp
,
12275533
)
>=
3
end
function
c12275533
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
if
chk
==
0
then
return
not
e
:
GetHandler
():
IsStatus
(
STATUS_CHAINING
)
and
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
...
...
script/c14235211.lua
View file @
e963a748
...
...
@@ -36,6 +36,7 @@ end
function
c14235211
.
eqop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
if
c
:
IsLocation
(
LOCATION_MZONE
)
and
c
:
IsFacedown
()
then
return
end
local
tc
=
Duel
.
GetFirstTarget
()
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
<=
0
or
tc
:
GetControler
()
~=
tp
or
tc
:
IsFacedown
()
or
not
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
SendtoGrave
(
c
,
REASON_EFFECT
)
...
...
script/c18865703.lua
View file @
e963a748
...
...
@@ -41,7 +41,7 @@ function c18865703.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function
c18865703
.
eqop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
if
not
c
:
IsRelateToEffect
(
e
)
or
c
:
IsFacedown
()
then
return
end
local
tc
=
Duel
.
GetFirstTarget
()
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
<=
0
or
tc
:
GetControler
()
~=
tp
or
tc
:
IsFacedown
()
or
not
tc
:
IsRelateToEffect
(
e
)
or
not
c
:
CheckUniqueOnField
(
tp
)
then
Duel
.
SendtoGrave
(
c
,
REASON_EFFECT
)
...
...
script/c22628574.lua
View file @
e963a748
...
...
@@ -19,7 +19,7 @@ function c22628574.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c22628574
.
cfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
SendtoGrave
(
g
,
REASON_COST
)
end
function
c22628574
.
filter
(
c
,
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c22628574
.
filter
(
c
)
return
c
:
GetType
()
==
0x4
and
not
c
:
IsCode
(
22628574
)
and
c
:
CheckActivateEffect
(
false
,
true
,
false
)
~=
nil
end
function
c22628574
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
...
...
script/c24096228.lua
View file @
e963a748
...
...
@@ -16,10 +16,10 @@ function c24096228.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c24096228
.
cfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
e
:
GetHandler
())
end
Duel
.
DiscardHand
(
tp
,
c24096228
.
cfilter
,
1
,
1
,
REASON_COST
+
REASON_DISCARD
)
end
function
c24096228
.
filter1
(
c
,
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c24096228
.
filter1
(
c
)
return
c
:
IsType
(
TYPE_SPELL
)
and
c
:
CheckActivateEffect
(
false
,
false
,
false
)
~=
nil
end
function
c24096228
.
filter2
(
c
,
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c24096228
.
filter2
(
c
)
return
c
:
IsType
(
TYPE_SPELL
)
and
not
c
:
IsType
(
TYPE_EQUIP
+
TYPE_CONTINUOUS
)
and
c
:
CheckActivateEffect
(
false
,
false
,
false
)
~=
nil
end
function
c24096228
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
...
...
script/c25366484.lua
View file @
e963a748
--E·HERO
フレイム
·ウィングマン
--E·HERO
シャイニング·フレア
·ウィングマン
function
c25366484
.
initial_effect
(
c
)
--fusion material
c
:
EnableReviveLimit
()
...
...
@@ -40,8 +40,8 @@ function c25366484.damcon(e,tp,eg,ep,ev,re,r,rp)
end
function
c25366484
.
damtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
local
c
=
e
:
GetHandler
()
local
bc
=
c
:
GetBattleTarget
(
)
local
bc
=
e
:
GetHandler
():
GetBattleTarget
()
Duel
.
SetTargetCard
(
bc
)
local
dam
=
bc
:
GetAttack
()
if
dam
<
0
then
dam
=
0
end
Duel
.
SetTargetPlayer
(
1
-
tp
)
...
...
@@ -49,8 +49,13 @@ function c25366484.damtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DAMAGE
,
nil
,
0
,
1
-
tp
,
dam
)
end
function
c25366484
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
p
,
d
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
,
CHAININFO_TARGET_PARAM
)
Duel
.
Damage
(
p
,
d
,
REASON_EFFECT
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
then
local
p
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
)
local
dam
=
tc
:
GetAttack
()
if
dam
<
0
then
dam
=
0
end
Duel
.
Damage
(
p
,
dam
,
REASON_EFFECT
)
end
end
function
c25366484
.
atkup
(
e
,
c
)
return
Duel
.
GetMatchingGroupCount
(
Card
.
IsSetCard
,
c
:
GetControler
(),
LOCATION_GRAVE
,
0
,
nil
,
0x3008
)
*
300
...
...
script/c25435080.lua
View file @
e963a748
...
...
@@ -7,12 +7,16 @@ function c25435080.initial_effect(c)
e1
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
+
EFFECT_FLAG_DAMAGE_STEP
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetHintTiming
(
TIMING_DAMAGE_STEP
)
e1
:
SetCondition
(
c25435080
.
condition
)
e1
:
SetCost
(
c25435080
.
cost
)
e1
:
SetTarget
(
c25435080
.
target
)
e1
:
SetOperation
(
c25435080
.
activate
)
e1
:
SetLabel
(
0
)
c
:
RegisterEffect
(
e1
)
end
function
c25435080
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetCurrentPhase
()
~=
PHASE_DAMAGE
or
not
Duel
.
IsDamageCalculated
()
end
function
c25435080
.
cfilter
(
c
,
tp
)
return
c
:
IsSetCard
(
0x33
)
and
Duel
.
IsExistingTarget
(
c25435080
.
tfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
c
)
end
...
...
@@ -28,10 +32,9 @@ function c25435080.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chk
==
0
then
if
e
:
GetLabel
()
~=
1
then
return
false
end
e
:
SetLabel
(
0
)
return
Duel
.
IsExistingMatchingCard
(
c25435080
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
,
tp
)
return
Duel
.
CheckReleaseGroup
(
tp
,
c25435080
.
cfilter
,
1
,
nil
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RELEASE
)
local
rg
=
Duel
.
SelectMatchingCard
(
tp
,
c25435080
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
tp
)
local
rg
=
Duel
.
SelectReleaseGroup
(
tp
,
c25435080
.
cfilter
,
1
,
1
,
nil
,
tp
)
e
:
SetLabel
(
rg
:
GetFirst
():
GetAttack
())
Duel
.
Release
(
rg
,
REASON_COST
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FACEUP
)
...
...
script/c27383110.lua
View file @
e963a748
...
...
@@ -62,16 +62,16 @@ function c27383110.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
if
chk
==
0
then
return
e
:
GetHandler
():
IsLocation
(
LOCATION_GRAVE
)
and
e
:
GetHandler
():
IsAbleToRemove
()
end
Duel
.
Remove
(
e
:
GetHandler
(),
POS_FACEUP
,
REASON_COST
)
end
function
c27383110
.
thfilter
(
c
)
return
c
:
IsLocation
(
LOCATION_GRAVE
)
and
c
:
Is
AbleToHand
(
)
function
c27383110
.
thfilter
(
c
,
e
,
tp
)
return
c
:
IsLocation
(
LOCATION_GRAVE
)
and
c
:
Is
Controler
(
tp
)
and
c
:
IsAbleToHand
()
and
c
:
IsCanBeEffectTarget
(
e
)
end
function
c27383110
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
local
tc
=
e
:
GetLabelObject
():
GetLabelObject
()
local
mat
=
tc
:
GetMaterial
()
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
mat
:
IsContains
(
chkc
)
end
if
chk
==
0
then
return
mat
:
IsExists
(
c27383110
.
thfilter
,
1
,
nil
)
end
if
chkc
then
return
mat
:
IsContains
(
chkc
)
and
c27383110
.
thfilter
(
chkc
,
e
,
tp
)
end
if
chk
==
0
then
return
mat
:
IsExists
(
c27383110
.
thfilter
,
1
,
nil
,
e
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
g
=
mat
:
FilterSelect
(
tp
,
c27383110
.
thfilter
,
1
,
1
,
nil
)
local
g
=
mat
:
FilterSelect
(
tp
,
c27383110
.
thfilter
,
1
,
1
,
nil
,
e
,
tp
)
Duel
.
SetTargetCard
(
g
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
g
,
g
:
GetCount
(),
0
,
0
)
end
...
...
script/c28002611.lua
View file @
e963a748
...
...
@@ -15,7 +15,7 @@ function c28002611.filter(c)
end
function
c28002611
.
tg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c28002611
.
filter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOGRAVE
,
nil
,
1
,
tp
,
LOCATION_
GRAVE
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOGRAVE
,
nil
,
1
,
tp
,
LOCATION_
HAND
)
end
function
c28002611
.
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
...
...
script/c28577986.lua
View file @
e963a748
--
ˮ[`ӥ
--
水精鱗-オーケアビス
function
c28577986
.
initial_effect
(
c
)
--spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -18,12 +18,12 @@ function c28577986.cost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function
c28577986
.
cfilter
(
c
,
e
,
tp
)
local
lv
=
c
:
GetLevel
()
return
lv
>
0
and
c
:
IsSetCard
(
0x74
)
return
lv
>
0
and
c
:
Is
Faceup
()
and
c
:
Is
SetCard
(
0x74
)
and
Duel
.
IsExistingMatchingCard
(
c28577986
.
spfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
lv
,
e
,
tp
)
end
function
c28577986
.
spfilter
(
c
,
lv
,
e
,
tp
)
if
lv
>
4
then
lv
=
4
end
return
c
:
IsLevelBelow
(
lv
)
and
c
:
IsSetCard
(
0x74
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
,
POS_FACEUP
)
return
c
:
IsLevelBelow
(
lv
)
and
c
:
IsSetCard
(
0x74
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
function
c28577986
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsControler
(
tp
)
and
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
c28577986
.
cfilter
(
chkc
,
e
,
tp
)
end
...
...
script/c29353756.lua
View file @
e963a748
...
...
@@ -51,7 +51,7 @@ function c29353756.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function
c29353756
.
eqop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
if
not
c
:
IsRelateToEffect
(
e
)
or
c
:
IsFacedown
()
then
return
end
local
tc
=
Duel
.
GetFirstTarget
()
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
<=
0
or
tc
:
GetControler
()
~=
tp
or
tc
:
IsFacedown
()
or
not
tc
:
IsRelateToEffect
(
e
)
or
not
c
:
CheckUniqueOnField
(
tp
)
then
Duel
.
SendtoGrave
(
c
,
REASON_EFFECT
)
...
...
script/c3146695.lua
View file @
e963a748
...
...
@@ -18,23 +18,37 @@ function c3146695.regop(e,tp,eg,ep,ev,re,r,rp)
local
g
=
Duel
.
GetMatchingGroup
(
c3146695
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
nil
)
local
tc
=
g
:
GetFirst
()
while
tc
do
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetDescription
(
aux
.
Stringid
(
3146695
,
0
))
e1
:
SetCategory
(
CATEGORY_REMOVE
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_F
)
e1
:
SetCode
(
EVENT_BATTLED
)
e1
:
SetTarget
(
c3146695
.
target
)
e1
:
SetOperation
(
c3146695
.
operation
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_END
)
tc
:
RegisterEffect
(
e1
)
tc
:
RegisterFlagEffect
(
3146695
,
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_END
,
0
,
1
)
tc
=
g
:
GetNext
()
end
g
:
KeepAlive
()
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetDescription
(
aux
.
Stringid
(
3146695
,
0
))
e1
:
SetCategory
(
CATEGORY_REMOVE
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_F
)
e1
:
SetCode
(
EVENT_BATTLED
)
e1
:
SetTarget
(
c3146695
.
target
)
e1
:
SetOperation
(
c3146695
.
operation
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
e1
:
SetLabelObject
(
g
)
Duel
.
RegisterEffect
(
e1
,
tp
)
local
e2
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e2
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e2
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
e2
:
SetCountLimit
(
1
)
e2
:
SetLabelObject
(
g
)
e2
:
SetOperation
(
c3146695
.
reset
)
Duel
.
RegisterEffect
(
e2
,
tp
)
end
function
c3146695
.
filter
(
c
,
g
)
return
c
:
GetFlagEffect
(
3146695
)
>
0
and
g
:
IsContains
(
c
)
end
function
c3146695
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetAttackTarget
()
~=
nil
end
local
a
=
Duel
.
GetAttacker
()
local
d
=
Duel
.
GetAttackTarget
()
local
g
=
Group
.
FromCards
(
a
,
d
)
if
chk
==
0
then
return
d
and
g
:
IsExists
(
c3146695
.
filter
,
1
,
nil
,
e
:
GetLabelObject
())
end
local
rg
=
g
:
Filter
(
Card
.
IsRelateToBattle
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
rg
,
rg
:
GetCount
(),
0
,
0
)
end
...
...
@@ -45,3 +59,6 @@ function c3146695.operation(e,tp,eg,ep,ev,re,r,rp)
local
rg
=
g
:
Filter
(
Card
.
IsRelateToBattle
,
nil
)
Duel
.
Remove
(
rg
,
POS_FACEUP
,
REASON_EFFECT
)
end
function
c3146695
.
reset
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
e
:
GetLabelObject
():
DeleteGroup
()
end
script/c33302407.lua
View file @
e963a748
...
...
@@ -22,7 +22,7 @@ function c33302407.discon(e,tp,eg,ep,ev,re,r,rp)
return
tp
==
Duel
.
GetTurnPlayer
()
and
not
Duel
.
CheckAttackActivity
(
tp
)
end
function
c33302407
.
filter
(
c
)
return
c
:
Is
SetCard
(
0x25
)
and
c
:
IsType
(
TYPE_MONSTER
)
return
c
:
Is
Faceup
()
and
c
:
IsSetCard
(
0x25
)
end
function
c33302407
.
distg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
ct
=
Duel
.
GetMatchingGroupCount
(
c33302407
.
filter
,
tp
,
LOCATION_MZONE
,
0
,
nil
)
...
...
script/c33725002.lua
View file @
e963a748
...
...
@@ -61,7 +61,7 @@ function c33725002.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function
c33725002
.
eqop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
if
not
c
:
IsRelateToEffect
(
e
)
or
c
:
IsFacedown
()
then
return
end
local
tc
=
Duel
.
GetFirstTarget
()
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
<=
0
or
tc
:
GetControler
()
~=
tp
or
tc
:
IsFacedown
()
or
not
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
SendtoGrave
(
c
,
REASON_EFFECT
)
...
...
script/c34109611.lua
View file @
e963a748
...
...
@@ -25,6 +25,7 @@ function c34109611.operation(e,tp,eg,ep,ev,re,r,rp)
while
tc
do
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
)
e1
:
SetValue
(
600
)
...
...
script/c35809262.lua
View file @
e963a748
...
...
@@ -32,8 +32,8 @@ function c35809262.damcon(e,tp,eg,ep,ev,re,r,rp)
end
function
c35809262
.
damtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
local
c
=
e
:
GetHandler
()
local
bc
=
c
:
GetBattleTarget
(
)
local
bc
=
e
:
GetHandler
():
GetBattleTarget
()
Duel
.
SetTargetCard
(
bc
)
local
dam
=
bc
:
GetAttack
()
if
dam
<
0
then
dam
=
0
end
Duel
.
SetTargetPlayer
(
1
-
tp
)
...
...
@@ -41,6 +41,11 @@ function c35809262.damtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DAMAGE
,
nil
,
0
,
1
-
tp
,
dam
)
end
function
c35809262
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
p
,
d
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
,
CHAININFO_TARGET_PARAM
)
Duel
.
Damage
(
p
,
d
,
REASON_EFFECT
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
then
local
p
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
)
local
dam
=
tc
:
GetAttack
()
if
dam
<
0
then
dam
=
0
end
Duel
.
Damage
(
p
,
dam
,
REASON_EFFECT
)
end
end
script/c37195861.lua
View file @
e963a748
...
...
@@ -18,10 +18,10 @@ function c37195861.con(e,tp,eg,ep,ev,re,r,rp)
return
Duel
.
GetTurnPlayer
()
==
tp
end
function
c37195861
.
filter
(
c
)
return
c
:
IsSetCard
(
0x8
)
and
c
:
IsAbleToHand
()
return
c
:
IsSetCard
(
0x8
)
and
c
:
IsAbleToHand
()
and
(
c
:
IsLocation
(
LOCATION_GRAVE
)
or
c
:
IsFaceup
())
end
function
c37195861
.
tg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
0x14
)
and
chkc
:
GetControler
()
==
tp
and
c37195861
.
filter
(
chkc
)
end
if
chkc
then
return
chkc
:
IsLocation
(
0x14
)
and
chkc
:
IsControler
(
tp
)
and
c37195861
.
filter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c37195861
.
filter
,
tp
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c37195861
.
filter
,
tp
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
)
...
...
script/c42671151.lua
View file @
e963a748
...
...
@@ -4,19 +4,18 @@ function c42671151.initial_effect(c)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_RECOVER
+
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e1
:
SetCode
(
EVENT_DAMAGE
)
e1
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e1
:
SetCode
(
EVENT_BATTLE_DAMAGE
)
e1
:
SetCondition
(
c42671151
.
condition
)
e1
:
SetTarget
(
c42671151
.
target
)
e1
:
SetOperation
(
c42671151
.
activate
)
c
:
RegisterEffect
(
e1
)
end
function
c42671151
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
bit
.
band
(
r
,
REASON_BATTLE
)
~=
0
and
Duel
.
GetFieldGroupCount
(
tp
,
LOCATION_MZONE
,
0
)
==
0
return
ep
==
tp
and
Duel
.
GetFieldGroupCount
(
tp
,
LOCATION_MZONE
,
0
)
==
0
end
function
c42671151
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
42671152
,
0
,
0x4011
,
0
,
0
,
1
,
RACE_FIEND
,
ATTRIBUTE_DARK
)
end
and
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
42671152
,
0
,
0x4011
,
ev
,
ev
,
1
,
RACE_FIEND
,
ATTRIBUTE_DARK
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_RECOVER
,
nil
,
0
,
tp
,
ev
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOKEN
,
nil
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
0
,
0
)
...
...
@@ -24,9 +23,9 @@ end
function
c42671151
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
rec
=
Duel
.
Recover
(
tp
,
ev
,
REASON_EFFECT
)
if
rec
~=
ev
or
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<=
0
or
not
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
42671152
,
0
,
0x4011
,
0
,
0
,
1
,
RACE_FIEND
,
ATTRIBUTE_DARK
)
then
return
end
or
not
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
42671152
,
0
,
0x4011
,
ev
,
ev
,
1
,
RACE_FIEND
,
ATTRIBUTE_DARK
)
then
return
end
local
token
=
Duel
.
CreateToken
(
tp
,
42671152
)
Duel
.
SpecialSummon
(
token
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
Duel
.
SpecialSummon
Step
(
token
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_SET_ATTACK
)
...
...
@@ -36,4 +35,5 @@ function c42671151.activate(e,tp,eg,ep,ev,re,r,rp)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EFFECT_SET_DEFENCE
)
token
:
RegisterEffect
(
e2
,
true
)
Duel
.
SpecialSummonComplete
()
end
script/c43841694.lua
View file @
e963a748
...
...
@@ -19,7 +19,7 @@ function c43841694.filter(c,e,tp)
return
c
:
IsType
(
TYPE_XYZ
)
and
c
:
IsRace
(
RACE_SPELLCASTER
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
function
c43841694
.
filter2
(
c
)
return
c
:
IsSetCard
(
0x106e
)
and
c
:
IsType
(
TYPE_SPELL
)
return
c
:
Is
Faceup
()
and
c
:
Is
SetCard
(
0x106e
)
and
c
:
IsType
(
TYPE_SPELL
)
end
function
c43841694
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
false
end
...
...
script/c45082499.lua
View file @
e963a748
...
...
@@ -45,6 +45,7 @@ end
function
c45082499
.
eqop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
if
c
:
IsLocation
(
LOCATION_MZONE
)
and
c
:
IsFacedown
()
then
return
end
local
tc
=
Duel
.
GetFirstTarget
()
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
<=
0
or
tc
:
GetControler
()
~=
tp
or
tc
:
IsFacedown
()
or
not
tc
:
IsRelateToEffect
(
e
)
or
not
c
:
CheckUniqueOnField
(
tp
)
then
Duel
.
SendtoGrave
(
c
,
REASON_EFFECT
)
...
...
script/c46710683.lua
View file @
e963a748
...
...
@@ -10,8 +10,7 @@ function c46710683.initial_effect(c)
c
:
RegisterEffect
(
e1
)
end
function
c46710683
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
bit
.
band
(
r
,
REASON_DESTROY
)
>
0
and
bit
.
band
(
e
:
GetHandler
():
GetPreviousLocation
(),
LOCATION_ONFIELD
)
>
0
return
e
:
GetHandler
():
IsPreviousLocation
(
LOCATION_ONFIELD
)
and
e
:
GetHandler
():
IsReason
(
REASON_DESTROY
)
end
function
c46710683
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
...
...
@@ -22,11 +21,11 @@ function c46710683.operation(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetValue
(
c46710683
.
damval
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
c46710683
.
available
=
true
Duel
.
RegisterFlagEffect
(
tp
,
46710683
,
RESET_PHASE
+
PHASE_END
,
0
,
1
)
end
c46710683
.
available
=
false
function
c46710683
.
damval
(
e
,
re
,
val
,
r
,
rp
,
rc
)
if
not
c46710683
.
available
or
bit
.
band
(
r
,
REASON_BATTLE
)
==
0
then
return
val
end
c46710683
.
available
=
false
local
tp
=
e
:
GetHandlerPlayer
()
if
Duel
.
GetFlagEffect
(
tp
,
46710683
)
==
0
or
bit
.
band
(
r
,
REASON_BATTLE
)
==
0
then
return
val
end
Duel
.
ResetFlagEffect
(
tp
,
46710683
)
return
0
end
script/c48928529.lua
View file @
e963a748
...
...
@@ -23,12 +23,14 @@ function c48928529.operation(e,tp,eg,ep,ev,re,r,rp,chk)
while
tc
do
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_END
,
2
)
e1
:
SetValue
(
1
)
tc
:
RegisterEffect
(
e1
)
local
e2
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e2
:
SetType
(
EFFECT_TYPE_SINGLE
)
e2
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e2
:
SetCode
(
EFFECT_PIERCE
)
e2
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_END
,
2
)
tc
:
RegisterEffect
(
e2
)
...
...
script/c53670497.lua
View file @
e963a748
...
...
@@ -34,7 +34,7 @@ function c53670497.filter1(c)
return
c
:
IsSetCard
(
0x69
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsAbleToGrave
()
end
function
c53670497
.
filter2
(
c
)
return
c
:
IsSetCard
(
0x69
)
and
c
:
IsType
(
TYPE_MONSTER
)
return
c
:
Is
Faceup
()
and
c
:
Is
SetCard
(
0x69
)
and
c
:
IsType
(
TYPE_MONSTER
)
end
function
c53670497
.
target1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
...
...
script/c53839837.lua
View file @
e963a748
...
...
@@ -29,11 +29,17 @@ end
function
c53839837
.
spr
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
bit
.
band
(
r
,
0x41
)
~=
0x41
or
rp
==
tp
or
c
:
GetPreviousControler
()
~=
tp
then
return
end
c
:
RegisterFlagEffect
(
53839837
,
RESET_EVENT
+
0x1fe0000
,
0
,
0
)
if
Duel
.
GetTurnPlayer
()
==
tp
and
Duel
.
GetCurrentPhase
()
==
PHASE_STANDBY
then
e
:
SetLabel
(
Duel
.
GetTurnCount
())
c
:
RegisterFlagEffect
(
53839837
,
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_STANDBY
+
RESET_SELF_TURN
,
0
,
2
)
else
e
:
SetLabel
(
0
)
c
:
RegisterFlagEffect
(
53839837
,
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_STANDBY
+
RESET_SELF_TURN
,
0
,
1
)
end
end
function
c53839837
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
return
c
:
GetTurnID
()
~=
Duel
.
GetTurnCount
()
and
tp
==
Duel
.
GetTurnPlayer
()
and
c
:
GetFlagEffect
(
53839837
)
>
0
return
e
:
GetLabelObject
():
GetLabel
()
~=
Duel
.
GetTurnCount
()
and
tp
==
Duel
.
GetTurnPlayer
()
and
c
:
GetFlagEffect
(
53839837
)
>
0
end
function
c53839837
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
...
...
@@ -44,7 +50,7 @@ end
function
c53839837
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
c
:
IsRelateToEffect
(
e
)
then
Duel
.
SpecialSummon
(
c
,
1
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
c53839837
.
tgtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
...
...
script/c56511382.lua
View file @
e963a748
...
...
@@ -14,7 +14,7 @@ function c56511382.initial_effect(c)
c
:
RegisterEffect
(
e1
)
end
function
c56511382
.
cfilter
(
c
)
return
c
:
IsSetCard
(
0x2
)
and
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
and
c
:
IsAbleToGraveAsCost
()
return
c
:
Is
Faceup
()
and
c
:
Is
SetCard
(
0x2
)
and
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
and
c
:
IsAbleToGraveAsCost
()
end
function
c56511382
.
descost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c56511382
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
...
...
script/c60992364.lua
View file @
e963a748
...
...
@@ -72,7 +72,7 @@ function c60992364.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function
c60992364
.
eqop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
if
not
c
:
IsRelateToEffect
(
e
)
or
c
:
IsFacedown
()
then
return
end
local
tc
=
Duel
.
GetFirstTarget
()
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
<=
0
or
tc
:
GetControler
()
~=
tp
or
tc
:
IsFacedown
()
or
not
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
SendtoGrave
(
c
,
REASON_EFFECT
)
...
...
script/c6330307.lua
View file @
e963a748
...
...
@@ -40,6 +40,7 @@ end
function
c6330307
.
eqop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
if
c
:
IsLocation
(
LOCATION_MZONE
)
and
c
:
IsFacedown
()
then
return
end
local
tc
=
Duel
.
GetFirstTarget
()
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
<=
0
or
tc
:
GetControler
()
~=
tp
or
tc
:
IsFacedown
()
or
not
tc
:
IsRelateToEffect
(
e
)
or
not
c
:
CheckUniqueOnField
(
tp
)
then
Duel
.
SendtoGrave
(
c
,
REASON_EFFECT
)
...
...
script/c70271583.lua
View file @
e963a748
...
...
@@ -27,7 +27,7 @@ function c70271583.initial_effect(c)
e4
:
SetType
(
EFFECT_TYPE_TRIGGER_F
+
EFFECT_TYPE_FIELD
)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCategory
(
CATEGORY_ATKCHANGE
+
CATEGORY_DEFCHANGE
)
e4
:
SetCode
(
EVENT_DAMAGE
)
e4
:
SetCode
(
EVENT_
BATTLE_
DAMAGE
)
e4
:
SetCondition
(
c70271583
.
atkcon
)
e4
:
SetOperation
(
c70271583
.
atkop
)
c
:
RegisterEffect
(
e4
)
...
...
@@ -49,7 +49,7 @@ function c70271583.posop(e,tp,eg,ep,ev,re,r,rp)
end
end
function
c70271583
.
atkcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
ep
==
tp
and
bit
.
band
(
r
,
REASON_BATTLE
)
~=
0
and
(
e
:
GetHandler
()
==
Duel
.
GetAttacker
()
or
e
:
GetHandler
()
==
Duel
.
GetAttackTarget
())
return
ep
==
tp
and
(
e
:
GetHandler
()
==
Duel
.
GetAttacker
()
or
e
:
GetHandler
()
==
Duel
.
GetAttackTarget
())
end
function
c70271583
.
filter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x11
)
...
...
@@ -61,6 +61,7 @@ function c70271583.atkop(e,tp,eg,ep,ev,re,r,rp)
while
tc
do
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_END
)
e1
:
SetValue
(
800
)
...
...
script/c76202610.lua
View file @
e963a748
--ダークロン
function
c76202610
.
initial_effect
(
c
)
--
special summon
--
level,attribute
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
76202610
,
0
))
e1
:
SetType
(
EFFECT_TYPE_TRIGGER_O
+
EFFECT_TYPE_SINGLE
)
...
...
@@ -14,12 +14,14 @@ function c76202610.operation(e,tp,eg,ep,ev,re,r,rp)
while
tc
do
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetCode
(
EFFECT_UPDATE_LEVEL
)
e1
:
SetValue
(
1
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_END
)
tc
:
RegisterEffect
(
e1
)
local
e2
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e2
:
SetType
(
EFFECT_TYPE_SINGLE
)
e2
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e2
:
SetCode
(
EFFECT_CHANGE_ATTRIBUTE
)
e2
:
SetValue
(
ATTRIBUTE_DARK
)
e2
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_END
)
...
...
script/c79766336.lua
View file @
e963a748
...
...
@@ -18,7 +18,7 @@ function c79766336.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if
chk
==
0
then
return
Duel
.
CheckLPCost
(
tp
,
1000
)
end
Duel
.
PayLPCost
(
tp
,
1000
)
end
function
c79766336
.
filter
(
c
,
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c79766336
.
filter
(
c
)
return
c
:
GetType
()
==
0x4
and
not
c
:
IsCode
(
79766336
)
and
c
:
IsAbleToRemove
()
and
c
:
CheckActivateEffect
(
false
,
true
,
false
)
~=
nil
end
function
c79766336
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
...
...
script/c81471108.lua
View file @
e963a748
...
...
@@ -42,6 +42,7 @@ end
function
c81471108
.
eqop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
if
c
:
IsLocation
(
LOCATION_MZONE
)
and
c
:
IsFacedown
()
then
return
end
local
tc
=
Duel
.
GetFirstTarget
()
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
<=
0
or
tc
:
GetControler
()
~=
tp
or
tc
:
IsFacedown
()
or
not
tc
:
IsRelateToEffect
(
e
)
or
not
c
:
CheckUniqueOnField
(
tp
)
then
Duel
.
SendtoGrave
(
c
,
REASON_EFFECT
)
...
...
script/c83500096.lua
View file @
e963a748
...
...
@@ -14,7 +14,7 @@ function c83500096.initial_effect(c)
c
:
RegisterEffect
(
e1
)
end
function
c83500096
.
cfilter
(
c
)
return
c
:
IsSetCard
(
0x2
)
and
c
:
IsAttribute
(
ATTRIBUTE_WATER
)
and
c
:
IsAbleToGraveAsCost
()
return
c
:
Is
Faceup
()
and
c
:
Is
SetCard
(
0x2
)
and
c
:
IsAttribute
(
ATTRIBUTE_WATER
)
and
c
:
IsAbleToGraveAsCost
()
end
function
c83500096
.
drcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c83500096
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
...
...
script/c88241506.lua
View file @
e963a748
...
...
@@ -53,7 +53,8 @@ function c88241506.spcon(e,tp,eg,ep,ev,re,r,rp)
return
eg
:
IsContains
(
e
:
GetHandler
())
end
function
c88241506
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingMatchingCard
(
c88241506
.
spfilter
,
tp
,
LOCATION_HAND
+
LOCATION_DECK
+
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
,
tp
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_HAND
+
LOCATION_DECK
+
LOCATION_GRAVE
)
end
function
c88241506
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
script/c88301833.lua
View file @
e963a748
...
...
@@ -22,16 +22,16 @@ end
function
c88301833
.
thcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
eg
:
GetCount
()
==
1
and
eg
:
GetFirst
():
GetSummonType
()
==
SUMMON_TYPE_RITUAL
end
function
c88301833
.
thfilter
(
c
,
tp
)
return
c
:
IsLocation
(
LOCATION_GRAVE
)
and
c
:
IsControler
(
tp
)
and
c
:
IsAbleToHand
()
function
c88301833
.
thfilter
(
c
,
e
,
tp
)
return
c
:
IsLocation
(
LOCATION_GRAVE
)
and
c
:
IsControler
(
tp
)
and
c
:
IsAbleToHand
()
and
c
:
IsCanBeEffectTarget
(
e
)
end
function
c88301833
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
local
tc
=
eg
:
GetFirst
()
local
mat
=
tc
:
GetMaterial
()
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
mat
:
IsContains
(
chkc
)
end
if
chk
==
0
then
return
mat
:
IsExists
(
c88301833
.
thfilter
,
1
,
nil
,
tp
)
end
if
chkc
then
return
mat
:
IsContains
(
chkc
)
and
c88301833
.
thfilter
(
chkc
,
e
,
tp
)
end
if
chk
==
0
then
return
mat
:
IsExists
(
c88301833
.
thfilter
,
1
,
nil
,
e
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
g
=
mat
:
FilterSelect
(
tp
,
c88301833
.
thfilter
,
1
,
1
,
nil
,
tp
)
local
g
=
mat
:
FilterSelect
(
tp
,
c88301833
.
thfilter
,
1
,
1
,
nil
,
e
,
tp
)
Duel
.
SetTargetCard
(
g
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
g
,
g
:
GetCount
(),
0
,
0
)
end
...
...
script/c89547299.lua
View file @
e963a748
...
...
@@ -28,6 +28,7 @@ function c89547299.atkop(e,tp,eg,ep,ev,re,r,rp)
while
tc
do
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetValue
(
500
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_END
)
...
...
script/c96148285.lua
View file @
e963a748
...
...
@@ -4,13 +4,13 @@ function c96148285.initial_effect(c)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e1
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e1
:
SetCode
(
EVENT_S
PS
UMMON_SUCCESS
)
e1
:
SetCondition
(
c96148285
.
condition
)
e1
:
SetOperation
(
c96148285
.
activate
)
c
:
RegisterEffect
(
e1
)
end
function
c96148285
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
p
~=
tp
return
e
g
:
IsExists
(
Card
.
IsControler
,
1
,
nil
,
1
-
tp
)
end
function
c96148285
.
filter
(
c
,
e
,
tp
)
return
c
:
IsLevelBelow
(
4
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
...
...
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