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
e38548ee
Commit
e38548ee
authored
Aug 09, 2023
by
Chunchi Che
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add observer support
parent
7e6cb0ea
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
11 additions
and
9 deletions
+11
-9
src/env.d.ts
src/env.d.ts
+1
-1
src/service/duel/start.ts
src/service/duel/start.ts
+4
-3
src/service/room/handResult.ts
src/service/room/handResult.ts
+1
-1
src/stores/matStore/store.ts
src/stores/matStore/store.ts
+3
-3
src/ui/WaitRoom/index.tsx
src/ui/WaitRoom/index.tsx
+2
-1
No files found.
src/env.d.ts
View file @
e38548ee
...
...
@@ -17,7 +17,7 @@ import { EventEmitter } from "eventemitter3";
/* eslint no-var: 0 */
declare
global
{
var
myExtraDeckCodes
:
number
[];
var
myExtraDeckCodes
:
number
[]
=
[]
;
interface
Console
{
color
:
(
color
:
string
,
...
...
src/service/duel/start.ts
View file @
e38548ee
...
...
@@ -2,7 +2,7 @@ import { flatten } from "lodash-es";
import
{
v4
as
v4uuid
}
from
"
uuid
"
;
import
{
proxy
}
from
"
valtio
"
;
import
{
subscribeKey
}
from
"
valtio/utils
"
;
import
PlayerType
=
ygopro
.
StocGameMessage
.
MsgStart
.
PlayerType
;
import
{
fetchCard
,
ygopro
}
from
"
@/api
"
;
import
{
useConfig
}
from
"
@/config
"
;
import
{
sleep
}
from
"
@/infra
"
;
...
...
@@ -14,7 +14,8 @@ export default async (start: ygopro.StocGameMessage.MsgStart) => {
// 先初始化`matStore`
matStore
.
selfType
=
start
.
playerType
;
const
opponent
=
start
.
playerType
===
ygopro
.
StocGameMessage
.
MsgStart
.
PlayerType
.
FirstStrike
start
.
playerType
===
PlayerType
.
FirstStrike
||
start
.
playerType
===
PlayerType
.
Observer
?
1
:
0
;
...
...
@@ -77,7 +78,7 @@ export default async (start: ygopro.StocGameMessage.MsgStart) => {
// 设置自己的额外卡组,信息是在waitroom之中拿到的
cardStore
.
at
(
ygopro
.
CardZone
.
EXTRA
,
1
-
opponent
)
.
forEach
((
card
)
=>
(
card
.
code
=
myExtraDeckCodes
.
pop
()
??
0
));
.
forEach
((
card
)
=>
(
card
.
code
=
window
.
myExtraDeckCodes
?
.
pop
()
??
0
));
if
(
matStore
.
isReplay
)
{
replayStart
();
...
...
src/service/room/handResult.ts
View file @
e38548ee
...
...
@@ -9,7 +9,7 @@ export default function handResult(pb: ygopro.YgoStocMsg) {
if
(
me
&&
op
)
{
me
.
moraResult
=
msg
.
meResult
;
op
.
moraResult
=
msg
.
opResult
;
}
else
{
}
else
if
(
roomStore
.
selfType
!==
ygopro
.
StocTypeChange
.
SelfType
.
OBSERVER
)
{
console
.
error
(
"
<HandResult>me or op is undefined
"
);
}
}
src/stores/matStore/store.ts
View file @
e38548ee
...
...
@@ -26,9 +26,9 @@ export const isMe = (controller: number): boolean => {
// 自己是后攻
return
controller
===
1
;
default
:
//
目前不可能出现这种情况
console
.
error
(
"
judgeSelf error
"
,
controller
,
matStore
.
selfType
);
return
false
;
//
自己是观战者
// 这里假设偶数方的玩家是自己
return
controller
%
2
==
0
;
}
};
...
...
src/ui/WaitRoom/index.tsx
View file @
e38548ee
...
...
@@ -138,8 +138,9 @@ export const Component: React.FC = () => {
/>
{
room
.
players
.
filter
((
player
)
=>
player
!==
undefined
&&
!
player
.
isMe
)
.
map
((
player
)
=>
(
.
map
((
player
,
idx
)
=>
(
<
PlayerZone
key=
{
idx
}
who=
{
Who
.
Op
}
player=
{
player
}
btn=
{
...
...
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