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
1
Issues
1
List
Boards
Labels
Service Desk
Milestones
Merge Requests
2
Merge Requests
2
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
MyCard
Neos
Commits
3bfe5d4e
Commit
3bfe5d4e
authored
Mar 18, 2023
by
Chunchi Che
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feat/tribute' into 'main'
Feat/tribute See merge request
!144
parents
fb466b56
9e794fb0
Pipeline
#20772
passed with stages
in 14 minutes and 15 seconds
Changes
6
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
77 additions
and
1 deletion
+77
-1
neos-protobuf
neos-protobuf
+1
-1
src/api/ocgcore/idl/ocgcore.ts
src/api/ocgcore/idl/ocgcore.ts
+22
-0
src/api/ocgcore/ocgAdapter/protoDecl.ts
src/api/ocgcore/ocgAdapter/protoDecl.ts
+1
-0
src/api/ocgcore/ocgAdapter/stoc/stocGameMsg/mod.ts
src/api/ocgcore/ocgAdapter/stoc/stocGameMsg/mod.ts
+6
-0
src/api/ocgcore/ocgAdapter/stoc/stocGameMsg/selectTribute.ts
src/api/ocgcore/ocgAdapter/stoc/stocGameMsg/selectTribute.ts
+45
-0
src/service/duel/selectCard.ts
src/service/duel/selectCard.ts
+2
-0
No files found.
neos-protobuf
@
9711eef5
Subproject commit
3383e74b3f523574a91d4d41fa3a7a3602728cda
Subproject commit
9711eef553da455be0d01238dae7f026d8d5650e
src/api/ocgcore/idl/ocgcore.ts
View file @
3bfe5d4e
...
...
@@ -8618,6 +8618,7 @@ export namespace ygopro {
code
?:
number
;
location
?:
CardLocation
;
response
?:
number
;
release_param
?:
number
;
}
)
{
super
();
...
...
@@ -8639,6 +8640,9 @@ export namespace ygopro {
if
(
"
response
"
in
data
&&
data
.
response
!=
undefined
)
{
this
.
response
=
data
.
response
;
}
if
(
"
release_param
"
in
data
&&
data
.
release_param
!=
undefined
)
{
this
.
release_param
=
data
.
release_param
;
}
}
}
get
code
()
{
...
...
@@ -8666,10 +8670,17 @@ export namespace ygopro {
set
response
(
value
:
number
)
{
pb_1
.
Message
.
setField
(
this
,
3
,
value
);
}
get
release_param
()
{
return
pb_1
.
Message
.
getFieldWithDefault
(
this
,
4
,
0
)
as
number
;
}
set
release_param
(
value
:
number
)
{
pb_1
.
Message
.
setField
(
this
,
4
,
value
);
}
static
fromObject
(
data
:
{
code
?:
number
;
location
?:
ReturnType
<
typeof
CardLocation
.
prototype
.
toObject
>
;
response
?:
number
;
release_param
?:
number
;
}):
SelectAbleCard
{
const
message
=
new
SelectAbleCard
({});
if
(
data
.
code
!=
null
)
{
...
...
@@ -8681,6 +8692,9 @@ export namespace ygopro {
if
(
data
.
response
!=
null
)
{
message
.
response
=
data
.
response
;
}
if
(
data
.
release_param
!=
null
)
{
message
.
release_param
=
data
.
release_param
;
}
return
message
;
}
toObject
()
{
...
...
@@ -8688,6 +8702,7 @@ export namespace ygopro {
code
?:
number
;
location
?:
ReturnType
<
typeof
CardLocation
.
prototype
.
toObject
>
;
response
?:
number
;
release_param
?:
number
;
}
=
{};
if
(
this
.
code
!=
null
)
{
data
.
code
=
this
.
code
;
...
...
@@ -8698,6 +8713,9 @@ export namespace ygopro {
if
(
this
.
response
!=
null
)
{
data
.
response
=
this
.
response
;
}
if
(
this
.
release_param
!=
null
)
{
data
.
release_param
=
this
.
release_param
;
}
return
data
;
}
serialize
():
Uint8Array
;
...
...
@@ -8710,6 +8728,7 @@ export namespace ygopro {
this
.
location
.
serialize
(
writer
)
);
if
(
this
.
response
!=
0
)
writer
.
writeInt32
(
3
,
this
.
response
);
if
(
this
.
release_param
!=
0
)
writer
.
writeInt32
(
4
,
this
.
release_param
);
if
(
!
w
)
return
writer
.
getResultBuffer
();
}
static
deserialize
(
...
...
@@ -8735,6 +8754,9 @@ export namespace ygopro {
case
3
:
message
.
response
=
reader
.
readInt32
();
break
;
case
4
:
message
.
release_param
=
reader
.
readInt32
();
break
;
default
:
reader
.
skipField
();
}
...
...
src/api/ocgcore/ocgAdapter/protoDecl.ts
View file @
3bfe5d4e
...
...
@@ -37,6 +37,7 @@ export const MSG_SELECT_IDLE_CMD = 11;
export
const
MSG_SELECT_PLACE
=
18
;
export
const
MSG_MOVE
=
50
;
export
const
MSG_SELECT_CARD
=
15
;
export
const
MSG_SELECT_TRIBUTE
=
20
;
export
const
MSG_SELECT_CHAIN
=
16
;
export
const
MSG_SELECT_EFFECTYN
=
12
;
export
const
MSG_SELECT_POSITION
=
19
;
...
...
src/api/ocgcore/ocgAdapter/stoc/stocGameMsg/mod.ts
View file @
3bfe5d4e
...
...
@@ -14,6 +14,7 @@ import MsgHintAdapter from "./hint";
import
MsgSelectIdleCmdAdapter
from
"
./selectIdleCmd
"
;
import
MsgSelectPlaceAdapter
from
"
./selectPlace
"
;
import
MsgSelectCardAdapter
from
"
./selectCard
"
;
import
MsgSelectTributeAdapter
from
"
./selectTribute
"
;
import
MsgSelectChainAdapter
from
"
./selectChain
"
;
import
MsgSelectEffectYnAdapter
from
"
./selectEffectYn
"
;
import
MsgSelectPositionAdapter
from
"
./selectPosition
"
;
...
...
@@ -90,6 +91,11 @@ export default class GameMsgAdapter implements StocAdapter {
break
;
}
case
GAME_MSG
.
MSG_SELECT_TRIBUTE
:
{
gameMsg
.
select_card
=
MsgSelectTributeAdapter
(
gameData
);
break
;
}
case
GAME_MSG
.
MSG_SELECT_CHAIN
:
{
gameMsg
.
select_chain
=
MsgSelectChainAdapter
(
gameData
);
...
...
src/api/ocgcore/ocgAdapter/stoc/stocGameMsg/selectTribute.ts
0 → 100644
View file @
3bfe5d4e
import
{
ygopro
}
from
"
../../../idl/ocgcore
"
;
import
{
BufferReaderExt
}
from
"
../../bufferIO
"
;
import
MsgSelectCard
=
ygopro
.
StocGameMessage
.
MsgSelectCard
;
/*
* Msg Select Tribute
*
* @param - see: https://code.mycard.moe/mycard/neos-protobuf/-/blob/main/idl/ocgcore.neos-protobuf
* @usage - 玩家可选择的祭品
* */
export
default
(
data
:
Uint8Array
)
=>
{
const
reader
=
new
BufferReaderExt
(
data
);
const
player
=
reader
.
inner
.
readUint8
();
const
cancelable
=
reader
.
inner
.
readUint8
()
!=
0
;
const
min
=
reader
.
inner
.
readUint8
();
const
max
=
reader
.
inner
.
readUint8
();
const
count
=
reader
.
inner
.
readUint8
();
const
msg
=
new
MsgSelectCard
({
player
,
cancelable
,
min
,
max
});
for
(
let
i
=
0
;
i
<
count
;
i
++
)
{
const
code
=
reader
.
inner
.
readUint32
();
const
controler
=
reader
.
inner
.
readUint8
();
const
location
=
reader
.
inner
.
readUint8
();
const
sequence
=
reader
.
inner
.
readUint8
();
const
release_param
=
reader
.
inner
.
readUint8
();
msg
.
cards
.
push
(
new
MsgSelectCard
.
SelectAbleCard
({
code
,
location
:
new
ygopro
.
CardLocation
({
controler
,
location
,
sequence
,
}),
response
:
i
,
release_param
,
})
);
}
return
msg
;
};
src/service/duel/selectCard.ts
View file @
3bfe5d4e
...
...
@@ -16,6 +16,8 @@ export default (selectCard: MsgSelectCard, dispatch: AppDispatch) => {
const
max
=
selectCard
.
max
;
const
cards
=
selectCard
.
cards
;
// TODO: handle release_param
dispatch
(
setCheckCardModalMinMax
({
min
,
max
}));
dispatch
(
setCheckCardModalOnSubmit
(
"
sendSelectCardResponse
"
));
...
...
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