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
c3662623
Commit
c3662623
authored
Mar 13, 2024
by
wind2009
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'mercury/patch-summon-re' into develop
parents
37a2b3e7
173c0d82
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
7 additions
and
6 deletions
+7
-6
operations.cpp
operations.cpp
+7
-6
No files found.
operations.cpp
View file @
c3662623
...
@@ -3157,6 +3157,7 @@ int32 field::special_summon_rule(uint16 step, uint8 sumplayer, card* target, uin
...
@@ -3157,6 +3157,7 @@ int32 field::special_summon_rule(uint16 step, uint8 sumplayer, card* target, uin
return
FALSE
;
return
FALSE
;
}
}
case
29
:
{
case
29
:
{
effect
*
peffect
=
core
.
units
.
begin
()
->
peffect
;
group
*
pgroup
=
core
.
units
.
begin
()
->
ptarget
;
group
*
pgroup
=
core
.
units
.
begin
()
->
ptarget
;
pduel
->
write_buffer8
(
MSG_SPSUMMONED
);
pduel
->
write_buffer8
(
MSG_SPSUMMONED
);
set_spsummon_counter
(
sumplayer
);
set_spsummon_counter
(
sumplayer
);
...
@@ -3165,14 +3166,14 @@ int32 field::special_summon_rule(uint16 step, uint8 sumplayer, card* target, uin
...
@@ -3165,14 +3166,14 @@ int32 field::special_summon_rule(uint16 step, uint8 sumplayer, card* target, uin
for
(
auto
&
pcard
:
pgroup
->
container
)
{
for
(
auto
&
pcard
:
pgroup
->
container
)
{
if
(
pcard
->
spsummon_code
)
if
(
pcard
->
spsummon_code
)
spsummon_once_set
.
insert
(
pcard
->
spsummon_code
);
spsummon_once_set
.
insert
(
pcard
->
spsummon_code
);
pcard
->
set_special_summon_status
(
p
card
->
current
.
reason_
effect
);
pcard
->
set_special_summon_status
(
peffect
);
}
}
for
(
auto
&
cit
:
spsummon_once_set
)
for
(
auto
&
cit
:
spsummon_once_set
)
++
core
.
spsummon_once_map
[
sumplayer
][
cit
];
++
core
.
spsummon_once_map
[
sumplayer
][
cit
];
for
(
auto
&
pcard
:
pgroup
->
container
)
for
(
auto
&
pcard
:
pgroup
->
container
)
raise_single_event
(
pcard
,
0
,
EVENT_SPSUMMON_SUCCESS
,
p
card
->
current
.
reason_effect
,
0
,
pcard
->
current
.
reason_
player
,
pcard
->
summon_player
,
0
);
raise_single_event
(
pcard
,
0
,
EVENT_SPSUMMON_SUCCESS
,
p
effect
,
0
,
sum
player
,
pcard
->
summon_player
,
0
);
process_single_event
();
process_single_event
();
raise_event
(
&
pgroup
->
container
,
EVENT_SPSUMMON_SUCCESS
,
core
.
units
.
begin
()
->
peffect
,
0
,
sumplayer
,
sumplayer
,
0
);
raise_event
(
&
pgroup
->
container
,
EVENT_SPSUMMON_SUCCESS
,
peffect
,
0
,
sumplayer
,
sumplayer
,
0
);
process_instant_event
();
process_instant_event
();
if
(
action_type
==
SUMMON_IN_IDLE
)
{
if
(
action_type
==
SUMMON_IN_IDLE
)
{
adjust_all
();
adjust_all
();
...
@@ -3368,9 +3369,9 @@ int32 field::special_summon(uint16 step, effect* reason_effect, uint8 reason_pla
...
@@ -3368,9 +3369,9 @@ int32 field::special_summon(uint16 step, effect* reason_effect, uint8 reason_pla
pduel
->
write_buffer8
(
MSG_SPSUMMONED
);
pduel
->
write_buffer8
(
MSG_SPSUMMONED
);
for
(
auto
&
pcard
:
targets
->
container
)
{
for
(
auto
&
pcard
:
targets
->
container
)
{
check_card_counter
(
pcard
,
ACTIVITY_SPSUMMON
,
pcard
->
summon_player
);
check_card_counter
(
pcard
,
ACTIVITY_SPSUMMON
,
pcard
->
summon_player
);
pcard
->
set_special_summon_status
(
pcard
->
current
.
reason_effect
);
pcard
->
set_special_summon_status
(
reason_effect
);
if
(
!
(
pcard
->
current
.
position
&
POS_FACEDOWN
))
if
(
!
(
pcard
->
current
.
position
&
POS_FACEDOWN
))
raise_single_event
(
pcard
,
0
,
EVENT_SPSUMMON_SUCCESS
,
pcard
->
current
.
reason_effect
,
0
,
pcard
->
current
.
reason_player
,
pcard
->
summon_player
,
0
);
raise_single_event
(
pcard
,
0
,
EVENT_SPSUMMON_SUCCESS
,
reason_effect
,
0
,
reason_player
,
pcard
->
summon_player
,
0
);
int32
summontype
=
pcard
->
summon_info
&
(
SUMMON_VALUE_MAIN_TYPE
|
SUMMON_VALUE_SUB_TYPE
);
int32
summontype
=
pcard
->
summon_info
&
(
SUMMON_VALUE_MAIN_TYPE
|
SUMMON_VALUE_SUB_TYPE
);
int32
custom_type
=
pcard
->
summon_info
&
SUMMON_VALUE_CUSTOM_TYPE
;
int32
custom_type
=
pcard
->
summon_info
&
SUMMON_VALUE_CUSTOM_TYPE
;
if
(
summontype
&&
pcard
->
material_cards
.
size
()
&&
custom_type
!=
SUMMON_VALUE_FUTURE_FUSION
)
{
if
(
summontype
&&
pcard
->
material_cards
.
size
()
&&
custom_type
!=
SUMMON_VALUE_FUTURE_FUSION
)
{
...
@@ -3384,7 +3385,7 @@ int32 field::special_summon(uint16 step, effect* reason_effect, uint8 reason_pla
...
@@ -3384,7 +3385,7 @@ int32 field::special_summon(uint16 step, effect* reason_effect, uint8 reason_pla
else
if
(
summontype
==
SUMMON_TYPE_LINK
)
else
if
(
summontype
==
SUMMON_TYPE_LINK
)
matreason
=
REASON_LINK
;
matreason
=
REASON_LINK
;
for
(
auto
&
mcard
:
pcard
->
material_cards
)
for
(
auto
&
mcard
:
pcard
->
material_cards
)
raise_single_event
(
mcard
,
&
targets
->
container
,
EVENT_BE_MATERIAL
,
pcard
->
current
.
reason_effect
,
matreason
,
pcard
->
current
.
reason_player
,
pcard
->
summon_player
,
0
);
raise_single_event
(
mcard
,
&
targets
->
container
,
EVENT_BE_MATERIAL
,
reason_effect
,
matreason
,
reason_player
,
pcard
->
summon_player
,
0
);
raise_event
(
&
(
pcard
->
material_cards
),
EVENT_BE_MATERIAL
,
reason_effect
,
matreason
,
reason_player
,
pcard
->
summon_player
,
0
);
raise_event
(
&
(
pcard
->
material_cards
),
EVENT_BE_MATERIAL
,
reason_effect
,
matreason
,
reason_player
,
pcard
->
summon_player
,
0
);
}
}
}
}
...
...
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