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
4b2d3158
Commit
4b2d3158
authored
Oct 08, 2015
by
VanillaSalt
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
https://github.com/Fluorohydride/ygopro-core
parents
51693962
c96a5669
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
7 additions
and
9 deletions
+7
-9
effect.cpp
effect.cpp
+2
-0
processor.cpp
processor.cpp
+5
-9
No files found.
effect.cpp
View file @
4b2d3158
...
@@ -109,6 +109,8 @@ int32 effect::is_available() {
...
@@ -109,6 +109,8 @@ int32 effect::is_available() {
pduel
->
lua
->
add_param
(
this
,
PARAM_TYPE_EFFECT
);
pduel
->
lua
->
add_param
(
this
,
PARAM_TYPE_EFFECT
);
int32
res
=
pduel
->
lua
->
check_condition
(
condition
,
1
);
int32
res
=
pduel
->
lua
->
check_condition
(
condition
,
1
);
if
(
res
)
{
if
(
res
)
{
if
(
!
(
status
&
EFFECT_STATUS_AVAILABLE
))
id
=
pduel
->
game_field
->
infos
.
field_id
++
;
status
|=
EFFECT_STATUS_AVAILABLE
;
status
|=
EFFECT_STATUS_AVAILABLE
;
}
else
}
else
status
&=
~
EFFECT_STATUS_AVAILABLE
;
status
&=
~
EFFECT_STATUS_AVAILABLE
;
...
...
processor.cpp
View file @
4b2d3158
...
@@ -1336,6 +1336,7 @@ int32 field::process_phase_event(int16 step, int32 phase) {
...
@@ -1336,6 +1336,7 @@ int32 field::process_phase_event(int16 step, int32 phase) {
peffect
->
o_range
=
peffect
->
handler
->
current
.
sequence
;
peffect
->
o_range
=
peffect
->
handler
->
current
.
sequence
;
if
(
!
peffect
->
is_activateable
(
check_player
,
nil_event
))
if
(
!
peffect
->
is_activateable
(
check_player
,
nil_event
))
continue
;
continue
;
peffect
->
id
=
infos
.
field_id
++
;
newchain
.
triggering_effect
=
peffect
;
newchain
.
triggering_effect
=
peffect
;
core
.
select_chains
.
push_back
(
newchain
);
core
.
select_chains
.
push_back
(
newchain
);
tf_count
++
;
tf_count
++
;
...
@@ -1346,6 +1347,7 @@ int32 field::process_phase_event(int16 step, int32 phase) {
...
@@ -1346,6 +1347,7 @@ int32 field::process_phase_event(int16 step, int32 phase) {
++
pr
.
first
;
++
pr
.
first
;
if
(
peffect
->
get_handler_player
()
!=
check_player
||
!
peffect
->
is_activateable
(
check_player
,
nil_event
))
if
(
peffect
->
get_handler_player
()
!=
check_player
||
!
peffect
->
is_activateable
(
check_player
,
nil_event
))
continue
;
continue
;
peffect
->
id
=
infos
.
field_id
++
;
newchain
.
triggering_effect
=
peffect
;
newchain
.
triggering_effect
=
peffect
;
core
.
select_chains
.
push_back
(
newchain
);
core
.
select_chains
.
push_back
(
newchain
);
cn_count
++
;
cn_count
++
;
...
@@ -1377,6 +1379,7 @@ int32 field::process_phase_event(int16 step, int32 phase) {
...
@@ -1377,6 +1379,7 @@ int32 field::process_phase_event(int16 step, int32 phase) {
peffect
->
o_range
=
peffect
->
handler
->
current
.
sequence
;
peffect
->
o_range
=
peffect
->
handler
->
current
.
sequence
;
if
(
!
peffect
->
is_activateable
(
check_player
,
nil_event
))
if
(
!
peffect
->
is_activateable
(
check_player
,
nil_event
))
continue
;
continue
;
peffect
->
id
=
infos
.
field_id
++
;
newchain
.
triggering_effect
=
peffect
;
newchain
.
triggering_effect
=
peffect
;
core
.
select_chains
.
push_back
(
newchain
);
core
.
select_chains
.
push_back
(
newchain
);
to_count
++
;
to_count
++
;
...
@@ -1396,6 +1399,7 @@ int32 field::process_phase_event(int16 step, int32 phase) {
...
@@ -1396,6 +1399,7 @@ int32 field::process_phase_event(int16 step, int32 phase) {
peffect
->
o_range
=
peffect
->
handler
->
current
.
sequence
;
peffect
->
o_range
=
peffect
->
handler
->
current
.
sequence
;
if
(
!
peffect
->
is_chainable
(
check_player
)
||
!
peffect
->
is_activateable
(
check_player
,
nil_event
))
if
(
!
peffect
->
is_chainable
(
check_player
)
||
!
peffect
->
is_activateable
(
check_player
,
nil_event
))
continue
;
continue
;
peffect
->
id
=
infos
.
field_id
++
;
newchain
.
triggering_effect
=
peffect
;
newchain
.
triggering_effect
=
peffect
;
if
(
check_hint_timing
(
peffect
))
if
(
check_hint_timing
(
peffect
))
core
.
spe_effect
[
check_player
]
++
;
core
.
spe_effect
[
check_player
]
++
;
...
@@ -1409,6 +1413,7 @@ int32 field::process_phase_event(int16 step, int32 phase) {
...
@@ -1409,6 +1413,7 @@ int32 field::process_phase_event(int16 step, int32 phase) {
peffect
->
o_range
=
peffect
->
handler
->
current
.
sequence
;
peffect
->
o_range
=
peffect
->
handler
->
current
.
sequence
;
if
(
!
peffect
->
is_chainable
(
check_player
)
||
!
peffect
->
is_activateable
(
check_player
,
nil_event
))
if
(
!
peffect
->
is_chainable
(
check_player
)
||
!
peffect
->
is_activateable
(
check_player
,
nil_event
))
continue
;
continue
;
peffect
->
id
=
infos
.
field_id
++
;
newchain
.
triggering_effect
=
peffect
;
newchain
.
triggering_effect
=
peffect
;
if
(
check_hint_timing
(
peffect
))
if
(
check_hint_timing
(
peffect
))
core
.
spe_effect
[
check_player
]
++
;
core
.
spe_effect
[
check_player
]
++
;
...
@@ -1486,7 +1491,6 @@ int32 field::process_phase_event(int16 step, int32 phase) {
...
@@ -1486,7 +1491,6 @@ int32 field::process_phase_event(int16 step, int32 phase) {
newchain
.
triggering_sequence
=
peffect
->
handler
->
current
.
sequence
;
newchain
.
triggering_sequence
=
peffect
->
handler
->
current
.
sequence
;
newchain
.
triggering_player
=
check_player
;
newchain
.
triggering_player
=
check_player
;
core
.
new_chains
.
push_back
(
newchain
);
core
.
new_chains
.
push_back
(
newchain
);
peffect->id = infos.field_id++;
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
dec_count
(
check_player
);
peffect
->
dec_count
(
check_player
);
core
.
select_chains
.
clear
();
core
.
select_chains
.
clear
();
...
@@ -1633,7 +1637,6 @@ int32 field::process_point_event(int16 step, int32 skip_trigger, int32 skip_free
...
@@ -1633,7 +1637,6 @@ int32 field::process_point_event(int16 step, int32 skip_trigger, int32 skip_free
core
.
tpchain
.
push_back
(
*
clit
);
core
.
tpchain
.
push_back
(
*
clit
);
else
else
core
.
ntpchain
.
push_back
(
*
clit
);
core
.
ntpchain
.
push_back
(
*
clit
);
peffect->id = infos.field_id++;
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
dec_count
(
tp
);
peffect
->
dec_count
(
tp
);
}
}
...
@@ -1812,7 +1815,6 @@ int32 field::process_point_event(int16 step, int32 skip_trigger, int32 skip_free
...
@@ -1812,7 +1815,6 @@ int32 field::process_point_event(int16 step, int32 skip_trigger, int32 skip_free
}
}
clit
=
core
.
new_ochain_s
.
begin
();
clit
=
core
.
new_ochain_s
.
begin
();
peffect
=
clit
->
triggering_effect
;
peffect
=
clit
->
triggering_effect
;
peffect->id = infos.field_id++;
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
dec_count
(
tp
);
peffect
->
dec_count
(
tp
);
if
(
tp
==
infos
.
turn_player
)
if
(
tp
==
infos
.
turn_player
)
...
@@ -1911,7 +1913,6 @@ int32 field::process_point_event(int16 step, int32 skip_trigger, int32 skip_free
...
@@ -1911,7 +1913,6 @@ int32 field::process_point_event(int16 step, int32 skip_trigger, int32 skip_free
std
::
advance
(
clit
,
index
);
std
::
advance
(
clit
,
index
);
effect
*
peffect
=
clit
->
triggering_effect
;
effect
*
peffect
=
clit
->
triggering_effect
;
uint8
tp
=
clit
->
triggering_player
;
uint8
tp
=
clit
->
triggering_player
;
peffect->id = infos.field_id++;
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
dec_count
(
tp
);
peffect
->
dec_count
(
tp
);
if
(
tp
==
infos
.
turn_player
)
if
(
tp
==
infos
.
turn_player
)
...
@@ -1961,7 +1962,6 @@ int32 field::process_quick_effect(int16 step, int32 skip_freechain, uint8 priori
...
@@ -1961,7 +1962,6 @@ int32 field::process_quick_effect(int16 step, int32 skip_freechain, uint8 priori
}
}
if
(
act
)
{
if
(
act
)
{
core
.
tpchain
.
push_back
(
ifit
->
second
);
core
.
tpchain
.
push_back
(
ifit
->
second
);
peffect->id = infos.field_id++;
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
dec_count
(
infos
.
turn_player
);
peffect
->
dec_count
(
infos
.
turn_player
);
}
}
...
@@ -1984,7 +1984,6 @@ int32 field::process_quick_effect(int16 step, int32 skip_freechain, uint8 priori
...
@@ -1984,7 +1984,6 @@ int32 field::process_quick_effect(int16 step, int32 skip_freechain, uint8 priori
}
}
if
(
act
)
{
if
(
act
)
{
core
.
ntpchain
.
push_back
(
ifit
->
second
);
core
.
ntpchain
.
push_back
(
ifit
->
second
);
peffect->id = infos.field_id++;
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
dec_count
(
1
-
infos
.
turn_player
);
peffect
->
dec_count
(
1
-
infos
.
turn_player
);
}
}
...
@@ -2159,7 +2158,6 @@ int32 field::process_quick_effect(int16 step, int32 skip_freechain, uint8 priori
...
@@ -2159,7 +2158,6 @@ int32 field::process_quick_effect(int16 step, int32 skip_freechain, uint8 priori
core
.
new_chains
.
push_back
(
newchain
);
core
.
new_chains
.
push_back
(
newchain
);
effect
*
peffect
=
newchain
.
triggering_effect
;
effect
*
peffect
=
newchain
.
triggering_effect
;
core
.
delayed_quick
.
erase
(
make_pair
(
peffect
,
newchain
.
evt
));
core
.
delayed_quick
.
erase
(
make_pair
(
peffect
,
newchain
.
evt
));
peffect->id = infos.field_id++;
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
dec_count
(
priority
);
peffect
->
dec_count
(
priority
);
add_process
(
PROCESSOR_ADD_CHAIN
,
0
,
0
,
0
,
0
,
0
);
add_process
(
PROCESSOR_ADD_CHAIN
,
0
,
0
,
0
,
0
,
0
);
...
@@ -2550,7 +2548,6 @@ int32 field::process_idle_command(uint16 step) {
...
@@ -2550,7 +2548,6 @@ int32 field::process_idle_command(uint16 step) {
newchain
.
triggering_sequence
=
peffect
->
handler
->
current
.
sequence
;
newchain
.
triggering_sequence
=
peffect
->
handler
->
current
.
sequence
;
newchain
.
triggering_player
=
infos
.
turn_player
;
newchain
.
triggering_player
=
infos
.
turn_player
;
core
.
new_chains
.
push_back
(
newchain
);
core
.
new_chains
.
push_back
(
newchain
);
peffect->id = infos.field_id++;
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
dec_count
(
infos
.
turn_player
);
peffect
->
dec_count
(
infos
.
turn_player
);
core
.
select_chains
.
clear
();
core
.
select_chains
.
clear
();
...
@@ -2816,7 +2813,6 @@ int32 field::process_battle_command(uint16 step) {
...
@@ -2816,7 +2813,6 @@ int32 field::process_battle_command(uint16 step) {
newchain
.
triggering_sequence
=
peffect
->
handler
->
current
.
sequence
;
newchain
.
triggering_sequence
=
peffect
->
handler
->
current
.
sequence
;
newchain
.
triggering_player
=
infos
.
turn_player
;
newchain
.
triggering_player
=
infos
.
turn_player
;
core
.
new_chains
.
push_back
(
newchain
);
core
.
new_chains
.
push_back
(
newchain
);
peffect->id = infos.field_id++;
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
handler
->
set_status
(
STATUS_CHAINING
,
TRUE
);
peffect
->
dec_count
(
infos
.
turn_player
);
peffect
->
dec_count
(
infos
.
turn_player
);
core
.
select_chains
.
clear
();
core
.
select_chains
.
clear
();
...
...
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