Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro
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
wind2009
ygopro
Commits
01ecfa26
Commit
01ecfa26
authored
May 31, 2015
by
salix5
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Card.IsCode()
parent
9784109d
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
25 additions
and
31 deletions
+25
-31
ocgcore/card.cpp
ocgcore/card.cpp
+3
-4
ocgcore/libcard.cpp
ocgcore/libcard.cpp
+4
-7
script/c12247206.lua
script/c12247206.lua
+1
-1
script/c75141056.lua
script/c75141056.lua
+16
-18
script/constant.lua
script/constant.lua
+1
-1
No files found.
ocgcore/card.cpp
View file @
01ecfa26
...
@@ -242,15 +242,14 @@ uint32 card::get_code() {
...
@@ -242,15 +242,14 @@ uint32 card::get_code() {
return
code
;
return
code
;
}
}
uint32
card
::
get_another_code
()
{
uint32
card
::
get_another_code
()
{
effect_set
eset
;
effect_set
eset
,
eset2
;
filter_effect
(
EFFECT_ADD_CODE
,
&
eset
);
filter_effect
(
EFFECT_ADD_CODE
,
&
eset
);
if
(
!
eset
.
size
())
filter_effect
(
EFFECT_CHANGE_CODE
,
&
eset2
);
if
(
!
eset
.
size
()
||
eset2
.
size
())
return
0
;
return
0
;
uint32
otcode
=
eset
.
get_last
()
->
get_value
(
this
);
uint32
otcode
=
eset
.
get_last
()
->
get_value
(
this
);
if
(
get_code
()
!=
otcode
)
if
(
get_code
()
!=
otcode
)
return
otcode
;
return
otcode
;
if
(
data
.
alias
==
otcode
)
return
data
.
code
;
return
0
;
return
0
;
}
}
int32
card
::
is_set_card
(
uint32
set_code
)
{
int32
card
::
is_set_card
(
uint32
set_code
)
{
...
...
ocgcore/libcard.cpp
View file @
01ecfa26
...
@@ -18,12 +18,8 @@ int32 scriptlib::card_get_code(lua_State *L) {
...
@@ -18,12 +18,8 @@ int32 scriptlib::card_get_code(lua_State *L) {
check_param
(
L
,
PARAM_TYPE_CARD
,
1
);
check_param
(
L
,
PARAM_TYPE_CARD
,
1
);
card
*
pcard
=
*
(
card
**
)
lua_touserdata
(
L
,
1
);
card
*
pcard
=
*
(
card
**
)
lua_touserdata
(
L
,
1
);
lua_pushinteger
(
L
,
pcard
->
get_code
());
lua_pushinteger
(
L
,
pcard
->
get_code
());
uint32
otcode
=
pcard
->
get_another_code
();
lua_pushinteger
(
L
,
pcard
->
get_another_code
());
if
(
otcode
)
{
return
2
;
lua_pushinteger
(
L
,
otcode
);
return
2
;
}
return
1
;
}
}
int32
scriptlib
::
card_get_origin_code
(
lua_State
*
L
)
{
int32
scriptlib
::
card_get_origin_code
(
lua_State
*
L
)
{
check_param_count
(
L
,
1
);
check_param_count
(
L
,
1
);
...
@@ -449,7 +445,8 @@ int32 scriptlib::card_is_code(lua_State *L) {
...
@@ -449,7 +445,8 @@ int32 scriptlib::card_is_code(lua_State *L) {
check_param
(
L
,
PARAM_TYPE_CARD
,
1
);
check_param
(
L
,
PARAM_TYPE_CARD
,
1
);
card
*
pcard
=
*
(
card
**
)
lua_touserdata
(
L
,
1
);
card
*
pcard
=
*
(
card
**
)
lua_touserdata
(
L
,
1
);
uint32
tcode
=
lua_tointeger
(
L
,
2
);
uint32
tcode
=
lua_tointeger
(
L
,
2
);
if
(
pcard
->
get_code
()
==
tcode
||
pcard
->
get_another_code
()
==
tcode
)
uint32
code2
=
pcard
->
get_another_code
()
if
(
pcard
->
get_code
()
==
tcode
||
(
code2
&&
code2
==
tcode
))
lua_pushboolean
(
L
,
1
);
lua_pushboolean
(
L
,
1
);
else
else
lua_pushboolean
(
L
,
0
);
lua_pushboolean
(
L
,
0
);
...
...
script/c12247206.lua
View file @
01ecfa26
...
@@ -16,7 +16,7 @@ function c12247206.condition(e,tp,eg,ep,ev,re,r,rp)
...
@@ -16,7 +16,7 @@ function c12247206.condition(e,tp,eg,ep,ev,re,r,rp)
end
end
function
c12247206
.
nfilter
(
c
,
tc
)
function
c12247206
.
nfilter
(
c
,
tc
)
local
code1
,
code2
=
tc
:
GetCode
()
local
code1
,
code2
=
tc
:
GetCode
()
return
c
:
IsCode
(
code1
)
or
(
code2
and
c
:
IsCode
(
code2
)
)
return
c
:
IsCode
(
code1
)
or
c
:
IsCode
(
code2
)
end
end
function
c12247206
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c12247206
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
tc
=
eg
:
GetFirst
()
local
tc
=
eg
:
GetFirst
()
...
...
script/c75141056.lua
View file @
01ecfa26
...
@@ -10,38 +10,36 @@ function c75141056.initial_effect(c)
...
@@ -10,38 +10,36 @@ function c75141056.initial_effect(c)
c
:
RegisterEffect
(
e1
)
c
:
RegisterEffect
(
e1
)
end
end
function
c75141056
.
tgfilter
(
c
)
function
c75141056
.
tgfilter
(
c
)
return
c
:
IsFaceup
()
and
Duel
.
GetMatchingGroup
(
c75141056
.
cfilter
,
tp
,
LOCATION_DECK
,
0
,
nil
,
c
:
GetCode
()):
FilterCount
(
Card
.
IsAbleToGrave
,
nil
)
>
0
return
c
:
IsFaceup
()
and
Duel
.
IsExistingMatchingCard
(
c75141056
.
cfilter
,
c
:
GetControler
(),
LOCATION_DECK
,
0
,
1
,
nil
,
c
)
end
end
function
c75141056
.
cfilter
(
c
,
code
)
function
c75141056
.
cfilter
(
c
,
tc
)
return
c
:
IsSetCard
(
0x3008
)
and
c
:
GetCode
()
~=
code
local
code1
,
code2
=
tc
:
GetCode
()
return
c
:
IsSetCard
(
0x3008
)
and
not
c
:
IsCode
(
code1
)
and
not
c
:
IsCode
(
code2
)
and
c
:
IsAbleToGrave
()
end
end
function
c75141056
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
function
c75141056
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsControler
(
tp
)
and
c
:
IsFaceup
(
)
end
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsControler
(
tp
)
and
c
75141056
.
tgfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c75141056
.
tgfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c75141056
.
tgfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FACEUP
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FACEUP
)
Duel
.
SelectTarget
(
tp
,
c75141056
.
tgfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
Duel
.
SelectTarget
(
tp
,
c75141056
.
tgfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
end
end
function
c75141056
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c75141056
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
tc
:
IsFaceup
()
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOGRAVE
)
local
g
=
Duel
.
GetMatchingGroup
(
c75141056
.
cfilter
,
tp
,
LOCATION_DECK
,
0
,
nil
,
tc
:
GetCode
())
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c75141056
.
cfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
tc
)
if
g
:
GetCount
()
~=
0
then
if
g
:
GetCount
()
>
0
then
g
=
g
:
Filter
(
Card
.
IsAbleToGrave
,
nil
)
local
gc
=
g
:
GetFirst
()
if
g
:
GetCount
()
==
0
then
return
end
if
Duel
.
SendtoGrave
(
gc
,
REASON_EFFECT
)
~=
0
and
gc
:
IsLocation
(
LOCATION_GRAVE
)
and
tc
:
IsRelateToEffect
(
e
)
and
tc
:
IsFaceup
()
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOGRAVE
)
g
=
g
:
Select
(
tp
,
1
,
1
,
nil
)
Duel
.
SendtoGrave
(
g
,
REASON_EFFECT
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_CHANGE_CODE
)
e1
:
SetCode
(
EFFECT_CHANGE_CODE
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
RESET_END
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
RESET_END
)
e1
:
SetValue
(
g
:
GetFirst
()
:
GetCode
())
e1
:
SetValue
(
g
c
:
GetCode
())
tc
:
RegisterEffect
(
e1
)
tc
:
RegisterEffect
(
e1
)
else
local
cg
=
Duel
.
GetFieldGroup
(
tp
,
LOCATION_DECK
,
0
)
Duel
.
ConfirmCards
(
1
-
tp
,
cg
)
Duel
.
ConfirmCards
(
tp
,
cg
)
Duel
.
ShuffleDeck
(
tp
)
end
end
elseif
IsPlayerCanDiscardDeck
(
tp
,
1
)
then
local
cg
=
Duel
.
GetFieldGroup
(
tp
,
LOCATION_DECK
,
0
)
Duel
.
ConfirmCards
(
1
-
tp
,
cg
)
Duel
.
ConfirmCards
(
tp
,
cg
)
Duel
.
ShuffleDeck
(
tp
)
end
end
end
end
script/constant.lua
View file @
01ecfa26
...
@@ -368,7 +368,7 @@ EFFECT_REVERSE_UPDATE =108 --倒置改变攻击力、防御力(天邪鬼)
...
@@ -368,7 +368,7 @@ EFFECT_REVERSE_UPDATE =108 --倒置改变攻击力、防御力(天邪鬼)
EFFECT_SWAP_AD
=
109
--交换攻防
EFFECT_SWAP_AD
=
109
--交换攻防
EFFECT_SWAP_BASE_AD
=
110
--交换原本攻防
EFFECT_SWAP_BASE_AD
=
110
--交换原本攻防
EFFECT_ADD_CODE
=
113
--增加卡名
EFFECT_ADD_CODE
=
113
--增加卡名
EFFECT_CHANGE_CODE
=
114
--改
名
卡名
EFFECT_CHANGE_CODE
=
114
--改
变
卡名
EFFECT_ADD_TYPE
=
115
--增加卡片种类(types)
EFFECT_ADD_TYPE
=
115
--增加卡片种类(types)
EFFECT_REMOVE_TYPE
=
116
--删除卡片种类
EFFECT_REMOVE_TYPE
=
116
--删除卡片种类
EFFECT_CHANGE_TYPE
=
117
--改变卡片种类
EFFECT_CHANGE_TYPE
=
117
--改变卡片种类
...
...
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