Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro-core
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-core
Commits
b90b6fad
Commit
b90b6fad
authored
Jun 25, 2018
by
mercury233
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
https://github.com/Fluorohydride/ygopro-core
parents
bdcf92c6
eed4383b
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
13 additions
and
6 deletions
+13
-6
field.cpp
field.cpp
+2
-2
operations.cpp
operations.cpp
+8
-0
processor.cpp
processor.cpp
+3
-4
No files found.
field.cpp
View file @
b90b6fad
...
...
@@ -1108,8 +1108,6 @@ void field::add_effect(effect* peffect, uint8 owner_player) {
}
else
{
if
(
peffect
->
type
&
EFFECT_TYPE_IGNITION
)
it
=
effects
.
ignition_effect
.
emplace
(
peffect
->
code
,
peffect
);
else
if
(
peffect
->
type
&
EFFECT_TYPE_ACTIVATE
)
it
=
effects
.
activate_effect
.
emplace
(
peffect
->
code
,
peffect
);
else
if
(
peffect
->
type
&
EFFECT_TYPE_TRIGGER_O
&&
peffect
->
type
&
EFFECT_TYPE_FIELD
)
it
=
effects
.
trigger_o_effect
.
emplace
(
peffect
->
code
,
peffect
);
else
if
(
peffect
->
type
&
EFFECT_TYPE_TRIGGER_F
&&
peffect
->
type
&
EFFECT_TYPE_FIELD
)
...
...
@@ -1118,6 +1116,8 @@ void field::add_effect(effect* peffect, uint8 owner_player) {
it
=
effects
.
quick_o_effect
.
emplace
(
peffect
->
code
,
peffect
);
else
if
(
peffect
->
type
&
EFFECT_TYPE_QUICK_F
)
it
=
effects
.
quick_f_effect
.
emplace
(
peffect
->
code
,
peffect
);
else
if
(
peffect
->
type
&
EFFECT_TYPE_ACTIVATE
)
it
=
effects
.
activate_effect
.
emplace
(
peffect
->
code
,
peffect
);
else
if
(
peffect
->
type
&
EFFECT_TYPE_CONTINUOUS
)
it
=
effects
.
continuous_effect
.
emplace
(
peffect
->
code
,
peffect
);
}
...
...
operations.cpp
View file @
b90b6fad
...
...
@@ -4185,6 +4185,14 @@ int32 field::move_to_field(uint16 step, card* target, uint32 enable, uint32 ret,
}
if
(
ct
<=
0
)
return
TRUE
;
if
((
zone
&
zone
-
1
)
==
0
)
{
for
(
uint8
seq
=
0
;
seq
<
8
;
seq
++
)
{
if
((
1
<<
seq
)
&
zone
)
{
returns
.
bvalue
[
2
]
=
seq
;
return
FALSE
;
}
}
}
if
(
move_player
==
playerid
)
{
if
(
location
==
LOCATION_SZONE
)
flag
=
((
flag
&
0xff
)
<<
8
)
|
0xffff00ff
;
...
...
processor.cpp
View file @
b90b6fad
...
...
@@ -4687,9 +4687,6 @@ int32 field::solve_chain(uint16 step, uint32 chainend_arg1, uint32 chainend_arg2
}
case
1
:
{
effect
*
peffect
=
cait
->
triggering_effect
;
int32
activate
=
(
peffect
->
type
&
EFFECT_TYPE_ACTIVATE
);
if
(
activate
&&
(
cait
->
flag
&
CHAIN_ACTIVATING
))
peffect
->
type
&=
~
EFFECT_TYPE_ACTIVATE
;
if
(
cait
->
flag
&
CHAIN_DISABLE_ACTIVATE
&&
is_chain_negatable
(
cait
->
chain_count
))
{
remove_oath_effect
(
peffect
);
if
(
peffect
->
is_flag
(
EFFECT_FLAG_COUNT_LIMIT
)
&&
(
peffect
->
count_code
&
EFFECT_COUNT_CODE_OATH
))
{
...
...
@@ -4707,7 +4704,7 @@ int32 field::solve_chain(uint16 step, uint32 chainend_arg1, uint32 chainend_arg2
break_effect
();
core
.
chain_solving
=
TRUE
;
card
*
pcard
=
peffect
->
get_handler
();
if
(
activate
&&
pcard
->
is_has_relation
(
*
cait
))
{
if
(
(
peffect
->
type
&
EFFECT_TYPE_ACTIVATE
)
&&
pcard
->
is_has_relation
(
*
cait
))
{
pcard
->
set_status
(
STATUS_ACTIVATED
,
TRUE
);
pcard
->
enable_field_effect
(
true
);
if
(
core
.
duel_rule
<=
2
)
{
...
...
@@ -4828,6 +4825,8 @@ int32 field::solve_chain(uint16 step, uint32 chainend_arg1, uint32 chainend_arg2
case
10
:
{
effect
*
peffect
=
cait
->
triggering_effect
;
card
*
pcard
=
peffect
->
get_handler
();
if
((
peffect
->
type
&
EFFECT_TYPE_ACTIVATE
)
&&
(
cait
->
flag
&
CHAIN_ACTIVATING
))
peffect
->
type
&=
~
EFFECT_TYPE_ACTIVATE
;
if
((
cait
->
flag
&
CHAIN_HAND_EFFECT
)
&&
!
pcard
->
is_position
(
POS_FACEUP
)
&&
(
pcard
->
current
.
location
==
LOCATION_HAND
))
shuffle
(
pcard
->
current
.
controler
,
LOCATION_HAND
);
if
(
cait
->
target_cards
&&
cait
->
target_cards
->
container
.
size
())
{
...
...
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