当前位置: 首页 > 知识库问答 >
问题:

正在访问配置。来自另一个文件的yml(Bukkit)

欧阳德运
2023-03-14

我已经为我的服务器创建了一个经济插件,它工作得很好。玩家可以输入 /bal 并查看他们的余额。我的服务器还有一个GUI插件,其中一个选项是查看它们的货币。我将玩家的货币存储在我的经济插件的 config.yml 文件中。如何访问我的经济配置.yml 中的变量,如果我想从另一个插件访问它们?我搜索了整个互联网,什么也没找到。如果有人对如何做到这一点有任何想法,请告诉我。谢谢。

共有2个答案

洪安顺
2023-03-14

您可以从另一个插件访问配置文件。

File configFile = new File(<JavaPlugin Object>.getServer().getWorldContainer().getAbsolutePath() + "/plugins/<Your Plugin Name>/config.yml"); // First we will load the file.
FileConfiguration config = YamlConfiguration.loadConfiguration(configFile); // Now we will load the file into a FileConfiguration.

在此之后,我们可以从配置中获取值。

boolean randomValue = config.getBoolean("randomValue"); // Gets a boolean value.

恭喜!您现在可以从另一个插件中读取值了!

微生翼
2023-03-14

有几种方法可以做到这一点,但在我看来,最适合您的方法是让Player类。它将存储玩家数据(如货币),然后在开发另一个插件时,将您的经济资源作为依赖项导入。

In Economy插件:

  1. 在玩家对象中存储玩家货币
  2. 将所有播放器对象存储在集合中
  3. 创建公共函数,该函数将从您的集合中返回玩家对象,例如作为函数参数传递玩家昵称

在所有其他插件中:

  1. 导入您的经济插件作为依赖项
  2. 使用您的函数(例如,获取播放器(“你的尼克”);
  3. 如果集合中存在播放器,则此代码将返回实体的对象
  4. 通过获取器获取玩家货币

请记住,每次进行某些更改时(例如,当玩家购买商品时)都要同步对象数据

 类似资料:
  • 我在Spring Boot中的资源类路径位置中有多个yml文件,就像下面的Spring Boot结构一样。起初,我只为abc的申请而写。当时,这个文件的所有值都加载到了相应的类中,但是当我添加到另一个文件应用程序xyz时。然后,yml也会加载到相应的配置类中,但此时只加载应用程序xyz的值。两个配置类中的yml。因此,需要帮助在单个构建中配置相应配置文件中两个文件的值: 申请内容abc。yml a

  • 我刚刚从反应类过来,开始思考钩子和功能组件。我有一段加载地图脚本的代码 我需要从下面的函数中设置状态或更新状态,但它不是保持状态的主函数 下面的主要功能是加载中的映射脚本。 如何使用这种方式更新状态,即从另一个函数更新状态

  • 我正在为Minecraft ATM开发一个水龙头插件,我想在配置文件中放入一些东西,告诉程序“用另一个字符串替换我!我的意思是这样的: 当有人在另一个玩家上运行切换游戏模式命令时出现。 SomeString:'你好,(告诉程序用(String)替换我的东西)!)' 我想这样做的原因是,当你用自定义命令设置另一个玩家的游戏模式时,它会告诉运行该命令的人“将游戏模式设置为”。请帮忙!

  • 编辑: 我使用docker网络创建了macvlan,现在我可以使用其他机器ping到我的容器,但是现在,我的容器没有互联网连接来下载东西。 并尝试在此网络中运行容器 docker0:flags=4099 mtu 1500 inet 172.17.0.1 netmask 255.255.255广播172.17.255.255以太网02:42:79:4F:FC:66 TX队列n 0(以太网)RX数据包

  • Java版本:8 Spring启动版本:2.4.1 Spring Cloud Version:2020.0.0,具体来说,我使用连接到GIT的Spring Cloud Config服务器,我们的服务是Spring Cloud Config客户机。 配置服务器中的配置如下所示: yml(有两个文档由---分隔) my-rest-sercive.yml(有两个文档由---分隔) null 与Sprin