public void RemoveSignPost() { if (signpostInstance == null) { return; } else { Destroy(signpostInstance.gameObject); signpostInstance = null; } }
//initialize a directional signpost pointing in direction dir and in a quadrant of the cell not //containing the player located at playerPosition. public void AddSignPost(MazeDirection dir, Vector3 playerPosition) { if (signpostInstance != null) { return; } signpostInstance = Instantiate(signpostPrefab) as DirectionalSignPost; signpostInstance.transform.parent = transform; Vector3 relativePos = playerPosition - transform.localPosition; signpostInstance.transform.localPosition = new Vector3( (relativePos.x <= 0 ? 0.25f : -0.25f), -1.5f, (relativePos.z <= 0 ? 0.25f : -0.25f) ); signpostInstance.transform.localRotation *= dir.ToRotation(); }
void Start() { signpostInstance = null; }