Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
N
Neos
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
love_飞影
Neos
Commits
676e637d
Commit
676e637d
authored
Dec 30, 2022
by
Chunchi Che
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update monster slice
parent
451e94e1
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
33 additions
and
15 deletions
+33
-15
src/reducers/duel/monstersSlice.ts
src/reducers/duel/monstersSlice.ts
+24
-14
src/reducers/duel/util.ts
src/reducers/duel/util.ts
+1
-0
src/service/duel/move.ts
src/service/duel/move.ts
+8
-1
No files found.
src/reducers/duel/monstersSlice.ts
View file @
676e637d
...
...
@@ -93,13 +93,20 @@ export const clearMonsterSelectInfoImpl: CaseReducer<
// 增加怪兽
export
const
fetchMonsterMeta
=
createAsyncThunk
(
"
duel/fetchMonsterMeta
"
,
async
(
param
:
[
number
,
number
,
number
])
=>
{
const
controler
=
param
[
0
];
const
sequence
=
param
[
1
];
const
code
=
param
[
2
];
async
(
param
:
{
controler
:
number
;
sequence
:
number
;
position
:
ygopro
.
CardPosition
;
code
:
number
;
})
=>
{
const
code
=
param
.
code
;
const
meta
=
await
fetchCard
(
code
);
const
response
:
[
number
,
number
,
CardMeta
]
=
[
controler
,
sequence
,
meta
];
const
response
=
{
controler
:
param
.
controler
,
sequence
:
param
.
sequence
,
meta
,
};
return
response
;
}
...
...
@@ -108,16 +115,18 @@ export const fetchMonsterMeta = createAsyncThunk(
export
const
monsterCase
=
(
builder
:
ActionReducerMapBuilder
<
DuelState
>
)
=>
{
builder
.
addCase
(
fetchMonsterMeta
.
pending
,
(
state
,
action
)
=>
{
// Meta结果没返回之前先更新`ID`
const
controler
=
action
.
meta
.
arg
[
0
];
const
sequence
=
action
.
meta
.
arg
[
1
];
const
code
=
action
.
meta
.
arg
[
2
];
const
controler
=
action
.
meta
.
arg
.
controler
;
const
sequence
=
action
.
meta
.
arg
.
sequence
;
const
position
=
action
.
meta
.
arg
.
position
;
const
code
=
action
.
meta
.
arg
.
code
;
const
cardM
eta
=
{
id
:
code
,
data
:
{},
text
:
{}
};
const
m
eta
=
{
id
:
code
,
data
:
{},
text
:
{}
};
if
(
judgeSelf
(
controler
,
state
))
{
if
(
state
.
meMonsters
)
{
for
(
const
monster
of
state
.
meMonsters
.
monsters
)
{
if
(
monster
.
sequence
==
sequence
)
{
monster
.
occupant
=
cardMeta
;
monster
.
occupant
=
meta
;
monster
.
position
=
position
;
}
}
}
...
...
@@ -125,16 +134,17 @@ export const monsterCase = (builder: ActionReducerMapBuilder<DuelState>) => {
if
(
state
.
opMonsters
)
{
for
(
const
monster
of
state
.
opMonsters
.
monsters
)
{
if
(
monster
.
sequence
==
sequence
)
{
monster
.
occupant
=
cardMeta
;
monster
.
occupant
=
meta
;
monster
.
position
=
position
;
}
}
}
}
});
builder
.
addCase
(
fetchMonsterMeta
.
fulfilled
,
(
state
,
action
)
=>
{
const
controler
=
action
.
payload
[
0
]
;
const
sequence
=
action
.
payload
[
1
]
;
const
meta
=
action
.
payload
[
2
]
;
const
controler
=
action
.
payload
.
controler
;
const
sequence
=
action
.
payload
.
sequence
;
const
meta
=
action
.
payload
.
meta
;
if
(
judgeSelf
(
controler
,
state
))
{
if
(
state
.
meMonsters
)
{
...
...
src/reducers/duel/util.ts
View file @
676e637d
...
...
@@ -72,6 +72,7 @@ export interface Interactivity<T> {
export
interface
SlotState
{
sequence
:
number
;
occupant
?:
CardMeta
;
position
?:
ygopro
.
CardPosition
;
selectInfo
?:
Interactivity
<
{
controler
:
number
;
zone
:
ygopro
.
CardZone
;
...
...
src/service/duel/move.ts
View file @
676e637d
...
...
@@ -25,7 +25,14 @@ export default (move: MsgMove, dispatch: AppDispatch) => {
switch
(
to
.
location
)
{
case
ygopro
.
CardZone
.
MZONE
:
{
dispatch
(
fetchMonsterMeta
([
to
.
controler
,
to
.
sequence
,
code
]));
dispatch
(
fetchMonsterMeta
({
controler
:
to
.
controler
,
sequence
:
to
.
sequence
,
position
:
to
.
position
,
code
,
})
);
break
;
}
...
...
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