orientation requirements

This commit is contained in:
2022-11-07 15:41:00 +01:00
parent 8719543f96
commit d9513f70b3
17 changed files with 133 additions and 19 deletions

View File

@@ -0,0 +1,35 @@
using System.Collections.Generic;
using Escape_Room_Engine.Engine.Scripts.Modules;
using Unity.XR.CoreUtils;
using UnityEngine;
using Logger = Escape_Room_Engine.Engine.Scripts.Utilities.Logger;
using LogType = Escape_Room_Engine.Engine.Scripts.Utilities.LogType;
namespace Escape_Room_Engine.Engine.Scripts.Requirements
{
[CreateAssetMenu(menuName = "Requirements/Face Space Center")]
public class FaceSpaceCenter : OrientationRequirement
{
public override IEnumerable<Orientation> OrientationCandidates(Module module, Space space)
{
var orientation = new HashSet<Orientation>(1);
float width = space.rrDimensions.width;
float length = space.rrDimensions.length;
var xRel = module.SrPosition.x / (width - 1);
var zRel = module.SrPosition.y / (length - 1);
Debug.Log($"{xRel}, {zRel}, {1 - xRel}");
if (zRel > xRel)
{
orientation.Add(zRel > 1 - xRel ? Orientation.South : Orientation.East);
}
else
{
orientation.Add(zRel > 1 - xRel ? Orientation.West : Orientation.North);
}
return orientation;
}
}
}