特殊消除相关逻辑.md 1.7 KB

首先,整一个枚举,是特殊元素相关的

![[Pasted image 20230718164420.png]]

对应触发的具体判断逻辑参考[[判断颜色的逻辑和消除]]就好

分别对应的响应逻辑系统,分别是这几个脚本文件

![[Pasted image 20230718165339.png]]

也都对应加上的了

![[Pasted image 20230718165414.png]]

然后,还有一个,图片修改的系统

![[Pasted image 20230718165455.png]]

触发条件,也是特殊元素效果不是None

![[Pasted image 20230718165515.png]]

然后,具体的触发逻辑,就是switch判断,整名字,然后加载图片组件了

![[Pasted image 20230718165548.png]]

也是触发事件,把物体的图片给换了

![[Pasted image 20230718165748.png]]

![[Pasted image 20230718165720.png]]

对应的替换图片路径

![[Pasted image 20230718170339.png]]

![[Pasted image 20230718170408.png]]

其中,相同颜色的处理,会有点复杂,因为判定条件,是这个,是消除面板所有同色的元素

![[Pasted image 20230718171308.png]]

因此,需要整额外的一个消除逻辑系统

![[Pasted image 20230718171043.png]]

触发条件是这个

![[Pasted image 20230718171514.png]]

具体的逻辑,就是遍历所有行列,然后把面板,同色的物体,销毁布尔都设置为true

![[Pasted image 20230718171535.png]]

具体逻辑也可以参考[[FirstOrDefault]]

然后消除整行,和消除整列,就是特定行列,和xy加限制的事情了

![[Pasted image 20230718172127.png]]

![[Pasted image 20230718172016.png]]

![[Pasted image 20230718172058.png]]

爆炸的,就是以自己为中心,去销毁周遭了

![[Pasted image 20230718172226.png]]

具体遍历实现逻辑

![[Pasted image 20230718172324.png]]