设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 176|回复: 4
打印 上一主题 下一主题

[有事请教] 新手想问下怎么限制变量的范围?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
56
在线时间
4 小时
注册时间
2025-2-2
帖子
4
跳转到指定楼层
1
发表于 2025-2-2 23:37:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
我卡在一个机制的制作上,想在自己的游戏中增加一个活动变量,范围是(下限)0~200(上限),更准确点说就是 BLACK SOULS 2 的狂乱度机制。

网上的教程都找过了,完全没有……但又舍不得这个场景切换的判定,所以想问下大佬们,这个限制变量范围需要怎么编写?

Lv4.逐梦者

梦石
1
星屑
13679
在线时间
5119 小时
注册时间
2017-2-18
帖子
387
2
发表于 2025-2-3 00:07:29 | 只看该作者
条件判断:
变量的值<0 则 变量的值 = 0
条件判断:
变量的值>200 则 变量的值 = 200
化而为鸟,其名为鸽。怒而咕,咕咕咕咕——咕咕咕!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
56
在线时间
4 小时
注册时间
2025-2-2
帖子
4
3
 楼主| 发表于 2025-2-3 00:22:25 | 只看该作者
阵颜 发表于 2025-2-3 00:07
条件判断:
变量的值200 则 变量的值 = 200

感谢!!
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2231
在线时间
558 小时
注册时间
2012-5-3
帖子
88

开拓者

4
发表于 2025-2-8 21:29:35 | 只看该作者
在 RPG Maker MZ 中实现一个范围在 0 - 200 的活动变量,也就是限制变量值在这个区间内,你可以通过事件指令或者使用 JavaScript 脚本来达成,下面为你详细介绍这两种方法。

### 方法一:使用事件指令
这种方法适合不太熟悉编程的用户,你可以利用 RPG Maker MZ 自带的事件指令来控制变量的范围。

#### 具体步骤
1. **创建变量**:
    - 打开事件编辑器,在菜单栏选择“数据库” -> “变量”,创建一个新的变量,假设编号为 1,用于存储狂乱度。
2. **增加狂乱度**:
    - 当需要增加狂乱度时,使用“控制变量”指令,将变量 1 的值加上一个特定的数值。例如,你可以设置一个事件,当玩家触发某个特定场景时,狂乱度增加 10。
    - 在事件编辑器中,添加“控制变量”指令,选择变量 1,操作符选择“+”,数值输入 10。
3. **限制变量范围**:
    - 在每次增加或减少狂乱度之后,使用“条件分歧”指令来检查变量的值是否超出了 0 - 200 的范围。
    - 如果变量值小于 0,将其设置为 0;如果变量值大于 200,将其设置为 200。

#### 示例事件代码
```plaintext
1. 控制变量:变量 1 + 10
2. 条件分歧:变量 1 < 0
    - 是:控制变量:变量 1 = 0
    - 否:跳过
3. 条件分歧:变量 1 > 200
    - 是:控制变量:变量 1 = 200
    - 否:跳过
```

### 方法二:使用 JavaScript 脚本
如果你对 JavaScript 有一定的了解,使用脚本可以更简洁地实现变量范围的限制。

#### 具体步骤
1. **创建变量**:同样在“数据库” -> “变量”中创建一个新的变量,编号假设为 1。
2. **编写脚本**:
    - 在事件编辑器中,添加“脚本”指令,然后输入以下 JavaScript 代码:

```javascript
// 获取变量的值
let variableId = 1; // 变量编号
let value = $gameVariables.value(variableId);

// 增加狂乱度,这里假设增加 10
value += 10;

// 限制变量范围在 0 - 200
value = Math.max(0, Math.min(200, value));

// 更新变量的值
$gameVariables.setValue(variableId, value);
```

#### 代码解释
- `$gameVariables.value(variableId)`:用于获取指定编号的变量的值。
- `Math.max(0, Math.min(200, value))`:这行代码的作用是确保变量的值在 0 - 200 的范围内。`Math.min(200, value)` 会返回 value 和 200 中的较小值,然后 `Math.max(0, ...)` 会返回这个结果和 0 中的较大值。
- `$gameVariables.setValue(variableId, value)`:用于更新指定编号的变量的值。

通过以上两种方法,你可以在 RPG Maker MZ 中实现一个范围在 0 - 200 的活动变量。你可以根据自己的需求选择合适的方法。
回复 支持 1 反对 0

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
56
在线时间
4 小时
注册时间
2025-2-2
帖子
4
5
 楼主| 发表于 2025-2-10 04:59:39 | 只看该作者
邱小谦 发表于 2025-2-8 21:29
在 RPG Maker MZ 中实现一个范围在 0 - 200 的活动变量,也就是限制变量值在这个区间内,你可以通过事件指 ...

感谢!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-2-20 11:53

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表