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
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
MyCard
ygopro
Commits
82c26632
Commit
82c26632
authored
Aug 17, 2015
by
VanillaSalt
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #1482 from DailyShana/patch-5
fix Lose 1 Turn and immune effect
parents
e6881797
a7d84db7
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
79 additions
and
30 deletions
+79
-30
ocgcore/card.cpp
ocgcore/card.cpp
+2
-2
ocgcore/card.h
ocgcore/card.h
+1
-0
ocgcore/operations.cpp
ocgcore/operations.cpp
+5
-4
ocgcore/processor.cpp
ocgcore/processor.cpp
+1
-0
script/c1995985.lua
script/c1995985.lua
+16
-1
script/c24348804.lua
script/c24348804.lua
+1
-16
script/c34088136.lua
script/c34088136.lua
+16
-1
script/c34830502.lua
script/c34830502.lua
+16
-1
script/c49441499.lua
script/c49441499.lua
+16
-1
script/c59380081.lua
script/c59380081.lua
+1
-1
script/c69296555.lua
script/c69296555.lua
+1
-1
script/c95220856.lua
script/c95220856.lua
+1
-1
script/constant.lua
script/constant.lua
+2
-1
No files found.
ocgcore/card.cpp
View file @
82c26632
...
@@ -1907,7 +1907,7 @@ int32 card::get_set_tribute_count() {
...
@@ -1907,7 +1907,7 @@ int32 card::get_set_tribute_count() {
return
min
+
(
max
<<
16
);
return
min
+
(
max
<<
16
);
}
}
int32
card
::
is_can_be_flip_summoned
(
uint8
playerid
)
{
int32
card
::
is_can_be_flip_summoned
(
uint8
playerid
)
{
if
(
is_status
(
STATUS_SUMMON_TURN
)
||
is_status
(
STATUS_FLIP_SUMMON_TURN
)
||
is_status
(
STATUS_FORM_CHANGED
))
if
(
is_status
(
STATUS_SUMMON_TURN
)
||
is_status
(
STATUS_FLIP_SUMMON_TURN
)
||
is_status
(
STATUS_
SPSUMMON_TURN
)
||
is_status
(
STATUS_
FORM_CHANGED
))
return
FALSE
;
return
FALSE
;
if
(
announce_count
>
0
)
if
(
announce_count
>
0
)
return
FALSE
;
return
FALSE
;
...
@@ -2363,7 +2363,7 @@ int32 card::is_capable_attack_announce(uint8 playerid) {
...
@@ -2363,7 +2363,7 @@ int32 card::is_capable_attack_announce(uint8 playerid) {
return
TRUE
;
return
TRUE
;
}
}
int32
card
::
is_capable_change_position
(
uint8
playerid
)
{
int32
card
::
is_capable_change_position
(
uint8
playerid
)
{
if
(
is_status
(
STATUS_SUMMON_TURN
)
||
is_status
(
STATUS_FLIP_SUMMON_TURN
)
||
is_status
(
STATUS_FORM_CHANGED
))
if
(
is_status
(
STATUS_SUMMON_TURN
)
||
is_status
(
STATUS_FLIP_SUMMON_TURN
)
||
is_status
(
STATUS_
SPSUMMON_TURN
)
||
is_status
(
STATUS_
FORM_CHANGED
))
return
FALSE
;
return
FALSE
;
if
(
announce_count
>
0
)
if
(
announce_count
>
0
)
return
FALSE
;
return
FALSE
;
...
...
ocgcore/card.h
View file @
82c26632
...
@@ -406,6 +406,7 @@ public:
...
@@ -406,6 +406,7 @@ public:
#define STATUS_ACT_FROM_HAND 0x8000000
#define STATUS_ACT_FROM_HAND 0x8000000
#define STATUS_OPPO_BATTLE 0x10000000
#define STATUS_OPPO_BATTLE 0x10000000
#define STATUS_FLIP_SUMMON_TURN 0x20000000
#define STATUS_FLIP_SUMMON_TURN 0x20000000
#define STATUS_SPSUMMON_TURN 0x40000000
//Counter
//Counter
#define COUNTER_NEED_PERMIT 0x1000
#define COUNTER_NEED_PERMIT 0x1000
#define COUNTER_NEED_ENABLE 0x2000
#define COUNTER_NEED_ENABLE 0x2000
...
...
ocgcore/operations.cpp
View file @
82c26632
...
@@ -1549,10 +1549,10 @@ int32 field::summon(uint16 step, uint8 sumplayer, card * target, effect * proc,
...
@@ -1549,10 +1549,10 @@ int32 field::summon(uint16 step, uint8 sumplayer, card * target, effect * proc,
oeit
->
second
=
0
;
oeit
->
second
=
0
;
}
}
target
->
set_status
(
STATUS_SUMMONING
,
FALSE
);
target
->
set_status
(
STATUS_SUMMONING
,
FALSE
);
target
->
set_status
(
STATUS_SUMMON_TURN
,
TRUE
);
target
->
enable_field_effect
(
TRUE
);
target
->
enable_field_effect
(
TRUE
);
if
(
target
->
is_status
(
STATUS_DISABLED
))
if
(
target
->
is_status
(
STATUS_DISABLED
))
target
->
reset
(
RESET_DISABLE
,
RESET_EVENT
);
target
->
reset
(
RESET_DISABLE
,
RESET_EVENT
);
target
->
set_status
(
STATUS_SUMMON_TURN
,
TRUE
);
core
.
summoning_card
=
0
;
core
.
summoning_card
=
0
;
return
FALSE
;
return
FALSE
;
}
}
...
@@ -2221,10 +2221,10 @@ int32 field::special_summon_rule(uint16 step, uint8 sumplayer, card * target, ui
...
@@ -2221,10 +2221,10 @@ int32 field::special_summon_rule(uint16 step, uint8 sumplayer, card * target, ui
if
(
oeit
->
second
==
core
.
units
.
begin
()
->
peffect
)
if
(
oeit
->
second
==
core
.
units
.
begin
()
->
peffect
)
oeit
->
second
=
0
;
oeit
->
second
=
0
;
target
->
set_status
(
STATUS_SUMMONING
,
FALSE
);
target
->
set_status
(
STATUS_SUMMONING
,
FALSE
);
target
->
set_status
(
STATUS_PROC_COMPLETE
|
STATUS_SPSUMMON_TURN
,
TRUE
);
target
->
enable_field_effect
(
TRUE
);
target
->
enable_field_effect
(
TRUE
);
if
(
target
->
is_status
(
STATUS_DISABLED
))
if
(
target
->
is_status
(
STATUS_DISABLED
))
target
->
reset
(
RESET_DISABLE
,
RESET_EVENT
);
target
->
reset
(
RESET_DISABLE
,
RESET_EVENT
);
target
->
set_status
(
STATUS_PROC_COMPLETE
|
STATUS_SUMMON_TURN
,
TRUE
);
core
.
summoning_card
=
0
;
core
.
summoning_card
=
0
;
return
FALSE
;
return
FALSE
;
}
}
...
@@ -2377,10 +2377,10 @@ int32 field::special_summon_rule(uint16 step, uint8 sumplayer, card * target, ui
...
@@ -2377,10 +2377,10 @@ int32 field::special_summon_rule(uint16 step, uint8 sumplayer, card * target, ui
oeit
->
second
=
0
;
oeit
->
second
=
0
;
for
(
auto
cit
=
pgroup
->
container
.
begin
();
cit
!=
pgroup
->
container
.
end
();
++
cit
)
{
for
(
auto
cit
=
pgroup
->
container
.
begin
();
cit
!=
pgroup
->
container
.
end
();
++
cit
)
{
(
*
cit
)
->
set_status
(
STATUS_SUMMONING
,
FALSE
);
(
*
cit
)
->
set_status
(
STATUS_SUMMONING
,
FALSE
);
(
*
cit
)
->
set_status
(
STATUS_SPSUMMON_TURN
,
TRUE
);
(
*
cit
)
->
enable_field_effect
(
TRUE
);
(
*
cit
)
->
enable_field_effect
(
TRUE
);
if
((
*
cit
)
->
is_status
(
STATUS_DISABLED
))
if
((
*
cit
)
->
is_status
(
STATUS_DISABLED
))
(
*
cit
)
->
reset
(
RESET_DISABLE
,
RESET_EVENT
);
(
*
cit
)
->
reset
(
RESET_DISABLE
,
RESET_EVENT
);
(
*
cit
)
->
set_status
(
STATUS_SUMMON_TURN
,
TRUE
);
}
}
return
FALSE
;
return
FALSE
;
}
}
...
@@ -2535,7 +2535,7 @@ int32 field::special_summon(uint16 step, effect * reason_effect, uint8 reason_pl
...
@@ -2535,7 +2535,7 @@ int32 field::special_summon(uint16 step, effect * reason_effect, uint8 reason_pl
core
.
spsummon_once_map
[
1
][
*
cit
]
++
;
core
.
spsummon_once_map
[
1
][
*
cit
]
++
;
for
(
auto
cit
=
targets
->
container
.
begin
();
cit
!=
targets
->
container
.
end
();
++
cit
)
{
for
(
auto
cit
=
targets
->
container
.
begin
();
cit
!=
targets
->
container
.
end
();
++
cit
)
{
(
*
cit
)
->
set_status
(
STATUS_SPSUMMON_STEP
,
FALSE
);
(
*
cit
)
->
set_status
(
STATUS_SPSUMMON_STEP
,
FALSE
);
(
*
cit
)
->
set_status
(
STATUS_SUMMON_TURN
,
TRUE
);
(
*
cit
)
->
set_status
(
STATUS_S
PS
UMMON_TURN
,
TRUE
);
if
((
*
cit
)
->
is_position
(
POS_FACEUP
))
if
((
*
cit
)
->
is_position
(
POS_FACEUP
))
(
*
cit
)
->
enable_field_effect
(
TRUE
);
(
*
cit
)
->
enable_field_effect
(
TRUE
);
}
}
...
@@ -3656,6 +3656,7 @@ int32 field::move_to_field(uint16 step, card * target, uint32 enable, uint32 ret
...
@@ -3656,6 +3656,7 @@ int32 field::move_to_field(uint16 step, card * target, uint32 enable, uint32 ret
if
(
target
->
turnid
!=
infos
.
turn_id
)
{
if
(
target
->
turnid
!=
infos
.
turn_id
)
{
target
->
set_status
(
STATUS_SUMMON_TURN
,
FALSE
);
target
->
set_status
(
STATUS_SUMMON_TURN
,
FALSE
);
target
->
set_status
(
STATUS_FLIP_SUMMON_TURN
,
FALSE
);
target
->
set_status
(
STATUS_FLIP_SUMMON_TURN
,
FALSE
);
target
->
set_status
(
STATUS_SPSUMMON_TURN
,
FALSE
);
target
->
set_status
(
STATUS_SET_TURN
,
FALSE
);
target
->
set_status
(
STATUS_SET_TURN
,
FALSE
);
target
->
set_status
(
STATUS_FORM_CHANGED
,
FALSE
);
target
->
set_status
(
STATUS_FORM_CHANGED
,
FALSE
);
}
}
...
...
ocgcore/processor.cpp
View file @
82c26632
...
@@ -4016,6 +4016,7 @@ int32 field::process_turn(uint16 step, uint8 turn_player) {
...
@@ -4016,6 +4016,7 @@ int32 field::process_turn(uint16 step, uint8 turn_player) {
continue
;
continue
;
pcard
->
set_status
(
STATUS_SUMMON_TURN
,
FALSE
);
pcard
->
set_status
(
STATUS_SUMMON_TURN
,
FALSE
);
pcard
->
set_status
(
STATUS_FLIP_SUMMON_TURN
,
FALSE
);
pcard
->
set_status
(
STATUS_FLIP_SUMMON_TURN
,
FALSE
);
pcard
->
set_status
(
STATUS_SPSUMMON_TURN
,
FALSE
);
pcard
->
set_status
(
STATUS_SET_TURN
,
FALSE
);
pcard
->
set_status
(
STATUS_SET_TURN
,
FALSE
);
pcard
->
set_status
(
STATUS_FORM_CHANGED
,
FALSE
);
pcard
->
set_status
(
STATUS_FORM_CHANGED
,
FALSE
);
pcard
->
announce_count
=
0
;
pcard
->
announce_count
=
0
;
...
...
script/c1995985.lua
View file @
82c26632
...
@@ -19,6 +19,18 @@ function c1995985.initial_effect(c)
...
@@ -19,6 +19,18 @@ function c1995985.initial_effect(c)
e2
:
SetTarget
(
c1995985
.
sptg
)
e2
:
SetTarget
(
c1995985
.
sptg
)
e2
:
SetOperation
(
c1995985
.
spop
)
e2
:
SetOperation
(
c1995985
.
spop
)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
--reg
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e3
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e3
:
SetOperation
(
c1995985
.
regop
)
c
:
RegisterEffect
(
e3
)
local
e4
=
e3
:
Clone
()
e4
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
c
:
RegisterEffect
(
e4
)
local
e5
=
e3
:
Clone
()
e5
:
SetCode
(
EVENT_FLIP
)
c
:
RegisterEffect
(
e5
)
end
end
c1995985
.
lvupcount
=
1
c1995985
.
lvupcount
=
1
c1995985
.
lvup
=
{
74388798
}
c1995985
.
lvup
=
{
74388798
}
...
@@ -30,8 +42,11 @@ function c1995985.disop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -30,8 +42,11 @@ function c1995985.disop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
NegateEffect
(
ev
)
Duel
.
NegateEffect
(
ev
)
end
end
end
end
function
c1995985
.
regop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
e
:
GetHandler
():
RegisterFlagEffect
(
1995985
,
RESET_EVENT
+
0x1ec0000
+
RESET_PHASE
+
RESET_END
,
0
,
1
)
end
function
c1995985
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c1995985
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
tp
==
Duel
.
GetTurnPlayer
()
and
not
e
:
GetHandler
():
IsStatus
(
STATUS_SUMMON_TURN
)
return
tp
==
Duel
.
GetTurnPlayer
()
and
e
:
GetHandler
():
GetFlagEffect
(
1995985
)
==
0
end
end
function
c1995985
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c1995985
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToGraveAsCost
()
end
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToGraveAsCost
()
end
...
...
script/c24348804.lua
View file @
82c26632
...
@@ -27,21 +27,6 @@ function c24348804.initial_effect(c)
...
@@ -27,21 +27,6 @@ function c24348804.initial_effect(c)
e3
:
SetTargetRange
(
LOCATION_MZONE
,
LOCATION_MZONE
)
e3
:
SetTargetRange
(
LOCATION_MZONE
,
LOCATION_MZONE
)
e3
:
SetTarget
(
c24348804
.
distg
)
e3
:
SetTarget
(
c24348804
.
distg
)
c
:
RegisterEffect
(
e3
)
c
:
RegisterEffect
(
e3
)
if
not
c24348804
.
global_check
then
c24348804
.
global_check
=
true
local
ge1
=
Effect
.
CreateEffect
(
c
)
ge1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
ge1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
ge1
:
SetOperation
(
c24348804
.
checkop
)
Duel
.
RegisterEffect
(
ge1
,
0
)
end
end
function
c24348804
.
checkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
eg
:
GetFirst
()
while
tc
do
tc
:
RegisterFlagEffect
(
24348804
,
RESET_EVENT
+
0x1ec0000
+
RESET_PHASE
+
PHASE_END
,
0
,
1
)
tc
=
eg
:
GetNext
()
end
end
end
function
c24348804
.
cfilter
(
c
)
function
c24348804
.
cfilter
(
c
)
return
bit
.
band
(
c
:
GetSummonType
(),
SUMMON_TYPE_SPECIAL
)
==
SUMMON_TYPE_SPECIAL
return
bit
.
band
(
c
:
GetSummonType
(),
SUMMON_TYPE_SPECIAL
)
==
SUMMON_TYPE_SPECIAL
...
@@ -80,5 +65,5 @@ function c24348804.operation(e,tp,eg,ep,ev,re,r,rp)
...
@@ -80,5 +65,5 @@ function c24348804.operation(e,tp,eg,ep,ev,re,r,rp)
end
end
end
end
function
c24348804
.
distg
(
e
,
c
)
function
c24348804
.
distg
(
e
,
c
)
return
c
:
GetFlagEffect
(
24348804
)
~=
0
return
c
:
IsStatus
(
STATUS_SPSUMMON_TURN
)
and
bit
.
band
(
c
:
GetSummonType
(),
SUMMON_TYPE_SPECIAL
)
==
SUMMON_TYPE_SPECIAL
end
end
script/c34088136.lua
View file @
82c26632
...
@@ -21,6 +21,18 @@ function c34088136.initial_effect(c)
...
@@ -21,6 +21,18 @@ function c34088136.initial_effect(c)
e2
:
SetTarget
(
c34088136
.
sptg
)
e2
:
SetTarget
(
c34088136
.
sptg
)
e2
:
SetOperation
(
c34088136
.
spop
)
e2
:
SetOperation
(
c34088136
.
spop
)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
--reg
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e3
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e3
:
SetOperation
(
c34088136
.
regop
)
c
:
RegisterEffect
(
e3
)
local
e4
=
e3
:
Clone
()
e4
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
c
:
RegisterEffect
(
e4
)
local
e5
=
e3
:
Clone
()
e5
:
SetCode
(
EVENT_FLIP
)
c
:
RegisterEffect
(
e5
)
end
end
c34088136
.
lvupcount
=
2
c34088136
.
lvupcount
=
2
c34088136
.
lvup
=
{
49441499
,
34830502
}
c34088136
.
lvup
=
{
49441499
,
34830502
}
...
@@ -29,8 +41,11 @@ c34088136.lvdn={49441499}
...
@@ -29,8 +41,11 @@ c34088136.lvdn={49441499}
function
c34088136
.
con
(
e
)
function
c34088136
.
con
(
e
)
return
e
:
GetHandler
():
GetFlagEffect
(
34088136
)
~=
0
return
e
:
GetHandler
():
GetFlagEffect
(
34088136
)
~=
0
end
end
function
c34088136
.
regop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
e
:
GetHandler
():
RegisterFlagEffect
(
34088137
,
RESET_EVENT
+
0x1ec0000
+
RESET_PHASE
+
RESET_END
,
0
,
1
)
end
function
c34088136
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c34088136
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
tp
==
Duel
.
GetTurnPlayer
()
and
not
e
:
GetHandler
():
IsStatus
(
STATUS_SUMMON_TURN
)
return
tp
==
Duel
.
GetTurnPlayer
()
and
e
:
GetHandler
():
GetFlagEffect
(
34088137
)
==
0
end
end
function
c34088136
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c34088136
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToGraveAsCost
()
end
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToGraveAsCost
()
end
...
...
script/c34830502.lua
View file @
82c26632
...
@@ -21,6 +21,18 @@ function c34830502.initial_effect(c)
...
@@ -21,6 +21,18 @@ function c34830502.initial_effect(c)
e2
:
SetTarget
(
c34830502
.
sptg
)
e2
:
SetTarget
(
c34830502
.
sptg
)
e2
:
SetOperation
(
c34830502
.
spop
)
e2
:
SetOperation
(
c34830502
.
spop
)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
--reg
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e3
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e3
:
SetOperation
(
c34830502
.
regop
)
c
:
RegisterEffect
(
e3
)
local
e4
=
e3
:
Clone
()
e4
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
c
:
RegisterEffect
(
e4
)
local
e5
=
e3
:
Clone
()
e5
:
SetCode
(
EVENT_FLIP
)
c
:
RegisterEffect
(
e5
)
end
end
c34830502
.
lvupcount
=
2
c34830502
.
lvupcount
=
2
c34830502
.
lvup
=
{
34088136
,
19877898
}
c34830502
.
lvup
=
{
34088136
,
19877898
}
...
@@ -29,8 +41,11 @@ c34830502.lvdn={49441499,34088136}
...
@@ -29,8 +41,11 @@ c34830502.lvdn={49441499,34088136}
function
c34830502
.
con
(
e
)
function
c34830502
.
con
(
e
)
return
e
:
GetHandler
():
GetFlagEffect
(
34830502
)
~=
0
return
e
:
GetHandler
():
GetFlagEffect
(
34830502
)
~=
0
end
end
function
c34830502
.
regop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
e
:
GetHandler
():
RegisterFlagEffect
(
34830503
,
RESET_EVENT
+
0x1ec0000
+
RESET_PHASE
+
RESET_END
,
0
,
1
)
end
function
c34830502
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c34830502
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
tp
==
Duel
.
GetTurnPlayer
()
and
not
e
:
GetHandler
():
IsStatus
(
STATUS_SUMMON_TURN
)
return
tp
==
Duel
.
GetTurnPlayer
()
and
e
:
GetHandler
():
GetFlagEffect
(
34830503
)
==
0
end
end
function
c34830502
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c34830502
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToGraveAsCost
()
end
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToGraveAsCost
()
end
...
...
script/c49441499.lua
View file @
82c26632
...
@@ -20,14 +20,29 @@ function c49441499.initial_effect(c)
...
@@ -20,14 +20,29 @@ function c49441499.initial_effect(c)
e2
:
SetTarget
(
c49441499
.
sptg
)
e2
:
SetTarget
(
c49441499
.
sptg
)
e2
:
SetOperation
(
c49441499
.
spop
)
e2
:
SetOperation
(
c49441499
.
spop
)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
--reg
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e3
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e3
:
SetOperation
(
c49441499
.
regop
)
c
:
RegisterEffect
(
e3
)
local
e4
=
e3
:
Clone
()
e4
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
c
:
RegisterEffect
(
e4
)
local
e5
=
e3
:
Clone
()
e5
:
SetCode
(
EVENT_FLIP
)
c
:
RegisterEffect
(
e5
)
end
end
c49441499
.
lvupcount
=
1
c49441499
.
lvupcount
=
1
c49441499
.
lvup
=
{
34088136
}
c49441499
.
lvup
=
{
34088136
}
function
c49441499
.
efilter
(
e
,
te
)
function
c49441499
.
efilter
(
e
,
te
)
return
te
:
IsActiveType
(
TYPE_SPELL
)
return
te
:
IsActiveType
(
TYPE_SPELL
)
end
end
function
c49441499
.
regop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
e
:
GetHandler
():
RegisterFlagEffect
(
49441499
,
RESET_EVENT
+
0x1ec0000
+
RESET_PHASE
+
RESET_END
,
0
,
1
)
end
function
c49441499
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c49441499
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
tp
==
Duel
.
GetTurnPlayer
()
and
not
e
:
GetHandler
():
IsStatus
(
STATUS_SUMMON_TURN
)
return
tp
==
Duel
.
GetTurnPlayer
()
and
e
:
GetHandler
():
GetFlagEffect
(
49441499
)
==
0
end
end
function
c49441499
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c49441499
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToGraveAsCost
()
end
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToGraveAsCost
()
end
...
...
script/c59380081.lua
View file @
82c26632
...
@@ -10,5 +10,5 @@ function c59380081.initial_effect(c)
...
@@ -10,5 +10,5 @@ function c59380081.initial_effect(c)
c
:
RegisterEffect
(
e1
)
c
:
RegisterEffect
(
e1
)
end
end
function
c59380081
.
target
(
e
,
c
)
function
c59380081
.
target
(
e
,
c
)
return
c
:
IsStatus
(
STATUS_SUMMON_TURN
+
STATUS_FLIP_SUMMON_TURN
)
return
c
:
IsStatus
(
STATUS_SUMMON_TURN
+
STATUS_FLIP_SUMMON_TURN
+
STATUS_SPSUMMON_TURN
)
end
end
script/c69296555.lua
View file @
82c26632
...
@@ -24,5 +24,5 @@ function c69296555.target(e,tp,eg,ep,ev,re,r,rp,chk)
...
@@ -24,5 +24,5 @@ function c69296555.target(e,tp,eg,ep,ev,re,r,rp,chk)
e
:
GetHandler
():
SetHint
(
CHINT_RACE
,
rc
)
e
:
GetHandler
():
SetHint
(
CHINT_RACE
,
rc
)
end
end
function
c69296555
.
atktg
(
e
,
c
)
function
c69296555
.
atktg
(
e
,
c
)
return
c
:
IsStatus
(
STATUS_SUMMON_TURN
+
STATUS_FLIP_SUMMON_TURN
)
and
c
:
IsRace
(
e
:
GetLabel
())
return
c
:
IsStatus
(
STATUS_SUMMON_TURN
+
STATUS_FLIP_SUMMON_TURN
+
STATUS_SPSUMMON_TURN
)
and
c
:
IsRace
(
e
:
GetLabel
())
end
end
script/c95220856.lua
View file @
82c26632
...
@@ -15,5 +15,5 @@ function c95220856.initial_effect(c)
...
@@ -15,5 +15,5 @@ function c95220856.initial_effect(c)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
end
end
function
c95220856
.
target
(
e
,
c
)
function
c95220856
.
target
(
e
,
c
)
return
c
:
IsStatus
(
STATUS_SUMMON_TURN
+
STATUS_FLIP_SUMMON_TURN
)
return
c
:
IsStatus
(
STATUS_SUMMON_TURN
+
STATUS_FLIP_SUMMON_TURN
+
STATUS_SPSUMMON_TURN
)
end
end
script/constant.lua
View file @
82c26632
...
@@ -135,7 +135,7 @@ STATUS_SPSUMMON_STEP =0x0080 --效果特召處理中
...
@@ -135,7 +135,7 @@ STATUS_SPSUMMON_STEP =0x0080 --效果特召處理中
STATUS_FORM_CHANGED
=
0x0100
--改变过表示形式
STATUS_FORM_CHANGED
=
0x0100
--改变过表示形式
STATUS_SUMMONING
=
0x0200
--召唤中
STATUS_SUMMONING
=
0x0200
--召唤中
STATUS_EFFECT_ENABLED
=
0x0400
--效果有效
STATUS_EFFECT_ENABLED
=
0x0400
--效果有效
STATUS_SUMMON_TURN
=
0x0800
--在本回合召喚/SET
/特殊召喚
STATUS_SUMMON_TURN
=
0x0800
--在本回合召喚/SET
STATUS_DESTROY_CONFIRMED
=
0x1000
--破坏确定
STATUS_DESTROY_CONFIRMED
=
0x1000
--破坏确定
STATUS_LEAVE_CONFIRMED
=
0x2000
--連鎖處理完後送去墓地的魔法陷阱
STATUS_LEAVE_CONFIRMED
=
0x2000
--連鎖處理完後送去墓地的魔法陷阱
STATUS_BATTLE_DESTROYED
=
0x4000
--战斗破坏确定
STATUS_BATTLE_DESTROYED
=
0x4000
--战斗破坏确定
...
@@ -154,6 +154,7 @@ STATUS_IS_PUBLIC =0x4000000 --公开展示
...
@@ -154,6 +154,7 @@ STATUS_IS_PUBLIC =0x4000000 --公开展示
STATUS_ACT_FROM_HAND
=
0x8000000
--從手牌发动
STATUS_ACT_FROM_HAND
=
0x8000000
--從手牌发动
STATUS_OPPO_BATTLE
=
0x10000000
--和對手的怪兽戰鬥
STATUS_OPPO_BATTLE
=
0x10000000
--和對手的怪兽戰鬥
STATUS_FLIP_SUMMON_TURN
=
0x20000000
--在本回合反转召唤
STATUS_FLIP_SUMMON_TURN
=
0x20000000
--在本回合反转召唤
STATUS_SPSUMMON_TURN
=
0x40000000
--在本回合特殊召唤
--Assume
--Assume
ASSUME_CODE
=
1
ASSUME_CODE
=
1
ASSUME_TYPE
=
2
ASSUME_TYPE
=
2
...
...
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