|
用命令方块实现,每隔20分钟给所有玩家一个绿宝石
在 **基岩版(Minecraft Bedrock Edition)** 中,可以使用 **命令方块+计分板(scoreboard)+时间检测** 实现 **每 20 分钟(1200 秒)自动给所有玩家 1 颗绿宝石**。
---
## **实现步骤**
你需要 **3 个命令方块** 来完成:
1. **第一个:计时器增加**(重复命令方块)
2. **第二个:检查时间**(连锁命令方块)
3. **第三个:重置计时器**(连锁命令方块)
---
### **1️⃣ 先创建计分板**
在聊天栏输入:
```mcfunction
scoreboard objectives add Timer dummy 计时器
```
这将创建一个名为 **Timer** 的计分板。
---
### **2️⃣ 放置 3 个命令方块**
#### **🔹 第一个命令方块(增加时间)**
- **类型**:**重复(Repeat)**
- **条件**:**无条件(Unconditional)**
- **状态**:**始终活动(Always Active)**
延迟设置为:1200
- **指令**:
```mcfunction
scoreboard players add Global Timer_money 1
```
- 这个命令会 **每分钟增加 1**(因为命令方块 **每分执行 1200 次**)。
---
#### **🔹 第二个命令方块(检测是否到 20 分钟)**
- **类型**:**连锁(Chain)**
- **条件**:**条件(Conditional)**
- **状态**:**始终活动(Always Active)**
- **指令**:
```mcfunction
execute if score Global Timer matches 19.. run give @a emerald 1
```
- 当 `Timer` 计数到 **20**(即 **600 秒 = 20 分钟**)时,给所有玩家 **1 颗绿宝石**。
---
#### **🔹 第三个命令方块(消息提醒)**
- **类型**:**连锁(Chain)**
- **条件**:**无条件(Unconditional)**
- **状态**:**始终活动(Always Active)**
- **指令**:
```mcfunction
execute if score Global Timer matches 19.. run say §2欢迎来到墨山游侠服务器,您的在线奖励已发放!
```
§c 代表红色,支持的颜色代码有:§0(黑)、§1(深蓝)、§2(深绿)等。
#### **🔹 第四个命令方块(重置计时器)**
- **类型**:**连锁(Chain)**
- **条件**:**无条件(Unconditional)**
- **状态**:**始终活动(Always Active)**
- **指令**:
```mcfunction
execute if score Global Timer matches 19.. run scoreboard players set Global Timer 0
```
- 这个命令会 **把计时器归零**,让它重新开始计时。
---
## **完整逻辑**
1. `Timer` **每秒 +1**。
2. **当 `Timer` 达到 20**(20 分钟):
- 给所有玩家 **1 颗绿宝石**。
- **重置 `Timer` 为 0**,重新开始计时。
3. **循环执行**,每 **20 分钟** 给玩家绿宝石。
---
## **如何使用**
1. **输入 `/scoreboard objectives add Timer dummy 计时器`**(只需做一次)。
2. **放置 3 个命令方块**,按照上面顺序 **连接**。
3. **启动第一个命令方块(Repeat)**,系统会 **自动循环** 送绿宝石。
---
这样,所有在线玩家都会**每 20 分钟** 自动获得 1 颗绿宝石 💎!
职位薪贴
增加职位薪贴
增加变量:
创建计分板
rank:用于标识玩家职位
my_timeer:用于表示玩家在线时间
/scoreboard objectives add rank dummy
/scoreboard objectives add my_timer dummy
给有职位的玩家设置职位:
手动给某个玩家(假设玩家名为 Steve)设置职位:
/scoreboard players set 墨山游侠001 rank 2
/scoreboard players set 弓钅 rank 2
/scoreboard players set 强悍的椰子56 rank 1
/scoreboard players set Kaannis rank 1
(你可以用不同的 rank 值代表不同职位。)
命令方块一:
循环计数:一分钟执行一次,循环,保持启动,延迟1200
/scoreboard players add @a my_timer 1
命令方块二:
每20分钟发放一个绿宝石
命令方块(连锁命令方块,Always Active)
作用: 每 24000 ticks(20 分钟)发放绿宝石
/give @a[scores={rank=1,my_timer=20}] emerald 3
命令方块三:
/give @a[scores={rank=2,my_timer=20}] emerald 4
命令方块四:
消息提示:
execute if entity @a[scores={rank=1,my_timer=20}] run tell @a[scores={rank=1,my_timer=20}] §2您的职位薪贴已发放,感谢您在墨山游侠中的付出!
命令方块五:
消息提示:
execute if entity @a[scores={rank=2,my_timer=20}] run tell @a[scores={rank=2,my_timer=20}] §2您的职位薪贴已发放,感谢您在墨山游侠中的付出!
命令方块六
重置计时器
/scoreboard players set @a[scores={my_timer=20..}] my_timer 0
|
|