level 13
totoyan72021
楼主
相信在做迷宫,机关解密,Roguelike游戏时,如何生成随机的地图呢?个人觉得这是一个高级的阶段,也不是一时半刻可以理解通透做出来,但是,我们可以用简单的方法实现一些看似随机亦可操作的效果。
今天转载官方论坛里一篇关于tilemap旋转瓷砖块有趣的水管范例教程。@Maverick1912
----------------------------------------------------------------------------------
步骤1
在项目中插入TileMap对象。您可以使用C2中的默认TileMap或导入瓷砖地图。
还需要在项目中添加TOUCH功能,使其工作。

第2步
我们现在将开始核心。
创建一个全局变量tileState。

这将是一个开关变量,用来判定旋转瓷砖。
我们将在触摸TileMap时添加条件:

(1)如果tile的状态为NORMAL,则比较TouchX和TouchY的Tile。
(2)条件变量tileState = 0,你可以触摸后旋转。
然后动作将是:

(1)我们将TouchX和TouchY设置为旋转90度。
(2)将变量tileState切换到1以中断触摸的循环。
重复它的砖的剩余状态:

--------------------------------------------
(
小提示:tilemap插件表达式里不能比较出当前瓷砖块的角度等状态,只有条件式里可以选择,所以这里需要穷举出各种旋转后的状态,心好累=。=)
--------------------------------------------
添加一个事件将tileState切换为0

最后,由于有的瓷砖块我们不希望玩家可以点击,所以加上索引限制即可
现在可以F5试试游戏了。
---------------------------------------------------------------------------------------------------------------------------
2017年02月27日 02点02分
1
今天转载官方论坛里一篇关于tilemap旋转瓷砖块有趣的水管范例教程。@Maverick1912
----------------------------------------------------------------------------------
步骤1
在项目中插入TileMap对象。您可以使用C2中的默认TileMap或导入瓷砖地图。
还需要在项目中添加TOUCH功能,使其工作。

第2步我们现在将开始核心。
创建一个全局变量tileState。
这将是一个开关变量,用来判定旋转瓷砖。我们将在触摸TileMap时添加条件:

(1)如果tile的状态为NORMAL,则比较TouchX和TouchY的Tile。(2)条件变量tileState = 0,你可以触摸后旋转。
然后动作将是:

(1)我们将TouchX和TouchY设置为旋转90度。(2)将变量tileState切换到1以中断触摸的循环。
重复它的砖的剩余状态:

--------------------------------------------(
--------------------------------------------
添加一个事件将tileState切换为0
最后,由于有的瓷砖块我们不希望玩家可以点击,所以加上索引限制即可现在可以F5试试游戏了。
---------------------------------------------------------------------------------------------------------------------------