Ludo:海外飞行棋游戏玩法,文末附源码

news2024/11/23 4:07:37

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):链接 IM
    • initGame (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):链接 IM
    • startGame (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)(): 游戏结束显示排行榜

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/571062.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

手把手带你分析 (net.devh.boot.grpc 包下面的)服务端 Grpc 自动装配、服务注册的源码(Java版)

前言 昨天写过一篇关于如何使用 Grpc 的博客&#xff0c;出于好奇想知道 GrpcService、GrpcClient、GrpcGlobalServerInterceptor、GrpcGlobalClientInterceptor这些注解是如何生效的&#xff0c;以及服务注册的流程是怎样的&#xff0c;就简单过了一遍源码&#xff0c;帮助大家…

新人必看!手把手教你如何使用浏览器表格插件(下)

摘要&#xff1a;本文由葡萄城技术团队于博客园原创并首发。转载请注明出处&#xff1a;葡萄城官网&#xff0c;葡萄城为开发者提供专业的开发工具、解决方案和服务&#xff0c;赋能开发者。 前言 | 问题背景 作为一名优秀的打工人&#xff0c;Excel是大家上班中必不可少的办…

理解Linux TunTap设备

入门 TUN/TAP是操作系统内核中的虚拟网络设备&#xff0c;可以完成用户空间与内核空间的数据的交互。网络协议栈中的数据通过该设备可以进入到用户空间中&#xff0c;而用户空间中的程序通过该设备空间进入到内核空间的网络协议栈。 TUN模拟的是三层设备&#xff0c;操作三层…

chatgpt赋能python:Python主程序:提升编程效率与合作性的最佳选择

Python 主程序&#xff1a;提升编程效率与合作性的最佳选择 前言 Python 作为一门简单、易于学习并具备强大功能的编程语言&#xff0c;已经成为了最受欢迎的编程语言之一。Python 主程序不仅能够编写复杂的算法和进行数据处理&#xff0c;而且还可以实现广泛的应用&#xff…

基于SpringBoot+Uniapp的球队周边微信小程序

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取项目下载方式&#x1f345; 一、项目背景介绍&#xff1a; 随着微信小程序的兴起…

【jeecg-boot】jeecg-boot的一些功能扩展:

文章目录 一、Template里面将数组对象里面的值遍历>对象的key二、利用ES6的解构赋值互换数组数据&#xff1a;三、a-select实现可输入可下拉:四、a-table实现动态表头&#xff1a;五、jeecg-boot列自定义&#xff1a;六、jeecg-boot合计行&#xff1a; 一、Template里面将数…

Android 逆向工程,反编译心得

前言 apk的反编译是我们在Android开发中绕不开的一个坎&#xff0c;对于反编译这门技术&#xff0c;我们应该抱着学习的态度&#xff0c;学的越多&#xff0c;也越能防备别人反编译我们&#xff0c;这就是所谓的知己知彼吧&#xff0c;哈哈 需要准备的工具 Apktool&#xff…

centos下Harbor的安装(超详细+避坑)

前提 这篇文章讲的是在我的本地虚拟机上安装Harbor的一些过程和中途所遇到的一些问题和排除问题的情况说明&#xff1b;安装好的harbor的访问信息如下&#xff1a;http://192.168.45.146:8033/harbor&#xff08;admin/Harbor12345&#xff09;环境 本次所使用的环境和软件的各…

国外APP外包开发及上线流程

现在很多APP都做成全球通用版&#xff0c;尤其是一些小游戏类的APP&#xff0c;玩法全球基本都类似&#xff0c;在多个国家上线多个销售渠道。今天和大家分享一下Google Play上线流程及注意事项&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业的软件…

ChatGPT:AI时代的创造力激活

《你好&#xff0c;ChatGPT》是一本深入探索人工智能&#xff08;AI&#xff09;领域的畅销书籍&#xff0c;它以ChatGPT为切入点&#xff0c;系统地介绍了AI和AIGC的基础概念、技术原理、应用领域和未来展望。这本书通俗易懂&#xff0c;由浅入深&#xff0c;层层递进&#xf…

WMS仓储管理系统解决方案能帮助电子企业解决哪些问题

WMS仓储管理系统解决方案是一种针对仓库管理的软件系统&#xff0c;它能够有效地解决电子企业在仓储管理方面的问题。在电子行业&#xff0c;由于产品的生命周期较短&#xff0c;且需求变化快速&#xff0c;WMS仓库管理系统的应用对于电子企业的管理有着重要的意义。本文将探讨…

DATAV通过配置nginx代理实现https访问

DATAV通过配置nginx代理实现https访问 首先要确保你的 datav 和 datav_proxy 的界面能用http正常访问 在nginx中添加datav配置 server {listen 8181 ssl;server_name localhost;ssl_certificate server.crt;ssl_certificate_key server.key;ssl_session_cache …

“来此加密“:轻松在线申请多域名和泛域名SSL证书

启用SSL证书是网站安全的关键。它加密数据传输&#xff0c;防止黑客窃听和篡改。SSL证书提升网站可信度&#xff0c;增加用户信任。搜索引擎更青睐启用SSL证书的网站&#xff0c;提高可见性和流量。此外&#xff0c;SSL证书还防止钓鱼和恶意软件威胁&#xff0c;保护用户安全。…

A-21S吸金树脂在金矿尾水、镀金废水中回收金的应用

吸金树脂Tulsimer A-21S 一、技术介绍 传统上使用活性碳吸附金子&#xff0c;珍贵的金会被活性碳吸附于表面&#xff0c;再藉由洗涤或直接焚烧以回收金。使用离子交换树脂回收贵金属比活性碳还具有多方面的优势&#xff0c; 因为藉由特殊制造过程中&#xff0c; 我们可以在其结…

python---动态类型

动态类型&#xff1a;是指在程序运行过程中&#xff0c;变量的类型可能会发生改变。 a的类型随着程序运行过程中会发生改变。 后面写不写类型是无所谓的&#xff01; 相比之下静态类型的语言是更好的&#xff01; 代码注释 可以使用’‘’ ‘’‘ / #来对代码进行注释

03_堆+MAT工具

堆栈方法区的关系&#xff1a; HotSpot是使用指针的方式来访问对象&#xff1a; Java堆中会存放访问类元数据的地址 reference存储的就是对象的地址 三种JVM&#xff1a; Sun公司的HotSpotBEA公司的JRockitIBM公司的J9 VM 一、堆体系概述 Java7之前 Heap 堆&#xff1a;一个…

LabVIEWCompactRIO 开发指南36 确定“Clock Ticks”或模拟时间

LabVIEWCompactRIO 开发指南36 确定“Clock Ticks”或模拟时间 桌面执行节点可以控制模拟时间&#xff0c;因此开发人员可以使用模拟I/O在开发计算机上执行期间更改关键点的激励。要成功使用此功能&#xff0c;需要测量FPGA VI完成所需的时间&#xff0c;或者需要以直观地知道…

将矩阵各行顺序进行反排numpy.flipud()

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 将矩阵各行顺序进行反排 numpy.flipud() [太阳]选择题 请问关于以下代码的表述错误的是&#xff1f; import numpy as np a np.array([[1,2,3],[4,5,6],[7,8,9]]) print("【显示】a: \…

PLC/DCS系统中电磁干扰的来源及解决办法

自动化系统中所使用的各种类型DCS/PLC等自动化设备&#xff0c;有的是集中安装在控制室&#xff0c;有的是安装在生产现场和各种电机设备上&#xff0c;它们大多处在强电电路和强电设备所形成的恶劣电磁环境中。要提高这类控制系统可靠性&#xff0c;必须消除各种干扰才能有效保…

lwIP更新记08:TCP 回调函数中调用 tcp_abort 终于安全了

从 lwIP-1.4.0 开始&#xff0c;tcp 回调函数中调用 tcp_abort 函数终于安全了。 在此之前&#xff0c;如果从 tcp 回调函数中调用 tcp_abort&#xff0c;则会访问未分配的内存。 应用程序关闭连接&#xff0c;正常情况下是调用 tcp_close 函数&#xff0c;经过 4 次握手安全的…