A-Kreedz 发表于 2018-3-11 13:19
http://www.mcmod.cn/item/46879.html
就这样子的
他的触发方块不在中心点。。
用Link:随便那个方块做原点都行
不用Link(只想某几个方块为最后放置的):以特定的几个原点方块各建立一个结构(Structure处应该是同一个实例)
SotrForgotten 发表于 2018-3-11 16:48
用Link:随便那个方块做原点都行
不用Link(只想某几个方块为最后放置的):以特定的几个原点方块各建立 ...

我用最笨的方法 注册了四个方向不一样的结构
支持原创,但是有一个家具插件了,很像
A-Kreedz 发表于 2018-3-11 17:20
表示看不懂
我用最笨的方法 注册了四个方向不一样的结构
大概理解了。目前如果不link就只能做4个面的结构,如果有link就一个就行了
SotrForgotten 发表于 2018-3-11 19:44
大概理解了。目前如果不link就只能做4个面的结构,如果有link就一个就行了 ...

本帖最后由 SotrForgotten 于 2018-3-11 20:29 编辑
link会把每个方块都模拟为原点检测一遍,理论上只要结构的样子一样就行了,和方向、摆放顺序无关。
考虑到性能问题,我打算做多线程检测了
A-Kreedz 发表于 2018-3-11 19:58
LINK能无视方向吗 虽然我不知道我现在用的是不是LINK
link会把每个方块都模拟为原点检测一遍,理论上只要结构的样子一样就行了,和方向、摆放顺序无关。
SotrForgotten 发表于 2018-3-11 20:01
link会把每个方块都模拟为原点检测一遍,理论上只要结构的样子一样就行了,和方向、摆放顺序无关。
考虑 ...


类似于这样一个完全不对称,造型独特的结构.
如何确保玩家能以任意朝向搭建都能生效呢.
john180 发表于 2018-3-25 19:06
类似于这样一个完全不对称,造型独特的结构.
如何确保玩家能以任意朝向搭建都能生效呢. ...
每个基本单位"结构树"会存有该结构的所有方块的相对坐标(和他的副本 即以结构中的每一个方块作为原点的完整相对坐标),每次方块操作时,该方块都会被作为原点带入到每个相对坐标列表进行检测,所以能够探测所有注册过的结构。
这是基本的思路(也是本插件唯一实现的探测方式),但是这样比较慢,如果要更进一步:在探测到结构时缓存方块位置,仅仅在破坏时进行完整检测(这样每次点击时就不用完整检测)另外一种是进行异步的检测,也可以解决性能的问题。当然在写出来这两种方案以后,也会发现他们其实是可以结合的,这样可以比较好的解决结构探测的性能问题,也是我下一步的工作(但是使用者太少,我可能不会去做)
但是,仅仅用BlockBreakEvent来监控破坏十分的不严谨(就算用上所有事件也仍然不严谨),所以上述的缓存思路其实目前不可行(在解决BlockPhysicsEvent的可用性之前)
怎么看不到了
麻烦给个实例蟹蟹