我在同一个网格中制作了4个TileMaps
Lvl1 =级别块/标题,
Lvl1 Dec =水平的装饰,
负数部分=玩家无法跳跃的部分,
正部分= [红色部分]玩家停止跳跃动画的部分
我要检查的是该Tilemap的特定位置是否存在正片,但我的代码只是检查碰撞体
if (TileChanger == Grass)
{
Vector3 pos = Cam.ScreenToWorldPoint(Input.mousePosition);
RaycastHit2D hitdown = Physics2D.Raycast(vecdown, Vector2.zero);
if (hitdown != false && hitdown.collider != null)
{
PositiveParts.SetTile(vecInt, Positive);
PositiveParts.SetTile(vecIntdown, null);
}
else
{
PositiveParts.SetTile(vecInt, Positive);
}
}
那么有什么代码可以从特定的Tilemap中获取特定的Tile?
答案 0 :(得分:1)
您不能只使用对撞机的gameObject属性来获取图块吗?
hitdown.collider.gameObject
然后使用您自己的验证来检查这是否是正片。
编辑:
如果只希望在特定坐标处放置一个图块,则可以使用Tilemap.GetTile方法。文档可以在这里找到: Tilemap.GetTile