微信小程序实现狼人杀小游戏的示例详解

 更新时间:2022年03月16日 10:17:09   作者:失散多年的哥哥  
狼人杀是一款多人参与的,通过语言描述推动、较量口才和分析判断能力的策略类桌面游戏。本文将利用小程序实现这一游戏,需要的可以参考一下

一、项目展示

狼人杀是一款多人参与的,通过语言描述推动、较量口才和分析判断能力的策略类桌面游戏

玩家人数适于4-18人参与

主要角色有:狼人 、预言家 、平民 、女巫 、猎人 、白痴 、守卫 、骑士等

同时还有众多的玩家形象

各角色的职能介绍

设置游戏人数和选择对应角色

开启游戏环节

二、首页

首页是选择游戏人数的页面

不同人数会分配不同的角色数量

常驻角色有狼人、村民、预言家、女巫、猎人

当游戏人数达到11人时将出现丘比特

UI代码如下:

<!--index.wxml-->
<view class="container">
  <view class="setting">
    <image class="logo" src="{{logo}}"></image>
    <form action="">
      <picker range="{{array}}" value="{{index}}" bindchange="gameNumberChange">
        <text class="picker">选择游戏人数:</text>
        <text wx:if="{{array[index] < 10}}">{{" " + array[index]}}</text>
        <text wx:else>{{array[index]}}</text>
      </picker>
      <view class="role-config" wx:for="{{config}}">
        <image class="role-logo" src="{{item.role.logo}}"></image>
        {{item.role.name}} x {{item.count}}
      </view>
    </form>
  </view>
  <button type="primary" bindtap="startGame">开始游戏</button>
</view>

效果如下:

三、游戏页

在进入游戏界面之前,玩家需要抽取自己对应的角色牌

之后才是跳转到游戏的界面

角色选取界面部分代码如下:

<view class="container">
    <block wx:if="{{isChoosing}}">
        <view class="inner-container">
            <view class="swiper-indicator">{{swiperCurrent}}/{{roles.length}}</view>
            <swiper bindchange="swiperCurrentChange">
                <block wx:for="{{roles}}">
                    <swiper-item>
                        <view class="item-container">
                            <view class="side-space"></view>
                            <image src="{{cover}}" class="cover"></image>
                            <view class="side-space"></view>
                        </view>
                    </swiper-item>
                </block>
            </swiper>
        </view>
        <button type="primary" bindtap="chooseRole">选择这张牌</button>
    </block>
    <block wx:else>
        <view class="inner-container">
            <view class="role-logo-container">
                <image src="{{choosedRole.logo}}" class="role-logo" animation="{{roleLogoAnimationData}}"></image>
            </view>
            <view class="role-name">你的角色是: {{choosedRole.name}}</view>
            <view class="role-description">{{choosedRole.description}}</view>
        </view>
        <button type="primary" bindtap="setReady">准备好了</button>
    </block>
</view>

效果展示:

进入游戏后,有多个白天黑夜的转换环节,狼人可以在黑夜中淘汰选手

效果如下:

四、特殊角色

上面的效果是普通村民和狼人的

其中,神职人员有着不同的技能

首先是女巫

女巫有两瓶药,一瓶救命一瓶杀人

另外是猎人

猎人在每轮可以猎杀掉一名玩家

具体的介绍就到这里了,是不是很有趣呢

五、源码

源码获取链接 提取码:1234

到此这篇关于微信小程序实现狼人杀小游戏的示例详解的文章就介绍到这了,更多相关小程序狼人杀内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • JavaScript实现PC端横向轮播图

    JavaScript实现PC端横向轮播图

    这篇文章主要为大家详细介绍了JavaScript实现PC端横向轮播图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • 下一代Bootstrap的5个特点 超酷炫!

    下一代Bootstrap的5个特点 超酷炫!

    下一代Bootstrap的5个特点,超酷炫,你还犹豫什么,赶紧来学习吧
    2016-06-06
  • JS制作可以选项卡切换的年历

    JS制作可以选项卡切换的年历

    这篇文章主要为大家分享了JS制作类似于选项卡切换的年历,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • js操作数组函数实例小结

    js操作数组函数实例小结

    这篇文章主要介绍了js操作数组函数,实例分析了JavaScript针对数组删除指定元素、去重及删除指定下标元素的实现方法,需要的朋友可以参考下
    2015-12-12
  • JS延时器提示框的应用实例代码解析

    JS延时器提示框的应用实例代码解析

    这篇文章主要介绍了JS延时器提示框的应用实例代码解析 的相关资料,需要的朋友可以参考下
    2016-04-04
  • js获取光标位置的最新方法

    js获取光标位置的最新方法

    这篇文章主要给大家介绍了关于js获取光标位置的最新方法,获取光标位置,最常用的方法就是使用Selection对象和Range对象,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • JavaScript flash复制库类 Zero Clipboard

    JavaScript flash复制库类 Zero Clipboard

    开发中经常会用到复制的功能,在 IE 下实现比较简单。但要想做到跨浏览器比较困难了。
    2011-01-01
  • javascript:void(0)用法及常见问题分析

    javascript:void(0)用法及常见问题分析

    javascript:void(0) 在某些情况下会有浏览器不兼容的bug。下面我们先来看下javascript:void(0) 的基础介绍及用法,然后再来看使用它会出现什么问题,该怎么解决,感兴趣的朋友跟随小编一起看看吧
    2023-10-10
  • Javascript alert消息换行的方法

    Javascript alert消息换行的方法

    这篇文章介绍了Javascript alert消息换行的方法,有需要的朋友可以参考一下
    2013-08-08
  • 巧用replace将文字表情替换为图片

    巧用replace将文字表情替换为图片

    选择表情插入文本域的时候,显示的是类似[哈哈]这样的字符串,下面是把表情字符串转换为图片表情的一种方法
    2014-04-04

最新评论