Commit 9000063c authored by chechunchi's avatar chechunchi

add ctos select_option adapter and fix service

parent c0d3a25a
...@@ -7,6 +7,7 @@ import adaptSelectCardResponse from "./selectCard"; ...@@ -7,6 +7,7 @@ import adaptSelectCardResponse from "./selectCard";
import adaptSelectChainResponse from "./selectChain"; import adaptSelectChainResponse from "./selectChain";
import adaptSelectEffectYnResponse from "./selectEffectYn"; import adaptSelectEffectYnResponse from "./selectEffectYn";
import adaptSelectPositionResponse from "./selectPosition"; import adaptSelectPositionResponse from "./selectPosition";
import adaptSelectOptionResponse from "./selectOption";
/* /*
* CTOS CTOS_RESPONSE * CTOS CTOS_RESPONSE
...@@ -52,6 +53,11 @@ export default class CtosResponsePacket extends YgoProPacket { ...@@ -52,6 +53,11 @@ export default class CtosResponsePacket extends YgoProPacket {
break; break;
} }
case "select_option": {
extraData = adaptSelectOptionResponse(response.select_option);
break;
}
default: { default: {
break; break;
} }
......
import { ygopro } from "../../../idl/ocgcore";
import { BufferWriter } from "../../bufferIO";
export default (response: ygopro.CtosGameMsgResponse.SelectOptionResponse) => {
const array = new Uint8Array(4);
const writer = new BufferWriter(array, true);
writer.writeUint32(response.code);
return array;
};
...@@ -202,3 +202,16 @@ export function sendSelectPositionResponse(value: ygopro.CardPosition) { ...@@ -202,3 +202,16 @@ export function sendSelectPositionResponse(value: ygopro.CardPosition) {
socketMiddleWare({ cmd: socketCmd.SEND, payload }); socketMiddleWare({ cmd: socketCmd.SEND, payload });
} }
export function sendSelectOptionResponse(value: number) {
const response = new ygopro.YgoCtosMsg({
ctos_response: new ygopro.CtosGameMsgResponse({
select_option: new ygopro.CtosGameMsgResponse.SelectOptionResponse({
code: value,
}),
}),
});
const payload = new GameMsgResponse(response).serialize();
socketMiddleWare({ cmd: socketCmd.SEND, payload });
}
...@@ -12,6 +12,7 @@ import onMsgSelectCard from "./selectCard"; ...@@ -12,6 +12,7 @@ import onMsgSelectCard from "./selectCard";
import onMsgSelectChain from "./selectChain"; import onMsgSelectChain from "./selectChain";
import onMsgSelectEffectYn from "./selectEffectYn"; import onMsgSelectEffectYn from "./selectEffectYn";
import onMsgSelectPosition from "./selectPosition"; import onMsgSelectPosition from "./selectPosition";
import onMsgSelectOption from "./selectOption";
export default function handleGameMsg(pb: ygopro.YgoStocMsg) { export default function handleGameMsg(pb: ygopro.YgoStocMsg) {
const dispatch = store.dispatch; const dispatch = store.dispatch;
...@@ -90,6 +91,12 @@ export default function handleGameMsg(pb: ygopro.YgoStocMsg) { ...@@ -90,6 +91,12 @@ export default function handleGameMsg(pb: ygopro.YgoStocMsg) {
break; break;
} }
case "select_option": {
const selectOption = msg.select_option;
onMsgSelectOption(selectOption, dispatch);
break;
}
default: { default: {
break; break;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment