更新记录
1.0.1(2025-11-14)
1.0.1 适配Vue3
1.0.0(2025-11-14)
1.0.0
平台兼容性
uni-app(3.6.14)
| Vue2 | Vue2插件版本 | Vue3 | Vue2插件版本 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|---|---|
| √ | 1.0.0 | √ | 1.0.0 | √ | √ | √ | - | √ | √ | - |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|
| √ | - | - | - | - | - | - | - | - | - | - |
uni-app x(3.6.14)
| Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
背了个锅 (jqk-carry-can)
一个有趣的办公室主题接道具小游戏,玩家需要控制小人接住掉落的道具,通过合成获得大黑锅来通关,同时要避开负面道具。
🎮 游戏介绍
在办公室的职场中,你需要接住各种掉落的道具,通过合成系统获得3个大黑锅来通关。随着关卡提升,游戏难度逐渐增加,负面道具的出现概率也会提高。通过不断通关,你可以从实习生一路晋升到董事长!
📖 游戏规则与玩法
基本操作
- 移动小人:在屏幕上左右滑动或拖动,控制底部的小人移动
- 接道具:小人接触到掉落的道具即可获得
- 游戏目标:收集3个大黑锅即可通关
道具系统
正向道具(可合成)
道具可以2合1进行合成,合成路径如下:
- 💻 笔记本电脑 (Level 1) → 2个合成1个公文包
- 💼 公文包 (Level 2) → 2个合成1个奖杯
- 🏆 奖杯 (Level 3) → 2个合成1个大饼
- 🥞 大饼 (Level 4) → 2个合成1个大黑锅
- ⚫ 大黑锅 (Level 5) → 最终目标,收集3个即可通关
特殊正向道具
- ⭐ 绩效A:可以抵消一次绩效C
- 🛡️ 保护盾:可以抵消一次TNT攻击
- 🧲 磁铁:持续5秒,自动吸引周围的正向道具
- ⏱️ 时间减缓:持续4秒,道具掉落速度减半
负面道具
- 📄 裁员通知:接到后立即游戏失败
- 💣 TNT:接到后立即游戏失败(可用保护盾抵消)
- ⚠️ 绩效C:累积3次后游戏失败(可用绩效A抵消)
职级系统
玩家从最低职级开始,通过通关不断提升职级:
- 实习生
- 普通职员
- 公司骨干
- 老油条
- 部门经理
- 总经理
- 董事长(最高职级)
职级提升规则:
- 第一关通过后,进入第二关,职级不变
- 第二关及以后通过,职级提升一级
- 达到董事长后,继续通关会统计达成董事长的次数
- 游戏失败且未复活时,职级会恢复至实习生
关卡系统
- 第一关:道具掉落间隔1秒,负面道具概率8%
- 第二关及以后:
- 道具掉落间隔0.5秒(速度更快)
- 游戏速度提升1.5倍
- 负面道具概率逐步提升(每关+2%,最高30%)
连击系统
连续接到道具会触发连击效果:
- 连击会增加道具掉落速度(每2连击增加0.5速度,最高增加10)
- 连击超时时间为2秒
- 连击数会在游戏界面实时显示
游戏失败与复活
游戏在以下情况会失败:
- 接到裁员通知
- 接到TNT(无保护盾时)
- 绩效C累积3次
复活机制:
- 游戏失败后,可以观看广告复活
- 复活后会恢复失败前的游戏状态(关卡、职级、道具、特殊状态等)
- 复活后进入暂停状态,玩家可以选择继续游戏或退出
💰 广告收益接入指南
1. 启用复活功能
在组件中启用复活功能:
<template>
<jqk-carry-can
:enable-revive="true"
@revive-request="handleReviveRequest"
></jqk-carry-can>
</template>
2. 处理复活请求(📢:广告接入为伪代码,具体逻辑请参照相关文档各自实现)
监听 revive-request 事件,在事件回调中播放广告:
methods: {
handleReviveRequest(event) {
// event.callback 是回调函数,用于通知游戏是否可以复活
// 参数:true 表示可以复活,false 表示不能复活
// 示例:使用 uni-app 激励视频广告
const rewardedVideoAd = uni.createRewardedVideoAd({
adUnitId: 'your-ad-unit-id' // 替换为你的广告位ID
})
// 监听广告加载成功
rewardedVideoAd.onLoad(() => {
console.log('广告加载成功')
})
// 监听广告加载失败
rewardedVideoAd.onError((err) => {
console.error('广告加载失败', err)
event.callback(false) // 广告加载失败,不允许复活
})
// 显示广告
rewardedVideoAd.show()
.then(() => {
console.log('广告显示成功')
})
.catch((err) => {
console.error('广告显示失败', err)
// 如果广告未加载完成,先加载再显示
rewardedVideoAd.load()
.then(() => rewardedVideoAd.show())
.catch((err) => {
console.error('广告加载或显示失败', err)
event.callback(false)
})
})
// 监听用户点击关闭广告
rewardedVideoAd.onClose((res) => {
if (res && res.isEnded) {
// 用户完整观看了广告,允许复活
event.callback(true)
} else {
// 用户提前关闭广告,不允许复活
event.callback(false)
}
})
}
}
3. 支持的广告平台
微信小程序
// 使用微信小程序激励视频广告
const videoAd = wx.createRewardedVideoAd({
adUnitId: 'your-ad-unit-id'
})
videoAd.onClose((res) => {
if (res && res.isEnded) {
event.callback(true)
} else {
event.callback(false)
}
})
videoAd.show().catch(() => {
videoAd.load().then(() => videoAd.show())
})
字节跳动小程序
// 使用字节跳动激励视频广告
const videoAd = tt.createRewardedVideoAd({
adUnitId: 'your-ad-unit-id'
})
videoAd.onClose((res) => {
if (res && res.isEnded) {
event.callback(true)
} else {
event.callback(false)
}
})
videoAd.show().catch(() => {
videoAd.load().then(() => videoAd.show())
})
App端(uni-app)
// 使用 uni-app 激励视频广告(需要配置广告插件)
// 支持:穿山甲、广点通等
const rewardedVideoAd = plus.ad.createRewardedVideoAd({
adpid: 'your-adpid'
})
rewardedVideoAd.onClose((e) => {
if (e && e.isEnded) {
event.callback(true)
} else {
event.callback(false)
}
})
rewardedVideoAd.load(() => {
rewardedVideoAd.show()
}, (err) => {
console.error('广告加载失败', err)
event.callback(false)
})
4. 收益优化建议
- 广告展示时机:游戏失败时是展示激励视频广告的最佳时机,用户有强烈的复活需求
- 广告频率控制:建议限制每日复活次数,避免用户过度依赖广告
- 用户体验:确保广告加载速度快,避免长时间等待
- 多平台适配:根据不同平台选择合适的广告SDK,确保收益最大化
5. 完整示例
<template>
<view class="page">
<jqk-carry-can
:enable-revive="true"
@revive-request="handleReviveRequest"
></jqk-carry-can>
</view>
</template>
<script>
import jqkCarryCan from '@/uni_modules/jqk-carry-can/components/jqk-carry-can/jqk-carry-can.vue'
export default {
components: {
jqkCarryCan
},
methods: {
handleReviveRequest(event) {
// #ifdef MP-WEIXIN
// 微信小程序
const videoAd = wx.createRewardedVideoAd({
adUnitId: 'your-weixin-ad-unit-id'
})
videoAd.onClose((res) => {
event.callback(res && res.isEnded)
})
videoAd.show().catch(() => {
videoAd.load().then(() => videoAd.show())
})
// #endif
// #ifdef APP-PLUS
// App端
const rewardedVideoAd = plus.ad.createRewardedVideoAd({
adpid: 'your-app-adpid'
})
rewardedVideoAd.onClose((e) => {
event.callback(e && e.isEnded)
})
rewardedVideoAd.load(() => {
rewardedVideoAd.show()
}, () => {
event.callback(false)
})
// #endif
// #ifdef MP-TOUTIAO
// 字节跳动小程序
const videoAd = tt.createRewardedVideoAd({
adUnitId: 'your-toutiao-ad-unit-id'
})
videoAd.onClose((res) => {
event.callback(res && res.isEnded)
})
videoAd.show().catch(() => {
videoAd.load().then(() => videoAd.show())
})
// #endif
}
}
}
</script>
📊 数据统计
游戏会自动保存以下玩家数据:
- 当前职级
- 游戏次数
- 最高职级
- 通关次数
- 达成董事长次数
数据使用 uni.getStorageSync 和 uni.setStorageSync 进行本地存储。
🎯 游戏技巧
- 优先接特殊道具:磁铁和时间减缓可以大大提高游戏效率
- 合理使用保护盾:保留保护盾来应对TNT
- 注意绩效C:及时接绩效A来抵消绩效C
- 连击加成:保持连击可以加快游戏进度
- 关卡规划:第一关相对简单,可以多收集道具;第二关开始难度提升,需要更谨慎

收藏人数:
购买源码授权版(
试用
使用 HBuilderX 导入示例项目
赞赏(0)
下载 10
赞赏 0
下载 10988170
赞赏 1800
赞赏
京公网安备:11010802035340号