- Home /
Found Answer
How to change objects layer based on its height in the sceen?
Hi,
I'm making a game based on procedural generation with Unity asset "DunGen" (Using a bunch of prefabs and making dungeon out of them) and I'm trying to use A* Pathfinder Pro for my AI since I can't get NavMesh to bake in runtime (I tried using NavMesh components). So I was wondering I found the way of doing what I need by using something like this: using System.Collections; using System.Collections.Generic; using UnityEngine;
public class LayerChanger : MonoBehaviour
{
void Update()
{
if (gameObject.layer = 15 && gameObject.transform.position.y < 0) gameObject.layer = 17;
//Checking if layer is set to User Layer 15 and below y = 0
//If so changing layer to User Layer 17 (Same layer as User Layer 15 just second variant since it's possible for two same layers to be under one another)
}
}
I do have another layer for my second part of a Dungeon since DunGen uses two parts castle and crypt but it's possible for some parts of Crypt to be under other and same for castle. So I was wondering if gameobject I want layer to be changed is on y = 0 nut is child of another gameobject that's on y < 0?
Sorry for any errors English is not my first language and if you need any more information post a comment and I will respond ASAP.
Thanks!
Follow this Question
Related Questions
Using layers to ignore GameObjects? 1 Answer
make all grayscale but some colors 1 Answer
Help with Layermasks 1 Answer
I want to make objects invisible but interactive with input! 3 Answers
Raycast ignores Skybox 1 Answer