✓ ESS21仅限 【TA】如何制作新的场地(0627)

TAAAAAAA

天王
管理成员
2024/06/16
241
4
36
1,270
网站上有人提问了,场地效果的编写,我们就浅浅的说一下吧。

这篇帖子,我们来说一下如何制作新的场地。
但是,说是这么说,还是有一些事情需要先说明清楚。

首先,目前ESS中已经有了场地系统,所以你并不需要额外制作场地系统,你只需要在原本的场地系统里增加你的新场地就好了。
其次,原本的场地系统是分散在整个战斗系统中的,这样的结构又好有坏,不予评价。
接着,你只需要照着它原本的逻辑增加你的新场地就好了,但是,场地是场地,场地的效果是场地的效果,这是两个东西,不要混为一谈。
最后,这篇帖子只会关注于如何制作新的场地,不会大量讲解如何制作场地的效果。

实际上,如果你只是想要简单的制作几个新的场地的话,其实非常简单,但是,为了完整性,我还是把全部必要的内容都说一下吧。
注意,是全部必要的,不是全部的。
再次注意,虽然场地的AI部分也是必要的,但是这篇帖子并不会涉及。

首先,打开\Pokemon Essentials v21.1 2023-07-30\Data\Scripts\010_Data\001_Hardcoded data文件夹里的016_BattleTerrain.rb文件。
其他的你都不需要去管,拉下来,到最后面,按照它的格式,添加你的新场地。
那么,在这篇帖子中,我将添加一个叫做Sky的场地,也就是天空场地。
1719475050098.png

然后,场地有3个非常重要的部分,就是场地的开始、持续和结束。

那么,首先是开始。
找到pbStartBattleCore这个方法,接着按照它的格式,添加你的新场地开始的Announcement——
1719475086259.png

再找到pbStartTerrain这个方法,接着按照它的格式,添加你的新场地开始的Announcement——
1719475109776.png

那么,接着是持续。
找到pbEOREndTerrain这个方法,接着按照它的格式,添加你的新场地持续的Announcement——
1719475128572.png

那么,最后是结束。
依然是在这个方法中,按照它的格式,添加你的新场地结束的Announcement——
1719475200535.png

当然,这些Announcement的内容技术上来说其实并不重要,无非就是一行文本提示,告诉一下玩家发生了什么事情。
到这里,实际上制作新的场地就已经完成了。

但是,我们还是额外再说点其他的吧。
首先,现在是新的场地已经制作完成了,但是你还要在战斗中有能开启这个新场地的途径,那么这个新场地才是有意义的。
开启新场地的方法很多,那么这里我们就制作一个特性来开启新场地吧。
其次,场地在开启时和持续时是有动画的,所以你要为你的新场地制作相应的动画,要不然就只有一行文本的提示。

那我们就动手吧,首先,是PBS——
1719475315272.png

接着,找到电气制造者的特性代码,照着它的格式,写好天际行者——
1719475334186.png

这样,我们就可以使用这个特性开出我们新制作的场地了。

到这里,我觉得你应该发现了,如果你要做天空场地的效果的话,你其实只需要检查battle.field.terrain == :Sky就好了。

那么我就举个例子吧,我们修改一下这个天空行者的代码,变成这样——
1719475385656.png
这样就是,出场时,如果不是天空场地,那么就开出天空场地,如果已经是天空场地了,那么就物攻增加一级。

强调一下,虽然说是这么说,但是以上的检查场地的方式并不绝对,在实际使用中的情况可能会更加复杂,比如说,可能还需要检查精灵是否是飞控单位,等等。

额外补充一点,如果你安装了Enhanced Battle UI,也就是EBUI的话,你还需要在[003] Battler Info UI.rb的这个地方也加上你的新的场地——
1719475439389.png
如果不加的话,那么在你打开详情页的时候,就会报错。

另外,制作新的天气和制作新的场地的流程几乎是一模一样的,请自行研究吧。

那么,这篇文章就到此为止。

视频预览——

浏览附件2024-06-27 15-49-49.mp4

感谢阅读。
 

在线成员

现在没有成员在线。

最新帖子

论坛统计

主题
517
消息
2,352
成员
3,007
最新成员
ZQLdw