怎么好的抽奖 收藏了啊
支持1.15吗!
构思特ghost 发表于 2020-6-1 00:40
支持1.15吗!
不支持的
非常好的原创插件!支持大佬!
本帖最后由 阴阳师元素祭祀 于 2020-6-2 09:04 编辑
我又双叒叕来了
那个git命令参数我可能打反了 试试
复制代码茶馆和问答水贴没劲 编程问答又不会去
以下代码是举例不代表只有这个地方有一点点小问题(?)
https://github.com/Tany-Roinflam/CratesLottery/blob/master/src/com/tany/crateslottery/listenevent/Event.java#L39
代码为
复制代码
这个比较好的是改成
复制代码在潜行的时候
sneaking.add(uuid);
不潜行的时候
sneaking.remove(uuid);
https://github.com/Tany-Roinflam/CratesLottery/blob/master/src/com/tany/crateslottery/listenevent/Event.java#L127
复制代码保存配置文件进文件之后
为什么需要重新从文件读一次呢
这是不必的IO开销
还有一点点细节问题和代码格式问题我就不说了毕竟没有内存泄漏/io卡顿
https://bukkit.windit.net/javadoc/org/bukkit/entity/Entity.html#getUniqueId--
https://bukkit.windit.net/javado ... ation-java.io.File-
- git rm bin/ --cached
以下代码是举例不代表只有这个地方有一点点小问题(?)
https://github.com/Tany-Roinflam/CratesLottery/blob/master/src/com/tany/crateslottery/listenevent/Event.java#L39
代码为
- HashMap<Player, Boolean> Sneak = new HashMap<Player, Boolean>();
- 一个玩家可以有不同的Player对象 (并且弃用之前的Player对象) -> 内存泄漏
- 存Boolean不如存一个正在潜行玩家的Set 然后sneaking.contains(playerUUID);
这个比较好的是改成
- Set<UUID> sneaking = new HashSet<>();
sneaking.add(uuid);
不潜行的时候
sneaking.remove(uuid);
https://github.com/Tany-Roinflam/CratesLottery/blob/master/src/com/tany/crateslottery/listenevent/Event.java#L127
- Other.data.save(file1);Other.data = YamlConfiguration.loadConfiguration(file1);
为什么需要重新从文件读一次呢
这是不必的IO开销
还有一点点细节问题和代码格式问题我就不说了毕竟没有内存泄漏/io卡顿
https://bukkit.windit.net/javadoc/org/bukkit/entity/Entity.html#getUniqueId--
java.util.UUID getUniqueId()
返回实体的UUID (唯一且持久的id)
原文: Returns a unique and persistent id for this entity
返回:
UUID
https://bukkit.windit.net/javado ... ation-java.io.File-
loadConfiguration(java.io.File file)
Creates a new YamlConfiguration, loading from the given file.
阴阳师元素祭祀 发表于 2020-6-2 08:56
我又双叒叕来了
那个git命令参数我可能打反了 试试
茶馆和问答水贴没劲 编程问答又 ...
1、晚亿点试试
2、player的话确实,我晚点改成Name好了(实际上其他地方我都改为string了,player作为键太屑了)(因为我服务器不是正版服,用不上uuid)
3、感觉和数组一样,我直接创建个新数组储存玩家好了
4、我脑抽了,确实是不用再读,因为已经修改好了,只是把修改的内容写出去
5、细节可以说一下,我也想了解一下dalao们的想法
本帖最后由 阴阳师元素祭祀 于 2020-6-2 09:52 编辑
extra.
目前PlacehoderAPI类中代码似乎是现场读文件
解析一次变量读一次硬盘的样子
可以直接调内存中的 否则也可能出现不一致的情况
https://github.com/Tany-Roinflam/CratesLottery/blob/master/src/com/tany/crateslottery/placeholderapi/PlaceholderAPI.java#L25
如果解析变量的人在主线程 那么卡的是主线程
如果解析变量的人不在主线程 问题也不是太大
3. 开数组(???)
数组是以下标索引的
这是要自己维护吗
5.茶馆版主不是大佬 建议找海螺土球
其他是完全没什么必要在意的小问题
大概就是
" "和" "在代码缩进中混用一个是空格(32)
一个是\t(9) (按tab的默认效果(?
在不同浏览器效果可能不同 当然一行里面混用可能更糟糕
图片选中的缩进是\t
图片选中下面的缩进是空格
还有一些拼音命名/无意义命名小问题(?
看 这个缩进(空格和\t)似乎是混用的 不过mcbbs的code里面的\t会自动被替换成空格
https://github.com/Tany-Roinflam/CratesLottery/blob/master/src/com/tany/crateslottery/listenevent/Event.java#L114
复制代码某地方代码一个字符串分割了3次
虽然复制粘贴的确舒服
存一下其中一次分割的结果也好的
话说..玩家退出的时候 建议清理一下缓存的玩家状态 比如潜行什么的
我也不知道问题大不大
私货:
有兴趣试试好用的免费的https://www.jetbrains.com/idea/ 社区版么
我发现我可以ctrl+F
黄色高亮的是单个空格字符 可以看看缩进混用成什么样子了(?
这是隔壁EpicBanItemTeam那边的开源代码 (4个空格)搜索结果
当然一定程度上是ide的问题(?)
结城希亚 发表于 2020-6-2 09:23
1、晚亿点试试
2、player的话确实,我晚点改成Name好了(实际上其他地方我都改为string了,player作为键太 ...
extra.
目前PlacehoderAPI类中代码似乎是现场读文件
解析一次变量读一次硬盘的样子
可以直接调内存中的 否则也可能出现不一致的情况
https://github.com/Tany-Roinflam/CratesLottery/blob/master/src/com/tany/crateslottery/placeholderapi/PlaceholderAPI.java#L25
如果解析变量的人在主线程 那么卡的是主线程
如果解析变量的人不在主线程 问题也不是太大
3. 开数组(???)
数组是以下标索引的
这是要自己维护吗
大概就是
" "和" "在代码缩进中混用一个是空格(32)
一个是\t(9) (按tab的默认效果(?
在不同浏览器效果可能不同 当然一行里面混用可能更糟糕
图片选中的缩进是\t
图片选中下面的缩进是空格
还有一些拼音命名/无意义命名小问题(?
https://github.com/Tany-Roinflam/CratesLottery/blob/master/src/com/tany/crateslottery/listenevent/Event.java#L114
- int x = Integer.parseInt(location.split(":")[1]);
- int y = Integer.parseInt(location.split(":")[2]);
- int z = Integer.parseInt(location.split(":")[3]);
虽然复制粘贴的确舒服
存一下其中一次分割的结果也好的
话说..玩家退出的时候 建议清理一下缓存的玩家状态 比如潜行什么的
我也不知道问题大不大
私货:
有兴趣试试好用的免费的https://www.jetbrains.com/idea/ 社区版么
我发现我可以ctrl+F
黄色高亮的是单个空格字符 可以看看缩进混用成什么样子了(?
这是隔壁EpicBanItemTeam那边的开源代码 (4个空格)搜索结果
当然一定程度上是ide的问题(?)
阴阳师元素祭祀 发表于 2020-6-2 09:42
extra.
目前PlacehoderAPI类中代码似乎是现场读文件
解析一次变量读一次硬盘的样子
都改了都改了
数组的话实际上也是能contains查的
至于拼音什么的...有时候我变量名全用完只能这样
我看得懂就行了.jpg
这个空格+tab看起来是ide的问题
我自己手动改也不行,还是一样
存分割结果是什么意思,不太懂
本帖最后由 阴阳师元素祭祀 于 2020-6-2 11:10 编辑
1. 你确定是数组而不是List<T>或者Set<T>么
(数组什么时候有方法了 啊这)
复制代码
这个是数组啊(?)
2.
可以看看
IDE设置->编辑器选项->缩进选项
IDE Settings -> Editor -> Intent
3.
大概是
复制代码
这样?
结城希亚 发表于 2020-6-2 11:02
都改了都改了
数组的话实际上也是能contains查的
1. 你确定是数组而不是List<T>或者Set<T>么
(数组什么时候有方法了 啊这)
- ClassName[] varName;
这个是数组啊(?)
2.
可以看看
IDE设置->编辑器选项->缩进选项
IDE Settings -> Editor -> Intent
3.
大概是
- String[] xyzStrings = location.split(":");
- int x = Integer.parseInt(xyzStrings[0]);
- int y = Integer.parseInt(xyzStrings[1]);
- int z = Integer.parseInt(xyzStrings[2]);
这样?
插件不错非常喜欢
阴阳师元素祭祀 发表于 2020-6-2 11:08
1. 你确定是数组而不是List或者Set么
(数组什么时候有方法了 啊这)
数组不是ArrayList<String> name = new ArrayList<String>()
这样的吗
难道我又学错什么了(
本帖最后由 阴阳师元素祭祀 于 2020-6-2 11:44 编辑
以下说法完全不严谨
ArrayList<T>继承List<T>
是用数组实现List<T>接口
List<T>是接口
定义可以看到是
public interface List<T> .........
ArrayList<T>是泛型类
啊这以下说法完全不严谨
建议删库跑路
复制代码^是String数组
复制代码^是用String数组实现了一个List<String>
复制代码^是用链表算法实现了一个List<String>
https://baike.baidu.com/item/%E9%93%BE%E8%A1%A8/9794473?fr=aladdin
或者...先去看看面向对象的东西(?)
[搬运+翻译][长篇预警][从零学编程]索引贴——目前支持3种编程语言
https://www.mcbbs.net/thread-688163-1-1.html
(出处: Minecraft(我的世界)中文论坛)
没有java 那没事了 但是我想安利箱子的教程
结城希亚 发表于 2020-6-2 11:34
数组不是ArrayList name = new ArrayList()
这样的吗
难道我又学错什么了(
以下说法完全不严谨
ArrayList<T>继承List<T>
是用数组实现List<T>接口
List<T>是接口
定义可以看到是
public interface List<T> .........
ArrayList<T>是泛型类
- String[] strs = new String[9];
- List<String> strList = new ArrayList<>();
- List<String> strList = new LinkedList<>();
https://baike.baidu.com/item/%E9%93%BE%E8%A1%A8/9794473?fr=aladdin
或者...先去看看面向对象的东西(?)
[搬运+翻译][长篇预警][从零学编程]索引贴——目前支持3种编程语言
https://www.mcbbs.net/thread-688163-1-1.html
(出处: Minecraft(我的世界)中文论坛)
没有java 那没事了 但是我想安利箱子的教程
本帖最后由 结城希亚 于 2020-6-2 11:45 编辑
我直接复读两次.ogg
这就是速成的弊了
直接remake
我主要就是想说这个List也能用
箱子..是idea?
了 解 了
阴阳师元素祭祀 发表于 2020-6-2 11:37
以下说法完全不严谨
ArrayList继承List
是用数组实现List接口
以下说法完全不严谨
我直接复读两次.ogg
这就是速成的弊了
直接remake
我主要就是想说这个List也能用
了 解 了
本帖最后由 折叠 于 2020-6-3 19:05 编辑
抽奖钥匙的名字和Lore有办法自定义吗QwQ
输入/cl create [宝箱名] [ID] [数量] 好像没反应诶 后台没有报错
输入/cl create [宝箱名] [ID] [数量] 好像没反应诶 后台没有报错
折叠 发表于 2020-6-3 19:01
抽奖钥匙的名字和Lore有办法自定义吗QwQ
输入/cl create [宝箱名] [数量] 好像没反应诶 后台没有 ...
其他指令有没有问题
折叠 发表于 2020-6-3 19:37
啊..现在又试了一遍 是我的问题 我的问题orz
命令输错了 没给抽奖箱设置物品233 ...
- if(Other.data.getString("CrateItem")==null) {
- sender.sendMessage("§c未设置箱子");
- return true;
- }
正常是有信息提示的
你难道在设置箱子名称时输入的指令?(会话会屏蔽其他信息)
结城希亚 发表于 2020-6-3 19:41
正常是有信息提示的
你难道在设置箱子名称时输入的指令?(会话会屏蔽其他信息) ...
呜呜 命令应该是/cl crate的 我打成/cl create了orz 对8起
妙 啊 ~ 建议支持右键钥匙直接打开抽奖界面 XD
我刚刚把变换次数设为了0...绝了
正事,建议音效整一个12341声这种感觉
就有点hpy抽奖的那种感觉
正事,建议音效整一个12341声这种感觉
就有点hpy抽奖的那种感觉

问题:
1修改语言文件后(钥匙),已有的抽奖箱的钥匙会不可用,也不能重新设置,只能删掉重新弄一个抽奖箱才行
2在将a抽奖箱放置在a1处,然后删除a1抽奖箱.把b抽奖箱放置在a1处,右击后提示清理过期抽奖箱,然后b抽奖箱就被清理了.

1修改语言文件后(钥匙),已有的抽奖箱的钥匙会不可用,也不能重新设置,只能删掉重新弄一个抽奖箱才行
2在将a抽奖箱放置在a1处,然后删除a1抽奖箱.把b抽奖箱放置在a1处,右击后提示清理过期抽奖箱,然后b抽奖箱就被清理了.

Misaka。 发表于 2020-6-14 08:37
问题:
1修改语言文件后(钥匙),已有的抽奖箱的钥匙会不可用,也不能重新设置,只能删掉重新弄一个抽奖箱才行
2 ...
1、你修改名字肯定会不能用,哪有随便修改的,lore的话倒是无所谓,你reload了吗,直接setkey应该可以的
2、只要你抽奖箱删掉了,那个抽奖箱在所有世界里,只要交互就会清除
结城希亚 发表于 2020-6-14 11:01
1、你修改名字肯定会不能用,哪有随便修改的,lore的话倒是无所谓,你reload了吗,直接setkey应该可以的
...
1重载了,然后我把已有的钥匙丢掉,然后cl key test,出来的钥匙还是修改以前的那把
2要是清除了我就不会说了;就是说,在这个位置,无论放什么方块上去,右键,都会直接清除.
我看了data,位置信息并没有被清除,但是抽奖箱的信息是被清除了的。
即使我已经删了这个抽奖箱,并蹲下破坏并清除了这个抽奖箱方块
Misaka。 发表于 2020-6-14 11:06
1重载了,然后我把已有的钥匙丢掉,然后cl key test,出来的钥匙还是修改以前的那把
2要是清除了我就不会说 ...
1、你保存的是之前的信息,你需要重新setkey
2、看起来是BUG,等等我看看
结城希亚 发表于 2020-6-14 11:08
1、你保存的是之前的信息,你需要重新setkey
2、看起来是BUG,等等我看看
重新吗...
重新set是重设了单独test抽奖箱钥匙
还是把其他的都给重新设置了
结城希亚 发表于 2020-6-14 11:08
1、你保存的是之前的信息,你需要重新setkey
2、看起来是BUG,等等我看看
重新吗...
重新set是重设了单独test抽奖箱钥匙
还是把其他的都给重新设置了
Misaka。 发表于 2020-6-14 11:11
重新吗...
重新set是重设了单独test抽奖箱钥匙
还是把其他的都给重新设置了 ...
这么说吧
你setkey的时候会直接加上你message里的lore和name设置
然后再保存到data的
你就算修改了message,你data保存的钥匙也还是不会变,需要重新设置
应该懂了吧
这个不错,在模组服非常好,防熊也可以
作者大大,不能正常用,刷屏是报错:https://paste.ubuntu.com/p/YvZCdkZcYr/
环境:Um287,PlaceholderAPI-2.10.5.jar,ProtocolLib-3.4.0.jar
环境:Um287,PlaceholderAPI-2.10.5.jar,ProtocolLib-3.4.0.jar
Ken28 发表于 2020-6-17 12:11
作者大大,不能正常用,刷屏是报错:https://paste.ubuntu.com/p/YvZCdkZcYr/
环境:Um287,PlaceholderAPI ...
你应该好好看看配置文件
结城希亚 发表于 2020-6-17 12:13
你应该好好看看配置文件
我没有更改过配置文件,配置好抽奖箱放置好后,抽奖券对其右键后开始刷屏报错的。
Ken28 发表于 2020-6-17 12:25
我没有更改过配置文件,配置好抽奖箱放置好后,抽奖券对其右键后开始刷屏报错的。 ...
#声音名
#默认声音支持1.9+
#如果你版本是1.9以下,请把下面的注释解除,并且把上面两行注释掉
#不然你后台会快乐到死
SoundName: 'ENTITY_EXPERIENCE_ORB_PICKUP'
SoundsName: 'ENTITY_PLAYER_LEVELUP'
#SoundName: 'ORB_PICKUP'
#SoundsName: 'LEVEL_UP'
开源就很棒棒
1.7.10Ur无法使用,后台疯狂报错
建议楼主大大单独出个1.7.10版本的,不然后台蹦迪。。。
新人开服表示学不会嘤嘤嘤
谢谢大佬分享
本帖最后由 结城希亚 于 2020-6-18 15:50 编辑
重大版本更新日志
| 版本2.0.0 |
|
这插件也太好用了,赞!
看到更新,我就立刻赶来了
作者大大
单抽清理 和 填充clear 两个同时开启,是不是就是让抽奖箱变成只能单抽。
有点难理解
单抽清理 和 填充clear 两个同时开启,是不是就是让抽奖箱变成只能单抽。
有点难理解
Ken28 发表于 2020-6-18 16:43
作者大大
单抽清理 和 填充clear 两个同时开启,是不是就是让抽奖箱变成只能单抽。
有点难理解 ...
开启单抽清理后就不能九连抽了
不然可以利用特性控概率来....
看起来还蛮不错的喔
本帖最后由 MC_轩轩 于 2020-6-23 14:33 编辑
版本1.12.2
每次九连抽都消耗18个钥匙
并且连续提示两次九连抽
如果刚好有9个钥匙
就会进行一次九连抽并提示一次钥匙不足
(为了配合材质包我用粘土做的钥匙)
不能支持任意物品当钥匙吗
版本1.12.2
每次九连抽都消耗18个钥匙
并且连续提示两次九连抽
如果刚好有9个钥匙
就会进行一次九连抽并提示一次钥匙不足
(为了配合材质包我用粘土做的钥匙)
MC_轩轩 发表于 2020-6-23 14:19
版本1.12.2
每次九连抽都消耗18个钥匙
并且连续提示两次九连抽
1.9以上改了机制
会同时检测副手
你先让玩家副手上放其他物品吧
晚点配置文件弄个选项
%CratesLottery_PackBackItem.物品标签% 显示这个物品在背包的数量
物品标签是指什么欸
必须是消耗品吗?不能是货币之类的
还有箱子界面,工作量一定很大a.a 幸苦了,不过等级比较低评不了分
复 刻 y y s 指 日 可 待