java30433


PlaceholderAPI上的JavaScript变量使用教程



Path 0 - 什么是 JavaScript 变量?

      这是 PlaceholderAPI 的一大功能。此功能可以让你在一定程度上自定义自己的变量,或是给其他的变量进行润色
      比如

  • 按照变量数值划分等级,如一个当等级0-9显示为菜鸟,10-19显示为大佬的变量
  • 对其他变量进行润色。如把 "15408" 改写成 "15,408"
  • 四舍五入。如将 "304.4180000003" 改写成 "304.42"
  • 当某个值达到x的时候显示"some text",反之显示"noting"
  • and more...


      使用 JavaScript 变量需要有一定的编程思想。不过你也可以直接copy我的代码拿去用啦



Path 1 - 安装 JavaScript 变量

      首先,你需要在游戏中,或者是控制台输入这个命令
  1. papi ecloud download javascript
复制代码

      等待提示下载完成(一串绿字)之后,重载Papi插件(/papi reload)即可。
      接着打开PlaceholderAPI的插件文件夹,可以看见文件夹内多出了一个JavaScript文件夹。打开此文件夹并在内新建一个文件 "你喜欢的英文名.js" 然后保存。这样我们的准备工作就完成了
      奥,对了。如果文件夹内有一个 "栗子.js" 可以删掉



Path 2 - 开始写点鬼玩意儿

      用Notepad++打开此js文档,键入以下内容:

  1. function main() {
  2.    
  3. } main();
复制代码


      然后,我们就可以开始写东西了。我们就来写一个当玩家等级小于10的时候显示 "菜鸟",大于10的时候显示为 "大佬" 的变量吧
      那么我们先画一个草图,思路大概是这样的
      
      好的,是不是很清晰明了?那么我们就可以开始撸代码了。
      首先我们要进行第一步——获取玩家等级。一般这么获取
  1. function main() {
  2.   var p_lv = parseInt("%player_level%");
  3. } main();
复制代码

      我们新建了一个名叫p_lv的变量来存储玩家的等级。

      这里要注意几点。首先每一句的结尾都要带上一个分号,这是惯例。其次,如果没有特殊情况,获取一个变量值都要用这个方法
  1.   parseInt("变量昵称");
复制代码

      如果不使用这个方法,可能会获得Error或者0。如果你的变量是带有小数的,那么就需要把Int换成Float

      好的,我们继续。接下来就需要判断玩家的等级了。我们使用 if 这个语句来判断。差不多像这样
  1. function main() {
  2.   var p_lv = parseInt("%player_level%");
  3.   if (p_lv >= 10) {
  4.   /* 占位 */

  5.   }
  6.   if (p_lv < 10) {
  7.   /* 占位 */

  8. }

  9. } main();
复制代码

      大概就是这样了,这里也要注意一点,if 后面是不用分号的,是需要两个括号的
      那么既然判断也完成了,我们要怎么返回一个值呢?
      很简单,使用
  1. return "值";
复制代码

      现在,我们的代码就是这样了
  1. function main() {
  2.   var p_lv = parseInt("%player_level%");
  3.   if (p_lv >= 10) {
  4.   return "大佬";
  5.   }
  6.   if (p_lv < 10) {
  7.   return "菜鸟";
  8. }

  9. } main();
复制代码


      以此类推。你还可以添加巨佬等等,或者是把等级改成金币值。这有一份Papi变量大全可供参考http://mineplugin.org/PlaceholderAPI
      这就完事了?并不。你还需要注册这个变量


Path 3 - 注册你的变量


      返回PlaceholderAPI的首层文件夹,找到 javascript_placeholders.yml 文件,并在下面添加
  1. 随便一个英文key,推荐文件名:
  2.   file: 你刚刚的文件.js
复制代码

      奥,上面有一个栗子,别复制它的格式,可以删掉。然后重载PAPI,接着你就可以在一些地方使用
  1. %javascript_你的key%
复制代码

就可以使用你自定义的变量了。现在还不赶紧测试测试?xD



Path 4 - 更多骚操作


      2楼更呗


2021.12 数据,可能有更多内容


PlaceholderAPI上的JavaScript变量使用教程


Path 0 - 什么是 JavaScript 变量?


   这是 PlaceholderAPI 的一大功能。此功能可以让你在一定程度上自定义自己的变量,或是给其他的变量进行润色
   比如


  • 按照变量数值划分等级,如一个当等级0-9显示为菜鸟,10-19显示为大佬的变量
  • 对其他变量进行润色。如把 &quot;15408&quot; 改写成 &quot;15,408&quot;
  • 四舍五入。如将 &quot;304.4180000003&quot; 改写成 &quot;304.42&quot;
  • 当某个值达到x的时候显示&quot;some text&quot;,反之显示&quot;noting&quot;
  • and more...



   使用 JavaScript 变量需要有一定的编程思想。不过你也可以直接copy我的代码拿去用啦


Path 1 - 安装 JavaScript 变量


   首先,你需要在游戏中,或者是控制台输入这个命令

代码:

  1. papi ecloud download javascript

   等待提示下载完成(一串绿字)之后,重载Papi插件(/papi reload)即可。
   接着打开PlaceholderAPI的插件文件夹,可以看见文件夹内多出了一个JavaScript文件夹。打开此文件夹并在内新建一个文件 &quot;你喜欢的英文名.js&quot; 然后保存。这样我们的准备工作就完成了
   奥,对了。如果文件夹内有一个 &quot;栗子.js&quot; 可以删掉


Path 2 - 开始写点鬼玩意儿


   用Notepad++打开此js文档,键入以下内容:


代码:

  1. function main() {
  2.    
  3. } main();



   然后,我们就可以开始写东西了。我们就来写一个当玩家等级小于10的时候显示 &quot;菜鸟&quot;,大于10的时候显示为 &quot;大佬&quot; 的变量吧
   那么我们先画一个草图,思路大概是这样的
   

   好的,是不是很清晰明了?那么我们就可以开始撸代码了。
   首先我们要进行第一步——获取玩家等级。一般这么获取

代码:

  1. function main() {
  2. var p_lv = parseInt("%player_level%");
  3. } main();

   我们新建了一个名叫p_lv的变量来存储玩家的等级。


   这里要注意几点。首先每一句的结尾都要带上一个分号,这是惯例。其次,如果没有特殊情况,获取一个变量值都要用这个方法

代码:

  1. parseInt("变量昵称");

   如果不使用这个方法,可能会获得Error或者0。如果你的变量是带有小数的,那么就需要把Int换成Float


   好的,我们继续。接下来就需要判断玩家的等级了。我们使用 if 这个语句来判断。差不多像这样

代码:

  1. function main() {
  2. var p_lv = parseInt("%player_level%");
  3. if (p_lv >= 10) {
  4. /* 占位 */

  5. }
  6. if (p_lv < 10) {
  7. /* 占位 */

  8. }

  9. } main();

   大概就是这样了,这里也要注意一点,if 后面是不用分号的,是需要两个括号的
   那么既然判断也完成了,我们要怎么返回一个值呢?
   很简单,使用

代码:

  1. return "值";

   现在,我们的代码就是这样了

代码:

  1. function main() {
  2. var p_lv = parseInt("%player_level%");
  3. if (p_lv >= 10) {
  4. return "大佬";
  5. }
  6. if (p_lv < 10) {
  7. return "菜鸟";
  8. }

  9. } main();



   以此类推。你还可以添加巨佬等等,或者是把等级改成金币值。这有一份Papi变量大全可供参考http://mineplugin.org/PlaceholderAPI
   这就完事了?并不。你还需要注册这个变量


Path 3 - 注册你的变量



   返回PlaceholderAPI的首层文件夹,找到 javascript_placeholders.yml 文件,并在下面添加

代码:

  1. 随便一个英文key,推荐文件名:
  2. file: 你刚刚的文件.js

   奥,上面有一个栗子,别复制它的格式,可以删掉。然后重载PAPI,接着你就可以在一些地方使用

代码:

  1. %javascript_你的key%

就可以使用你自定义的变量了。现在还不赶紧测试测试?xD


Path 4 - 更多骚操作



   2楼更呗



java30433
咱占个位位置先,咱更不更咱也不知道,反正咱先看看

名副其实
看看是不是能出个当变量符值为空时默认输出为空
变量符有默认返回内容时在原基础上增加字符的操作

Link和glx
本帖最后由 Link和glx 于 2020-4-23 11:38 编辑

我使用的JavaScript输出的变量有时会乱跳,比如我写个一个[血量占位符]和[等级占位符]显示
使用%javascript_血量占位符%它有时会显示等级的占位符,而且显示的是其他玩家的数值
玩家越多越会出现这种情况

java30433
Link和glx 发表于 2020-4-23 11:37
我使用的JavaScript输出的变量有时会乱跳,比如我写个一个[血量占位符]和[等级占位符]显示
使用%javascript ...

方法名不能相同,就是main()那个
还有你把源码贴一下我给你看看

Ray_Hughes
请问 js 功能可以访问 物品的Lore内容进行判断吗
比如我要判断手中的[ 数值: 10 ] 然后在多行lore中读取本行

第一页 上一页 下一页 最后一页