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
6d6e601d
Commit
6d6e601d
authored
Sep 17, 2018
by
nanahira
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
https://github.com/Fluorohydride/ygopro-core
parents
937c0070
40406b2d
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
18 additions
and
17 deletions
+18
-17
card.cpp
card.cpp
+3
-3
effect.cpp
effect.cpp
+2
-2
libdebug.cpp
libdebug.cpp
+1
-1
operations.cpp
operations.cpp
+4
-4
processor.cpp
processor.cpp
+8
-7
No files found.
card.cpp
View file @
6d6e601d
...
...
@@ -3325,7 +3325,7 @@ int32 card::is_affect_by_effect(effect* peffect) {
int32
card
::
is_destructable
()
{
if
(
overlay_target
)
return
FALSE
;
if
(
current
.
location
&
(
LOCATION_GRAVE
+
LOCATION_REMOVED
))
if
(
current
.
location
&
(
LOCATION_GRAVE
|
LOCATION_REMOVED
))
return
FALSE
;
return
TRUE
;
}
...
...
@@ -3449,7 +3449,7 @@ int32 card::is_releasable_by_summon(uint8 playerid, card *pcard) {
return
FALSE
;
if
(
overlay_target
)
return
FALSE
;
if
(
current
.
location
&
(
LOCATION_GRAVE
+
LOCATION_REMOVED
))
if
(
current
.
location
&
(
LOCATION_GRAVE
|
LOCATION_REMOVED
))
return
FALSE
;
if
(
!
pduel
->
game_field
->
is_player_can_release
(
playerid
,
this
))
return
FALSE
;
...
...
@@ -3464,7 +3464,7 @@ int32 card::is_releasable_by_nonsummon(uint8 playerid) {
return
FALSE
;
if
(
overlay_target
)
return
FALSE
;
if
(
current
.
location
&
(
LOCATION_GRAVE
+
LOCATION_REMOVED
))
if
(
current
.
location
&
(
LOCATION_GRAVE
|
LOCATION_REMOVED
))
return
FALSE
;
if
((
current
.
location
==
LOCATION_HAND
)
&&
(
data
.
type
&
(
TYPE_SPELL
|
TYPE_TRAP
)))
return
FALSE
;
...
...
effect.cpp
View file @
6d6e601d
...
...
@@ -192,7 +192,7 @@ int32 effect::is_activateable(uint8 playerid, const tevent& e, int32 neglect_con
return
FALSE
;
}
uint32
zone
=
0xff
;
if
(
!
(
handler
->
data
.
type
&
(
TYPE_FIELD
+
TYPE_PENDULUM
))
&&
is_flag
(
EFFECT_FLAG_LIMIT_ZONE
))
{
if
(
!
(
handler
->
data
.
type
&
(
TYPE_FIELD
|
TYPE_PENDULUM
))
&&
is_flag
(
EFFECT_FLAG_LIMIT_ZONE
))
{
pduel
->
lua
->
add_param
(
playerid
,
PARAM_TYPE_INT
);
pduel
->
lua
->
add_param
(
e
.
event_cards
,
PARAM_TYPE_GROUP
);
pduel
->
lua
->
add_param
(
e
.
event_player
,
PARAM_TYPE_INT
);
...
...
@@ -213,7 +213,7 @@ int32 effect::is_activateable(uint8 playerid, const tevent& e, int32 neglect_con
if
((
handler
->
data
.
type
&
TYPE_SPELL
)
&&
(
handler
->
data
.
type
&
TYPE_QUICKPLAY
))
return
FALSE
;
}
if
(
!
(
handler
->
data
.
type
&
(
TYPE_FIELD
+
TYPE_PENDULUM
))
&&
is_flag
(
EFFECT_FLAG_LIMIT_ZONE
)
&&
!
(
zone
&
(
1u
<<
handler
->
current
.
sequence
)))
if
(
!
(
handler
->
data
.
type
&
(
TYPE_FIELD
|
TYPE_PENDULUM
))
&&
is_flag
(
EFFECT_FLAG_LIMIT_ZONE
)
&&
!
(
zone
&
(
1u
<<
handler
->
current
.
sequence
)))
return
FALSE
;
}
else
{
if
(
handler
->
data
.
type
&
TYPE_MONSTER
)
{
...
...
libdebug.cpp
View file @
6d6e601d
...
...
@@ -47,7 +47,7 @@ int32 scriptlib::debug_add_card(lua_State *L) {
pduel
->
game_field
->
add_card
(
playerid
,
pcard
,
location
,
sequence
);
}
pcard
->
current
.
position
=
position
;
if
(
!
(
location
&
(
LOCATION_ONFIELD
+
LOCATION_PZONE
))
||
(
position
&
POS_FACEUP
))
{
if
(
!
(
location
&
(
LOCATION_ONFIELD
|
LOCATION_PZONE
))
||
(
position
&
POS_FACEUP
))
{
pcard
->
enable_field_effect
(
true
);
pduel
->
game_field
->
adjust_instant
();
}
...
...
operations.cpp
View file @
6d6e601d
...
...
@@ -215,11 +215,11 @@ void field::destroy(card_set* targets, effect* reason_effect, uint32 reason, uin
pcard
->
current
.
reason_player
=
reason_player
;
}
uint32
p
=
playerid
;
if
(
!
(
destination
&
(
LOCATION_HAND
+
LOCATION_DECK
+
LOCATION_REMOVED
)))
if
(
!
(
destination
&
(
LOCATION_HAND
|
LOCATION_DECK
|
LOCATION_REMOVED
)))
destination
=
LOCATION_GRAVE
;
if
(
destination
&&
p
==
PLAYER_NONE
)
p
=
pcard
->
owner
;
if
(
destination
&
(
LOCATION_GRAVE
+
LOCATION_REMOVED
))
if
(
destination
&
(
LOCATION_GRAVE
|
LOCATION_REMOVED
))
p
=
pcard
->
owner
;
pcard
->
set_status
(
STATUS_DESTROY_CONFIRMED
,
TRUE
);
pcard
->
sendto_param
.
set
(
p
,
POS_FACEUP
,
destination
,
sequence
);
...
...
@@ -269,7 +269,7 @@ void field::send_to(card_set* targets, effect* reason_effect, uint32 reason, uin
// send to hand from deck and playerid not given => send to the hand of controler
if
(
p
==
PLAYER_NONE
&&
(
destination
&
LOCATION_HAND
)
&&
(
pcard
->
current
.
location
&
LOCATION_DECK
)
&&
pcard
->
current
.
controler
==
reason_player
)
p
=
reason_player
;
if
(
destination
&
(
LOCATION_GRAVE
+
LOCATION_REMOVED
)
||
p
==
PLAYER_NONE
)
if
(
destination
&
(
LOCATION_GRAVE
|
LOCATION_REMOVED
)
||
p
==
PLAYER_NONE
)
p
=
pcard
->
owner
;
uint32
pos
=
position
;
if
(
destination
!=
LOCATION_REMOVED
)
...
...
@@ -288,7 +288,7 @@ void field::send_to(card* target, effect* reason_effect, uint32 reason, uint32 r
send_to
(
&
tset
,
reason_effect
,
reason
,
reason_player
,
playerid
,
destination
,
sequence
,
position
);
}
void
field
::
move_to_field
(
card
*
target
,
uint32
move_player
,
uint32
playerid
,
uint32
destination
,
uint32
positions
,
uint32
enable
,
uint32
ret
,
uint32
is_equip
,
uint32
zone
)
{
if
(
!
(
destination
&
(
LOCATION_MZONE
+
LOCATION_SZONE
)
)
||
!
positions
)
if
(
!
(
destination
&
LOCATION_ONFIELD
)
||
!
positions
)
return
;
if
(
destination
==
target
->
current
.
location
&&
playerid
==
target
->
current
.
controler
)
return
;
...
...
processor.cpp
View file @
6d6e601d
...
...
@@ -3151,10 +3151,11 @@ int32 field::process_battle_command(uint16 step) {
return
FALSE
;
}
case
13
:
{
if
(
core
.
attacker
->
fieldid_r
==
core
.
pre_field
[
0
])
{
core
.
attacker
->
announce_count
++
;
core
.
attacker
->
announced_cards
.
addcard
(
core
.
attack_target
);
if
(
core
.
attacker
->
fieldid_r
==
core
.
pre_field
[
0
])
attack_all_target_check
();
}
core
.
chain_attack
=
FALSE
;
core
.
units
.
begin
()
->
step
=
-
1
;
reset_phase
(
PHASE_DAMAGE
);
...
...
@@ -4247,7 +4248,7 @@ int32 field::add_chain(uint16 step) {
}
if
(
phandler
->
current
.
location
==
LOCATION_HAND
)
{
uint32
zone
=
0xff
;
if
(
!
(
phandler
->
data
.
type
&
(
TYPE_FIELD
+
TYPE_PENDULUM
))
&&
peffect
->
is_flag
(
EFFECT_FLAG_LIMIT_ZONE
))
{
if
(
!
(
phandler
->
data
.
type
&
(
TYPE_FIELD
|
TYPE_PENDULUM
))
&&
peffect
->
is_flag
(
EFFECT_FLAG_LIMIT_ZONE
))
{
pduel
->
lua
->
add_param
(
clit
.
triggering_player
,
PARAM_TYPE_INT
);
pduel
->
lua
->
add_param
(
clit
.
evt
.
event_cards
,
PARAM_TYPE_GROUP
);
pduel
->
lua
->
add_param
(
clit
.
evt
.
event_player
,
PARAM_TYPE_INT
);
...
...
@@ -4419,12 +4420,12 @@ int32 field::add_chain(uint16 step) {
}
if
(
peffect
->
type
&
EFFECT_TYPE_ACTIVATE
)
{
core
.
leave_confirmed
.
insert
(
phandler
);
if
(
!
(
phandler
->
data
.
type
&
(
TYPE_CONTINUOUS
+
TYPE_FIELD
+
TYPE_EQUIP
+
TYPE_PENDULUM
))
if
(
!
(
phandler
->
data
.
type
&
(
TYPE_CONTINUOUS
|
TYPE_FIELD
|
TYPE_EQUIP
|
TYPE_PENDULUM
))
&&
!
phandler
->
is_affected_by_effect
(
EFFECT_REMAIN_FIELD
))
phandler
->
set_status
(
STATUS_LEAVE_CONFIRMED
,
TRUE
);
}
if
(
phandler
->
get_type
()
&
(
TYPE_SPELL
+
TYPE_TRAP
)
&&
(
phandler
->
data
.
type
&
(
TYPE_CONTINUOUS
+
TYPE_FIELD
+
TYPE_EQUIP
+
TYPE_PENDULUM
))
if
(
(
phandler
->
get_type
()
&
(
TYPE_SPELL
|
TYPE_TRAP
)
)
&&
(
phandler
->
data
.
type
&
(
TYPE_CONTINUOUS
|
TYPE_FIELD
|
TYPE_EQUIP
|
TYPE_PENDULUM
))
&&
phandler
->
is_has_relation
(
clit
)
&&
phandler
->
current
.
location
==
LOCATION_SZONE
&&
!
peffect
->
is_flag
(
EFFECT_FLAG_FIELD_ONLY
))
clit
.
flag
|=
CHAIN_CONTINUOUS_CARD
;
...
...
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