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
cfb5ca07
Commit
cfb5ca07
authored
Dec 30, 2019
by
mercury233
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
https://github.com/Fluorohydride/ygopro-core
parents
5a917355
304b72b4
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
25 additions
and
6 deletions
+25
-6
operations.cpp
operations.cpp
+23
-4
processor.cpp
processor.cpp
+2
-2
No files found.
operations.cpp
View file @
cfb5ca07
...
@@ -1400,8 +1400,26 @@ int32 field::equip(uint16 step, uint8 equip_player, card * equip_card, card * ta
...
@@ -1400,8 +1400,26 @@ int32 field::equip(uint16 step, uint8 equip_player, card * equip_card, card * ta
returns
.
ivalue
[
0
]
=
FALSE
;
returns
.
ivalue
[
0
]
=
FALSE
;
if
(
!
equip_card
->
is_affect_by_effect
(
core
.
reason_effect
))
if
(
!
equip_card
->
is_affect_by_effect
(
core
.
reason_effect
))
return
TRUE
;
return
TRUE
;
if
(
equip_card
==
target
||
target
->
current
.
location
!=
LOCATION_MZONE
)
if
(
equip_card
==
target
)
return
TRUE
;
return
TRUE
;
bool
to_grave
=
false
;
if
(
target
->
current
.
location
!=
LOCATION_MZONE
||
(
target
->
current
.
position
&
POS_FACEDOWN
))
to_grave
=
true
;
if
(
equip_card
->
current
.
location
!=
LOCATION_SZONE
)
{
refresh_location_info_instant
();
if
(
get_useable_count
(
equip_card
,
equip_player
,
LOCATION_SZONE
,
equip_player
,
LOCATION_REASON_TOFIELD
)
<=
0
)
to_grave
=
true
;
}
if
(
chain
*
ch
=
get_chain
(
0
))
{
if
(
ch
->
target_cards
&&
ch
->
target_cards
->
has_card
(
target
)
&&
!
target
->
is_has_relation
(
*
ch
))
to_grave
=
true
;
}
if
(
to_grave
)
{
if
(
equip_card
->
current
.
location
!=
LOCATION_GRAVE
)
send_to
(
equip_card
,
0
,
REASON_RULE
,
PLAYER_NONE
,
PLAYER_NONE
,
LOCATION_GRAVE
,
0
,
POS_FACEUP
);
core
.
units
.
begin
()
->
step
=
2
;
return
FALSE
;
}
if
(
equip_card
->
equiping_target
)
{
if
(
equip_card
->
equiping_target
)
{
equip_card
->
cancel_card_target
(
equip_card
->
equiping_target
);
equip_card
->
cancel_card_target
(
equip_card
->
equiping_target
);
equip_card
->
unequip
();
equip_card
->
unequip
();
...
@@ -1413,9 +1431,6 @@ int32 field::equip(uint16 step, uint8 equip_player, card * equip_card, card * ta
...
@@ -1413,9 +1431,6 @@ int32 field::equip(uint16 step, uint8 equip_player, card * equip_card, card * ta
change_position
(
equip_card
,
0
,
equip_player
,
POS_FACEUP
,
0
);
change_position
(
equip_card
,
0
,
equip_player
,
POS_FACEUP
,
0
);
return
FALSE
;
return
FALSE
;
}
}
refresh_location_info_instant
();
if
(
get_useable_count
(
equip_card
,
equip_player
,
LOCATION_SZONE
,
equip_player
,
LOCATION_REASON_TOFIELD
)
<=
0
)
return
TRUE
;
equip_card
->
enable_field_effect
(
false
);
equip_card
->
enable_field_effect
(
false
);
move_to_field
(
equip_card
,
equip_player
,
equip_player
,
LOCATION_SZONE
,
(
up
||
equip_card
->
is_position
(
POS_FACEUP
))
?
POS_FACEUP
:
POS_FACEDOWN
,
FALSE
,
0
,
TRUE
);
move_to_field
(
equip_card
,
equip_player
,
equip_player
,
LOCATION_SZONE
,
(
up
||
equip_card
->
is_position
(
POS_FACEUP
))
?
POS_FACEUP
:
POS_FACEDOWN
,
FALSE
,
0
,
TRUE
);
return
FALSE
;
return
FALSE
;
...
@@ -1465,6 +1480,10 @@ int32 field::equip(uint16 step, uint8 equip_player, card * equip_card, card * ta
...
@@ -1465,6 +1480,10 @@ int32 field::equip(uint16 step, uint8 equip_player, card * equip_card, card * ta
returns
.
ivalue
[
0
]
=
TRUE
;
returns
.
ivalue
[
0
]
=
TRUE
;
return
TRUE
;
return
TRUE
;
}
}
case
3
:
{
returns
.
ivalue
[
0
]
=
FALSE
;
return
TRUE
;
}
}
}
return
TRUE
;
return
TRUE
;
}
}
...
...
processor.cpp
View file @
cfb5ca07
...
@@ -4367,8 +4367,8 @@ int32 field::solve_chain(uint16 step, uint32 chainend_arg1, uint32 chainend_arg2
...
@@ -4367,8 +4367,8 @@ int32 field::solve_chain(uint16 step, uint32 chainend_arg1, uint32 chainend_arg2
ptarget
->
release_relation
(
*
cait
);
ptarget
->
release_relation
(
*
cait
);
}
}
if
((
pcard
->
data
.
type
&
TYPE_EQUIP
)
&&
(
peffect
->
type
&
EFFECT_TYPE_ACTIVATE
)
if
((
pcard
->
data
.
type
&
TYPE_EQUIP
)
&&
(
peffect
->
type
&
EFFECT_TYPE_ACTIVATE
)
&&
!
pcard
->
equiping_target
&&
pcard
->
is_has_relation
(
*
cait
))
&&
!
pcard
->
equiping_target
&&
pcard
->
is_has_relation
(
*
cait
))
destroy
(
pcard
,
0
,
REASON_RULE
,
PLAYER_NON
E
);
pcard
->
set_status
(
STATUS_LEAVE_CONFIRMED
,
TRU
E
);
if
(
core
.
duel_rule
<=
2
)
{
if
(
core
.
duel_rule
<=
2
)
{
if
((
pcard
->
data
.
type
&
TYPE_FIELD
)
&&
(
peffect
->
type
&
EFFECT_TYPE_ACTIVATE
)
if
((
pcard
->
data
.
type
&
TYPE_FIELD
)
&&
(
peffect
->
type
&
EFFECT_TYPE_ACTIVATE
)
&&
!
pcard
->
is_status
(
STATUS_LEAVE_CONFIRMED
)
&&
pcard
->
is_has_relation
(
*
cait
))
{
&&
!
pcard
->
is_status
(
STATUS_LEAVE_CONFIRMED
)
&&
pcard
->
is_has_relation
(
*
cait
))
{
...
...
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