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
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-core
Commits
01fc03a6
Commit
01fc03a6
authored
Jul 22, 2018
by
mercury233
Committed by
nanahira
Jul 22, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix Duel.SSet (#173)
parent
684fb273
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
15 additions
and
7 deletions
+15
-7
field.h
field.h
+1
-0
operations.cpp
operations.cpp
+14
-7
No files found.
field.h
View file @
01fc03a6
...
...
@@ -227,6 +227,7 @@ struct processor {
card_set
discarded_set
;
card_set
destroy_canceled
;
card_set
delayed_enable_set
;
card_set
set_group_pre_set
;
card_set
set_group_set
;
effect_set_v
disfield_effects
;
effect_set_v
extram_effects
;
...
...
operations.cpp
View file @
01fc03a6
...
...
@@ -2370,6 +2370,7 @@ int32 field::sset_g(uint16 step, uint8 setplayer, uint8 toplayer, group* ptarget
returns
.
ivalue
[
0
]
=
0
;
return
TRUE
;
}
core
.
set_group_pre_set
.
clear
();
core
.
set_group_set
.
clear
();
core
.
set_group_used_zones
=
0
;
core
.
phase_action
=
TRUE
;
...
...
@@ -2407,8 +2408,8 @@ int32 field::sset_g(uint16 step, uint8 setplayer, uint8 toplayer, group* ptarget
card_set
*
set_cards
=
(
card_set
*
)
ptarget
;
card
*
target
=
*
set_cards
->
begin
();
uint32
seq
=
returns
.
bvalue
[
2
];
core
.
set_group_seq
[
core
.
set_group_set
.
size
()]
=
seq
;
core
.
set_group_set
.
insert
(
target
);
core
.
set_group_seq
[
core
.
set_group_
pre_
set
.
size
()]
=
seq
;
core
.
set_group_
pre_
set
.
insert
(
target
);
core
.
set_group_used_zones
|=
(
1
<<
seq
);
set_cards
->
erase
(
target
);
if
(
!
set_cards
->
empty
())
...
...
@@ -2418,7 +2419,7 @@ int32 field::sset_g(uint16 step, uint8 setplayer, uint8 toplayer, group* ptarget
return
FALSE
;
}
case
3
:
{
card_set
*
set_cards
=
&
core
.
set_group_set
;
card_set
*
set_cards
=
&
core
.
set_group_
pre_
set
;
card
*
target
=
*
set_cards
->
begin
();
target
->
enable_field_effect
(
false
);
uint32
zone
;
...
...
@@ -2437,7 +2438,7 @@ int32 field::sset_g(uint16 step, uint8 setplayer, uint8 toplayer, group* ptarget
return
FALSE
;
}
case
4
:
{
card_set
*
set_cards
=
&
core
.
set_group_set
;
card_set
*
set_cards
=
&
core
.
set_group_
pre_
set
;
card
*
target
=
*
set_cards
->
begin
();
target
->
set_status
(
STATUS_SET_TURN
,
TRUE
);
if
(
target
->
data
.
type
&
TYPE_MONSTER
)
{
...
...
@@ -2454,7 +2455,7 @@ int32 field::sset_g(uint16 step, uint8 setplayer, uint8 toplayer, group* ptarget
pduel
->
write_buffer8
(
MSG_SET
);
pduel
->
write_buffer32
(
target
->
data
.
code
);
pduel
->
write_buffer32
(
target
->
get_info_location
());
core
.
operated
_set
.
insert
(
target
);
core
.
set_group
_set
.
insert
(
target
);
set_cards
->
erase
(
target
);
if
(
!
set_cards
->
empty
())
core
.
units
.
begin
()
->
step
=
2
;
...
...
@@ -2464,8 +2465,8 @@ int32 field::sset_g(uint16 step, uint8 setplayer, uint8 toplayer, group* ptarget
if
(
confirm
)
{
pduel
->
write_buffer8
(
MSG_CONFIRM_CARDS
);
pduel
->
write_buffer8
(
toplayer
);
pduel
->
write_buffer8
(
core
.
operated
_set
.
size
());
for
(
auto
cit
=
core
.
operated_set
.
begin
();
cit
!=
core
.
operated
_set
.
end
();
++
cit
)
{
pduel
->
write_buffer8
(
core
.
set_group
_set
.
size
());
for
(
auto
cit
=
core
.
set_group_set
.
begin
();
cit
!=
core
.
set_group
_set
.
end
();
++
cit
)
{
pduel
->
write_buffer32
((
*
cit
)
->
data
.
code
);
pduel
->
write_buffer8
((
*
cit
)
->
current
.
controler
);
pduel
->
write_buffer8
((
*
cit
)
->
current
.
location
);
...
...
@@ -2475,9 +2476,15 @@ int32 field::sset_g(uint16 step, uint8 setplayer, uint8 toplayer, group* ptarget
return
FALSE
;
}
case
6
:
{
core
.
operated_set
.
clear
();
for
(
auto
cit
=
core
.
set_group_set
.
begin
();
cit
!=
core
.
set_group_set
.
end
();
++
cit
)
{
core
.
operated_set
.
insert
(
*
cit
);
}
uint8
ct
=
core
.
operated_set
.
size
();
if
(
core
.
set_group_used_zones
&
(
1
<<
5
))
ct
--
;
if
(
ct
<=
1
)
return
FALSE
;
pduel
->
write_buffer8
(
MSG_SHUFFLE_SET_CARD
);
pduel
->
write_buffer8
(
LOCATION_SZONE
);
pduel
->
write_buffer8
(
ct
);
...
...
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