SotrForgotten 发表于 2018-3-11 20:01
link会把每个方块都模拟为原点检测一遍,理论上只要结构的样子一样就行了,和方向、摆放顺序无关。
考虑 ...


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