Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro-2pick
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-2pick
Commits
49e52531
Commit
49e52531
authored
Apr 04, 2015
by
VanillaSalt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
c404fa93
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
49 additions
and
48 deletions
+49
-48
ocgcore/card.cpp
ocgcore/card.cpp
+48
-38
script/c26775203.lua
script/c26775203.lua
+1
-10
No files found.
ocgcore/card.cpp
View file @
49e52531
...
@@ -379,21 +379,27 @@ int32 card::get_defence() {
...
@@ -379,21 +379,27 @@ int32 card::get_defence() {
}
}
void
card
::
calc_attack_defence
(
int32
*
patk
,
int32
*
pdef
)
{
void
card
::
calc_attack_defence
(
int32
*
patk
,
int32
*
pdef
)
{
uint32
base_atk
=
get_base_attack
();
uint32
base_atk
=
get_base_attack
();
uint32
base_def
=
get_base_defence
();
temp
.
base_attack
=
base_atk
;
temp
.
base_attack
=
base_atk
;
temp
.
attack
=
base_atk
;
temp
.
attack
=
base_atk
;
uint32
base_def
=
get_base_defence
();
temp
.
base_defence
=
base_def
;
temp
.
base_defence
=
base_def
;
temp
.
defence
=
base_def
;
temp
.
defence
=
base_def
;
int32
up_atk
=
0
,
upc_atk
=
0
,
final_atk
=
-
1
,
atk
;
int32
up_atk
=
0
,
upc_atk
=
0
;
int32
up_def
=
0
,
upc_def
=
0
,
final_def
=
-
1
,
def
;
int32
up_def
=
0
,
upc_def
=
0
;
effect_set
eset
;
effect_set
eset
;
filter_effect
(
EFFECT_UPDATE_ATTACK
,
&
eset
,
FALSE
);
filter_effect
(
EFFECT_SWAP_AD
,
&
eset
,
FALSE
);
filter_effect
(
EFFECT_SET_ATTACK
,
&
eset
,
FALSE
);
int32
swap
=
eset
.
size
();
filter_effect
(
EFFECT_SET_ATTACK_FINAL
,
&
eset
,
FALSE
);
if
(
swap
||
patk
)
{
filter_effect
(
EFFECT_UPDATE_DEFENCE
,
&
eset
,
FALSE
);
filter_effect
(
EFFECT_UPDATE_ATTACK
,
&
eset
,
FALSE
);
filter_effect
(
EFFECT_SET_DEFENCE
,
&
eset
,
FALSE
);
filter_effect
(
EFFECT_SET_ATTACK
,
&
eset
,
FALSE
);
filter_effect
(
EFFECT_SET_DEFENCE_FINAL
,
&
eset
,
FALSE
);
filter_effect
(
EFFECT_SET_ATTACK_FINAL
,
&
eset
,
FALSE
);
filter_effect
(
EFFECT_SWAP_AD
,
&
eset
);
}
if
(
swap
||
pdef
)
{
filter_effect
(
EFFECT_UPDATE_DEFENCE
,
&
eset
,
FALSE
);
filter_effect
(
EFFECT_SET_DEFENCE
,
&
eset
,
FALSE
);
filter_effect
(
EFFECT_SET_DEFENCE_FINAL
,
&
eset
,
FALSE
);
}
eset
.
sort
();
int32
rev
=
FALSE
;
int32
rev
=
FALSE
;
if
(
is_affected_by_effect
(
EFFECT_REVERSE_UPDATE
))
if
(
is_affected_by_effect
(
EFFECT_REVERSE_UPDATE
))
rev
=
TRUE
;
rev
=
TRUE
;
...
@@ -473,40 +479,44 @@ void card::calc_attack_defence(int32 *patk, int32 *pdef) {
...
@@ -473,40 +479,44 @@ void card::calc_attack_defence(int32 *patk, int32 *pdef) {
temp
.
defence
=
base_def
-
up_def
-
upc_def
;
temp
.
defence
=
base_def
-
up_def
-
upc_def
;
}
}
}
}
for
(
int32
i
=
0
;
i
<
effects_atk
.
size
();
++
i
)
{
if
(
patk
)
{
final_atk
=
effects_atk
[
i
]
->
get_value
(
this
);
int32
final
=
-
1
,
atk
;
temp
.
attack
=
final_atk
;
for
(
int32
i
=
0
;
i
<
effects_atk
.
size
();
++
i
)
{
final
=
effects_atk
[
i
]
->
get_value
(
this
);
temp
.
attack
=
final
;
}
if
(
final
==
-
1
)
{
if
(
!
rev
)
atk
=
base_atk
+
up_atk
+
upc_atk
;
else
atk
=
base_atk
-
up_atk
-
upc_atk
;
}
else
atk
=
final
;
if
(
atk
<
0
)
atk
=
0
;
*
patk
=
atk
;
}
}
for
(
int32
i
=
0
;
i
<
effects_def
.
size
();
++
i
)
{
if
(
pdef
)
{
final_def
=
effects_def
[
i
]
->
get_value
(
this
);
int32
final
=
-
1
,
def
;
temp
.
defence
=
final_def
;
for
(
int32
i
=
0
;
i
<
effects_def
.
size
();
++
i
)
{
final
=
effects_def
[
i
]
->
get_value
(
this
);
temp
.
defence
=
final
;
}
if
(
final
==
-
1
)
{
if
(
!
rev
)
def
=
base_def
+
up_def
+
upc_def
;
else
def
=
base_def
-
up_def
-
upc_def
;
}
else
def
=
final
;
if
(
def
<
0
)
def
=
0
;
*
pdef
=
def
;
}
}
if
(
final_atk
==
-
1
)
{
if
(
!
rev
)
atk
=
base_atk
+
up_atk
+
upc_atk
;
else
atk
=
base_atk
-
up_atk
-
upc_atk
;
}
else
atk
=
final_atk
;
if
(
final_def
==
-
1
)
{
if
(
!
rev
)
def
=
base_def
+
up_def
+
upc_def
;
else
def
=
base_def
-
up_def
-
upc_def
;
}
else
def
=
final_def
;
if
(
atk
<
0
)
atk
=
0
;
if
(
def
<
0
)
def
=
0
;
temp
.
base_attack
=
-
1
;
temp
.
base_attack
=
-
1
;
temp
.
attack
=
-
1
;
temp
.
attack
=
-
1
;
temp
.
base_defence
=
-
1
;
temp
.
base_defence
=
-
1
;
temp
.
defence
=
-
1
;
temp
.
defence
=
-
1
;
if
(
patk
)
*
patk
=
atk
;
if
(
pdef
)
*
pdef
=
def
;
}
}
uint32
card
::
get_level
()
{
uint32
card
::
get_level
()
{
if
((
data
.
type
&
TYPE_XYZ
)
||
(
status
&
STATUS_NO_LEVEL
)
if
((
data
.
type
&
TYPE_XYZ
)
||
(
status
&
STATUS_NO_LEVEL
)
...
...
script/c26775203.lua
View file @
49e52531
...
@@ -40,18 +40,9 @@ function c26775203.operation(e,tp,eg,ep,ev,re,r,rp)
...
@@ -40,18 +40,9 @@ function c26775203.operation(e,tp,eg,ep,ev,re,r,rp)
end
end
function
c26775203
.
adchange
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c26775203
.
adchange
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
local
ba
=
c
:
GetBaseAttack
()
local
bd
=
c
:
GetBaseDefence
()
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_SET_BASE_ATTACK
)
e1
:
SetCode
(
EFFECT_SWAP_BASE_AD
)
e1
:
SetValue
(
bd
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_END
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_END
)
c
:
RegisterEffect
(
e1
)
c
:
RegisterEffect
(
e1
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
)
e2
:
SetCode
(
EFFECT_SET_BASE_DEFENCE
)
e2
:
SetValue
(
ba
)
e2
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_END
)
c
:
RegisterEffect
(
e2
)
end
end
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