如何令原神中人物模型随地区改变
前言:
如果你对环境与工具准备产生了些许疑问,请关闭此页面,你也许并不适合
本文章由shiroka半机翻并添加部分内容,如有意见请提出
1.环境与工具准备:
1.有点聪明的脑袋
2.普通的windows计算机
3.知道一些通过百度就能学会的基础编程语言
4.不会问出若至问题
5.Region.ini和working merge mod
6.待补充
2.正确的设置
把Region.ini文件放进/Mods/BufferValues以确保mod文件夹中只有一个副本,方便将来更轻松地进行更新。
将您的合并模组放在
/Mods
文件夹中的任何位置。(Region.ini
是全局的,所以无论你的 mod 在哪里它都会工作。)将 merge mod 子文件夹命名为以数字开头,格式为 0、1、2… 的顺序(如果您的命名达到两位数,则将其命名为 00、01、02…10…)。这将帮助您稍后了解哪个值对应于哪个服装。
重点:仅在创建合并模块的 merge.ini 之前重命名您的文件夹,而不要在创建合并模块之后重命名,否则合并模块将无法工作
3.区域变量
当前区域由 Region.ini 文件标识,您可以使用变量 在 merged.ini 中访问它$\global\region\regioncheck
。这将返回与游戏中每个区域相关的数字。每个数字的含义将写在Region.ini
文件的开头。
在本教程中,它如下所示,但请务必检查您的Region.ini
文件以确保安全。
1
2
3
4
5
6
7
8 ; Regioncheck cheat sheet:
;
; 0: region unidentified
; 1: mondstadt
; 2: liyue
; 3: inazuma
; 4: sumeru
; 5: fontaine
您可以单独使用该变量$\global\region\regioncheck
,也可以将其分配给另一个变量。例如,通过下面的代码,您可以使用变量$regioncheck
来调用当前区域。此方法有助于提高代码的可读性。
1 | global $regioncheck = $\global\region\regioncheck |
4.服装变量
角色的服装通常由变量 表示$swapvar
。这是子文件夹的命名变得很重要的地方。如果您按照上面指定的方式命名它,则$swapvar
变量的值对应于您的文件夹的编号。例如$swapvar
,0 表示文件夹中 0 的服装,$swapvar
1 表示文件夹中 1 的服装,依此类推。
5.条件代码
由于您需要为每件服装 ( $swapvar
) 设置条件以响应每个地区 ( $\global\region\regioncheck
),因此将使用条件代码。一键谷歌就可以找到基本的内容。由于我们要采用最简单的形式,因此您需要知道的单词只有if
, endif
(没有空格)。对于每一个if
,都会有一个endif
,在这两者之间,我们将采取行动。
您的代码将具有如下逻辑
1 | if current region is A |
6.将服装分配给特定区域
打开merge.ini
并向下滚动到 [当前] 部分的末尾。将您的代码添加到那里。
您使用的代码如下
1 | if $\global\region\regioncheck == 1 |
这段代码的含义是,如果变量$\global\region\regioncheck
返回的值等于(symbol ==
) 1(对应于 开头写入的区域Region.ini
),则角色服装变量将更改为 2(对应于合并中带有 2 的文件夹中的服装)模组文件夹)。您可以将数字 1 和 2 更改为您想要的任何数字,只要该$\global\region\regioncheck
值在开头指定的范围内Region.ini
,并且$swapvar
该值不超出您分配给合并 mod 文件夹中子文件夹的数字。对于您想要更换服装的每个区域,请重复该代码。如果您没有特定的服装可供更换,您可以跳过某个区域。
示例代码如下
1 | if $\global\region\regioncheck == 1 |
或者你可以将其简化为
1 | $swapvar = $\global\region\regioncheck |
这会将服装分配给与区域编号相同的编号。只要文件夹中的服装编号与地区编号相同,此操作就有效。
您可以考虑删除文件中的按键检测代码,merge.ini
因为该代码不需要它即可工作。它通常位于该[Present]
部分上方,看起来与此类似:
1 | [KeySwap] |
代码的特点
使用上面的代码后,将得到下面的效果
- 当您进入指定服装的地区时,您的服装将更改为该指定服装。留在该地区时您将无法切换服装
- 当您进入没有指定服装的地区时,您的服装将与您之前所在地区的服装保持一致。留在该地区时您将能够切换服装