本帖最后由 凌语丶 于 2022-12-17 11:41 编辑
RT
整了一天都没整明白这玩意
已知需要避免的:
1.64个复活水晶位上的水晶放置 √
2.使用活塞将水晶推到复活水晶位上
除此之外 还需要避免影响祭坛中正常的活塞使用以及其他活动
求dalao解答
附 复活水晶位图(钻石块):
RT
整了一天都没整明白这玩意
已知需要避免的:
1.64个复活水晶位上的水晶放置 √
2.使用活塞将水晶推到复活水晶位上
除此之外 还需要避免影响祭坛中正常的活塞使用以及其他活动
求dalao解答
附 复活水晶位图(钻石块):
给个思路,判断活塞移动的是水晶且目标位置在钻石块上
粗暴一点的办法,每tick都检测传送门周围的水晶,有就清掉
想了一个未经验证的方案,你可以试试监听PlayerInteractEvent,如果玩家拿着末影水晶且右键的是黑曜石或者基岩的上表面且上方两格都是空气,则取消事件并消耗玩家手里的末影水晶并在那个位置生成末影水晶
考虑到领地插件之类的,优先级应设为HIGHEST
想了一个未经验证的方案,你可以试试监听PlayerInteractEvent,如果玩家拿着末影水晶且右键的是黑曜石或者基岩的上表面且上方两格都是空气,则取消事件并消耗玩家手里的末影水晶并在那个位置生成末影水晶
考虑到领地插件之类的,优先级应设为HIGHEST
DreamVoid 发表于 2022-12-16 22:53
给个思路,判断活塞移动的是水晶且目标位置在钻石块上
怎么判断移动的是水晶是个问题....
水晶是Entity 然而BlockPistonExtendEvent给的是Block
请试试判断末影龙生成时 或者自定义EntityEnderDragon试试罢:)
Virlhyc 发表于 2022-12-16 23:15
请试试判断末影龙生成时 或者自定义EntityEnderDragon试试罢:)
然而是要避免复活仪式开始...
凌语丶 发表于 2022-12-16 23:04
怎么判断移动的是水晶是个问题....
水晶是Entity 然而BlockPistonExtendEvent给的是Block ...
那就尝试在活塞活动以后钻石块上方有没有水晶实体
可以用NMS直接改 EndDragonFight 或者 ServerLevel中的dragonFight(直接设成null就好)
或者可以试着监听末影龙生成?
凌语丶 发表于 2022-12-16 23:16
然而是要避免复活仪式开始...
避免龙生成应当暂时即为其仪式失败罢:)
监听第二条没有必要,因为把水晶推过去不会触发末影龙复活仪式

本帖最后由 凌语丶 于 2023-2-11 18:27 编辑
在任何地方放末影水晶 都会触发复活末影水晶数量是否符合条件的检测
因此 再放一个就会爆炸
桃源村服主 发表于 2023-2-4 21:16
监听第二条没有必要,因为把水晶推过去不会触发末影龙复活仪式
在任何地方放末影水晶 都会触发复活末影水晶数量是否符合条件的检测
因此 再放一个就会爆炸
本帖最后由 桃源村服主 于 2023-2-11 18:50 编辑
忘了考虑这一点。。。多谢指正
凌语丶 发表于 2023-2-11 18:25
在任何地方放末影水晶 都会触发复活末影水晶数量是否符合条件的检测
因此 再放一个就会爆炸 ...
忘了考虑这一点。。。多谢指正