1.0.1 • Published 1 year ago

@tripmini/vehicle-gs-core v1.0.1

Weekly downloads
-
License
ISC
Repository
-
Last release
1 year ago

前置服务

  • 需要后端搭建云游戏相关服务 (用于链接云游戏、查询排队情况)。

云游戏服务

安装

npm install --save @tripmini/vehicle-gs-core

示例

import Tcg from "@tripmini/vehicle-gs-core";

/* 云游戏配置参数 */
const gameId = "game-japxh18e";
const groupId = "cgg-m72vy27d";
const gameEnv = "pro";
const userId = "11111111888888888899999999";
const appid = 1255598736;

/* 初始化云游戏 */
Tcg({
  appid,
  mount: "mount-point",
  userId,
  gameId,
  groupId,
  gameEnv,
  async connectGame(data) {
    const res = await getServerSession(data);
    return res.data;
  },
  async queryQueueInfo(data) {
    const res = await queueInfo(data);
    return res.data;
  },
  gameCallback: {
    onErrorCallBack() {},
    onDisconnectCallback() {},
    onConnectFail() {},
    onConnectSuccess(TcgClient) {
      console.log("cb onConnectSuccess ===> ", TcgClient);
    },
    onDataChannelConnected(tcgConnect) {
      console.log("cb onDataChannelConnected ===> ", tcgConnect);
    },
    onGameMessage(msg) {
      console.log("cb msg ===> ", msg);
    },
    onGameSizeInitSuccess() {
      console.log("cb onDataChannelConnected ===> ");
    },
    onNetworkChange() {},
  },
});

参数

Tcg

参数名说明是否必传类型
appid云游戏 idYstring
mount云游戏挂载点的 HTML 元素 IDYstring
userId当前设备唯一标志Ystring
gameId游戏 IDYstring
groupId游戏分组 IDYstring
gameEnv游戏环境Ystring
connectGame链接云游戏服务的 异步函数 需要返回请求结果Yfunction
queryQueueInfo查询排队信息的 异步函数 需要返回请求结果Yfunction
gameCallback云游戏事件回调对象Nobject

gameCallback

参数名说明回调参数是否必传类型
onErrorCallBack浏览器不兼容 WebRtc 时调用Nfunction
onDisconnectCallback断开/被踢触发此回调参考链接Nfunction
onConnectFail连接失败回调参考链接Nfunction
onConnectSuccess连接成功回调TcgClientNfunction
onDataChannelConnected消息通道建立成功回调TcgConnectNfunction
onGameMessage接收到云游戏推送消息时回调msgNfunction
onGameSizeInitSuccess自适应屏幕尺寸成功后回调Nfunction
onNetworkChange网络状态变化参考链接Nfunction

参考链接


SDK 实例

  • TcgClient TCGSDK 初始化
  • TcgConnect 链接游戏、相互通信
  • TcgControl 交互事件、初始事件处理

发送指令 TcgConnect

const msg: string | object = "send code";
TcgConnect.sendDataMessage(msg);

虚拟摇杆插件 (可选)

示例

import { Joystick } from "@tripmini/vehicle-gs-core";

Joystick.init({
  mode: "dynamic",
  size: 80,
  zone: joyCon,
  position: { top: "100px", left: "100px" },
  joystickImg: { back, front },
  event: {
    start(evt, nipple) {
      console.log("start ===> ", evt, nipple);
    },
    move(evt, nipple) {
      const { direction } = nipple;
      console.log("start ===> ", evt, nipple);
    },
    end(evt, nipple) {
      console.log("start ===> ", evt, nipple);
    },
});

参数

init

参数名说明可选值是否必传类型
mode摇杆模式dynamic、static 默认:dynamicNstring
size摇杆模式80 默认:80Nnumber
zone摇杆模式divNDOM
position摇杆模式{ top: "100px", left: "100px" }Nobject
joystickImg摇杆模式{ back, front }Nobject
event摇杆模式{ start, move, end }Nobject

mode = dynamic 时 position 将被忽略

1.0.1

1 year ago

1.0.0

1 year ago