public static void CreatePathFindingNodes_CLIENT(UnitScript unitScript, int unitNetID, List <Vector3> path)
    {
        unitScript.ClearPathFindingNodes();

        List <CubeLocationScript> scriptList = new List <CubeLocationScript>();

        foreach (Vector3 vect in path)
        {
            CubeLocationScript script = LocationManager.GetLocationScript_CLIENT(vect);
            script.CreatePathFindingNodeInCube(unitNetID);
            scriptList.Add(script);
            Debug.Log("pathfinding VISUAL node set at vect: " + vect);
        }

        unitScript.AssignPathFindingNodes(scriptList);
    }
    ////////////////////////////////////////////////

    public static void SetUnitActive(bool onOff, int playerContID, Vector3Int unitID)
    {
        UnitScript unit = _unitObjectsByPlayerID[playerContID][unitID];

        if (unit == null)
        {
            Debug.LogError("SetUnitActive ERROR unit == null");
            return;
        }

        if (_activeUnit == null)
        {
            _activeUnit = unit;
        }

        if (onOff)
        {
            if (_activeUnit.UnitID != unit.UnitID)
            {
                _activeUnit.DeActivateUnit();
            }

            _activeUnit.ClearPathFindingNodes();
            _activeUnit = unit;
            _activeUnit.ActivateUnit();
            AssignCameraToActiveUnit();

            Debug.Log("Unit: " + unitID + " : SetActive");

            // _locationManager.DebugTestPathFindingNodes(_activeUnit);
        }
        else
        {
            if (_activeUnit.UnitID != unit.UnitID)
            {
                Debug.LogError("should not be here Unit is active and another unit is tying to get turned off");
            }
            else
            {
                _activeUnit.DeActivateUnit();
                _activeUnit = null;
            }
        }
    }