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
381e6fb9
Commit
381e6fb9
authored
May 23, 2023
by
Chunchi Che
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feat/player_name' into 'main'
Feat/player name See merge request
mycard/Neos!206
parents
9cb94232
03c1fc5c
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
27 additions
and
3 deletions
+27
-3
src/service/duel/start.ts
src/service/duel/start.ts
+6
-1
src/service/room/typeChange.ts
src/service/room/typeChange.ts
+1
-0
src/stores/matStore/store.ts
src/stores/matStore/store.ts
+1
-0
src/stores/matStore/types.ts
src/stores/matStore/types.ts
+1
-0
src/stores/playerStore.ts
src/stores/playerStore.ts
+15
-0
src/styles/mat.css
src/styles/mat.css
+1
-0
src/ui/Duel/PlayMat/Mat.tsx
src/ui/Duel/PlayMat/Mat.tsx
+2
-2
No files found.
src/service/duel/start.ts
View file @
381e6fb9
import
{
v4
as
v4uuid
}
from
"
uuid
"
;
import
{
v4
as
v4uuid
}
from
"
uuid
"
;
import
{
ygopro
}
from
"
@/api
"
;
import
{
ygopro
}
from
"
@/api
"
;
import
{
store
}
from
"
@/stores
"
;
import
{
playerStore
,
store
}
from
"
@/stores
"
;
const
{
matStore
}
=
store
;
const
{
matStore
}
=
store
;
export
default
(
start
:
ygopro
.
StocGameMessage
.
MsgStart
)
=>
{
export
default
(
start
:
ygopro
.
StocGameMessage
.
MsgStart
)
=>
{
...
@@ -11,13 +11,18 @@ export default (start: ygopro.StocGameMessage.MsgStart) => {
...
@@ -11,13 +11,18 @@ export default (start: ygopro.StocGameMessage.MsgStart) => {
?
1
?
1
:
0
;
:
0
;
const
meName
=
playerStore
.
getMePlayer
().
name
;
const
opName
=
playerStore
.
getOpPlayer
().
name
;
matStore
.
initInfo
.
set
(
0
,
{
matStore
.
initInfo
.
set
(
0
,
{
life
:
start
.
life1
,
life
:
start
.
life1
,
name
:
opponent
==
0
?
opName
:
meName
,
deckSize
:
start
.
deckSize1
,
deckSize
:
start
.
deckSize1
,
extraSize
:
start
.
extraSize1
,
extraSize
:
start
.
extraSize1
,
});
});
matStore
.
initInfo
.
set
(
1
,
{
matStore
.
initInfo
.
set
(
1
,
{
life
:
start
.
life2
,
life
:
start
.
life2
,
name
:
opponent
==
1
?
opName
:
meName
,
deckSize
:
start
.
deckSize2
,
deckSize
:
start
.
deckSize2
,
extraSize
:
start
.
extraSize2
,
extraSize
:
start
.
extraSize2
,
});
});
...
...
src/service/room/typeChange.ts
View file @
381e6fb9
...
@@ -8,6 +8,7 @@ export default function handleTypeChange(pb: ygopro.YgoStocMsg) {
...
@@ -8,6 +8,7 @@ export default function handleTypeChange(pb: ygopro.YgoStocMsg) {
const
assertHost
=
pb
.
stoc_type_change
.
is_host
;
const
assertHost
=
pb
.
stoc_type_change
.
is_host
;
playerStore
.
isHost
=
assertHost
;
playerStore
.
isHost
=
assertHost
;
playerStore
.
selfType
=
selfType
;
if
(
assertHost
)
{
if
(
assertHost
)
{
switch
(
selfType
)
{
switch
(
selfType
)
{
...
...
src/stores/matStore/store.ts
View file @
381e6fb9
...
@@ -177,6 +177,7 @@ const genBlock = (zone: ygopro.CardZone, n: number) =>
...
@@ -177,6 +177,7 @@ const genBlock = (zone: ygopro.CardZone, n: number) =>
const
initInfo
:
MatState
[
"
initInfo
"
]
=
(()
=>
{
const
initInfo
:
MatState
[
"
initInfo
"
]
=
(()
=>
{
const
defaultInitInfo
=
{
const
defaultInitInfo
=
{
masterRule
:
"
UNKNOWN
"
,
masterRule
:
"
UNKNOWN
"
,
name
:
"
?
"
,
life
:
-
1
,
// 特地设置一个不可能的值
life
:
-
1
,
// 特地设置一个不可能的值
deckSize
:
0
,
deckSize
:
0
,
extraSize
:
0
,
extraSize
:
0
,
...
...
src/stores/matStore/types.ts
View file @
381e6fb9
...
@@ -116,6 +116,7 @@ export interface MatState {
...
@@ -116,6 +116,7 @@ export interface MatState {
export
interface
InitInfo
{
export
interface
InitInfo
{
masterRule
?:
string
;
masterRule
?:
string
;
name
:
string
;
life
:
number
;
life
:
number
;
deckSize
:
number
;
deckSize
:
number
;
extraSize
:
number
;
extraSize
:
number
;
...
...
src/stores/playerStore.ts
View file @
381e6fb9
import
{
proxy
}
from
"
valtio
"
;
import
{
proxy
}
from
"
valtio
"
;
import
{
ygopro
}
from
"
@/api
"
;
import
SelfType
=
ygopro
.
StocTypeChange
.
SelfType
;
export
interface
Player
{
export
interface
Player
{
name
?:
string
;
name
?:
string
;
state
?:
string
;
state
?:
string
;
...
@@ -18,6 +21,9 @@ export interface PlayerState {
...
@@ -18,6 +21,9 @@ export interface PlayerState {
player1
:
Player
;
player1
:
Player
;
observerCount
:
number
;
observerCount
:
number
;
isHost
:
boolean
;
isHost
:
boolean
;
selfType
:
SelfType
;
getMePlayer
:
()
=>
Player
;
getOpPlayer
:
()
=>
Player
;
}
}
export
const
playerStore
=
proxy
<
PlayerState
>
({
export
const
playerStore
=
proxy
<
PlayerState
>
({
...
@@ -25,4 +31,13 @@ export const playerStore = proxy<PlayerState>({
...
@@ -25,4 +31,13 @@ export const playerStore = proxy<PlayerState>({
player1
:
{},
player1
:
{},
observerCount
:
0
,
observerCount
:
0
,
isHost
:
false
,
isHost
:
false
,
selfType
:
SelfType
.
UNKNOWN
,
getMePlayer
()
{
if
(
this
.
selfType
==
SelfType
.
PLAYER1
)
return
this
.
player0
;
return
this
.
player1
;
},
getOpPlayer
()
{
if
(
this
.
selfType
==
SelfType
.
PLAYER1
)
return
this
.
player1
;
return
this
.
player0
;
},
});
});
src/styles/mat.css
View file @
381e6fb9
...
@@ -64,6 +64,7 @@ button:focus-visible {
...
@@ -64,6 +64,7 @@ button:focus-visible {
padding
:
0.8em
1.6em
;
padding
:
0.8em
1.6em
;
background-color
:
#A9A9A9
;
background-color
:
#A9A9A9
;
border-radius
:
8px
;
border-radius
:
8px
;
text-align
:
left
;
border
:
1px
solid
transparent
;
border
:
1px
solid
transparent
;
color
:
black
;
color
:
black
;
opacity
:
.4
;
opacity
:
.4
;
...
...
src/ui/Duel/PlayMat/Mat.tsx
View file @
381e6fb9
...
@@ -64,8 +64,8 @@ export const Mat = () => {
...
@@ -64,8 +64,8 @@ export const Mat = () => {
<>
<>
<
Menu
/>
<
Menu
/>
<
div
id=
"life-bar-container"
>
<
div
id=
"life-bar-container"
>
<
div
id=
"life-bar"
>
{
snap
.
initInfo
.
me
.
life
}
</
div
>
<
div
id=
"life-bar"
>
{
`${snap.initInfo.me.name}: ${snap.initInfo.me.life}`
}
</
div
>
<
div
id=
"life-bar"
>
{
snap
.
initInfo
.
op
.
life
}
</
div
>
<
div
id=
"life-bar"
>
{
`${snap.initInfo.op.name}: ${snap.initInfo.op.life}`
}
</
div
>
</
div
>
</
div
>
<
div
id=
"camera"
>
<
div
id=
"camera"
>
<
div
id=
"board"
>
<
div
id=
"board"
>
...
...
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