小白开发者
本帖最后由 小白开发者 于 2018-1-27 21:59 编辑

问题一 (已解决




问题二(已解决



Ir.Nep
player.sendMessage(getConfig().getStringList("the.message").toArray(new String[3]));

小白开发者
本帖最后由 小白开发者 于 2018-1-27 14:11 编辑
qzz740827 发表于 2018-1-27 13:38
player.sendMessage(getConfig().getStringList("the.message").toArray(new String[3]));

[3]是?
如果是无限列表呢(超过三行)

Ir.Nep
小白开发者 发表于 2018-1-27 13:57
[3]是?
如果是无限列表呢(超过三行)

后面这个数字不对也不会报错的样子
你可以通过getConfig().getStringList("the.message").size()来代替3以达到自适应的效果

小白开发者
qzz740827 发表于 2018-1-27 13:59
后面这个数字不对也不会报错的样子
你可以通过getConfig().getStringList("the.message").size()来代替3 ...

唉?后台输出是:3
为什么不是输出呢...:
aa
aaaa
HAHA

小白开发者
已自行解决(用循环for)

小白开发者
qzz740827 发表于 2018-1-27 13:59
后面这个数字不对也不会报错的样子
你可以通过getConfig().getStringList("the.message").size()来代替3 ...

那个,会解决第二个问题吗?

星辰sk
test = getConfig().getStringList("testconfig.message").toString();
为什么没自动调用toString我也不知道
不过List对象直接toString()是不能显示出内容的,所以需要for

Ir.Nep
  1. public static List<String> test;
  2. test = getConfig().getStringList("testconfig.message");
复制代码

糟糕的Java基础

摇摇车
本帖最后由 摇摇车 于 2018-1-27 18:15 编辑

好像,,主类加个instance就行吧

  1. public static JavaPlugin instance;
复制代码

然后再onEnable加上
  1. instance = this;
复制代码


在其他类调用就用

  1. 主类名字.getConfig().instance

  2. 比如

  3. Main.instance.getConfig().getString("test");
复制代码


以上代码只供测试,因为我没测试
仿qzz大佬光速逃

小白开发者
摇摇车 发表于 2018-1-27 18:10
好像,,主类加个instance就行吧

感谢~唉,1级给不了分?

liuyipeng001
对于第二个问题你可在插件启动时候弄个工具类把它传进去,或者用JavaPlugin.getPlugin(你的插件主类类::class.java) (我这是kotlin)拿到主类的bean。

元路
  1. sender.sendMessage(config.getString("the.message").substring(1,config.getString("the.message").length()-1).replaceAll(", ", "\n").replaceAll("&", "§"));
复制代码

给你推荐下我的方法 大概就是 直接获取这个the.message的内容,然后去掉前括号后后括号,再把", "换成换号= =

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