Ludo起源于印度的古老游戏Pachisi,玩法类似国内的飞行棋,是一种适合2至4人玩的战略类棋盘游戏。
其游戏规则也很简单:对局中,每人有2颗或4颗棋子,通过投骰子的方式决定前进的步数,在前进过程中赶上对手即可将其淘汰回营地,谁先将棋子全部走到自己的大本营谁就赢了。
玩法介绍:分为经典模式和快速模式,棋子可选择2个/4个。
投掷出6点可起飞,且奖励一次投掷机会。如果连续掷出三个6点则本回合结束。踩中对手可淘汰至营地,且奖励一次投掷机会。
*在画有星星的安全区内,棋子不会被吃掉。
房主如果选择了趣味道具,那么棋盘中将有可能出现三种道具,分别为“金色骰子”、“吸铁石”和“炸弹”,它们有着不同的功能。
玩家拾取道具“金色骰子”后,投掷必定获得6点;
拾取道具“吸铁石”,自动前进8格,直到被其他棋子拦住;
拾取道具“炸弹”,自动轰炸前方8格目标,将对方淘汰回营地。
只有指定点数才可到达终点,且奖励一次投掷机会。
快速赛只需要1个棋子到达终点即可获胜;
而经典赛需要全部棋子到达终点才能获胜。
游戏结束,到达终点的棋子越多,未到达终点的棋子走得越远,排名越高。
Ludo的游戏规则虽然简单,但游戏的随机性较强,想要获胜除了运气还要合理布局棋子的先后顺序和移动速度,是一款休闲性与策略性并重的游戏。飞行棋玩腻了想要换个花样的小伙伴们可以试试玩Ludo哦!
群玩PAAS游戏平台新增了Ludo小游戏,有快速和经典两种游戏模式可选,房间创建者也可以选择棋子的数量和是否加入趣味道具,多样的玩法组合满足用户的不同游戏体验。除了Ludo之外,还提供多种类多玩法的小游戏,支持多场景多行业个性化定制,一键接入app更好玩!
群玩 SDK
安装依赖
npm install
项目运行
npm run serve
项目打包
npm run build
使用文档
一、引入资源
<script src="./gp-js-sdk.min.js"></script>
二、初始化
GPJSSDK.ini({
token,
appid,
im
})
三、接口 API 文档
GPJSSDK
:顶层全局对象,包含全端可用的属性及方法
1. 全局可用
-
GPJSSDK.Env
(Object):宿主环境变量,包含以下属性ua
(String):返回当前宿主环境完整 userAgent 字符串;os
(String):返回操作系统类型,包含以下枚举值:ios / android / mac / windows
-
GPJSSDK.ini
(Object):初始化GPJSSDK.ini({ mode: "dev", //可选参数 dev product,product模式下不会出现调试工具 // debug: true, //默认配置开启 debug: { type: "vconsole", //可选配置 eruda vconsole enable: true, }, });
-
GPJSSDK.login
(Object):登录GPJSSDK.login({ token, appid, im });
-
GPJSSDK.Util
(Object):常用工具函数集getQuery
(Function)(querystringKey):通过传递参数名,获取地址栏通过 querystring 格式传递的参数值;formatTime
(Function)(timestamp,format):格式化时间戳requestAjax
(Function)(config):ajax 请求
-
GPJSSDK.showToast
(Function)(text,duration,overlay):全局 toast,文本内容,持续时间,是否可穿透蒙层点击 -
GPJSSDK.showConfirm
(Function)(text,cb):全局 Confirm,文本内容,事件回调(0和1) -
GPJSSDK.Application
(Object):应用基本信息
2. webSocket 方法
GPJSSDK.Ws
(Object):webSocket 方法new Ws
(Function)(im,cb):构造实例,传入 im 链接、回调函数onmessage
(Function)(cb):接收 WebSocket 消息send
(Function)():发送消息onopen
(Function)():监听成功
3. 游戏方法
GPJSSDK.Game
(Object):游戏方法link
(Function)(config):链接 IMinitGame
(Function)(accountSecToken, sessionId):初始化游戏状态joinGame
(Function)(config):加入游戏selectGame
(Function)(gameType):选择游戏,传入游戏类型startGame
(Function)(config):开始游戏endGame
(Function)(config):结束游戏outRoom
(Function)(config):退出房间heartbeat
(Function)(config):心跳answerGame
(Function)(msgData, currentSize):用户回答,传入答案、当前题次knowAction
(Function)(data):模型动作,传入原数据status
(Function)():游戏状态start
(Function)(duration):游戏开始,返回开始倒计时秒数getQuestion
(Function)():游戏题目消息getAnswer
(Function)():游戏答案消息answerInfo
(Function)():答题消息getMembers
(Function)(list,type):成员列表end
(Function)(): 游戏结束
极速飞行棋
GPJSSDK.FlyingChess
(Object):游戏方法link
(Function)(config):链接 IMstartGame
(Function)():开始游戏upSeat
(Function)(num):上座,传入座位号,座位号自己定downSeat
(Function)():下座getSeats
(Function)():获取座位上成员rock
(Function)(num):摇骰子,传入骰子点数(1-6),savePlane
(Function)({ id:123, pathNum:50,//pathNum和status有传就会有更新,不传或者null才不会更新 status:1 },): 保存飞机变动selectPlane
(Function)({"planeIds":[5446456,7984531],//选择要执行的飞机id,数组形式,长度1为单架,2是两架并着走 "delayTime":2,//秒,延时接收飞机信息,不传或者0则不用延时}): 选择飞机endGame
(Function)():结束游戏outRoom
(Function)():退出房间flyAction
(Function)(config):模型动作,传入原数据message
(Function)(info): 通知消息seat
(Function)(info): 座位信息planes
(Function)(info): 飞机消息playerRock
(Function)(info): 让用户摇骰子diceNum
(Function)(num, color): 骰子点数selectAir
(Function)(num, color, limit): 让用户选择飞机planesFly
(Function)(num, planes): 操作飞机gameMessage
(Function)(info): 游戏过程消息提示ranking
(Function)(): 游戏结束显示排行榜